Scarlett's Void Linux Handbook

Installing system:

On x86_64 download the newest iso from voidlinux.org

Current 32-bit iso is broken so download one from 2021. Its certificates have expired so you have to update it without certificate verification and then update them.

For PowerPC head out to voidlinux-ppc.org (unofficial)

Connect the machine to the internet using a LAN cable.

Partitioning notes:

On older x86 systems choose MBR file system and make two partitions on the hard drive, one of them being the swap (two times the amount of RAM).

The other is the root filesystem, mounted at "/", using the rest of the free space on the drive.

For PowerPC machines make an 800k Apple_Bootstrap partition at the beginning before the other two.

Post-installation:

After installing the system login as root and type "visudo", then scroll down until you reach a line "#ALL ALL=(ALL) ALL" and then use the delete key (not backspace) to uncomment it by deleting the #. Also uncomment the other line "Defaults targetpw". After that type ":wq" to save and exit.

You can now login as the user you set up.

Log out by typing "exit".

When typing commands, "#" means you need to execute them as root and "$" means you can execute them as a user. Use sudo to execute with root privileges.

Package Manager basic commands:

#xbps-install -Su

Check for system updates and install them.

#xbps-install {program}

Install an application. You can install multiple applications separated with space (ex. "xbps-install nano neofetch htop")

#xbps-remove {program}

Uninstall an application.

Adding repositories to the package manager:

#xbps-install void-repo-nonfree

Install nonfree repo for packages that don't have free licenses.

#xbps-install void-repo-multilib

Install repo for 32-bit packages on 64-bit systems.

Basic Unix commands:

$cd {path}

Change directory (ex. "cd /")

$cd..

Go to parent folder

$ls

List all files in current directory. You can also specify a path to list, ex. "ls /usr".

Installing Network Manager:

#xbps-install NetworkManager network-manager-applet

#sv down dhcpcd

#rm /var/service/dhcpcd

#ln -s /etc/sv/NetworkManager /var/service

#ln -s /etc/sv/dbus /var/service

Getting audio to work:

Method 1 - Pulse Audio

#xbps-install pulseaudio pa-applet pavucontrol

Method 2 - Alsa (for PowerPC)

#xbps-install alsa-utils qastools

Open qasmixer and unmute the PCM mixer.

Setting the time:

$date

Shows the current date and time.

#date --set "{date and time}

Set the date and time. Examples:

#date --set "18:58:00"

#date --set "22 Nov Thu 12:54:00 EET 2022"

Network time sync:

#xbps-install chrony

Install chrony.

#ln -s /etc/sv/chronyd /var/service

#sv up chronyd

Installing a system logger daemon (socklog):

#xbps-install socklog-void

#ln -s /etc/sv/socklog-unix /var/service

#ln -s /etc/sv/nanoklogd /var/service

#sv up socklog-unix

#sv up nanoklogd

Optimize/extend battery life on portable machines:

#xbps-install tlp

Install the tlp package.

#ln -s /etc/sv/tlp /var/service

#sv up tlp

#tlp start

Installing GPU drivers:

AMD/ATI:

#xbps-install linux-firmware-amd mesa-dri vulkan-loader mesa-vulkan-radeon mesa-vaapi mesa-vdpau

Intel:

#xbps-install linux-firmware-intel mesa-dri vulkan-loader mesa-vulkan-intel intel-video-accel

NVIDIA:

#xbps-install nvidia

If you are going to use 32-bit programs install this:

#xbps-install nvidia-libs-32bit

Installing xorg and a Desktop Environment/Window Manager:

#xbps-install xorg

Installing a Window Manager:

#xbps-install ctwm

Install Claude's Tab Window Manager, one of the many WMs available for Void.

#nano .xinitrc

Open the .xinitrc file and then enter the line below:

exec ctwm

#xbps-install xfce4

Install XFCE4.

$startxfce4

Start XFCE4.

Other useful applications from the package repository:

nano - simple to use terminal text editor

neofetch - utility that shows system info in the terminal

htop - terminal activity and resource usage monitor (kind of similar to Task Manager on Windows and Activity Monitor on Mac OS X)

stalonetray - system tray

OctoXBPS - GUI for the package manager

cbatticon - battery icon for the system tray that shows percentage

firefox

chromium

xterm - lightweight terminal emulator for X

nitrogen - wallpaper manager

xfe - file explorer

abiword - document writer

notepadqq - advanced text editor

deadbeef - music player

git

otter-browser - Webkit internet browser

Install the XBPS source packages collection:

$cd ~

$git clone https://github.com/void-linux/void-packages.git

$cd void-packages

$./xbps-src binary-bootstrap

$echo XBPS_ALLOW_RESTRICTED=yes >> etc/conf

Updating the source packages collection:

$git pull

$./xbps-src update-sys

Removing old kernels after update

Remove orphaned packages which include old kernels

#xbps-remove -o

List old kernels.

$vkpurge list

Remove old kernels.

#vkpurge rm all

Installing Google Chrome:

$cd ~/void-packages

$./xbps-src pkg google-chrome

#xbps-install -R hostdir/binpkgs/nonfree google-chrome

$google-chrome-stable

Run Chrome with this command.

Installing Discord:

Get the tar files from discord.com and extract them somewhere. After that run the executable in the folder.

Installing flatpak:

#xbps-install -S flatpak

$flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Head over to flatpak.org to check for apps and how to install them.

Installing Spotify:

TODO

Installing Minecraft:

TODO

Installing Roblox (with Grapejuice):

At the time of writing this Roblox does not officially support Linux and only has a Windows version, but there are several ways to workarounds.

I will go over the easiest one which requires you to have Flatpak.

Install Grapejuice:

$flatpak install flathub net.brinkervii.grapejuice

Open Grapejuice:

$flatpak run net.brinkervii.grapejuice first-time-setup

$flatpak run net.brinkervii.grapejuice gui

After it opens, go to the Player tab and press install. You might want to set your Roblox renderer to Vulkan (if your GPU supports it).

Also I recommend enabling the FPS unlocker as the game is locked to 60 fps by default.

And that's it! If you didn't get any errors, everything should work now.

Joining games from the browser should open the Roblox app automatically.

If that doesn't happen you can also open the Roblox app directly, browse and join games directly from it.

To do that, open the Grapejuice app and click the button on the home tab.

You can also open it from the terminal by typing:

$flatpak run net.brinkervii.grapejuice app