Cloning the repository
- Get the SSH key. Save the content of the
.ssh/id_rsa
file to~/.ssh/id_rsa
- Restrict the permissions for the file with
chmod 600 ~/.ssh/id_rsa
- Add the key to the agent:
eval $(ssh-agent -s) && \
ssh-add ~/.ssh/id_rsa
- Clone the repo with
git clone git@github.com:Jafner/dotfiles.git ~/Git/dotfiles
- Place the dotfiles where they need to be with
chmod +x install_dotfiles.sh && ./install_dotfiles.sh
Other Stuff
Autostart
- Set Spotify, PulseEffects, and Ferdi to start automatically.
chmod +x window_reposition.sh
sudo cp .scripts/window_reposition.sh /usr/bin/window_reposition
- Run the window_reposition script at startup.
Tiling and corner-snapping
Using GNOME, disable all extensions. Install Tiling Assistant Set Windows and Screen Edges gaps to 12px.
Virtualization
Install libvirt
.
nano /etc/default/grub
and add amd_iommu=on iommu=pt
to the GRUB_CMDLINE_LINUX_DEFAULT
variable.
sudo grub-mkconfig -o /boot/grub/grub.cfg
to update the bootloader.
Install QEMU, KVM, libvirt, virtmanager. sudo pacman -S virt-manager qemu vde2 ebtables dnsmasq bridge-utils openbsd-netcat ovmf
Configure libvirtd
sudo sed -i 's/#unix_sock_group = "libvirt"/unix_sock_group = "libvirt"/' /etc/libvirt/libvirtd.conf && \
sudo sed -i 's/#unix_sock_rw_perms = "0770"/unix_sock_rw_perms = "0770"/' /etc/libvirt/libvirtd.conf && \
sudo bash -c 'echo "log_filters=\"1:qemu\"" >> /etc/libvirt/libvirtd.conf' && \
sudo bash -c 'echo "log_outputs=\"1:file:/var/log/libvirt/libvirtd.log\"" >> /etc/libvirt/libvirtd.conf' && \
sudo usermod -aG libvirt $USER && \
sudo systemctl enable libvirtd && \
sudo systemctl start libvirtd && \
sudo sed -i 's/#user = "root"/user = "joey"/' /etc/libvirt/qemu.conf && \
sudo sed -i 's/#group = "root"/group = "joey"/' /etc/libvirt/qemu.conf && \
sudo systemctl restart libvirtd
Reboot.
Set up the VM, following the RisingPrism wiki.
Open Nvidia X Server Settings, go to GPU 0 and check the VBIOS version.
Browse to https://www.techpowerup.com/vgabios/ and download the correct VBIOS file.
Rename the file to vbios.rom
.
Actually, dump and patch your own ROM with techpowerup's nvflash and the Bless hex editor. This will require unloading all of the nvidia kernel modules, so connect via SSH from another host.
Stop the display manager, then unload the nvidia kernel modules
sudo systemctl stop gdm.service && sudo modprobe -r i2c_nvidia_gpu nvidia_uvm nvidia nvidia_drm
Then dump the rom.
sudo ./nvflash --save vbios.rom
Reload the kernel modules and restart the display manager
sudo modprobe i2c_nvidia_gpu nvidia_uvm nvidia nvidia_drm && sudo systemctl start gdm.service
Open the new vbios file in Bless hex editor, search for 'VIDEO' in text mode. Delete all lines up to the U
character on that line (exclusive). Save the patched version as vbios_patched.rom
. Restrict its permissions with chmod 660 vbios_patched.rom
then copy it to the share folder with sudo cp vbios_patched.rom /usr/share/vbios/vbios.rom
Place the VBIOS file.
sudo mkdir /usr/share/vbios && \
sudo cp ~/Downloads/vbios.rom /usr/share/vbios/vbios.rom && \
cd /usr/share/vbios && \
sudo chmod -R 660 vbios.rom && \
sudo chown joey:joey vbios.rom