Commit graph

755 commits

Author SHA1 Message Date
Rafael Fernández López 0d3c3735e5
nvidia-container-toolkit: add "nvidia" to services.xserver.videoDrivers
This will ensure that all requirements are met when the
nvidia-container-toolkit is enabled in order to generate the CDI specs
for the machine.

Also, if `config.virtualisation.docker.rootless.enable` is true,
automatically enable the CDI feature if the Docker version > 25 for
the rootless installation.
2024-09-24 17:10:07 +02:00
Robert Schütz 030f88a326 nixos/iptsd: Touch was renamed to Touchscreen in v3 2024-09-23 12:31:51 -07:00
Josh Hoffer 4080d35d2b nixos/udev: only restart when udev rules change
Only restart `systemd-udevd.service` if udev rules in `/etc/udev/rules`
actually changed. The paths of `services.udev.packages` may change
frequently but the resulting udev rules built by `udevRulesFor`
likely change less often.

This has the added benefit of not adding `services.udev.packages` to
the system closure if they are only used for their udev rules
(issue #308937).
2024-09-19 17:26:01 +02:00
Marco Rebhan 3b12ef2f6f
nixos/udisks2: add package option 2024-09-09 14:13:08 +02:00
sohalt 896663ce96 nixos/spacenavd: Use upstream module 2024-09-04 19:01:41 +02:00
Benno Bielmeier b8c7d88784 nixos/services.thinkfan: fix undefined variables
In d9dc50dc11 the usage of `with lib;` has
been removed from thinkfan.nix. Unfortunately, adjusting the check line
and its usage of the functions all,id,zipListsWith has not been updated
resulting in evaluation errors complaining about "undefined variable".
Update: partly covered in 0646a0771b of #339084

rel: #208242
2024-09-03 10:42:28 +02:00
Felix Buehler 0646a0771b nixos/services.thinkfan: fix all & id 2024-09-02 21:12:56 +02:00
Felix Buehler 6747d84812 nixos/services.kanata: fix utils 2024-09-01 19:42:03 +02:00
Felix Bühler 30eba5df55
nixos/services.libinput: remove with lib; (#338054) 2024-08-30 23:15:31 +02:00
Felix Buehler a79aa024ca nixos/services.usbmuxd: remove with lib; 2024-08-30 00:30:54 +02:00
Felix Buehler ab7b22c311 nixos/services.upower: remove with lib; 2024-08-30 00:30:54 +02:00
Felix Buehler c1573bb3ef nixos/services.undervolt: remove with lib; 2024-08-30 00:30:54 +02:00
Felix Buehler 0de89d26ea nixos/services.udisks2: remove with lib; 2024-08-30 00:30:53 +02:00
Felix Buehler b00fba5c63 nixos/services.udev: remove with lib; 2024-08-30 00:30:53 +02:00
Felix Buehler 48633eb323 nixos/hardware.tuxedo-rs: remove with lib; 2024-08-30 00:30:53 +02:00
Felix Buehler 624ea29c27 nixos/services.triggerhappy: remove with lib; 2024-08-30 00:30:53 +02:00
Felix Buehler cb1696c728 nixos/services.tlp: remove with lib; 2024-08-30 00:30:53 +02:00
Felix Buehler 00052ae198 nixos/services.throttled: remove with lib; 2024-08-30 00:30:52 +02:00
Felix Buehler d9dc50dc11 nixos/services.thinkfan: remove with lib; 2024-08-30 00:30:52 +02:00
Felix Buehler f4fdd33746 nixos/services.thermald: remove with lib; 2024-08-30 00:30:52 +02:00
Felix Buehler b80de00ac6 nixos/services.tcsd: remove with lib; 2024-08-30 00:30:52 +02:00
Felix Buehler d59ce5878b nixos/hardware.spacenavd: remove with lib; 2024-08-30 00:30:52 +02:00
Felix Buehler 131116e4f0 nixos/services.saned: remove with lib; 2024-08-30 00:30:51 +02:00
Felix Buehler e2a4b6715f nixos/services.ratbagd: remove with lib; 2024-08-30 00:30:51 +02:00
Felix Buehler 439cb745b0 nixos/hardware.rasdaemon: remove with lib; 2024-08-30 00:30:51 +02:00
Felix Buehler 08ec49ef41 nixos/services.pommed: remove with lib; 2024-08-30 00:30:51 +02:00
Felix Buehler 2f256fd905 nixos/services.pcscd: remove with lib; 2024-08-30 00:30:51 +02:00
Felix Buehler b2d74343f1 nixos/services.openrgb: remove with lib; 2024-08-30 00:30:50 +02:00
Felix Buehler 78b24bea0f nixos/services.lirc: remove with lib; 2024-08-30 00:30:50 +02:00
Felix Buehler 827d9dfac9 nixos/services.keyd: remove with lib; 2024-08-30 00:30:50 +02:00
Felix Buehler 3b7622d31b nixos/services.kanata: remove with lib; 2024-08-30 00:30:50 +02:00
Felix Buehler f5c96d88c1 nixos/services.joycond: remove with lib; 2024-08-30 00:30:50 +02:00
Felix Buehler d71be6eda5 nixos/services.irqbalance: remove with lib; 2024-08-30 00:30:49 +02:00
Felix Buehler 650db2b016 nixos/services.interception-tools: remove with lib; 2024-08-30 00:30:49 +02:00
Felix Buehler d3a4a69eda nixos/services.illum: remove with lib; 2024-08-30 00:30:49 +02:00
Felix Buehler 8ebc06069d nixos/services.fwupd: remove with lib; 2024-08-30 00:30:49 +02:00
Felix Buehler 6c707fe30f nixos/services.freefall: remove with lib; 2024-08-30 00:30:49 +02:00
Felix Buehler 29536d4a4d nixos/services.fancontrol: remove with lib; 2024-08-30 00:30:48 +02:00
Felix Buehler 3822e798f8 nixos/services.brltty: remove with lib; 2024-08-30 00:30:48 +02:00
Felix Buehler 555402cee5 nixos/services.bolt: remove with lib; 2024-08-30 00:30:48 +02:00
Felix Buehler efcfb7ec52 nixos/services.auto-cpufreq: remove with lib; 2024-08-30 00:30:48 +02:00
Felix Buehler f8305b629b nixos/services.acpid: remove with lib; 2024-08-30 00:30:48 +02:00
Felix Buehler 3314fc7215 nixos/services.libinput: remove with lib; 2024-08-29 00:35:47 +02:00
Someone 4faf4ca9af
nvidia-container-toolkit: only mount existing paths in the host (#319772) 2024-08-27 11:18:18 +00:00
Vili Sinervä 13f07436d4 nixos/libinput: Change new options to more appropriate data types
Change the options to be numbers or lists of numbers instead of strings
like the pre-existing options.
2024-08-25 13:45:14 +02:00
Vili Sinervä 891202ef1f nixos/libinput: Clarify that accelSpeed does not apply to custom profile
Add note to the description of the accelSpeed option to make it clear
that is only applies when flat or adaptive profile is in use.
2024-08-25 13:45:14 +02:00
Vili Sinervä 3aa3236289 nixos/libinput: Add options for defining a custom acceleration functions
Without these options the custom acceleration functions would have to be
defined with the additionalOptions option.
2024-08-25 13:45:14 +02:00
Vili Sinervä 34302b2424 nixos/libinput: Allow 'custom' acceleration profile
This is an option that works with the NixOS module as-is, but is
being blocked from use by the allowed enum values.
2024-08-25 13:45:14 +02:00
Someone 2d7db58c2f
Merge pull request #313225 from ereslibre/nvidia-consistent-casing
docs: fix Nvidia casing to be consistent across different places
2024-08-22 16:51:41 +00:00
Rafael Fernández López d665ca4fb2 nvidia-container-toolkit: add initial set of tests to check closures 2024-08-19 19:40:28 +02:00
Rafael Fernández López 2b883410d4 nvidia-container-toolkit: only mount existing paths in the host 2024-08-19 19:34:34 +02:00
Sarah Brofeldt ba99ba8ea7
Merge pull request #327914 from 0z13/nvidia-container-toolkit-device-name
nixos/nvidia-container-toolkit: add device-name-strategy option
2024-08-13 10:41:45 +02:00
Jonathan Zielinski 42e7fd46e7 nixos/nvidia-container-toolkit: add device-name-strategy option
Containerd will fail to inject CDI devices if you've been using the
uuid naming strategy rather than the default one.
2024-07-30 15:25:48 +00:00
Jörg Thalheim 5356420466 treewide: remove unused with statements from maintainer lists
$ find -type f -name '*.nix' -print0 | xargs -P "$(nproc)" -0 sed -i \
  -e 's!with lib.maintainers; \[ *\];![ ];!' \
  -e 's!with maintainers; \[ *\];![ ];!'
2024-07-29 10:06:20 +08:00
Franz Pletz 985acc7254
Merge pull request #326224 from NickCao/udev-kvm 2024-07-28 07:01:48 +02:00
Guillaume Girol bbd80e97f9
Merge pull request #328459 from onny/sane-backends-fix
sane-backends: 1.2.1 -> 1.3.1
2024-07-24 20:40:47 +02:00
Jonas Heinrich 4edef1362f sane-backends: configure and use lock dir 2024-07-22 16:46:30 +02:00
lassulus 3575fad9da
Merge pull request #323466 from andersk/grep-stray
nixos/udev: Fix `grep: warning: stray \ before /`
2024-07-18 23:02:07 +02:00
Krzysztof Nazarewski 676a51c41f nixos/hardware.display: init 2024-07-18 16:57:40 +03:00
Nick Cao 5df12940bd
nixos/udev: remove rules for /dev/kvm
Permissions on /dev/kvm are already specified by tmpfiles.d rules

Reference: https://github.com/systemd/systemd/blob/v255/tmpfiles.d/static-nodes-permissions.conf.in#L18
2024-07-10 21:06:01 -04:00
Anders Kaseorg 1e68bdf3a4 nixos/udev: Fix grep: warning: stray \ before /
This reverts commit dbe2325603, which
was mistaken: `/` matches exactly the same things matched by `\/` but
without the warning.

Fixes #316561.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2024-06-29 17:38:25 -04:00
éclairevoyant aeee4fc133
treewide: replace mkPackageOptionMD with mkPackageOption 2024-06-26 23:05:42 -04:00
Paul Meyer fbe8538aa1 treewide: remove jonringer as package maintainer
Signed-off-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
2024-06-25 09:16:56 +02:00
John Titor 641ea1c57e
nixos/amdgpu: cleanup occurance of hardware.opengl
Unfortunately this got missed in
https://github.com/NixOS/nixpkgs/pull/320228
2024-06-21 21:40:11 +05:30
K900 5ce022e0e0
Merge pull request #319865 from JohnRTitor/amdgpu-module
nixos/amdgpu: init module
2024-06-20 14:29:01 +03:00
John Titor 6a0b6a6b74
nixos/amdgpu: init module 2024-06-18 10:04:03 +05:30
K900 98cef4c273 treewide: big opengl cleanup
- rename hardware.opengl to hardware.graphics
- remove hardware.opengl.driSupport, which does nothing
- remove hardware.opengl.setLdLibraryPath, which should never be done
- rename hardware.opengl.driSupport32Bit to hardware.graphics.enable32Bit
- lost of small docs / formatting cleanups
2024-06-16 14:11:33 +03:00
Masum Reza 7082d01967
nixos/amdvlk: init module (#318175) 2024-06-12 22:45:01 +02:00
Stu Small 12bd55a1a3 nixos/power-profiles-daemon: Add assertion with auto-cpufreq
auto-cpufreq is similar to tlp in that it shouldn't be run with
power-profiles-daemon.  There functionality can conflict and bugs can
show up.  On my system this materialized by auto-cpufreq frequently
shutting down, but there may be other consequences.

This change follows the same pattern as the tlp assertion
2024-06-08 13:01:08 -06:00
Abílio Costa 79cd2f9738
nixos/nvidia-optimus: add nvidia-modeset to blacklist
The nvidia-modeset module is loaded, which in turn pulls in the nvidia module. This makes bbswitch fail to turn off the card since it would be in use by the module.
2024-06-03 23:18:34 +01:00
Sandro Jäckel 41452802cb
treewide: fix all obviously wrong mkEnableOptions 2024-06-03 13:20:32 +02:00
Rafael Fernández López 79c79671a7 hardware/nvidia-container-toolkit: mount nvidia-driver/share 2024-05-27 23:44:32 +02:00
Lin Jian d679ddfcab
nixos/kanata: add a configFile option
This brings two benefits.  For one thing, it exposes the generated
config file which users can build separately to validate it.  For
another, it allows users to provide their own config file.
2024-05-23 06:42:41 +08:00
Rafael Fernández López 7749696f61 docs: fix Nvidia casing to be consistent across different places 2024-05-20 22:17:31 +02:00
celeri 12e2e82939
nixos/thermald: improve doc and code about configFile and adaptive 2024-05-16 11:41:56 -04:00
Ilya Epifanov 2099ff760f thermald: fixed handling of an external config 2024-05-11 12:32:49 +02:00
Linus Heckemann a10842c7f0
Merge pull request #302300 from Ma27/kernel-zstd
linux kernel: prefer zstd where possible
2024-05-08 15:17:45 +02:00
Pol Dellaiera 9f3f549360
Merge pull request #309550 from linj-fork/pr/kanata-check-config-at-build-time
nixos/kanata: check the config file at build time
2024-05-07 09:59:18 +02:00
Lin Jian 75a864edf1
nixos/kanata: replace deflayer with deflayermap in config example
IMHO, this style is more intuitive.
2024-05-07 01:52:08 +08:00
Lin Jian 4eafe1458d
nixos/kanata: improve links to the upstream documentation 2024-05-07 01:51:57 +08:00
Lin Jian f7b50c3977
nixos/kanata: improve example of the package option
Before this patch, it is rendered as "Example: kanata-with-cmd".
With this patch applied, it is "Example: pkgs.kanata-with-cmd".
2024-05-07 01:51:51 +08:00
Lin Jian 1d93534ec4
nixos/kanata: check the config file at build time
Before this patch, checking the config file is done at runtime.
Doing so at build time shortens the feedback loop[1][2].

[1]: https://github.com/NixOS/nixpkgs/issues/278135
[2]: https://github.com/jtroo/kanata/issues/689
2024-05-06 20:25:09 +08:00
Sandro 85808e4b33
Merge pull request #304902 from SuperSandro2000/libinput-xserver
nixos/libinput: move out of xserver
2024-04-27 23:23:06 +02:00
Rafael Fernández López eb59699fbb hardware/nvidia-container-toolkit: enable CDI on virtualisation.docker.daemon.settings 2024-04-24 18:08:04 +02:00
Someone 7035968845
Merge pull request #290979 from ereslibre/cdi-add-nvidia-docker-1-directories
CDI: Add `mount-nvidia-binaries` and `mount-nvidia-docker-1-directories` options
2024-04-23 19:55:41 +00:00
Rafael Fernández López de3ce5ffa7 nixos/nvidia-container-toolkit: add mount-nvidia-executables and mount-nvidia-docker-1-directories options
- `mount-nvidia-binaries`: this option allows users to avoid mounting
nvidia binaries on the container.

- `mount-nvidia-docker-1-directories`: this option allows users to
avoid mounting `/usr/local/nvidia/lib{,64}` on containers.
2024-04-23 12:31:45 +02:00
Rafael Fernández López 471ff2c33c nixos/nvidia-container-toolkit: rename from virtualisation.containers.cdi.dynamic.nvidia.enable
Add the NixOS option `hardware.nvidia-container-toolkit-cdi-generator.enable`.

This enables the ability to expose GPU's in containers for container
runtimes that support the Container Device Interface (CDI)

Remove `cdi.static` and `cdi.dynamic.nvidia.enable` attributes.
2024-04-23 12:26:00 +02:00
Maximilian Bosch b6ef9ffdfd
nixos/udev: compress firmware with zstd if possible
Closes #267442

    $ nix path-info -Sh /nix/store/qj1dm7wfw5m3mxf1gn3fdm0az9y1h5ny-linux-firmware-20240312-xz
    /nix/store/qj1dm7wfw5m3mxf1gn3fdm0az9y1h5ny-linux-firmware-20240312-xz	440.3M
    $ nix path-info -Sh /nix/store/c3szcjxb3g990dbiz7llwmkaf0bi98j2-linux-firmware-20240312-zstd
    /nix/store/c3szcjxb3g990dbiz7llwmkaf0bi98j2-linux-firmware-20240312-zstd	460.6M

This is an increase of 4.4%, but OTOH zstd has a significantly higher
decompression speed[1].

[1] https://gregoryszorc.com/blog/2017/03/07/better-compression-with-zstandard/
2024-04-19 16:46:25 +02:00
Sandro Jäckel 810558a46b
nixos/libinput: move out of xserver 2024-04-17 23:34:07 +02:00
Sandro 3814255973
Merge pull request #300995 from SuperSandro2000/udev-nixos-wsl
nixos/udev: make more NixOS WSL friendly
2024-04-17 22:39:10 +02:00
stuebinm 6afb255d97 nixos: remove all uses of lib.mdDoc
these changes were generated with nixq 0.0.2, by running

  nixq ">> lib.mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> Inherit >> mdDoc[remove]" --batchmode nixos/**.nix

two mentions of the mdDoc function remain in nixos/, both of which
are inside of comments.

Since lib.mdDoc is already defined as just id, this commit is a no-op as
far as Nix (and the built manual) is concerned.
2024-04-13 10:07:35 -07:00
Bjørn Forsman a29010fe79 nixos: improve many 'enable' descriptions 2024-04-09 07:10:17 +02:00
Sandro Jäckel 4677729c56
nixos/udev: only load firmware from udev when the nixos kernel is used
This is not the case for eg. NixOS in WSL
2024-04-02 18:14:50 +02:00
Sandro Jäckel 413f779bc0
nixos/udev: don't create modprobe config if modprobe is disabled 2024-04-02 18:14:25 +02:00
anna de9db9a27b brscan5: fix sane config path 2024-03-28 16:02:51 +01:00
Lily Foster 1801583855
nixos/fwupd: fix silent failure for uefiCapsuleSettings to ever be added
Bug was introduced in 28ea07d4e3.
2024-03-09 12:44:46 -05:00
Someone 46b75bf589
Merge pull request #291828 from SomeoneSerge/refactor/cdi-nvidia
nixos/cdi.dynamic.nvidia: expose driverLink
2024-03-04 18:32:34 +00:00
Atemu 97f445e8f1
Merge pull request #245005 from Scrumplex/nixos-monado
nixos/monado: init
2024-02-27 20:11:04 +00:00
Someone Serge 2a63db4e6f
nixos/virtualisation.containers.cdi.dynamic.nvidia: expose driverLink
..shallowly
2024-02-27 12:50:59 +00:00
Someone Serge 65dbac7215
nixos/virtualisation.containers.cdi.dynamic.nvidia: refactor w/ callPackage 2024-02-27 11:59:57 +00:00