Skip to content

Instantly share code, notes, and snippets.

@timsonner
Last active April 27, 2025 20:37
Show Gist options
  • Select an option

  • Save timsonner/78b6a8e95fb6ccd6d19810d8a9612669 to your computer and use it in GitHub Desktop.

Select an option

Save timsonner/78b6a8e95fb6ccd6d19810d8a9612669 to your computer and use it in GitHub Desktop.
ProxMox developer workstation config notes

ProxMox Developer Workstation setup

  • Install ProxMox as usual
  • Edit /etc/network/interfaces to reflect the correct IP and interface of ethernet adapter
  • Edit /etc/resolv.conf to reflect DNS server, likely gateway of router or switch

Once internet connection established, install gnome

apt install gnome

Update /etc/apt/sources.list

# defaults
deb http://ftp.us.debian.org/debian bookworm main contrib
deb http://ftp.us.debian.org/debian bookworm-updates main contrib

# testing and non-production use
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

# non-free
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware

# security updates
deb http://security.debian.org bookworm-security main contrib
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware

Install Nvidia drivers

echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
apt update
apt install pve-headers
apt install  nvidia-driver

Create public/private keys for enrolling NVIDIA MOK in SecureBoot

openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Nvidia/"

Sign Nvidia modules

#!/bin/bash
# Script to sign Nvidia kernel modules

# To find the .ko files...
# sudo find /lib/modules/$(uname -r) -type f -name '*nvidia*.ko'

/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/platform/x86/nvidia-wmi-ec-backlight.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/typec/altmodes/typec_nvidia.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/updates/dkms/nvidia-current.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/updates/dkms/nvidia-current-modeset.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/updates/dkms/nvidia-current-drm.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/updates/dkms/nvidia-current-uvm.ko
/usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/updates/dkms/nvidia-current-peermem.ko

Set path variable for root

/root/.bashrc

export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin

Fix Gnome Wayland fail when using Nvidia

/lib/udev/rules.d/61-gdm.rules Find the lines:

LABEL="gdm_disable_wayland"
RUN+="@libexecdir@/gdm-runtime-config set daemon WaylandEnable false"
GOTO="gdm_end"

Update the one line to:

RUN+="@libexecdir@/gdm-runtime-config set daemon WaylandEnable true"

Remove games

apt purge gnome-games --autoremove

Remove libreoffice

apt purge libreoffice*
apt clean

Install Edge

https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/

Remove firefox

apt purge firefox-esr*

Install Displaylink driver

https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu

curl https://www.synaptics.com/sites/default/files/Ubuntu/pool/stable/main/all/synaptics-repository-keyring.deb -o synaptics-repository-keyring.deb
dpkg -i ./synaptics-repository-keyring.deb
apt install displaylink-driver

Set a password for the MOK and enroll in SecureBoot

Install virt-viewer (to open .vv files from proxmox VMs)

*note: set display of VM to Spice, enable spice agent on install

apt install virt-viewer

Remove nag pop-up

sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\('No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment