dotfiles/setup

111 lines
3.5 KiB
Plaintext
Raw Normal View History

#!/bin/bash
echo "Setting up the stuff..."
2023-02-27 23:55:20 +00:00
git submodule init
git submodule update
! command -v git &> /dev/null && echo "Ensure git is install before running this" && exit -1
[[ ! -d ~/git ]] && echo "Creating git directory in $HOME" && mkdir ~/git
2023-12-05 21:29:57 +00:00
# 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
# grim + slurp + swappy for screenshots
sudo pacman -S grim slurp swappy wl-clipboard
}
# Setup paru
setup_paru() {
if ! command -v paru &> /dev/null; then
echo "Setting up paru..."
pushd ~/git
sudo pacman -S --needed base-devel
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
popd
else
echo "paru is already installed"
fi
2023-12-05 21:29:57 +00:00
}
2023-02-22 21:12:06 +00:00
if [[ "$(cat /etc/os-release)" == *"Ubuntu"* ]]
2022-11-23 11:57:18 +00:00
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
2023-02-22 21:12:06 +00:00
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
2022-11-23 11:57:18 +00:00
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
2022-11-26 12:11:01 +00:00
2023-02-22 21:12:06 +00:00
sudo systemctl enable --now power-profiles-daemon
# Intel only...
# sudo pacman -S thermald
# sudo systemctl enable --now thermald
# sudo thermald --systemd
# Install paru
setup_paru
2023-12-05 21:29:57 +00:00
# Install wayland + hyprland
setup_hyprland_arch
# sudo powerprofilesctl set performance
2022-11-23 11:57:18 +00:00
fi
# tmux plugin manager and theme
2023-12-05 21:29:57 +00:00
if [[ ! -d ~/.tmux/plugins/tpm ]]; then
echo "Installing tmux plugin manager... Don't forget to press <C-a><S-i> 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
}
2022-11-23 11:57:18 +00:00
# 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"
2023-12-05 21:29:57 +00:00
# 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"
2023-12-05 21:29:57 +00:00
# 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'