#!/usr/bin/env fish function log -a message echo \n"--- $message ---"\n end read -P "OS? (arch/debian/fedora/mac) " -l distro set -l base_pkgs \ fish \ git \ neovim \ tmux \ rsync \ curl \ less \ fzf \ mosh \ lsd \ ripgrep \ bat \ tree-sitter-cli \ nodejs \ zoxide \ git-delta set -l mac_pkgs \ $base_pkgs \ fd \ yazi set -l arch_pkgs \ $base_pkgs \ fd \ yazi \ ttf-nerd-fonts-symbols \ ttf-nerd-fonts-symbols-common \ ttf-nerd-fonts-symbols-mono set -l debian_pkgs \ $base_pkgs \ fd-find set -l fedora_pkgs \ $base_pkgs \ fd-find switch $distro case mac log 'Installing packages with Homebrew' brew install $mac_pkgs case arch log 'Installing yay' sudo pacman --sync --refresh --sysupgrade --noconfirm and sudo pacman --sync --needed --noconfirm base-devel go or return $status test -d yay or git clone https://aur.archlinux.org/yay.git and cd yay and makepkg --syncdeps --install --noconfirm and cd .. or return $status log 'Installing packages with yay' yay --sync --noconfirm $arch_pkgs case debian log 'Installing packages with APT' sudo apt-get --quiet --yes update and sudo apt-get --quiet --yes upgrade and sudo apt-get --quiet --yes install $debian_pkgs case fedora log 'Installing packages with DNF' sudo dnf upgrade --assumeyes and sudo dnf --assumeyes install $fedora_pkgs end