diff --git a/README.md b/README.md index 8fc8e35..2349068 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,10 @@ I am using [GNU Stow](https://www.gnu.org/software/stow/) - a symlink farm manag ## Prerequisites Make sure you have installed all of the following prerequisites on your development machine: - [GNU Stow](https://www.gnu.org/software/stow/) > 2.3.0 that support new `--dotfiles` option +- [Homebrew](https://brew.sh/) - The Missing Package Manager for macOS (or Linux) + Install Homebrew `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"` - [z for fish](https://github.com/jethrokuan/z) - Directory jumping -- [Exa](https://the.exa.website/) - `ls` replacement +- [Eza](https://github.com/eza-community/eza) - `ls` replacement - [ghq](https://github.com/x-motemen/ghq) - Local Git repository organizer - [fzf](https://github.com/junegunn/fzf) - is a general-purpose command-line fuzzy finder. @@ -46,6 +48,14 @@ That’s it! we have successfully created a symlink for `.gitconfig` ,and a syml ### tmux `stow --dotfiles -vSt ~ tmux` +### nvim +`mkdir ~/.config/nvim` +`stow --dotfiles -vSt ~/.config/nvim nvim` + +### ghostty +`mkdir ~/.config/ghostty` +`stow --dotfiles -vSt ~/.config/ghostty ghostty` + ### starship `stow --dotfiles -vSt ~/.config starship` diff --git a/fish/config-dev.fish b/fish/config-dev.fish index 7b0243b..4bacd0a 100644 --- a/fish/config-dev.fish +++ b/fish/config-dev.fish @@ -1,3 +1,9 @@ +# podman migrate transparently from Docker to Podman Desktop +if type -q podman + set PODMAN_SOCKET_PATH "$(podman machine inspect --format '{{.ConnectionInfo.PodmanSocket.Path}}')" + export DOCKER_HOST="unix://$PODMAN_SOCKET_PATH" +end + if type -q docker # PHP in container diff --git a/homebrew-mac/dot-Brewfile b/homebrew-mac/dot-Brewfile new file mode 100644 index 0000000..1d28c14 --- /dev/null +++ b/homebrew-mac/dot-Brewfile @@ -0,0 +1,132 @@ +# Command-line interface for SQLite +brew "sqlite" +# Download with resuming and segmented downloading +brew "aria2" +# Record and share terminal sessions +brew "asciinema" +# Statistics utility to count lines of code +brew "cloc" +# Get a file from an HTTP, HTTPS or FTP server +brew "curl" +# More intuitive version of du in rust +brew "dust" +# Modern, maintained replacement for ls +brew "eza" +# Simple, fast and user-friendly alternative to find +brew "fd" +# Play, record, convert, and stream select audio and video codecs +brew "ffmpeg" +# User-friendly command-line shell for UNIX-like operating systems +brew "fish" +# Plugin manager for the Fish shell +brew "fisher" +# Command-line fuzzy finder written in Go +brew "fzf" +# Remote repository management made easy +brew "ghq" +# Improved top (interactive process viewer) +brew "htop" +# User-friendly cURL replacement (command-line HTTP client) +brew "httpie" +# Lightweight and flexible command-line JSON processor +brew "jq" +# Mac App Store command-line interface +brew "mas" +# Hash utilities +brew "md5sha1sum" +# Ambitious Vim-fork focused on extensibility and agility +brew "neovim" +# Library for color text mode, widget based user interfaces +brew "newt" +# Tool for managing OCI containers and pods +brew "podman" +# Alternative to docker-compose using podman +brew "podman-compose" +# Podman Terminal User Interface +brew "podman-tui" +# Search tool like grep and The Silver Searcher +brew "ripgrep" +# Command-line interface for https://speedtest.net bandwidth tests +brew "speedtest-cli" +# Cross-shell prompt for astronauts +brew "starship" +# Organize software neatly under a single directory tree (e.g. /usr/local) +brew "stow" +# Simplified and community-driven man pages +brew "tldr" +# Terminal multiplexer +brew "tmux" +# Incremental parsing library +brew "tree-sitter" +# Parser generator tool +brew "tree-sitter-cli" +# Tracks most-used directories to make cd smarter +brew "z" +# Shell extension to navigate your filesystem faster +brew "zoxide" +# Desktop password and login vault +cask "bitwarden" +# Web browser focusing on privacy +cask "brave-browser" +# Tool to run Windows software +cask "crossover" +cask "font-jetbrains-mono-nerd-font" +cask "font-noto-sans-cjk" +cask "font-noto-serif-cjk" +# Terminal emulator that uses platform-native UI and GPU acceleration +cask "ghostty" +# Client for the Google Drive storage service +cask "google-drive" +# Free and open-source media player +cask "iina" +# File archiver +cask "keka" +# Project management software +cask "lark" +# Reverse proxy, secure introspectable tunnels to localhost +cask "ngrok" +# Knowledge base that works on top of a local folder of plain text Markdown files +cask "obsidian" +# Provides common input methods +cask "openvanilla" +# Client program for the OpenVPN Access Server +cask "openvpn-connect" +# Browse, manage, inspect containers and images +cask "podman-desktop" +# Screenshot measurement and annotation tool +cask "shottr" +# Visible indicator of the current input source +cask "showyedge" +# Sync and backup service to Synology NAS drives +cask "synology-drive" +# Desktop client for Telegram messenger +cask "telegram-desktop" +# File transfer application +cask "transmit" +# Open-source code editor +cask "visual-studio-code" +# Video conferencing software +cask "voov-meeting" +# Free messaging and calling application +cask "wechat" +mas "GarageBand", id: 682658836 +mas "iMovie", id: 408981434 +mas "Keynote", id: 409183694 +mas "LINE", id: 539883307 +mas "Microsoft Excel", id: 462058435 +mas "Microsoft PowerPoint", id: 462062816 +mas "Microsoft Word", id: 462054704 +mas "Numbers", id: 409203825 +mas "OneDrive", id: 823766827 +mas "Pages", id: 409201541 +mas "Shadowrocket", id: 932747118 +vscode "eamodio.gitlens" +vscode "editorconfig.editorconfig" +vscode "ms-azuretools.vscode-containers" +vscode "ms-vscode-remote.remote-containers" +vscode "ms-vscode-remote.remote-ssh" +vscode "ms-vscode-remote.remote-ssh-edit" +vscode "ms-vscode-remote.remote-wsl" +vscode "ms-vscode-remote.vscode-remote-extensionpack" +vscode "ms-vscode.remote-explorer" +vscode "ms-vscode.remote-server" diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index ad9cf45..4e78848 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -1,42 +1,42 @@ { - "LazyVim": { "branch": "main", "commit": "28db03f958d58dfff3c647ce28fdc1cb88ac158d" }, - "SchemaStore.nvim": { "branch": "main", "commit": "b850ab25279ba04ada90e8b696ef5d0624af103d" }, + "LazyVim": { "branch": "main", "commit": "fca0af57cc3851b14f96a795a9c9bfafc5096dd1" }, + "SchemaStore.nvim": { "branch": "main", "commit": "27f7d753990c8d79bdefe75be0094e7e86eabf16" }, "blink.cmp": { "branch": "main", "commit": "4b18c32adef2898f95cdef6192cbd5796c1a332d" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, - "catppuccin": { "branch": "main", "commit": "beaf41a30c26fd7d6c386d383155cbd65dd554cd" }, - "conform.nvim": { "branch": "master", "commit": "c2526f1cde528a66e086ab1668e996d162c75f4f" }, + "catppuccin": { "branch": "main", "commit": "384f304c8b04664c9e0091fbfb3923c5f97c1bcf" }, + "conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" }, "flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, - "fzf-lua": { "branch": "main", "commit": "fb8c50ba62a0daa433b7ac2b78834f318322b879" }, - "gitsigns.nvim": { "branch": "main", "commit": "1ce96a464fdbc24208e24c117e2021794259005d" }, - "grug-far.nvim": { "branch": "main", "commit": "275dbedc96e61a6b8d1dfb28ba51586ddd233dcf" }, + "fzf-lua": { "branch": "main", "commit": "65c848961e66de995052ead60970fbde101ff18f" }, + "gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" }, + "grug-far.nvim": { "branch": "main", "commit": "dc4684e163971bb1f5bfb93fbd4bb3e892bf9b15" }, "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, "lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" }, "lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "ae609525ddf01c153c39305730b1791800ffe4fe" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a676ab7282da8d651e175118bcf54483ca11e46d" }, "mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" }, - "mini.ai": { "branch": "main", "commit": "9eae720f2b20f6ad28cbfa0ddc524e10dc2c3201" }, - "mini.icons": { "branch": "main", "commit": "efc85e42262cd0c9e1fdbf806c25cb0be6de115c" }, - "mini.pairs": { "branch": "main", "commit": "4089aa6ea6423e02e1a8326a7a7a00159f6f5e04" }, - "neo-tree.nvim": { "branch": "main", "commit": "2d04b7a422c9f84788bbb4e5ca2634c81dd0f5a3" }, + "mini.ai": { "branch": "main", "commit": "4b0a6207341d895b6cfe9bcb1e4d3e8607bfe4f4" }, + "mini.icons": { "branch": "main", "commit": "5b9076dae1bfbe47ba4a14bc8b967cde0ab5d77e" }, + "mini.pairs": { "branch": "main", "commit": "b7fde3719340946feb75017ef9d75edebdeb0566" }, + "neo-tree.nvim": { "branch": "main", "commit": "4597f1e0b928a78d5fe1b3d33d1a5141453ba839" }, "noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-lint": { "branch": "master", "commit": "bcd1a44edbea8cd473af7e7582d3f7ffc60d8e81" }, - "nvim-lspconfig": { "branch": "master", "commit": "66fd02ad1c7ea31616d3ca678fa04e6d0b360824" }, - "nvim-treesitter": { "branch": "main", "commit": "45a07f869b0cffba342276f2c77ba7c116d35db8" }, - "nvim-treesitter-textobjects": { "branch": "main", "commit": "a0e182ae21fda68c59d1f36c9ed45600aef50311" }, + "nvim-lint": { "branch": "master", "commit": "606b823a57b027502a9ae00978ebf4f5d5158098" }, + "nvim-lspconfig": { "branch": "master", "commit": "4d0724be90b633ddce51b328a631060e6acd7d66" }, + "nvim-treesitter": { "branch": "main", "commit": "eb1f8e80cb28eb7892f347609e0bdc5eb574b945" }, + "nvim-treesitter-textobjects": { "branch": "main", "commit": "4e91b5d0394329a229725b021a8ea217099826ef" }, "nvim-ts-autotag": { "branch": "main", "commit": "8e1c0a389f20bf7f5b0dd0e00306c1247bda2595" }, "persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, - "render-markdown.nvim": { "branch": "main", "commit": "48b4175dbca8439d30c1f52231cbe5a712c8f9d9" }, - "snacks.nvim": { "branch": "main", "commit": "fe7cfe9800a182274d0f868a74b7263b8c0c020b" }, + "render-markdown.nvim": { "branch": "main", "commit": "e3c18ddd27a853f85a6f513a864cf4f2982b9f26" }, + "snacks.nvim": { "branch": "main", "commit": "9912042fc8bca2209105526ac7534e9a0c2071b2" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, "tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" }, "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, "ts-comments.nvim": { "branch": "main", "commit": "123a9fb12e7229342f807ec9e6de478b1102b041" }, "vim-dadbod": { "branch": "master", "commit": "6d1d41da4873a445c5605f2005ad2c68c99d8770" }, "vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" }, - "vim-dadbod-ui": { "branch": "master", "commit": "48c4f271da13d380592f4907e2d1d5558044e4e5" }, + "vim-dadbod-ui": { "branch": "master", "commit": "07e92e22114cc5b1ba4938d99897d85b58e20475" }, "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } }