-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.sh
executable file
·151 lines (141 loc) · 3.56 KB
/
setup.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#!/usr/bin/env bash
red=$(tput setaf 1)
green=$(tput setaf 2)
blue=$(tput setaf 6)
normal=$(tput sgr0)
setup_dotfiles() {
echo -e "${blue}DOTFILES${normal}"
cd
git clone --depth=1 --separate-git-dir=.dots https://github.com/ghoulboii/dotfiles tmpdotfiles
git --git-dir=.dots --work-tree=~ remote set-url origin git@github.com:ghoulboii/dotfiles
git --git-dir=.dots --work-tree=~ config --local status.showUntrackedFiles no
rsync --recursive --verbose --exclude '.git' tmpdotfiles/ .
rm -rf tmpdotfiles
mkdir ~/{dl,doc,pics}
xdg-user-dirs-update
echo 'ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh"' > /etc/zsh/zshenv
}
setup_paru() {
echo -e "${blue}PARU${normal}"
git clone --depth=1 https://aur.archlinux.org/paru-bin.git ~/.local/src/paru
cd ~/.local/src/paru
makepkg --noconfirm -rsi
rm -rf ~/.local/src/paru
}
setup_dwm() {
echo -e "${blue}DWM${normal}"
git clone --depth=1 https://github.com/ghoulboii/dwm ~/.local/src/dwm
git --git-dir=~/.local/src/dwm/.git --work-tree=~/.local/dwm/st remote set-url origin git@github.com:$(whoami)/dwm
sudo make -sC ~/.local/src/dwm install
}
setup_dwmblocks() {
echo -e "${blue}DWMBLOCKS${normal}"
git clone --depth=1 https://github.com/ghoulboii/dwmblocks ~/.local/src/dwmblocks
git --git-dir=~/.local/src/dwmblocks/.git --work-tree=~/.local/src/dwmblocks remote set-url origin git@github.com:$(whoami)/dwmblocks
sudo make -sC ~/.local/src/dwmblocks install
}
setup_st() {
echo -e "${blue}ST${normal}"
git clone --depth=1 https://github.com/ghoulboii/st ~/.local/src/st
git --git-dir=~/.local/src/st/.git --work-tree=~/.local/src/st remote set-url origin git@github.com:$(whoami)/st
sudo make -sC ~/.local/src/st install
}
setup_dmenu() {
echo -e "${blue}DMENU${normal}"
git clone --depth=1 https://github.com/ghoulboii/dmenu ~/.local/src/dmenu
git --git-dir=~/.local/src/dmenu/.git --work-tree=~/.local/src/dmenu remote set-url origin git@github.com:$(whoami)/dmenu
sudo make -sC ~/.local/src/dmenu install
}
setup_neovim() {
echo -e "${blue}NEOVIM${normal}"
git clone --depth=1 https://github.com/ghoulboii/nvim ~/.config/nvim
git --git-dir=~/.config/nvim/.git --work-tree=~/.config/nvim remote set-url origin git@github.com:$(whoami)/nvim
}
install_packages() {
echo -e "\${blue}PACKAGES\${normal}"
local packages=(
acpi
bat
btop
deno
easyeffects
exa
fastfetch
fd
feh
firefox
fzf
jdk8-openjdk
jdk17-openjdk
gamemode
gimp
gparted
lf
libqalculate
man-db
mesa
mpv
mpv-mpris
ncdu
neovim
newsboat
noto-fonts
noto-fonts-emoji
npm
obs-studio
openssh
os-prober
pavucontrol
pacman-contrib
pcmanfm-gtk3
pipewire
pipewire-pulse
playerctl
prismlauncher-bin
python-pywal
qbittorrent
qt5-styleplugins
qt6gtk2
reflector
ripgrep
rose-pine-gtk-theme
socat
tldr
tmux
trash-cli
ttf-firacode-nerd
ttf-ms-fonts
ueberzugpp
wget
wine-staging
winetricks
wireplumber
xbindkeys
xclip
xdg-desktop-portal-gtk
xdotool
xf86-input-libinput
xorg-xev
xorg-xinput
xorg-xrandr
xorg-xset
xsel
yt-dlp
zathura
zathura-pdf-mupdf
zoxide
zsh-autosuggestions
zsh-completions
zsh-fast-syntax-highlighting
zsh-history-substring-search
zstd
)
arch-chroot /mnt sudo -i -u "$username" paru -Sy --noconfirm --needed "${packages[@]}"
}
main() {
# If -q or --quiet,
# If --suckless, install all suckless packages
# If --paru, installs paru
case
}
main "$@"