2023-02-04 20:38:12 +01:00
|
|
|
Void Linux (glibc) += (encryption + gummiboot)
|
2023-01-25 17:51:15 +01:00
|
|
|
|
|
|
|
Provisioning:
|
|
|
|
{
|
|
|
|
# fdisk:
|
|
|
|
{
|
|
|
|
No. Size Type
|
|
|
|
1 1G EFI System
|
|
|
|
2 rest Linux filesystem
|
|
|
|
}
|
|
|
|
# mkfs.fat -F 32 -n efi /dev/<disk1>
|
|
|
|
# cryptsetup luksFormat /dev/<disk2> --type luks2 --label luks
|
|
|
|
# cryptsetup open --type luks /dev/<disk2> root
|
|
|
|
# mkfs.ext4 -L root /dev/mapper/root
|
|
|
|
}
|
|
|
|
Installation:
|
|
|
|
{
|
|
|
|
# mount /dev/mapper/root /mnt
|
|
|
|
# mkdir /mnt/boot
|
|
|
|
# mount /dev/<disk1> /mnt/boot
|
|
|
|
# for dir in dev proc sys run; do
|
|
|
|
> mkdir /mnt/$dir
|
|
|
|
> mount --rbind --make-rslave /$dir /mnt/$dir
|
|
|
|
> done
|
|
|
|
|
|
|
|
# xbps-install -Sy -R https://repo-default.voidlinux.org/current -r /mnt base-system cryptsetup gummiboot vim apparmor (NetworkManager) git
|
|
|
|
# chroot /mnt
|
|
|
|
# chown root:root /
|
|
|
|
# chmod 755 /
|
|
|
|
# passwd root
|
|
|
|
# echo <hostname> > /etc/hostname
|
|
|
|
# vim /etc/crypttab:
|
|
|
|
{
|
|
|
|
> root /dev/disk/by-uuid none:
|
|
|
|
}
|
|
|
|
# lsblk -f |grep luks >> /etc/crypttab
|
|
|
|
# vim /etc/crypttab:
|
|
|
|
{
|
|
|
|
> root /dev/disk/by-uuid/<uuid> none:
|
|
|
|
}
|
|
|
|
# vim /etc/fstab:
|
|
|
|
{
|
|
|
|
> tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
|
|
|
|
> efivarfs /sys/firmware/efi/efivars efivarfs defaults 0 0
|
|
|
|
> /dev/disk/by-label/root / ext4 defaults,noatime 0 1
|
|
|
|
> /dev/disk/by-label/efi /boot vfat defaults 0 2
|
|
|
|
}
|
|
|
|
# vim /etc/dracut.conf.d/30.conf:
|
|
|
|
{
|
|
|
|
> hostonly="yes"
|
|
|
|
> use_fstab="yes"
|
|
|
|
> install_items+=" /etc/crypttab "
|
|
|
|
> add_drivers+=" vfat nls_cp437 nls_iso8859_1 "
|
|
|
|
}
|
|
|
|
# ln -s /etc/fstab /etc/fstab.sys
|
|
|
|
# mv /etc/runit/core-services/03-filesystems.sh{,.bak}
|
|
|
|
# vim /etc/xbps.d/xbps.conf:
|
|
|
|
{
|
|
|
|
> noextract=/etc/runit/core-services/03-filesystems.sh
|
|
|
|
}
|
|
|
|
# mount -t efivarfs efivarfs /sys/firmware/efi/efivars
|
|
|
|
# gummiboot install
|
|
|
|
# vim /boot/loader/void-options.conf:
|
|
|
|
{
|
|
|
|
> rw rd.luks.name=
|
|
|
|
}
|
|
|
|
# lsblk -f |grep luks >> /boot/loader/void-options.conf
|
2023-02-04 20:38:12 +01:00
|
|
|
# vim /boot/loader/void-options.conf:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
|
|
|
> rw rd.luks.name=<uuid>=root root=/dev/mapper/root quiet splash apparmor=1 security=apparmor
|
|
|
|
}
|
2023-02-04 20:38:12 +01:00
|
|
|
# vim /boot/loader/loader.conf:
|
|
|
|
{
|
|
|
|
> timeout 4
|
|
|
|
}
|
|
|
|
# vim /etc/default/libc-locales:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
|
|
|
> en_US.UTF-8 UTF-8
|
|
|
|
}
|
|
|
|
# xbps-reconfigure -f glibc-locales
|
|
|
|
# vim /etc/default/appamor:
|
|
|
|
{
|
|
|
|
> APPARMOR=enforce
|
|
|
|
}
|
2023-02-04 20:38:12 +01:00
|
|
|
# vim /etc/hosts:
|
|
|
|
{
|
|
|
|
> 127.0.1.1 <hostname>
|
|
|
|
}
|
|
|
|
# xbps-reconfigure -f linux{version}
|
2023-01-25 17:51:15 +01:00
|
|
|
# exit
|
|
|
|
# umount -r /mnt
|
|
|
|
# reboot
|
|
|
|
}
|
|
|
|
Post install:
|
|
|
|
{
|
2023-02-01 15:23:33 +01:00
|
|
|
$ git clone https://git.bijl.us/luc/void-desktop.git
|
2023-01-25 17:51:15 +01:00
|
|
|
Network:
|
|
|
|
{
|
|
|
|
# ln -s /etc/sv/NetworkManager /var/service
|
|
|
|
# ln -s /etc/sv/dbus /var/service
|
|
|
|
# vim /etc/NetworkManager/conf.d/rand_mac.conf:
|
|
|
|
{
|
|
|
|
> [device-mac-randomization]
|
|
|
|
> wifi.scan-rand-mac-address=yes
|
|
|
|
> [connection-mac-randomization]
|
|
|
|
> ethernet.cloned-mac-address=random
|
|
|
|
> wifi.cloned-mac-address=random
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Users:
|
|
|
|
{
|
|
|
|
# usermod -aG wheel,audio,video,kvm,tty,input(,bluetooth,_seatd) <user>
|
|
|
|
# vim /etc/xbps.d/xbps.conf:
|
|
|
|
{
|
|
|
|
> ignorepkg=sudo
|
|
|
|
}
|
|
|
|
# xbps-remove -y sudo
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy opendoas
|
2023-01-25 17:51:15 +01:00
|
|
|
# ln -s /bin/doas /bin/sudo
|
|
|
|
# vim /etc/doas.conf:
|
|
|
|
{
|
|
|
|
> permit persist :wheel as root
|
|
|
|
}
|
|
|
|
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp void-desktop/config-files/bash/.bashrc .bashrc
|
|
|
|
$ cp void-desktop/config-files/bash/.bash_profile .bash_profile
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Linux-lts:
|
|
|
|
{
|
2023-02-01 15:23:33 +01:00
|
|
|
# vim /etc/xbps.d/xbps.conf:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
|
|
|
> ignorepkg=linux
|
|
|
|
}
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy linux-lts linux-lts-headers
|
2023-02-01 15:23:33 +01:00
|
|
|
# reboot now
|
|
|
|
# xbps-remove -y linux-{version} linux{version}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Localtime:
|
|
|
|
{
|
|
|
|
# xbps-install -Sy chrony
|
|
|
|
# ln -s /etc/sv/chronyd /var/service/
|
|
|
|
# vim /etc/rc.conf:
|
|
|
|
{
|
|
|
|
> HARDWARECLOCK="localtime"
|
|
|
|
> TIMEZONE=("Europe/Amsterdam")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Swapfile:
|
|
|
|
{
|
|
|
|
# dd if=/dev/zero of=/swapfile bs=8M count=1024
|
|
|
|
# chmod 600 /swapfile
|
|
|
|
# mkswap /swapfile
|
|
|
|
# swapon /swapfile
|
|
|
|
// $ swapon --show
|
|
|
|
# vim /etc/fstab:
|
|
|
|
{
|
|
|
|
> /swapfile none swap defaults 0 0
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Repos:
|
|
|
|
{
|
|
|
|
# xbps-install -Sy void-repo-multilib void-repo-nonfree void-repo-multilib-nonfree xtools git
|
2023-02-04 20:38:12 +01:00
|
|
|
# vim /etc/xbps.d/xbps.conf:
|
|
|
|
{
|
|
|
|
> repository=https://git.bijl.us/tastatur/xbps-ample/raw/branch/main/current
|
|
|
|
> repository=https://git.bijl.us/tastatur/xbps-ample/raw/branch/main/current/nonfree
|
|
|
|
}
|
|
|
|
# xbps-install -S
|
2023-01-25 17:51:15 +01:00
|
|
|
$ git clone https://github.com/void-linux/void-packages.git
|
|
|
|
$ voidpackages/./xbps-src binary-bootstrap -j(N-threads)
|
|
|
|
$ echo XBPS_ALLOW_RESTRICTED=yes >> etc/conf
|
|
|
|
$ voidpackages/./xbps-src pkg <package_name> -j(N-threads)
|
|
|
|
# xi <package_name>
|
|
|
|
}
|
|
|
|
AMD Firmware (cpu+gpu):
|
|
|
|
{
|
|
|
|
# xbps-install -Sy linux-firmware-amd vulkan-loader mesa-vulkan-radeon amdvlk xf86-video-amdgpu mesa-vaapi mesa-vdpau mesa-dri
|
|
|
|
}
|
2023-02-04 20:38:12 +01:00
|
|
|
Logging:
|
|
|
|
{
|
|
|
|
# xbps-install -Sy socklog-void
|
|
|
|
# ln -s /etc/sv/socklog-unix /var/service/
|
|
|
|
# ln -s /etc/sv/nanoklogd /var/service/
|
|
|
|
# svlogtail (to read logs or go to /var/log/socklog)
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
Session & login manager:
|
|
|
|
{
|
|
|
|
# xbps-install -Sy elogind sddm sddm-kcm seatd wayland xorg-minimal xorg-fonts qt5-wayland qt6-wayland xorg-server-xwayland
|
|
|
|
# ln -s /etc/sv/seatd /var/service/
|
|
|
|
# ln -s /etc/sv/sddm /var/service/
|
|
|
|
|
|
|
|
(chili theme)
|
|
|
|
# xbps-install -Sy qt5 qt5-quickcontrols qt5-graphicaleffects
|
|
|
|
# git clone https://github.com/MarianArlt/sddm-chili.git /usr/share/sddm/themes/chili
|
|
|
|
# cp void-dekstop/data/chili-background/background.png /usr/share/sddm/themes/chili/assets/background.png
|
2023-02-01 15:23:33 +01:00
|
|
|
# cp void-desktop/config-files/chili/theme.conf /usr/share/sddm/themes/chili/theme.conf
|
|
|
|
# cp void-desktop/config-files/sddm/.face.icon /usr/share/sddm/faces/.face.icon
|
|
|
|
# cp void-desktop/config-files/sddm/sddm.conf /etc/sddm.conf.d/sddm.conf
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Window manager:
|
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy wayfire wf-shell wcm dconf dconf-editor plata-theme
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp void-desktop/config-files/wayfire/wayfire.ini .config/
|
|
|
|
# usermod -aG _seatd <user>
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
2023-02-01 15:23:33 +01:00
|
|
|
Display:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy kanshi wlr-randr wdisplays wlsunset
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp -r void-desktop/config-files/kanshi .config/
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> outputs = kanshi
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Taskbar:
|
|
|
|
{
|
2023-03-15 21:10:19 +01:00
|
|
|
# xbps-install -Sy Waybar network-manager-applet fontmanager papirus-icon-theme fonts-roboto-ttf font-awesome noto-fonts-ttf noto-fonts-cjk
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp -r void-desktop/config-files/waybar .config/
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> bar = waybar
|
2023-03-15 21:10:19 +01:00
|
|
|
> network = sleep 5; nm-applet --indicator
|
2023-02-01 15:23:33 +01:00
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Tasklauncher:
|
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy wofi wlogout
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp -r void-desktop/config-files/wofi .config/
|
|
|
|
$ cp -r void-desktop/config-files/wlogout .config/
|
2023-02-04 20:38:12 +01:00
|
|
|
# cp void-desktop/data/wlogout-icons/* /usr/share/wlogout/icons/
|
2023-02-01 15:23:33 +01:00
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [command]
|
|
|
|
> binding_launcher = <super> KEY_S
|
|
|
|
> binding_wlogout = <super> KEY_P
|
|
|
|
> command_launcher = wofi --show drun
|
|
|
|
> command_wlogout = wlogout
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Notifications:
|
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy mako
|
2023-02-01 15:23:33 +01:00
|
|
|
$ cp -r void-desktop/config-files/mako .config/
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> notifications = mako
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Audio:
|
|
|
|
{
|
2023-03-15 21:10:19 +01:00
|
|
|
# xbps-install alsa-pipewire pipewire wireplumber pavucontrol pamixer pa-notify
|
2023-02-04 20:38:12 +01:00
|
|
|
# mkdir /etc/pipewire
|
|
|
|
# cp /usr/share/pipewire/pipewire.conf /etc/pipewire/
|
|
|
|
# vim /etc/pipewire/pipewire.conf:
|
|
|
|
{
|
|
|
|
> context.exec = [
|
|
|
|
> { path = "/usr/bin/wireplumber" args = "" }
|
|
|
|
> { path = "/usr/bin/pipewire" args = "-c pipewire-pulse.conf"}
|
|
|
|
>]
|
|
|
|
}
|
|
|
|
# mkdir -p /etc/alsa/conf.d
|
|
|
|
# ln -s /usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/
|
|
|
|
# ln -s /usr/share/alsa/alsa.conf.d/99-pipewire.conf /etc/alsa/conf.d/
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> audio = pipewire
|
2023-03-15 21:10:19 +01:00
|
|
|
> audio_notify = sleep 5; dbus-launch pa-notify -t 2
|
2023-02-04 20:38:12 +01:00
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
2023-02-01 15:23:33 +01:00
|
|
|
Lockscreen:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
2023-02-01 15:23:33 +01:00
|
|
|
# xbps-install -Sy swayidle gtklock
|
|
|
|
$ cp -r void-desktop/config-files/gtklock .config/
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> idle = swayidle -w timeout 590 gtklock before-sleep gtklock
|
2023-01-25 17:51:15 +01:00
|
|
|
|
2023-02-01 15:23:33 +01:00
|
|
|
> [idle]
|
|
|
|
> screensaver_timeout = 300
|
|
|
|
> dpms_timeout = 600
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
2023-02-01 15:23:33 +01:00
|
|
|
Auto mounting:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
2023-02-01 15:23:33 +01:00
|
|
|
# xpbs-install -Sy udisks2 udiskie
|
|
|
|
$ vim .config/wayfire.ini:
|
|
|
|
{
|
|
|
|
> [autostart]
|
|
|
|
> automount = udiskie -As
|
|
|
|
}
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Bluetooth:
|
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install bluez bluez-alsa libspa-bluetooth blueman
|
|
|
|
# ln -s /etc/sv/bluetoothd /var/service/
|
|
|
|
# touch /var/service/bluetoothd/down
|
|
|
|
# usermod -aG bluetooth <user>
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
Samba-mount:
|
|
|
|
{
|
2023-02-04 20:38:12 +01:00
|
|
|
# xbps-install -Sy cifs-utils
|
2023-01-25 17:51:15 +01:00
|
|
|
$ vim $HOME/.smbpasswd:
|
|
|
|
{
|
|
|
|
> username=<username>
|
|
|
|
> password=<password>
|
|
|
|
> domain=<domain>
|
|
|
|
}
|
2023-02-04 20:38:12 +01:00
|
|
|
# chmod 600 $HOME/.smbpasswd
|
2023-01-25 17:51:15 +01:00
|
|
|
# vim /etc/fstab:
|
|
|
|
{
|
|
|
|
> //<domain>/<homefolder> $HOME/<smbfolder> cifs credentials=$HOME/.smbpasswd,_netdev,uid=<uid> 0 0
|
|
|
|
}
|
|
|
|
# mount -a
|
|
|
|
}
|
|
|
|
Steam:
|
2023-02-04 20:38:12 +01:00
|
|
|
{
|
2023-03-15 21:10:19 +01:00
|
|
|
# xbps-install steam wine winetricks protontricks gamemode gamescope
|
2023-02-04 20:38:12 +01:00
|
|
|
}
|
|
|
|
virt-manager:
|
2023-01-25 17:51:15 +01:00
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
Misc:
|
|
|
|
{
|
2023-02-01 15:23:33 +01:00
|
|
|
default-applications:
|
|
|
|
{
|
2023-03-15 21:10:19 +01:00
|
|
|
# xbps-install -Sy firefox vscode foot thunar element-desktop mpv baobab gimp grim slurp
|
2023-01-25 17:51:15 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|