-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinstall_programs.sh
More file actions
73 lines (65 loc) · 1.2 KB
/
Copy pathinstall_programs.sh
File metadata and controls
73 lines (65 loc) · 1.2 KB
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
#!/bin/bash
set -e # exit on error
programs=(
git
curl
vim
htop
waybar
rofi
zsh
hyprland
hyprpaper
hypridle
hyprlock
neovim
wlogout
alacritty
cliphist
ranger
# hyprland build deps
cmake
meson
ninja-build
gcc-c++
pkgconf-pkg-config
hyprcursor-devel
hyprlang-devel
aquamarine-devel
tomlplusplus-devel
libXcursor-devel
libdrm-devel
libinput-devel
mesa-libgbm-devel
re2-devel
wayland-devel
wayland-protocols-devel
xcb-util-devel
xcb-util-wm-devel
xcb-util-image-devel
xcb-util-keysyms-devel
xcb-util-renderutil-devel
xcb-util-errors-devel
)
if command -v apt >/dev/null; then
pm="apt"
sudo apt update
elif command -v dnf >/dev/null; then
pm="dnf"
sudo dnf upgrade
elif command -v pacman >/dev/null; then
pm="pacman"
sudo pacman -Sy
else
echo "No supported package manager found."
exit 1
fi
for program in "${programs[@]}"; do
echo "Installing $program..."
case $pm in
apt) sudo apt install -y "$program" ;;
dnf) sudo dnf install -y "$program" ;;
pacman) sudo pacman -S --noconfirm "$program" ;;
esac
done
echo "All packages installed."