#!/bin/bash

# Run as root
# Kitty tab bar: https://github.com/kovidgoyal/kitty/discussions/4447#discussioncomment-3240635

###################################################################
# SYMBOLIC LINKS
###################################################################

# Copy everything from .config

ln -s ~/dotfiles/wallpapers ~/wallpapers
ln -s ~/dotfiles/.fonts ~/.fonts

# Starship config
ln -s ~/dotfiles/.config/starship.toml ~/.config/starship.toml
ln -s ~/dotfiles/.config/starship.toml /root/.config/starship.toml

# Fix Electron Apps Wayland scaling issue:
# If app doesn't work, add "--no-sandbox" to app in /usr/share/applications/
ln -s ~/dotfiles/.conf/environment.d ~/.config/environment.d

###################################################################
# PACKAGES
###################################################################

# Hyperland stuff
# uwsm needed for launching hypr on boot
pacman -S uwsm hyprland xdg-desktop-portal-hyprland hyprpaper qt5-wayland

# Basic essentials
pacman -S waybar dunst libnotify wofi pipewire brightnessctl man-db man-pages 

# Yazi dependencies (but also useful otherwise)
pacman -S yazi ffmpeg poppler fd p7zip

# Other software
# Use amdctl for undervolting
pacman -S btop ripgrep bat neovim nano grim slurp dust fastfetch imv wl-clipboard amdctl

# Bash prompt bar
pacman -S starship

# Additional Pacman utils like "checkupdates"
sudo pacman -S pacman-contrib

# Networking
# For connecting to eduroam install config with this script: https://cat.eduroam.org/
# wpa_supplicant is dependency of networkmanager that was not installed for some reason.
# Run networkmanager with "nmcli dev wifi connect 'ssid' password 'password'"
pacman -S networkmanager wpa_supplicant

###################################################################
# TINKERING
###################################################################

# Launch directly into hyprlock and skipping login
echo '[Service]\nExecStart=\nExecStart=-/sbin/agetty --noreset --noclear --autologin alex %I $TERM' | sudo tee /etc/systemd/system/getty@tty1.service.d/override.conf > /dev/null && sudo systemctl enable getty@tty1

# Battery optimization
git clone https://github.com/AdnanHodzic/auto-cpufreq.git
cd auto-cpufreq && sudo ./auto-cpufreq-installer
systemctl enable --now auto-cpufreq 

###################################################################
# MANUAL CONFIGURATION REQUIRED
###################################################################

# Waybar: https://github.com/sejjy/mechabar/tree/classic
# Dependencies: 
# wireplumber is Session/policy manager implementation for PipeWire
pacman -S cava bluez-utils bluez pipewire-pulse ttf-jetbrains-mono-nerd wireplumber
yay -S rofi-lbonn-wayland-git bluetui
systemctl enable --now bluetooth.service

# Battery optimization:
sudo pacman -S tlp

