-
Notifications
You must be signed in to change notification settings - Fork 0
/
sysPrep.sh
executable file
·84 lines (67 loc) · 2.53 KB
/
sysPrep.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
#!/bin/sh
# A script to prepare a void installation as my machine
### Requires installing and configuring doas
# Configuring doas
if ! command -v doas >/dev/null 2>&1; then
printf "### installing doas"
sudo xbps-install -Sy opendoas
sudo echo "permit nopass $(whoami) as root" > /etc/doas.conf
fi
PROGRAMSDIR="${PROGRAMSDIR:-$HOME/programs}"
[ -d "$PROGRAMSDIR" ] || mkdir -p "$PROGRAMSDIR"
# Update the system
printf "### updating the system\n"
doas xbps-install -u xbps; doas xbps-install -Su
alias xi="doas xbps-install -Sy"
# Base packages
printf "### installing base packages\n"
xi base-devel git curl wget libXft-devel libXinerama-devel libX11-devel libXrandr-devel pkg-config elogind dbus polkit neovim
doas ln -s /etc/sv/dbus /var/service
doas ln -s /etc/sv/elogind /var/service
doas ln -s /etc/sv/polkitd /var/service
# Xorg
# Wayland
# printf "### installing Xorg\n"
# xi xorg-minimal xinit xkill setxkbmap xrdb xdg-utils xdg-user-dirs xprop picom xsetroot
printf "### installing Wayland\n"
xi river kanshi sandbar mako grim slurp swayidle waylock wbg wl-clipboard wlr-randr poweralertd
xi xdg-utils xdg-user-dirs xdg-desktop-portal xdg-desktop-portal-wlr
# Enable some repositories
printf "### enabling some repositories\n"
xi void-repo-nonfree void-repo-multilib void-repo-multilib-nonfree
# Install nvidia
printf "### installing nvidia\n"
xi nvidia nvidia-dkms nvidia-opencl
# Multimedia
xi alsa-utils pipewire alsa-pipewire wireplumber sof-firmware alsa-ucm-conf mpd ncmpcpp mpv yt-dlp nsxiv ffmpeg zathura zathura-pdf-mupdf
# Configure pipewire
doas mkdir -p /etc/pipewire/pipewire.conf.d
doas ln -s /usr/share/examples/wireplumber/10-wireplumber.conf /etc/pipewire/pipewire.conf.d/
doas ln -s /usr/share/examples/pipewire/20-pipewire-pulse.conf /etc/pipewire/pipewire.conf.d/
# Essential packages
xi zsh zsh-autosuggestions zsh-completions zsh-history-substring-search
xi nix
doas ln -s /etc/var/nix-daemon /var/service
xi ufw
xi wine wine-gecko wine-mono winetricks mesa-dri-32bit lutris mesa-vulkan-intel
xi fontconfig dejavu-fonts-ttf amiri-font noto-fonts-emoji arc-theme awdaita-plus lxappearance
xi fzf ripgrep
xi vnstat
doas ln -s /etc/sv/vnstatd /var/service
xi libspa-bluetooth pulsemixer bluez bluez-alsa dhcpcd
xi NetworkManager
xi lm_sensors
xi firefox
xi dunst
xi xbacklight xbansih sxhkd
xi scrot
xi xclip
xi xdotool
xi neomutt msmtp offlineimap notmuch fuse-exfat ntfs-3g rsync ImageMagick pass
xi tmux tmate
xi syncthing
xi docker qemu virt-manager texlive-basic texlive-pictures go nodejs gcc
xi mlocate
xi delta
doas updatedb
doas reboot