diff --git a/.justfile b/.justfile new file mode 100644 index 0000000..af46a10 --- /dev/null +++ b/.justfile @@ -0,0 +1,49 @@ +packages_file := quote(justfile_directory() / "bootstrap/pkgs_arch.txt") + +bootstrap: setup_pacman setup_paru install_packages + + +install_packages: update_packages + paru -S --needed --noconfirm - < {{ packages_file }} + +update_packages: + paru -Syu --noconfirm + +clean_orphans: + -sudo pacman -Qdtq | sudo pacman -Rns - + @echo "\n\n{{ BLUE }}The following files are not owned by any package anymore:{{ NORMAL }}" + +# setup sudo: +# sudo loop +# show asterisk on password + +setup_pacman: + # add automatic updates + sudo sed -i \ + -e 's/#\?ParallelDownloads = [0-9]\+/ParallelDownloads = {{ num_cpus() }}/' \ + -e 's/#\?Color\+/Color/' \ + -e 's/#\?ILoveCandy\+/ILoveCandy/' \ + -e 's/#\?VerbosePkgLists\+/VerbosePkgLists/' \ + /etc/pacman.conf + +setup_paru: + #!/usr/bin/env bash + set -euxo pipefail + + if ! command -v paru &> /dev/null ; then + tmp=$(mktemp -d) + sudo pacman -S --needed base-devel + git clone https://aur.archlinux.org/paru.git "$tmp" + cd "$tmp" + makepkg -si + cd - + rm -rf "$tmp" + fi + + sudo sed -i \ + -e 's/#\?BottomUp\+/BottomUp/' \ + -e 's/#\?SudoLoop\+/SudoLoop/' \ + -e 's/#\?CombinedUpgrade\+/CombinedUpgrade/' \ + -e 's/#\?CleanAfter\+/CleanAfter/' \ + -e 's/#\?NewsOnUpgrade\+/NewsOnUpgrade/' \ + /etc/paru.conf diff --git a/bootstrap/pkgs_arch.txt b/bootstrap/pkgs_arch.txt new file mode 100644 index 0000000..705fde1 --- /dev/null +++ b/bootstrap/pkgs_arch.txt @@ -0,0 +1,72 @@ +age +atuin +brave-bin +bun-bin +catppuccin-cursors-macchiato +catppuccin-gtk-theme-macchiato +catppuccin-sddm-theme-macchiato +celluloid +deno +dotter-rs-bin +dunst +eza +fish +flatpak +fzf +git +gitleaks +gnome-disk-utility +just +kitty +kvantum +kvantum-theme-catppuccin-git +lazygit +limine +limine-mkinitcpio-hook +limine-snapper-sync +lostfiles +lxappearance +ly +nautilus +nautilus-admin-gtk4 +nautilus-image-converter +nautilus-open-any-terminal +neovim +noto-fonts +noto-fonts-cjk +noto-fonts-emoji +paccache-hook +plymouth-theme-catppuccin-macchiato-git +podman +pre-commit +pwvucontrol +qt5-wayland +qt6-wayland +rofi +rofi-rbw +rofimoji +rsync +sops +swappy +tailscale +tealdeer +trash-cli +ttf-dejavu +ttf-fira-code +ttf-fira-mono +ttf-fira-sans +ttf-firacode-nerd +ttf-jetbrains-mono-nerd +ttf-ms-win11-auto +ttf-nerd-fonts-symbols-mono +ttf-nunito +ttf-opensans +ttf-roboto +ttf-roboto-mono-nerd +udiskie +vim +wget +yazi +zed +zip +zoxide diff --git a/configs/nvim/init.lua b/configs/nvim/init.lua index ea65040..b926841 100644 --- a/configs/nvim/init.lua +++ b/configs/nvim/init.lua @@ -16,6 +16,7 @@ end vim.opt.rtp:prepend(lazypath) require("aleidk.options") +require("aleidk.commands") require("aleidk.autocmds") require("aleidk.keymaps") diff --git a/configs/nvim/lua/aleidk/commands.lua b/configs/nvim/lua/aleidk/commands.lua new file mode 100644 index 0000000..8fd969b --- /dev/null +++ b/configs/nvim/lua/aleidk/commands.lua @@ -0,0 +1,11 @@ +vim.api.nvim_create_user_command("SopsDecrypt", function(args) + vim.cmd([[! sops decrypt -i %]]) +end, { + desc = "Decrypt current file with sops", +}) + +vim.api.nvim_create_user_command("SopsEncrypt", function(args) + vim.cmd([[! sops encrypt -i %]]) +end, { + desc = "Decrypt current file with sops", +})