diff --git a/README.md b/README.md index 0c2768f..2abd72b 100644 --- a/README.md +++ b/README.md @@ -3,45 +3,63 @@ This repository contains most if not all of the changes made to my machines that run Arch Linux, Fedora, Ubuntu, or CentOS, but primarily Fedora as it's what I use on my personal computers. It should support both Hyprland primarily, though past versions used Sway and i3. - -## Unstaged File Templates - -`.config/.secrets` -```zsh -# borg backup -export BORG_PASSPHRASE="" - -# spotifatius -export RSPOTIFY_CLIENT_ID="" -export RSPOTIFY_CLIENT_SECRET="" - -# spotifycl -export SPOTIPY_CLIENT_ID="" -export SPOTIPY_CLIENT_SECRET="" -export SPOTIPY_REDIRECT_URI="http://localhost" - -# GitHub -export GITHUB_TOKEN="" -``` - ## Installation ```zsh -touch ~/.config/.secrets - -# Homebrew -git clone https://github.com/Homebrew/brew ~/.homebrew -brew update - -# fzf +# Packages ## Arch Linux -paru -S fzf +paru -S \ + fzf \ + git-delta \ + bat \ + eza \ + duf \ + ripgrep \ + choose-rust-git \ + hyperfine + ## Fedora -sudo dnf install fzf -## Debian -sudo apt-get install fzf +sudo dnf copr enable atim/choose +sudo dnf install -y \ + fzf \ + git-delta \ + bat \ + eza \ + # duf \ + ripgrep \ + choose \ + hyperfine + ## MacOS -brew install fzf +brew install -y \ + fzf \ + git-delta \ + bat \ + eza \ + duf \ + ripgrep \ + choose-rust \ + hyperfine + +## Ubuntu +sudo apt-get install -y \ + fzf \ + # git-delta \ + rust-bat \ + # eza \ + # duf \ + ripgrep \ + choose-rust-git + # hyperfine + +## Other +# https://github.com/dandavison/delta#installation +# https://github.com/sharkdp/bat#installation +# https://github.com/eza-community/eza +# https://github.com/muesli/duf#installation +# https://github.com/BurntSushi/ripgrep#installation +# https://github.com/theryangeary/choose#compilation-and-installation +# https://github.com/sharkdp/hyperfine#installation # ddcutil i2c sudo groupadd --system i2c @@ -53,71 +71,4 @@ sudo cp /usr/share/ddcutil/data/45-ddcutil-i2c.rules /etc/udev/rules.d sudo chmod a+rw /dev/i2c-* # Or after quick logout sudo chgrp i2c /dev/i2c-* - -# delta -## Arch Linux -paru -S git-delta -## Fedora -sudo dnf install git-delta -## MacOS -brew install git-delta -## Other: https://github.com/dandavison/delta#installation - -# bat -## Arch linux -paru -S bat -## Fedora -sudo dnf install bat -## Debian -sudo apt-get install rust-bat -## MacOS -brew install bat -## Other: https://github.com/sharkdp/bat#installation - -# eza -## Arch linux -paru -S eza -## Fedora -sudo dnf install eza -## MacOS -brew install eza -## Other: https://github.com/eza-community/eza - -# duf -## Arch Linux -paru -S duf -## MacOS -brew install duf -## Other: https://github.com/muesli/duf#installation - -# ripgrep -## Arch Linux -paru -S ripgrep -## Fedora -sudo dnf install ripgrep -## Debian -sudo apt-get install ripgrep -## MacOS -brew install ripgrep -## Other: https://github.com/BurntSushi/ripgrep#installation - -# choose -## Arch Linux -paru -S choose-rust-git -## Fedora -sudo dnf copr enable atim/choose -sudo dnf install choose -## MacOS -brew install choose-rust -## Other: https://github.com/theryangeary/choose#compilation-and-installation - - -# hyperfine -## Arch Linux -paru -S hyperfine -## Fedora -sudo dnf install hyperfine -## MacOS -brew install hyperfine -## Other: https://github.com/sharkdp/hyperfine#installation ``` diff --git a/dot_bin/executable_updates b/dot_bin/executable_updates index 4020d96..0f01823 100644 --- a/dot_bin/executable_updates +++ b/dot_bin/executable_updates @@ -4,9 +4,31 @@ set -e source ~/.bin/utils.zsh +function has_dnf5() { + type "dnf5" >/dev/null +} + +function the_dnf() { + if has_dnf5; then + dnf5 $@ + else + dnf $@ + fi +} + +function dnf_update_amount() { + the_dnf check-update --quiet --disablerepo="cpe-yum*" $@ | + # Make sure we only get the first part as that's the updates, + # the rest is less accurate. This makes it take the first paragraph. + sed "s/Obsoleting Packages//g" | + awk -v RS= 'NR==1' | + # Count + wc -l +} + function check_cache() { if is_fedora; then - amount=$(dnf check-update --cacheonly --quiet --disablerepo="cpe-yum*" | wc -l) + amount=$(dnf_update_amount --cacheonly) else amount=$(paru -Qu | wc -l) fi @@ -21,7 +43,7 @@ function check_cache() { function check_live() { if is_fedora; then - amount=$(dnf check-update --refresh --quiet --disablerepo="cpe-yum*" | wc -l || echo "-1") + amount=$(dnf_update_amount || echo "-1") else amount=$( paru -Syy &>/dev/null @@ -42,7 +64,12 @@ function check_live() { function update_package_manager() { if is_fedora; then - sudo dnf upgrade --refresh --assumeyes + # We have to inline the_dnf because of sudo. + if has_dnf5; then + sudo dnf5 $@ upgrade --refresh --assumeyes --disablerepo="cpe-yum*" + else + sudo dnf $@ upgrade --refresh --assumeyes --disablerepo="cpe-yum*" + fi else paru -Syu --noconfirm fi @@ -53,7 +80,7 @@ function update_flatpak() { } function update_snap() { - snap &> /dev/null && sudo snap refresh + snap &>/dev/null && sudo snap refresh } case "$1" in diff --git a/private_dot_config/nvim/lazy-lock.json b/private_dot_config/nvim/lazy-lock.json index ed7a2f5..fa03c4d 100644 --- a/private_dot_config/nvim/lazy-lock.json +++ b/private_dot_config/nvim/lazy-lock.json @@ -1,53 +1,50 @@ { - "LazyVim": { "branch": "main", "commit": "879e29504d43e9f178d967ecc34d482f902e5a91" }, - "LuaSnip": { "branch": "master", "commit": "8f3d3465ba5c7ade0a8adb41eca5736f291a3fa8" }, - "bufferline.nvim": { "branch": "main", "commit": "73540cb95f8d95aa1af3ed57713c6720c78af915" }, - "catppuccin": { "branch": "main", "commit": "a1439ad7c584efb3d0ce14ccb835967f030450fe" }, + "LazyVim": { "branch": "main", "commit": "b289fea1636eda08d82344dc32a114bca550e375" }, + "LuaSnip": { "branch": "master", "commit": "2b6860d15aaab01d3fb90859c0ba97f20ad7bc5f" }, + "bufferline.nvim": { "branch": "main", "commit": "99337f63f0a3c3ab9519f3d1da7618ca4f91cffe" }, + "catppuccin": { "branch": "main", "commit": "5215ea59df6d0a7e27da9a5cd1165e06d1b04cbe" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, - "conform.nvim": { "branch": "master", "commit": "4660e534bf7678ee0f85879aa75fdcb6855612c2" }, - "dashboard-nvim": { "branch": "master", "commit": "6d06924b562de6f0bb136edf1bf549afbf6b7d00" }, - "dressing.nvim": { "branch": "master", "commit": "5162edb1442a729a885c45455a07e9a89058be2f" }, - "flash.nvim": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" }, - "friendly-snippets": { "branch": "main", "commit": "ea068f1becd91bcd4591fceb6420d4335e2e14d3" }, - "gitsigns.nvim": { "branch": "main", "commit": "035da036e68e509ed158414416c827d022d914bd" }, - "indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" }, - "lazy.nvim": { "branch": "main", "commit": "bef521ac89c8d423f9d092e37b58e8af0c099309" }, + "conform.nvim": { "branch": "master", "commit": "88b699b595703f1ae9d9061c050e52b1fe7c33f1" }, + "dashboard-nvim": { "branch": "master", "commit": "7596101deb41192a4f7939d2c4f1a531a984b801" }, + "dressing.nvim": { "branch": "master", "commit": "e3714c8049b2243e792492c4149e4cc395c68eb9" }, + "flash.nvim": { "branch": "main", "commit": "0b85b5ea6eaaebab5e012fab3496102094550686" }, + "friendly-snippets": { "branch": "main", "commit": "e11b09bf10706bb74e16e4c3d11b2274d62e687f" }, + "gitsigns.nvim": { "branch": "main", "commit": "75dc649106827183547d3bedd4602442340d2f7f" }, + "indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" }, + "lazy.nvim": { "branch": "main", "commit": "b0ba3f9399bf48c86abaa4db1a40bd0b681d5018" }, + "lazydev.nvim": { "branch": "main", "commit": "ddab2f1d901dc0c5c4f721da94c604cc1a86b5dc" }, + "lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" }, "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "273fdde8ac5e51f3a223ba70980e52bbc09d9f6f" }, - "mason.nvim": { "branch": "main", "commit": "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10" }, - "mini.ai": { "branch": "main", "commit": "98e45e6832351354e41e82b32a80ce7537c20746" }, - "mini.bufremove": { "branch": "main", "commit": "931a3bb514147d9e812767275c4beba6b779b1d3" }, - "mini.comment": { "branch": "main", "commit": "f9f1a646fd3d9df7397aa1b9550a875fe8189eb0" }, - "mini.indentscope": { "branch": "main", "commit": "a8274b6ea2d868198d27bd91a31ed5ea3a6a5744" }, - "mini.pairs": { "branch": "main", "commit": "04f58f2545ed80ac3b52dd4826e93f33e15b2af6" }, - "mini.surround": { "branch": "main", "commit": "a00d69be09e3fe27dfa9e5b0298410d0e148e3e2" }, - "neo-tree.nvim": { "branch": "v3.x", "commit": "7aad1bf3f6b849cbf108e02c55ad4d701cb4d33a" }, - "neoconf.nvim": { "branch": "main", "commit": "ba3503e246ea687732e51f7f9878e653e2e2039b" }, - "neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" }, - "noice.nvim": { "branch": "main", "commit": "0cbe3f88d038320bdbda3c4c5c95f43a13c3aa12" }, - "nui.nvim": { "branch": "main", "commit": "cbd2668414331c10039278f558630ed19b93e69b" }, - "nvim-cmp": { "branch": "main", "commit": "8f3c541407e691af6163e2447f3af1bd6e17f9a3" }, - "nvim-lint": { "branch": "master", "commit": "f098232d70cebe90e27404928c9bc19ca7a5a7b5" }, - "nvim-lspconfig": { "branch": "master", "commit": "7133e85c3df14a387da8942c094c7edddcdef309" }, - "nvim-notify": { "branch": "master", "commit": "5371f4bfc1f6d3adf4fe9d62cd3a9d44356bfd15" }, - "nvim-spectre": { "branch": "master", "commit": "026394a8458d62c6b7b305c076ce675420dbaa4c" }, - "nvim-treesitter": { "branch": "master", "commit": "0883ff05655117a3fc79ab295a640c4984cfd415" }, - "nvim-treesitter-context": { "branch": "master", "commit": "4fe0a54e86859744968e1a5c7867b49c86855774" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "23b820146956b3b681c19e10d3a8bc0cbd9a1d4c" }, - "nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" }, - "nvim-ts-context-commentstring": { "branch": "main", "commit": "a6382f744f584bbf71d0a563af789af7190aabda" }, - "nvim-web-devicons": { "branch": "master", "commit": "beb6367ab8496c9e43f22e0252735fdadae1872d" }, - "persistence.nvim": { "branch": "main", "commit": "4982499c1636eac254b72923ab826ee7827b3084" }, - "plenary.nvim": { "branch": "master", "commit": "08e301982b9a057110ede7a735dd1b5285eb341f" }, + "luvit-meta": { "branch": "main", "commit": "ce76f6f6cdc9201523a5875a4471dcfe0186eb60" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a4caa0d083aab56f6cd5acf2d42331b74614a585" }, + "mason.nvim": { "branch": "main", "commit": "0950b15060067f752fde13a779a994f59516ce3d" }, + "mini.ai": { "branch": "main", "commit": "7859b6344f5cee567a94f173859d25e20ba1a77e" }, + "mini.pairs": { "branch": "main", "commit": "40261dfcec7623cd57be3c3beb50fa73f2650cdf" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "29f7c215332ba95e470811c380ddbce2cebe2af4" }, + "noice.nvim": { "branch": "main", "commit": "2bf04290b32dc5b1a002a4888c95147bb91ec6f2" }, + "nui.nvim": { "branch": "main", "commit": "b1b3dcd6ed8f355c78bad3d395ff645be5f8b6ae" }, + "nvim-cmp": { "branch": "main", "commit": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07" }, + "nvim-lint": { "branch": "master", "commit": "1a3a8d047bc01f1760ae4a0f5e80f111ea222e67" }, + "nvim-lsp-file-operations": { "branch": "master", "commit": "223aca86b737dc66e9c51ebcda8788a8d9cc6cf2" }, + "nvim-lspconfig": { "branch": "master", "commit": "74e14808cdb15e625449027019406e1ff6dda020" }, + "nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" }, + "nvim-snippets": { "branch": "main", "commit": "cff37a199a92f3c3cd52bb1593a7d01669b35d23" }, + "nvim-spectre": { "branch": "master", "commit": "4d22fe03554056de4325762add3e546c77e3a275" }, + "nvim-treesitter": { "branch": "master", "commit": "a80fe081b4c5890980561e0de2458f64aaffbfc7" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "fd41b7ccc5490a3a99c734d1ee418b68d06c48a9" }, + "nvim-ts-autotag": { "branch": "main", "commit": "6eb4120a1aadef07ac312f1c4bc6456712220007" }, + "nvim-web-devicons": { "branch": "master", "commit": "b77921fdc44833c994fdb389d658ccbce5490c16" }, + "persistence.nvim": { "branch": "main", "commit": "5fe077056c821aab41f87650bd6e1c48cd7dd047" }, + "plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" }, - "telescope.nvim": { "branch": "master", "commit": "35f94f0ef32d70e3664a703cefbe71bd1456d899" }, - "todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" }, - "tokyonight.nvim": { "branch": "main", "commit": "67afeaf7fd6ebba000633e89f63c31694057edde" }, - "trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" }, - "vim-illuminate": { "branch": "master", "commit": "e522e0dd742a83506db0a72e1ced68c9c130f185" }, - "vim-startuptime": { "branch": "master", "commit": "ac2cccb5be617672add1f4f3c0a55ce99ba34e01" }, - "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" } + "telescope.nvim": { "branch": "master", "commit": "dfa230be84a044e7f546a6c2b0a403c739732b86" }, + "todo-comments.nvim": { "branch": "main", "commit": "70a93ce66083699571adc361166504b03cc39c2b" }, + "tokyonight.nvim": { "branch": "main", "commit": "7e5ef71a103e7de5fe6c05f5d6ab97d1640f08cf" }, + "trouble.nvim": { "branch": "main", "commit": "915179759c9459b69faae90a38da6fc1ca6b90d7" }, + "ts-comments.nvim": { "branch": "main", "commit": "e339090c076871069c00e488b11def49aaf4e413" }, + "which-key.nvim": { "branch": "main", "commit": "4b7167f8fb2dba3d01980735e3509e172c024c29" }, + "xcodebuild.nvim": { "branch": "main", "commit": "e6250f9fbac96f581bf41f9b4ddb0ef2ea3169bd" } } \ No newline at end of file