From 799a98a45613ef7bbab2048cb5343bdf0a55898f Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 12 Aug 2026 00:55:43 -0700 Subject: [PATCH] Compress the nvidia 580xx packages with maximum zstd The build image compresses at zstd's default level, which leaves these unstripped driver blobs 22% larger than they need to be. Measured against the packages on the quattro-beta3 ISO: nvidia-580xx-utils 359.4 -> 276.2 MiB lib32-nvidia-580xx-utils 74.2 -> 48.8 MiB nvidia-580xx-dkms 85.5 -> 79.8 MiB That is 114 MiB off the ISO's offline mirror, which stores packages essentially uncompressed inside squashfs, so it comes straight off the image. The dkms package rides along on its pkgbase. Carried as .omarchy patches so they survive AUR syncs. Co-Authored-By: Claude Opus 5 (1M context) --- .../.omarchy/patches/max-zstd-compression.patch | 15 +++++++++++++++ pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD | 8 +++++++- .../.omarchy/patches/max-zstd-compression.patch | 15 +++++++++++++++ pkgbuilds/nvidia-580xx-utils/PKGBUILD | 8 +++++++- 4 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch create mode 100644 pkgbuilds/nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch diff --git a/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch b/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch new file mode 100644 index 0000000..10f90eb --- /dev/null +++ b/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch @@ -0,0 +1,15 @@ +--- a/PKGBUILD ++++ b/PKGBUILD +@@ -12,6 +12,12 @@ + #makedepends=('nvidia-libgl') # To avoid conflict during installation in the build chroot + license=('custom') + options=('!strip') ++ ++# Omarchy: the build image compresses with zstd at its default level, which ++# leaves these unstripped driver blobs far larger than they need to be. Maximum ++# zstd saves 25 MB here, most of it on the ISO's offline mirror. ++COMPRESSZST=(zstd -c -z -q --ultra -22 --threads=0 -) ++ + _pkg="NVIDIA-Linux-x86_64-${pkgver}" + source=("https://download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run") + sha512sums=('ca394b1e3f6c3403dc7ffe5d5fd7301bb06607fdbf75c9ffd338d7641c06d1878790c629108162adf4289ae829568973a48b7557183dbf7588e668f6d8edf3b3') diff --git a/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD b/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD index 92dec7e..a44c27e 100644 --- a/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD +++ b/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD @@ -6,12 +6,18 @@ pkgbase=lib32-nvidia-580xx-utils pkgname=('lib32-nvidia-580xx-utils' 'lib32-opencl-nvidia-580xx') pkgver=580.173.02 -pkgrel=1 +pkgrel=1.1 arch=('x86_64') url="http://www.nvidia.com/" #makedepends=('nvidia-libgl') # To avoid conflict during installation in the build chroot license=('custom') options=('!strip') + +# Omarchy: the build image compresses with zstd at its default level, which +# leaves these unstripped driver blobs far larger than they need to be. Maximum +# zstd saves 25 MB here, most of it on the ISO's offline mirror. +COMPRESSZST=(zstd -c -z -q --ultra -22 --threads=0 -) + _pkg="NVIDIA-Linux-x86_64-${pkgver}" source=("https://download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run") sha512sums=('ca394b1e3f6c3403dc7ffe5d5fd7301bb06607fdbf75c9ffd338d7641c06d1878790c629108162adf4289ae829568973a48b7557183dbf7588e668f6d8edf3b3') diff --git a/pkgbuilds/nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch b/pkgbuilds/nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch new file mode 100644 index 0000000..deb2e8f --- /dev/null +++ b/pkgbuilds/nvidia-580xx-utils/.omarchy/patches/max-zstd-compression.patch @@ -0,0 +1,15 @@ +--- a/PKGBUILD ++++ b/PKGBUILD +@@ -13,6 +13,12 @@ + url="http://www.nvidia.com/" + license=('custom') + options=('!strip') ++ ++# Omarchy: the build image compresses with zstd at its default level, which ++# leaves these unstripped driver blobs far larger than they need to be. Maximum ++# zstd saves 89 MB across this pkgbase, most of it on the ISO's offline mirror. ++COMPRESSZST=(zstd -c -z -q --ultra -22 --threads=0 -) ++ + _pkg="NVIDIA-Linux-x86_64-${pkgver}" + _pkg_open="NVIDIA-kernel-module-source-${pkgver}" + source=('nvidia-drm-outputclass.conf' diff --git a/pkgbuilds/nvidia-580xx-utils/PKGBUILD b/pkgbuilds/nvidia-580xx-utils/PKGBUILD index 2c95cfd..6721979 100644 --- a/pkgbuilds/nvidia-580xx-utils/PKGBUILD +++ b/pkgbuilds/nvidia-580xx-utils/PKGBUILD @@ -8,11 +8,17 @@ pkgbase=nvidia-580xx-utils pkgname=('nvidia-580xx-utils' 'opencl-nvidia-580xx' 'nvidia-580xx-dkms') pkgver=580.173.02 -pkgrel=1 +pkgrel=1.1 arch=('x86_64') url="http://www.nvidia.com/" license=('custom') options=('!strip') + +# Omarchy: the build image compresses with zstd at its default level, which +# leaves these unstripped driver blobs far larger than they need to be. Maximum +# zstd saves 89 MB across this pkgbase, most of it on the ISO's offline mirror. +COMPRESSZST=(zstd -c -z -q --ultra -22 --threads=0 -) + _pkg="NVIDIA-Linux-x86_64-${pkgver}" _pkg_open="NVIDIA-kernel-module-source-${pkgver}" source=('nvidia-drm-outputclass.conf'