summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.org135
-rw-r--r--nongnu/packages/nvidia.scm118
-rw-r--r--nonguix/transformations.scm63
3 files changed, 228 insertions, 88 deletions
diff --git a/README.org b/README.org
index ada71e7..9f059bc 100644
--- a/README.org
+++ b/README.org
@@ -241,43 +241,48 @@ version to use.
241 241
242Here're GPUs supported by our packaged proprietary drivers. 242Here're GPUs supported by our packaged proprietary drivers.
243 243
244| Code name | Series | nvda-beta | nvda-595 | nvda-590 | nvda-580 | nvda-470 | nvda-390 | Nouveau | 244| Code name | Series | nvda-beta | nvda-new-feature | nvda-595 | nvda-590 | nvda-580 | ⚠️ nvda-470 | ⚠️ nvda-390 | Nouveau |
245|--------------+------------------------------------+-----------+----------+----------+----------+----------+----------+---------| 245|--------------+------------------------------------+-----------+------------------+----------+----------+----------+--------------+--------------+---------|
246| [[https://en.wikipedia.org/wiki/Blackwell_(microarchitecture)][Blackwell]] | GeForce 50 series | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | 246| [[https://en.wikipedia.org/wiki/Blackwell_(microarchitecture)][Blackwell]] | GeForce 50 series | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
247| [[https://en.wikipedia.org/wiki/Ada_Lovelace_(microarchitecture)][Ada Lovelace]] | GeForce 40 series | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | 247| [[https://en.wikipedia.org/wiki/Ada_Lovelace_(microarchitecture)][Ada Lovelace]] | GeForce 40 series | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
248| [[https://en.wikipedia.org/wiki/Ampere_(microarchitecture)][Ampere]] | GeForce 30 series | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | 248| [[https://en.wikipedia.org/wiki/Ampere_(microarchitecture)][Ampere]] | GeForce 30 series | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
249| [[https://en.wikipedia.org/wiki/Turing_(microarchitecture)][Turing]] | GeForce 16/20 series | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | 249| [[https://en.wikipedia.org/wiki/Turing_(microarchitecture)][Turing]] | GeForce 16/20 series | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
250| [[https://en.wikipedia.org/wiki/Volta_(microarchitecture)][Volta]] | Titan V | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | 250| [[https://en.wikipedia.org/wiki/Volta_(microarchitecture)][Volta]] | Titan V | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
251| [[https://en.wikipedia.org/wiki/Pascal_(microarchitecture)][Pascal]] | GeForce 10 series | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | 251| [[https://en.wikipedia.org/wiki/Pascal_(microarchitecture)][Pascal]] | GeForce 10 series | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
252| [[https://en.wikipedia.org/wiki/Pascal_(microarchitecture)][Maxwell]] | GeForce 750/900 | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | 252| [[https://en.wikipedia.org/wiki/Pascal_(microarchitecture)][Maxwell]] | GeForce 750/900 | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
253| [[https://en.wikipedia.org/wiki/Kepler_(microarchitecture)][Kepler]] | GeForce 600/700, GeForce GTX Titan | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | 253| [[https://en.wikipedia.org/wiki/Kepler_(microarchitecture)][Kepler]] | GeForce 600/700, GeForce GTX Titan | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
254| [[https://en.wikipedia.org/wiki/Fermi_(microarchitecture)][Fermi]] | GeForce 400/500 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | 254| [[https://en.wikipedia.org/wiki/Fermi_(microarchitecture)][Fermi]] | GeForce 400/500 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
255 255
256*NOTE*: Open source kernel modules are supported since Turing and required since 256*NOTE*:
257Blackwell. Wayland support for =nvda-470= and =nvda-390= is only available on 257- Open source kernel modules are supported since Turing and required since
258GNOME desktop environment. 258 Blackwell.
259- Drivers marked as ⚠️ are no longer supported by upstream and won't receive
260 functionality or security updates.
261- =nvda-beta= and =nvda-new-feature= are not production-ready.
259 262
260Per-driver supported kernel versions, let us know if you have hardware to test! 263Per-driver supported kernel versions, let us know if you have hardware to test!
261 264
262| Driver | linux-7.0 | linux-6.19 | linux-6.18 | linux-6.12 | linux-6.6 | linux-6.1 | 265| Driver | linux-7.0 | linux-6.19 | linux-6.18 | linux-6.12 | linux-6.6 | linux-6.1 |
263|-----------+-----------+------------+------------+------------+-----------+-----------| 266|------------------+-----------+------------+------------+------------+-----------+-----------|
264| nvda-beta | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ | 267| nvda-beta | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ |
265| nvda-595 | ✅️ | ✅ | ✅ | ✅ | ✅ | ✅ | 268| nvda-new-feature | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
266| nvda-590 | ✅ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ | 269| nvda-595 | ✅️ | ✅ | ✅ | ✅ | ✅ | ✅ |
267| nvda-580 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 270| nvda-590 | ✅ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ |
268| nvda-470 | ✅ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ | 271| nvda-580 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
269| nvda-390 | | | | | | | 272| nvda-470 | ✅ | ✅️ | ✅️ | ✅️ | ✅️ | ✅️ |
273| nvda-390 | | | | | | |
270 274
271Driver package specifications, for command-line interface usage. 275Driver package specifications, for command-line interface usage.
272 276
273| Driver | Specification | 277| Driver | Specification |
274|-----------+---------------| 278|------------------+------------------|
275| nvda-beta | nvda-beta | 279| nvda-beta | nvda-beta |
276| nvda-595 | nvda@595 | 280| nvda-new-feature | nvda-new-feature |
277| nvda-590 | nvda@590 | 281| nvda-595 | nvda@595 |
278| nvda-580 | nvda@580 | 282| nvda-590 | nvda@590 |
279| nvda-470 | nvda@470 | 283| nvda-580 | nvda@580 |
280| nvda-390 | nvda@390 | 284| nvda-470 | nvda@470 |
285| nvda-390 | nvda@390 |
281 286
282*** Configure operating system for NVIDIA proprietary driver 287*** Configure operating system for NVIDIA proprietary driver
283System setup is implemented via =nonguix-transformation-nvidia=: 288System setup is implemented via =nonguix-transformation-nvidia=:
@@ -470,38 +475,42 @@ of the normal one. Aforementioned application setup is still necessary.
470- mpv-nvidia 475- mpv-nvidia
471- obs-nvidia 476- obs-nvidia
472 477
473| Variable | Specification | 478| Variable | Specification |
474|----------------------+----------------------| 479|-----------------------------+-----------------------------|
475| ffmpeg/nvidia-beta | ffmpeg-nvidia-beta | 480| ffmpeg/nvidia-beta | ffmpeg-nvidia-beta |
476| ffmpeg/nvidia-595 | ffmpeg-nvidia@595 | 481| ffmpeg/nvidia-new-feature | ffmpeg-nvidia-new-feature |
477| ffmpeg/nvidia-590 | ffmpeg-nvidia@590 | 482| ffmpeg/nvidia-595 | ffmpeg-nvidia@595 |
478| ffmpeg/nvidia-580 | ffmpeg-nvidia@580 | 483| ffmpeg/nvidia-590 | ffmpeg-nvidia@590 |
479| ffmpeg/nvidia-470 | ffmpeg-nvidia@470 | 484| ffmpeg/nvidia-580 | ffmpeg-nvidia@580 |
480| ffmpeg/nvidia-390 | ffmpeg-nvidia@390 | 485| ffmpeg/nvidia-470 | ffmpeg-nvidia@470 |
481| ffmpeg-6/nvidia-beta | ffmpeg-6-nvidia-beta | 486| ffmpeg/nvidia-390 | ffmpeg-nvidia@390 |
482| ffmpeg-6/nvidia-595 | ffmpeg-6-nvidia@595 | 487| ffmpeg-6/nvidia-beta | ffmpeg-6-nvidia-beta |
483| ffmpeg-6/nvidia-590 | ffmpeg-6-nvidia@590 | 488| ffmpeg-6/nvidia-new-feature | ffmpeg-6-nvidia-new-feature |
484| ffmpeg-6/nvidia-580 | ffmpeg-6-nvidia@580 | 489| ffmpeg-6/nvidia-595 | ffmpeg-6-nvidia@595 |
485| ffmpeg-6/nvidia-470 | ffmpeg-6-nvidia@470 | 490| ffmpeg-6/nvidia-590 | ffmpeg-6-nvidia@590 |
486| ffmpeg-6/nvidia-390 | ffmpeg-6-nvidia@390 | 491| ffmpeg-6/nvidia-580 | ffmpeg-6-nvidia@580 |
487 492| ffmpeg-6/nvidia-470 | ffmpeg-6-nvidia@470 |
488| Variable | Specification | 493| ffmpeg-6/nvidia-390 | ffmpeg-6-nvidia@390 |
489|--------------------+--------------------| 494
490| heroic-nvidia-beta | heroic-nvidia-beta | 495| Variable | Specification |
491| heroic-nvidia-595 | heroic-nvidia@595 | 496|---------------------------+---------------------------|
492| heroic-nvidia-590 | heroic-nvidia@590 | 497| heroic-nvidia-beta | heroic-nvidia-beta |
493| heroic-nvidia-580 | heroic-nvidia@580 | 498| heroic-nvidia-new-feature | heroic-nvidia-new-feature |
494| heroic-nvidia-470 | heroic-nvidia@470 | 499| heroic-nvidia-595 | heroic-nvidia@595 |
495| heroic-nvidia-390 | heroic-nvidia@390 | 500| heroic-nvidia-590 | heroic-nvidia@590 |
496 501| heroic-nvidia-580 | heroic-nvidia@580 |
497| Variable | Specification | 502| heroic-nvidia-470 | heroic-nvidia@470 |
498|-------------------+-------------------| 503| heroic-nvidia-390 | heroic-nvidia@390 |
499| steam-nvidia-beta | steam-nvidia-beta | 504
500| steam-nvidia-595 | steam-nvidia@595 | 505| Variable | Specification |
501| steam-nvidia-590 | steam-nvidia@590 | 506|--------------------------+--------------------------|
502| steam-nvidia-580 | steam-nvidia@580 | 507| steam-nvidia-beta | steam-nvidia-beta |
503| steam-nvidia-470 | steam-nvidia@470 | 508| steam-nvidia-new-feature | steam-nvidia-new-feature |
504| steam-nvidia-390 | steam-nvidia@390 | 509| steam-nvidia-595 | steam-nvidia@595 |
510| steam-nvidia-590 | steam-nvidia@590 |
511| steam-nvidia-580 | steam-nvidia@580 |
512| steam-nvidia-470 | steam-nvidia@470 |
513| steam-nvidia-390 | steam-nvidia@390 |
505 514
506** Substitutes for nonguix 515** Substitutes for nonguix
507 516
diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm
index d3817e0..0dc0104 100644
--- a/nongnu/packages/nvidia.scm
+++ b/nongnu/packages/nvidia.scm
@@ -290,6 +290,18 @@
290 "aarch64" 290 "aarch64"
291 (base32 "1vryavba06x3kfig8ixkycdmwvw6r125l4w0fy9m4x1l5nhsacjz"))) 291 (base32 "1vryavba06x3kfig8ixkycdmwvw6r125l4w0fy9m4x1l5nhsacjz")))
292 292
293(define nvidia-source-new-feature-x86_64-linux
294 (make-nvidia-source
295 "610.43.02"
296 "x86_64"
297 (base32 "0qvllxnb20arjhw3bxdz0hw521di9ib75hldzx97gpscpdaa0d1h")))
298
299(define nvidia-source-new-feature-aarch64-linux
300 (make-nvidia-source
301 "610.43.02"
302 "aarch64"
303 (base32 "1ksk2gbaambpndiia4qjk0xkwklylnv081c7b9rzf0qli6g97ica")))
304
293(define nvidia-source-beta-x86_64-linux 305(define nvidia-source-beta-x86_64-linux
294 (make-nvidia-source 306 (make-nvidia-source
295 "595.45.04" 307 "595.45.04"
@@ -802,6 +814,19 @@ mainly used as a dependency of other packages. For user-facing purpose, use
802 (prepend egl-wayland2))) 814 (prepend egl-wayland2)))
803 (synopsis "Proprietary NVIDIA driver (libraries), production branch")))) 815 (synopsis "Proprietary NVIDIA driver (libraries), production branch"))))
804 816
817(define-public nvidia-driver-new-feature
818 (binary-package-from-sources
819 `(("x86_64-linux" . ,nvidia-source-new-feature-x86_64-linux)
820 ("aarch64-linux" . ,nvidia-source-new-feature-aarch64-linux))
821 (package
822 (inherit nvidia-driver-595)
823 (name "nvidia-driver-new-feature")
824 (arguments (%nvidia-driver-arguments-595))
825 (inputs
826 (modify-inputs inputs
827 (prepend egl-wayland2)))
828 (synopsis "Proprietary NVIDIA driver (libraries), new feature branch"))))
829
805(define (%nvidia-driver-arguments-beta) 830(define (%nvidia-driver-arguments-beta)
806 (substitute-keyword-arguments (%nvidia-driver-arguments-580) 831 (substitute-keyword-arguments (%nvidia-driver-arguments-580)
807 ((#:phases phases) 832 ((#:phases phases)
@@ -898,6 +923,16 @@ instead.")))
898 (arguments (%nvidia-firmware-arguments (package-version this-package))) 923 (arguments (%nvidia-firmware-arguments (package-version this-package)))
899 (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), production branch")))) 924 (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), production branch"))))
900 925
926(define-public nvidia-firmware-new-feature
927 (binary-package-from-sources
928 `(("x86_64-linux" . ,nvidia-source-new-feature-x86_64-linux)
929 ("aarch64-linux" . ,nvidia-source-new-feature-aarch64-linux))
930 (package
931 (inherit nvidia-firmware-595)
932 (name "nvidia-firmware-new-feature")
933 (arguments (%nvidia-firmware-arguments (package-version this-package)))
934 (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), new feature branch"))))
935
901(define-public nvidia-firmware-beta 936(define-public nvidia-firmware-beta
902 (binary-package-from-sources 937 (binary-package-from-sources
903 `(("x86_64-linux" . ,nvidia-source-beta-x86_64-linux) 938 `(("x86_64-linux" . ,nvidia-source-beta-x86_64-linux)
@@ -993,6 +1028,16 @@ driver.")))
993 (arguments (%nvidia-module-arguments)) 1028 (arguments (%nvidia-module-arguments))
994 (synopsis "Proprietary NVIDIA driver (kernel modules), production branch")))) 1029 (synopsis "Proprietary NVIDIA driver (kernel modules), production branch"))))
995 1030
1031(define-public nvidia-module-new-feature
1032 (binary-package-from-sources
1033 `(("x86_64-linux" . ,nvidia-source-new-feature-x86_64-linux)
1034 ("aarch64-linux" . ,nvidia-source-new-feature-aarch64-linux))
1035 (package
1036 (inherit nvidia-module-595)
1037 (name "nvidia-module-new-feature")
1038 (arguments (%nvidia-module-arguments))
1039 (synopsis "Proprietary NVIDIA driver (kernel modules), new feature branch"))))
1040
996(define-public nvidia-module-beta 1041(define-public nvidia-module-beta
997 (binary-package-from-sources 1042 (binary-package-from-sources
998 `(("x86_64-linux" . ,nvidia-source-beta-x86_64-linux) 1043 `(("x86_64-linux" . ,nvidia-source-beta-x86_64-linux)
@@ -1100,6 +1145,25 @@ NVIDIA driver.")
1100 "nvidia-module-open-bsb-dsc-fix.patch")))) 1145 "nvidia-module-open-bsb-dsc-fix.patch"))))
1101 (synopsis "Proprietary NVIDIA driver (open source kernel modules), production branch"))) 1146 (synopsis "Proprietary NVIDIA driver (open source kernel modules), production branch")))
1102 1147
1148(define-public nvidia-module-open-new-feature
1149 (package
1150 (inherit nvidia-module-open-595)
1151 (name "nvidia-module-open-new-feature")
1152 (version "610.43.02")
1153 (source
1154 (origin
1155 (method git-fetch)
1156 (uri (git-reference
1157 (url "https://github.com/NVIDIA/open-gpu-kernel-modules")
1158 (commit version)))
1159 (file-name (git-file-name name version))
1160 (sha256
1161 (base32
1162 "06xqq2brq9r616qm37z4vyjj9rz2m8r51rkj1006pg3qjralvzl4"))
1163 (patches
1164 (nongnu-patches "nvidia-module-open-add-ibt-support.patch"))))
1165 (synopsis "Proprietary NVIDIA driver (open source kernel modules), new feature branch")))
1166
1103(define-public nvidia-module-open-beta 1167(define-public nvidia-module-open-beta
1104 (package 1168 (package
1105 (inherit nvidia-module-open-580) 1169 (inherit nvidia-module-open-580)
@@ -1225,6 +1289,22 @@ device files are present and configure certain runtime settings in the kernel.")
1225 "0sr54fzjgjv6n46g53ggs19ri6v9hd723ks8vlhs24k48sfsymax")))) 1289 "0sr54fzjgjv6n46g53ggs19ri6v9hd723ks8vlhs24k48sfsymax"))))
1226 (synopsis "Create NVIDIA character device files, production branch"))) 1290 (synopsis "Create NVIDIA character device files, production branch")))
1227 1291
1292(define-public nvidia-modprobe-new-feature
1293 (package
1294 (inherit nvidia-modprobe-595)
1295 (name "nvidia-modprobe-new-feature")
1296 (version "610.43.02")
1297 (source (origin
1298 (method git-fetch)
1299 (uri (git-reference
1300 (url "https://github.com/NVIDIA/nvidia-modprobe")
1301 (commit version)))
1302 (file-name (git-file-name name version))
1303 (sha256
1304 (base32
1305 "047iiw3y02623japn2cc4zpmn3djfgck9i8xabm6p69r3xjz2p70"))))
1306 (synopsis "Create NVIDIA character device files, new feature branch")))
1307
1228(define-public nvidia-modprobe-beta 1308(define-public nvidia-modprobe-beta
1229 (package 1309 (package
1230 (inherit nvidia-modprobe-580) 1310 (inherit nvidia-modprobe-580)
@@ -1402,6 +1482,23 @@ configuration, application profiles, GPU monitoring and more.")
1402 (snippet '(delete-file-recursively "src/jansson")))) 1482 (snippet '(delete-file-recursively "src/jansson"))))
1403 (synopsis "NVIDIA proprietary driver control panel, production branch"))) 1483 (synopsis "NVIDIA proprietary driver control panel, production branch")))
1404 1484
1485(define-public nvidia-settings-new-feature
1486 (package
1487 (inherit nvidia-settings-595)
1488 (name "nvidia-settings-new-feature")
1489 (version "610.43.02")
1490 (source
1491 (origin
1492 (method git-fetch)
1493 (uri (git-reference
1494 (url "https://github.com/NVIDIA/nvidia-settings")
1495 (commit version)))
1496 (file-name (git-file-name name version))
1497 (sha256 (base32 "18dh375bksq7lc80y3swpa4iz7npvfj8v90zp6z3b330yjwj306i"))
1498 (modules '((guix build utils)))
1499 (snippet '(delete-file-recursively "src/jansson"))))
1500 (synopsis "NVIDIA proprietary driver control panel, new feature branch")))
1501
1405(define-public nvidia-settings-beta 1502(define-public nvidia-settings-beta
1406 (package 1503 (package
1407 (inherit nvidia-settings-580) 1504 (inherit nvidia-settings-580)
@@ -1572,6 +1669,7 @@ content.")
1572 '#$(list (this-package-input "libglvnd") 1669 '#$(list (this-package-input "libglvnd")
1573 (this-package-input "mesa") 1670 (this-package-input "mesa")
1574 (or (this-package-input "nvidia-driver") 1671 (or (this-package-input "nvidia-driver")
1672 (this-package-input "nvidia-driver-new-feature")
1575 (this-package-input "nvidia-driver-beta")) 1673 (this-package-input "nvidia-driver-beta"))
1576 (this-package-input "nvidia-vaapi-driver")))))) 1674 (this-package-input "nvidia-vaapi-driver"))))))
1577 (native-search-paths 1675 (native-search-paths
@@ -1634,12 +1732,14 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1634(define-nvda-package nvda-580 nvidia-driver-580) 1732(define-nvda-package nvda-580 nvidia-driver-580)
1635(define-nvda-package nvda-590 nvidia-driver-590) 1733(define-nvda-package nvda-590 nvidia-driver-590)
1636(define-nvda-package nvda-595 nvidia-driver-595) 1734(define-nvda-package nvda-595 nvidia-driver-595)
1735(define-nvda-package nvda-new-feature nvidia-driver-new-feature)
1637(define-nvda-package nvda-beta nvidia-driver-beta) 1736(define-nvda-package nvda-beta nvidia-driver-beta)
1638(define-nvda-package nvda-user-alias-390 nvidia-driver-390 "nvda") 1737(define-nvda-package nvda-user-alias-390 nvidia-driver-390 "nvda")
1639(define-nvda-package nvda-user-alias-470 nvidia-driver-470 "nvda") 1738(define-nvda-package nvda-user-alias-470 nvidia-driver-470 "nvda")
1640(define-nvda-package nvda-user-alias-580 nvidia-driver-580 "nvda") 1739(define-nvda-package nvda-user-alias-580 nvidia-driver-580 "nvda")
1641(define-nvda-package nvda-user-alias-590 nvidia-driver-590 "nvda") 1740(define-nvda-package nvda-user-alias-590 nvidia-driver-590 "nvda")
1642(define-nvda-package nvda-user-alias-595 nvidia-driver-595 "nvda") 1741(define-nvda-package nvda-user-alias-595 nvidia-driver-595 "nvda")
1742(define-nvda-package nvda-user-alias-new-feature nvidia-driver-new-feature "nvda-new-feature")
1643(define-nvda-package nvda-user-alias-beta nvidia-driver-beta "nvda-beta") 1743(define-nvda-package nvda-user-alias-beta nvidia-driver-beta "nvda-beta")
1644(define-public nvda nvda-580) 1744(define-public nvda nvda-580)
1645;; 2026-03 1745;; 2026-03
@@ -1677,6 +1777,8 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1677 steam-container-for nvda-590) 1777 steam-container-for nvda-590)
1678(define-nvidia-container steam-nvidia-595 1778(define-nvidia-container steam-nvidia-595
1679 steam-container-for nvda-595) 1779 steam-container-for nvda-595)
1780(define-nvidia-container steam-nvidia-new-feature
1781 steam-container-for nvda-new-feature)
1680(define-nvidia-container steam-nvidia-beta 1782(define-nvidia-container steam-nvidia-beta
1681 steam-container-for nvda-beta) 1783 steam-container-for nvda-beta)
1682(define-public steam-nvidia steam-nvidia-580) 1784(define-public steam-nvidia steam-nvidia-580)
@@ -1696,6 +1798,9 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1696(define-nvidia-container steam-nvidia-user-alias-595 "steam-nvidia" 1798(define-nvidia-container steam-nvidia-user-alias-595 "steam-nvidia"
1697 steam-nvidia-595 1799 steam-nvidia-595
1698 (package-version nvidia-driver-595)) 1800 (package-version nvidia-driver-595))
1801(define-nvidia-container steam-nvidia-user-alias-new-feature "steam-nvidia-new-feature"
1802 steam-nvidia-new-feature
1803 (package-version nvidia-driver-new-feature))
1699(define-nvidia-container steam-nvidia-user-alias-beta "steam-nvidia-beta" 1804(define-nvidia-container steam-nvidia-user-alias-beta "steam-nvidia-beta"
1700 steam-nvidia-beta 1805 steam-nvidia-beta
1701 (package-version nvidia-driver-beta)) 1806 (package-version nvidia-driver-beta))
@@ -1710,6 +1815,8 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1710 heroic-container-for nvda-590) 1815 heroic-container-for nvda-590)
1711(define-nvidia-container heroic-nvidia-595 1816(define-nvidia-container heroic-nvidia-595
1712 heroic-container-for nvda-595) 1817 heroic-container-for nvda-595)
1818(define-nvidia-container heroic-nvidia-new-feature
1819 heroic-container-for nvda-new-feature)
1713(define-nvidia-container heroic-nvidia-beta 1820(define-nvidia-container heroic-nvidia-beta
1714 heroic-container-for nvda-beta) 1821 heroic-container-for nvda-beta)
1715(define-public heroic-nvidia heroic-nvidia-580) 1822(define-public heroic-nvidia heroic-nvidia-580)
@@ -1729,6 +1836,9 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1729(define-nvidia-container heroic-nvidia-user-alias-595 "heroic-nvidia" 1836(define-nvidia-container heroic-nvidia-user-alias-595 "heroic-nvidia"
1730 heroic-nvidia-595 1837 heroic-nvidia-595
1731 (package-version nvidia-driver-595)) 1838 (package-version nvidia-driver-595))
1839(define-nvidia-container heroic-nvidia-user-alias-new-feature "heroic-nvidia-new-feature"
1840 heroic-nvidia-new-feature
1841 (package-version nvidia-driver-new-feature))
1732(define-nvidia-container heroic-nvidia-user-alias-beta "heroic-nvidia-beta" 1842(define-nvidia-container heroic-nvidia-user-alias-beta "heroic-nvidia-beta"
1733 heroic-nvidia-beta 1843 heroic-nvidia-beta
1734 (package-version nvidia-driver-beta)) 1844 (package-version nvidia-driver-beta))
@@ -1771,6 +1881,7 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1771(define-ffmpeg-nvidia ffmpeg/nvidia-580 ffmpeg nvda-580) 1881(define-ffmpeg-nvidia ffmpeg/nvidia-580 ffmpeg nvda-580)
1772(define-ffmpeg-nvidia ffmpeg/nvidia-590 ffmpeg nvda-590) 1882(define-ffmpeg-nvidia ffmpeg/nvidia-590 ffmpeg nvda-590)
1773(define-ffmpeg-nvidia ffmpeg/nvidia-595 ffmpeg nvda-595) 1883(define-ffmpeg-nvidia ffmpeg/nvidia-595 ffmpeg nvda-595)
1884(define-ffmpeg-nvidia ffmpeg/nvidia-new-feature ffmpeg nvda-new-feature)
1774(define-ffmpeg-nvidia ffmpeg/nvidia-beta ffmpeg nvda-beta) 1885(define-ffmpeg-nvidia ffmpeg/nvidia-beta ffmpeg nvda-beta)
1775(define-public ffmpeg/nvidia ffmpeg/nvidia-580) 1886(define-public ffmpeg/nvidia ffmpeg/nvidia-580)
1776 1887
@@ -1779,6 +1890,7 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1779(define-ffmpeg-nvidia ffmpeg-6/nvidia-580 ffmpeg-6 nvda-580) 1890(define-ffmpeg-nvidia ffmpeg-6/nvidia-580 ffmpeg-6 nvda-580)
1780(define-ffmpeg-nvidia ffmpeg-6/nvidia-590 ffmpeg-6 nvda-590) 1891(define-ffmpeg-nvidia ffmpeg-6/nvidia-590 ffmpeg-6 nvda-590)
1781(define-ffmpeg-nvidia ffmpeg-6/nvidia-595 ffmpeg-6 nvda-595) 1892(define-ffmpeg-nvidia ffmpeg-6/nvidia-595 ffmpeg-6 nvda-595)
1893(define-ffmpeg-nvidia ffmpeg-6/nvidia-new-feature ffmpeg-6 nvda-new-feature)
1782(define-ffmpeg-nvidia ffmpeg-6/nvidia-beta ffmpeg-6 nvda-beta) 1894(define-ffmpeg-nvidia ffmpeg-6/nvidia-beta ffmpeg-6 nvda-beta)
1783(define-public ffmpeg-6/nvidia ffmpeg-6/nvidia-580) 1895(define-public ffmpeg-6/nvidia ffmpeg-6/nvidia-580)
1784 1896
@@ -1797,6 +1909,9 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1797(define-ffmpeg-nvidia ffmpeg-nvidia-user-alias-595 "ffmpeg-nvidia" 1909(define-ffmpeg-nvidia ffmpeg-nvidia-user-alias-595 "ffmpeg-nvidia"
1798 ffmpeg/nvidia-595 1910 ffmpeg/nvidia-595
1799 (package-version nvidia-driver-595)) 1911 (package-version nvidia-driver-595))
1912(define-ffmpeg-nvidia ffmpeg-nvidia-user-alias-new-feature "ffmpeg-nvidia-new-feature"
1913 ffmpeg/nvidia-new-feature
1914 (package-version nvidia-driver-new-feature))
1800(define-ffmpeg-nvidia ffmpeg-nvidia-user-alias-beta "ffmpeg-nvidia-beta" 1915(define-ffmpeg-nvidia ffmpeg-nvidia-user-alias-beta "ffmpeg-nvidia-beta"
1801 ffmpeg/nvidia-beta 1916 ffmpeg/nvidia-beta
1802 (package-version nvidia-driver-beta)) 1917 (package-version nvidia-driver-beta))
@@ -1815,6 +1930,9 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.")
1815(define-ffmpeg-nvidia ffmpeg-6-nvidia-user-alias-595 "ffmpeg-6-nvidia" 1930(define-ffmpeg-nvidia ffmpeg-6-nvidia-user-alias-595 "ffmpeg-6-nvidia"
1816 ffmpeg-6/nvidia-595 1931 ffmpeg-6/nvidia-595
1817 (package-version nvidia-driver-595)) 1932 (package-version nvidia-driver-595))
1933(define-ffmpeg-nvidia ffmpeg-6-nvidia-user-alias-new-feature "ffmpeg-6-nvidia-new-feature"
1934 ffmpeg-6/nvidia-new-feature
1935 (package-version nvidia-driver-new-feature))
1818(define-ffmpeg-nvidia ffmpeg-6-nvidia-user-alias-beta "ffmpeg-6-nvidia-beta" 1936(define-ffmpeg-nvidia ffmpeg-6-nvidia-user-alias-beta "ffmpeg-6-nvidia-beta"
1819 ffmpeg-6/nvidia-beta 1937 ffmpeg-6/nvidia-beta
1820 (package-version nvidia-driver-beta)) 1938 (package-version nvidia-driver-beta))
diff --git a/nonguix/transformations.scm b/nonguix/transformations.scm
index c0470ac..ec3cdbc 100644
--- a/nonguix/transformations.scm
+++ b/nonguix/transformations.scm
@@ -170,6 +170,13 @@ REMOVE-NVENC-RESTRICTION? (default: #f) applies patches from
170 #:nvfbc "s/\\x85\\xc0\\x0f\\x85\\xd4\\x00\\x00\\x00\\x48/\\x85\\xc0\\x90\\x90\\x90\\x90\\x90\\x90\\x48/g") 170 #:nvfbc "s/\\x85\\xc0\\x0f\\x85\\xd4\\x00\\x00\\x00\\x48/\\x85\\xc0\\x90\\x90\\x90\\x90\\x90\\x90\\x48/g")
171 identity) 171 identity)
172 driver)) 172 driver))
173 (,nvda-new-feature
174 . ,((if remove-nvenc-restriction?
175 (remove-restriction
176 #:nvenc #f
177 #:nvfbc "s/\\x85\\xc0\\x0f\\x85\\xd4\\x00\\x00\\x00\\x48/\\x85\\xc0\\x90\\x90\\x90\\x90\\x90\\x90\\x48/g")
178 identity)
179 driver))
173 (,nvda-595 180 (,nvda-595
174 . ,((if remove-nvenc-restriction? 181 . ,((if remove-nvenc-restriction?
175 (remove-restriction 182 (remove-restriction
@@ -213,10 +220,11 @@ REMOVE-NVENC-RESTRICTION? (default: #f) applies patches from
213 (define %firmware 220 (define %firmware
214 (assoc-ref 221 (assoc-ref
215 `((,nvda-beta . ,nvidia-firmware-beta) 222 `((,nvda-beta . ,nvidia-firmware-beta)
216 (,nvda-595 . ,nvidia-firmware-595) 223 (,nvda-new-feature . ,nvidia-firmware-new-feature)
217 (,nvda-590 . ,nvidia-firmware-590) 224 (,nvda-595 . ,nvidia-firmware-595)
218 (,nvda-580 . ,nvidia-firmware-580) 225 (,nvda-590 . ,nvidia-firmware-590)
219 (,nvda-470 . ,nvidia-firmware-470)) 226 (,nvda-580 . ,nvidia-firmware-580)
227 (,nvda-470 . ,nvidia-firmware-470))
220 driver)) 228 driver))
221 229
222 (define %module 230 (define %module
@@ -224,38 +232,43 @@ REMOVE-NVENC-RESTRICTION? (default: #f) applies patches from
224 `((,nvda-beta . ,(if open-source-kernel-module? 232 `((,nvda-beta . ,(if open-source-kernel-module?
225 nvidia-module-open-beta 233 nvidia-module-open-beta
226 nvidia-module-beta)) 234 nvidia-module-beta))
227 (,nvda-595 . ,(if open-source-kernel-module? 235 (,nvda-new-feature . ,(if open-source-kernel-module?
228 nvidia-module-open-595 236 nvidia-module-open-new-feature
229 nvidia-module-595)) 237 nvidia-module-new-feature))
230 (,nvda-590 . ,(if open-source-kernel-module? 238 (,nvda-595 . ,(if open-source-kernel-module?
231 nvidia-module-open-590 239 nvidia-module-open-595
232 nvidia-module-590)) 240 nvidia-module-595))
233 (,nvda-580 . ,(if open-source-kernel-module? 241 (,nvda-590 . ,(if open-source-kernel-module?
234 nvidia-module-open-580 242 nvidia-module-open-590
235 nvidia-module-580)) 243 nvidia-module-590))
236 (,nvda-470 . ,nvidia-module-470) 244 (,nvda-580 . ,(if open-source-kernel-module?
237 (,nvda-390 . ,nvidia-module-390)) 245 nvidia-module-open-580
246 nvidia-module-580))
247 (,nvda-470 . ,nvidia-module-470)
248 (,nvda-390 . ,nvidia-module-390))
238 driver)) 249 driver))
239 250
240 (define %modprobe 251 (define %modprobe
241 (assoc-ref 252 (assoc-ref
242 `((,nvda-beta . ,nvidia-modprobe-beta) 253 `((,nvda-beta . ,nvidia-modprobe-beta)
243 (,nvda-595 . ,nvidia-modprobe-595) 254 (,nvda-new-feature . ,nvidia-modprobe-new-feature)
244 (,nvda-590 . ,nvidia-modprobe-590) 255 (,nvda-595 . ,nvidia-modprobe-595)
245 (,nvda-580 . ,nvidia-modprobe-580) 256 (,nvda-590 . ,nvidia-modprobe-590)
246 (,nvda-470 . ,nvidia-modprobe-470) 257 (,nvda-580 . ,nvidia-modprobe-580)
247 (,nvda-390 . ,nvidia-modprobe-390)) 258 (,nvda-470 . ,nvidia-modprobe-470)
259 (,nvda-390 . ,nvidia-modprobe-390))
248 driver)) 260 driver))
249 261
250 (define %settings 262 (define %settings
251 (and configure-xorg? 263 (and configure-xorg?
252 (assoc-ref 264 (assoc-ref
253 `((,nvda-beta . ,nvidia-settings-beta) 265 `((,nvda-beta . ,nvidia-settings-beta)
254 (,nvda-595 . ,nvidia-settings-595) 266 (,nvda-new-feature . ,nvidia-settings-new-feature)
255 (,nvda-590 . ,nvidia-settings-590) 267 (,nvda-595 . ,nvidia-settings-595)
256 (,nvda-580 . ,nvidia-settings-580) 268 (,nvda-590 . ,nvidia-settings-590)
257 (,nvda-470 . ,nvidia-settings-470) 269 (,nvda-580 . ,nvidia-settings-580)
258 (,nvda-390 . ,nvidia-settings-390)) 270 (,nvda-470 . ,nvidia-settings-470)
271 (,nvda-390 . ,nvidia-settings-390))
259 driver))) 272 driver)))
260 273
261 (define %dynamic-boost? 274 (define %dynamic-boost?