mirror of
https://github.com/Foltik/dotfiles
synced 2024-11-30 14:32:08 -05:00
140 lines
2.5 KiB
Bash
Executable File
140 lines
2.5 KiB
Bash
Executable File
#!/bin/zsh
|
|
|
|
lnh() {
|
|
print -Pn '%B%F{green}### '
|
|
print -n $1
|
|
print -P ' ###%f%b'
|
|
}
|
|
|
|
lnf() {
|
|
print -Pn '%B%F{yellow}>>>%f%b '
|
|
}
|
|
|
|
lnfb() {
|
|
print -P '%B%F{yellow}[[[%f%b'
|
|
}
|
|
|
|
lnfbe() {
|
|
print -P '%B%F{yellow}]]]'
|
|
}
|
|
|
|
ln() {
|
|
Print -Pn '%B%F{yellow}>>> '
|
|
Print -n $1
|
|
Print -P '%f%b'
|
|
}
|
|
|
|
install_i3() {
|
|
if ! (pacman -Q i3-gaps >/dev/null 2>&1);
|
|
then
|
|
lnh "Installing i3-gaps from AUR..."
|
|
yaourt -S i3-gaps --noconfirm
|
|
fi;
|
|
|
|
if ! (pacman -Q i3blocks-gaps-git >/dev/null 2>&1);
|
|
then
|
|
lnh "Installing i3blocks-gaps-git from AUR..."
|
|
yaourt -S i3blocks-gaps-git --noconfirm
|
|
fi;
|
|
|
|
if ! (pacman -Q i3lock >/dev/null 2>&1);
|
|
then
|
|
lnh "Installing i3lock"
|
|
pacman -S i3lock --noconfirm
|
|
fi;
|
|
|
|
|
|
if ! (pacman -Q i3lock-fancy-dualmonitors-git >/dev/null 2>&1);
|
|
then
|
|
lnh "Installing i3lock-fancy"
|
|
yaourt -S i3lock-fancy-dualmonitors-git --noconfirm
|
|
fi;
|
|
|
|
if ! (pacman -Q compton >/dev/null 2>&1);
|
|
then
|
|
lnh "Installing Compton..."
|
|
pacman -S compton --noconfirm
|
|
fi;
|
|
|
|
### Configuration Files
|
|
lnh "Installing General Configuration Files"
|
|
# Compton
|
|
lnf
|
|
cp -v cfg/compton/config ~/.config/compton/config
|
|
# NCMPCPP config
|
|
lnf
|
|
cp -v cfg/termite/ncmpcpp_config ~/.config/termite/ncmpcpp_config
|
|
|
|
### Install Tools
|
|
lnh "Installing General Tools"
|
|
mkdir -p ~/Documents/tools
|
|
# Wallpaper Tool
|
|
lnf
|
|
cp -v cfg/i3/tools/wallpaper.sh ~/Documents/tools/
|
|
lnfb
|
|
cp -v cfg/wallpapers/wallpaper* ~/Pictures/
|
|
lnfbe
|
|
|
|
### Install Service Files
|
|
lnh "Installing Services"
|
|
# Suspend locker
|
|
lnf
|
|
sudo cp -v cfg/systemd/system/suspend@.service /etc/systemd/system/
|
|
# Auto locker
|
|
lnf
|
|
sudo cp -v cfg/systemd/user/locker.service /etc/systemd/user
|
|
sudo systemctl daemon-reload
|
|
lnh "Enabling Services"
|
|
lnf
|
|
sudo systemctl enable suspend@$USER.service
|
|
lnf
|
|
systemctl --user enable locker.service
|
|
|
|
lnh "Select a Platform"
|
|
platform_opt=("Desktop" "Laptop")
|
|
select opt in "${platform_opt[@]}"
|
|
do
|
|
case $opt in
|
|
"Desktop")
|
|
break
|
|
;;
|
|
"Laptop")
|
|
lnh "Installing i3"
|
|
install_i3_laptop
|
|
break
|
|
;;
|
|
*) echo "Invalid Option";;
|
|
esac
|
|
done
|
|
}
|
|
|
|
install_i3_laptop() {
|
|
lnh "Installing Laptop Configuration Files"
|
|
# i3blocks
|
|
lnf
|
|
cp -v cfg/i3blocks/laptop/config ~/.config/i3blocks/config
|
|
lnf
|
|
mkdir ~/.config/i3blocks/blocks
|
|
lnfb
|
|
cp -v cfg/i3blocks/laptop/blocks/* ~/.config/i3blocks/blocks/
|
|
lnfbe
|
|
|
|
}
|
|
|
|
echo "Select a Window Manager"
|
|
wm_opt=("Gnome" "i3")
|
|
select opt in "${wm_opt[@]}"
|
|
do
|
|
case $opt in
|
|
"Gnome")
|
|
echo "gnome"
|
|
break
|
|
;;
|
|
"i3")
|
|
install_i3
|
|
break
|
|
;;
|
|
*) echo "Invalid Option";;
|
|
esac
|
|
done
|