Skip to content

Instantly share code, notes, and snippets.

@yuna0x0
Last active May 13, 2024 19:28
Show Gist options
  • Save yuna0x0/6e5345b019a80de733f375b71f4d3917 to your computer and use it in GitHub Desktop.
Save yuna0x0/6e5345b019a80de733f375b71f4d3917 to your computer and use it in GitHub Desktop.
Proxmox VE Customization
#!/usr/bin/env bash
# Disable the default enterprise repository
if [ -f /etc/apt/sources.list.d/pve-enterprise.list ]; then
mv /etc/apt/sources.list.d/pve-enterprise.list /etc/apt/sources.list.d/pve-enterprise.list.disabled
fi
# Enable the no-subscription repository
echo "deb http://download.proxmox.com/debian/pve buster pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
# Remove Subscription Warning Dialog
sed -i -z "s/res\\n.*\\.data\\.status\\.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
# Logos and Virtual Machine Boot Screen Customization
cp -f /usr/share/custom/{favicon.ico,logo-128.png,proxmox_logo.png} /usr/share/pve-manager/images/
cp -f /usr/share/custom/bootsplash.jpg /usr/share/qemu-server/
This customization method references "https://lunar.computer/posts/persistent-customizations-proxmox-60/" and has been fixed and tl;dr by @edisonlee55.
Note: If you are logged in as "root", leave out "sudo" in the commands below.
1. Create folder "/usr/share/custom/" and "/usr/share/custom/backup"
$ sudo mkdir /usr/share/custom
$ sudo mkdir /usr/share/custom/backup
2. Backup "proxmoxlib.js"
$ sudo cp /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js /usr/share/custom/backup/
3. Backup Logos and Virtual Machine Boot Screen
$ sudo cp /usr/share/pve-manager/images/{favicon.ico,logo-128.png,proxmox_logo.png} /usr/share/custom/backup/
$ sudo cp /usr/share/qemu-server/bootsplash.jpg /usr/share/custom/backup/
4. Create customized Logos and Virtual Machine Boot Screen assets
Reference: https://lunar.computer/posts/change-logos-proxmox-60/
5. Copy customized Logos and Virtual Machine Boot Screen assets from local machine to PVE machine
$ scp {bootsplash.jpg,favicon.ico,logo-128.png,proxmox_logo.png} <username>@<hostname>:/usr/share/custom/
6. Copy file "apply.sh" from this gist to "/usr/share/custom/apply.sh"
7. Make apply.sh executable
$ sudo chmod a+x /usr/share/custom/apply.sh
8. Create apt hook
$ sudo echo 'DPkg::Post-Invoke { "/usr/share/custom/apply.sh"; };' > /etc/apt/apt.conf.d/90custom
9. Apply the customization
$ sudo /usr/share/custom/apply.sh
@steveyiyo
Copy link

Wow! Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment