#!/bin/bash echo "Setting up the stuff..." git submodule init git submodule update # Wayland + Hyprland seems cool setup_hyprland_arch() { echo "Setting up Hyprland..." sudo pacman -S wayland hyprland waybar dmenu dunst pipewire wireplumber xdg-desktop-portal-hyprland polkit-kde-agent qt5-wayland qt6-wayland } if [[ "$(cat /etc/os-release)" == *"Ubuntu"* ]] then echo "Updating Ubuntu" sudo apt update && sudo apt upgrade echo "Installing tools/utils" sudo apt install ripgrep fd-find make stow tmux lxsession thunar power-profiles-daemon playerctl network-manager-gnome volumeicon-alsa picom autorandr arandr neofetch echo "Installing arc-icon-theme" mkdir -p ~/git git clone https://github.com/horst3180/arc-icon-theme --depth 1 ~/git/arc-icon-theme && cd ~/git/arc-icon-theme ./autogen.sh --prefix=/usr sudo make install echo "Installing starship prompt" curl -sS https://starship.rs/install.sh | sh else echo "Updating Arch" sudo pacman -Syyu echo "Installing tools/utils" sudo pacman -S ripgrep fd neovim make stow tmux awesome dmenu arandr autorandr volumeicon picom nitrogen network-manager-applet lxsession thunar lxappearance-gtk3 power-profiles-daemon acpi arc-icon-theme playerctl bspwm sxhkd polybar xorg-xsetroot ttf-jetbrains-mono-nerd ttf-mononoki-nerd ttf-nerd-fonts-symbols-mono ttf-nerd-fonts-symbols ttf-nerd-fonts-symbols-common starship breeze breeze-gtk breeze-icons pass nushell neofetch sudo systemctl enable --now power-profiles-daemon # Intel only... # sudo pacman -S thermald # sudo systemctl enable --now thermald # sudo thermald --systemd # Install wayland + hyprland setup_hyprland_arch # sudo powerprofilesctl set performance fi # tmux plugin manager and theme if [[ ! -d ~/.tmux/plugins/tpm ]]; then echo "Installing tmux plugin manager... Don't forget to press in a new tmux session later" git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm fi add_to_file() { if grep -Fxq "$1" $2 then echo "Found existing line '$1' in file '$2'" else echo "Adding line \"$1\" to file \"$2\"" echo "$1" >> $2 fi } # Add aliases to zshrc add_to_file "alias nv='nvim'" "$HOME/.zshrc" add_to_file 'eval "$(starship init bash)"' "$HOME/.bashrc" add_to_file 'eval "$(starship init zsh)"' "$HOME/.zshrc" add_to_file 'export PATH="$PATH:$HOME/.scripts"' "$HOME/.zshrc" add_to_file 'export PATH="$PATH:$HOME/.scripts"' "$HOME/.bashrc" # Set GTK_THEME add_to_file 'export GTK_THEME=Breeze:dark' "$HOME/.zshrc" add_to_file 'export GTK_THEME=Breeze:dark' "$HOME/.bashrc" # Run neofetch when we open a terminal coz it's cool add_to_file 'neofetch' "$HOME/.bashrc" add_to_file 'neofetch' "$HOME/.zshrc" # I suppose we might as well just try setting up nvim echo "Running PackerSync in neovim..." nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'