Commit graph

378 commits

Author SHA1 Message Date
yuu
ce2e4707b7
hardware/nvidia: add @ to constraint on busIDType
On some configurations, the only known syntax that works
requires the `@` character, such as `intelBusId = "0@0:2:0";`  and
`nvidiaBusId = "1@1:0:0";` [1].

[1]. https://discourse.nixos.org/t/struggling-with-nvidia-prime/13794/4
2022-07-10 02:48:40 -03:00
Kier Davis
5f14f77bf2
ckb-next: remove myself from maintainers (#179573)
* ckb-next: remove kierdavis and add superherointj as maintainer

Co-authored-by: superherointj <5861043+superherointj@users.noreply.github.com>
2022-07-03 16:07:34 -03:00
ajs124
a0718341e6 maintainers: remove volth
github account deleted
2022-06-29 00:52:12 +02:00
Florian Klink
4386cb104e
Merge pull request #178200 from lopsided98/device-tree-preprocessor
nixos/device-tree: preprocess overlays before compiling
2022-06-19 11:13:54 +02:00
Ben Wolsieffer
754005bf48 nixos/device-tree: preprocess overlays before compiling
Run the device tree overlays through the preprocessor before compiling it, as
is done in the kernel. This helps make overlays easier to understand, and
improves compatibility with those found in the wild.

I found the correct command line by running the kernel build with V=1, and then
removing all the arguments related to dependency tracking.
2022-06-18 22:24:30 -04:00
Ben Wolsieffer
8e4b3323d1 nixos/device-tree: use new overlay syntax in example
Since dtc 1.4.7 (released in 2018), there has been a much nicer syntax for
device tree overlays. This commit converts the dtsText example to use this
syntax.
2022-06-18 22:24:30 -04:00
Thiago Kenji Okada
4cf04594a9
Merge pull request #172660 from NickCao/nvidia-open
nvidia-open: init at 515.43.04
2022-06-17 18:59:32 +01:00
Sandro Jäckel
43d4ddf28e
treewide: remove usage of runCommandNoCC aliases 2022-06-07 16:57:06 +02:00
Nick Cao
e84828b973
nixos/nvidia: add option hardware.nvidia.open for selecting the opensource kernel driver 2022-06-03 10:50:33 +08:00
Nick Cao
94f5bd2051
nvidia_x11: init opensource kernel driver 2022-06-03 10:50:33 +08:00
Thiago Kenji Okada
679197e9ff
Merge pull request #174058 from jian-lin/fix-nvidia.powerManagement.finegrained-only-apply-workarounds-when-needed
nixos/nvidia: only apply workarounds for finegrained when needed
2022-06-02 17:55:23 +01:00
Thiago Kenji Okada
64870a0c57
Merge pull request #174259 from schuelermine/add-nixos-option/hardware.nvidia.forceFullCompositionPipeline
nixos/nvidia: add hardware.nvidia.forceFullCompositionPipeline
2022-06-02 17:50:50 +01:00
Thiago Kenji Okada
3ead2b58f5
Merge pull request #174057 from jian-lin/fix-nvidia.powerManagement.finegrained-remove-useless-setting
nixos/nvidia: remove a useless option
2022-06-02 17:32:24 +01:00
MatthiasBenaets
9a5c77c581 nixos/new-lg4ff: fix kernel selection 2022-06-02 08:27:42 +02:00
lom
ec9204d732 nixos/new-lg4ff: respect enable option 2022-06-01 15:09:24 -06:00
Sandro
ba4c03124f
Merge pull request #174956 from MatthiasBenaets/new-lg4ff
new-lg4ff: init at 0.3.3
2022-06-01 16:42:55 +02:00
MatthiasBenaets
8dcba104aa new-lg4ff: init at 0.3.3 2022-06-01 14:31:52 +02:00
Hubert Jasudowicz
91015fe196 nixos/saleae-logic: init 2022-05-27 20:39:32 +02:00
Anselm Schüler
446d2cb021 nixos/nvidia: add hardware.nvidia.forceFullCompositionPipeline 2022-05-24 11:46:50 +02:00
linj
d5a9c1dd08 nixos/nvidia: remove a useless option
According to the doc[1], NVreg_DynamicPowerManagement is a kernel
module parameter, which it is already set as. So it should not be set
as an xorg option.

[1]: https://download.nvidia.com/XFree86/Linux-x86_64/515.43.04/README/dynamicpowermanagement.html#DriverSettingsfe624
2022-05-23 05:11:26 +08:00
linj
97a855ca0e nixos/nvidia: only apply workarounds for finegrained when needed
Accoriding to the doc[1], these workarounds is no needed for kernel
5.5 and newer.

[1]: https://download.nvidia.com/XFree86/Linux-x86_64/515.43.04/README/dynamicpowermanagement.html#KnownIssuesAndW6426e
2022-05-23 05:01:40 +08:00
Alyssa Ross
85d792a928
nixos: don't put non-firmware in hardware.firmware
These two packages don't have a lib/firmware directory, so putting
them in hardware.firmware has no effect.  This will become a hard
error once firmware compression is implemented.

(In the case of Linux, the firmware was all moved to linux-firmware.)
2022-05-12 15:17:51 +00:00
Niklaus Giger
1d82f62aef
UHK-agent: Support for Ultimate Hacking Keyboard udev-rules and configuration application (#132420)
* maintainers: add ngiger

* uhk-agent: init at 1.5.17

* Apply suggestions from code review

* Update pkgs/os-specific/linux/uhk-agent/default.nix

* Apply suggestions from code review

* Update pkgs/os-specific/linux/uhk-agent/default.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-05-08 22:40:52 +02:00
Artturin
1c49b81263 config.allowUnfree: define as option 2022-05-02 17:20:25 +03:00
Rick van Schijndel
536528ede8
Merge pull request #170695 from matshch/fix/nvidia-device-minor
nixos/nvidia: fix /dev/nvidia* devices minors
2022-04-30 15:34:16 +02:00
Graham Christensen
f00109472a
Merge pull request #164185 from alexshpilkin/calibration
facetimehd: support sensor calibration files
2022-04-29 15:53:30 -04:00
Artem Leshchev
4d7bc6ccc0 nixos/nvidia: fix /dev/nvidia-uvm-tools device minor 2022-04-28 13:55:53 +03:00
Artem Leshchev
73261bdc59 nixos/nvidia: make nvidia-frontend device major constant
It is assigned by https://www.kernel.org/doc/Documentation/admin-guide/devices.txt
and never changes, so we can skip grep.
2022-04-28 13:55:53 +03:00
Julien Mourer
55f1c83f5b
hardware: set enableRedistributableFirmware if enableAllFirmware is set (#163014)
If it works with enableRedistributableFirmware, which is a subset of enableAllFirmware, it should also work with enableAllFirmware.
2022-04-28 10:30:04 +02:00
Artem Leshchev
b01be47c87 nixos/nvidia: fix /dev/nvidia* devices minors
We can't assume that DRI card minor is the same as NVidia GPU device minor,
because some DRI minors could be taken by GPUs of other vendors.

Fixes #87788, #98942.
2022-04-28 01:18:58 +03:00
Artturin
99b1b47f39 nixos/hpsa: add alternative url for hpssacli 2022-04-26 21:39:04 +03:00
Janne Heß
4f3a868e59
Merge pull request #169049 from helsinki-systems/feat/systemd-stage-1-amdgpu-pro
nixos/amdgpu-pro: Add support for systemd stage 1
2022-04-20 11:36:53 +02:00
Janne Heß
0a60a12fae
nixos/amdgpu-pro: Add support for systemd stage 1 2022-04-17 14:00:02 +01:00
Guillaume Girol
5f95bff481 nixos/nvidia: fix type of bus ID option to accept empty string 2022-04-17 12:00:00 +00:00
polykernel
614b54d9b0 hardware/nvidia: stricter constraints on PCI bus-id.
The current type for the busId options are too relaxed, a stricter
constraint should be imposed to guard against typos which result
in Xorg unable to start.

This commit restricts the type to adhere to the B/D/F notation[1] for
addressing devices as expected by the module option.

[1] - https://wiki.osdev.org/PCI#Configuration_Space_Access_Mechanism_.231
2022-04-16 15:25:37 -04:00
Alyssa Ross
ae8e8aaee7 treewide: remove obsolete kernel version checks
We no longer support any Linux kernel older than 4.9.
2022-04-08 09:56:09 +00:00
Googlebot
4007aa201b Merge remote-tracking branch 'upstream/master' 2022-03-21 11:32:36 -04:00
Jonathan Ringer
0326d67a58 nixos/nvidia: add vaapi support 2022-03-14 22:35:11 -07:00
Alexander Shpilkin
0d233ebed0
nixos/facetimehd: add option hardware.facetimehd.withCalibration
The new option (disabled by default) pulls in the experimental sensor
calibration files for the Facetime HD camera. These will also be pulled
in by hardware.enableAllFirmware.
2022-03-15 03:42:49 +03:00
Googlebot
b2068c1248
Merge branch 'NixOS:master' into master 2022-03-09 09:58:39 -05:00
Rhys Davies
32a44aa069 nixos/xone: init 2022-02-20 18:25:12 +13:00
Rhys Davies
fb69e1763e xow_dongle-firmware: init at 2017-07 2022-02-20 18:25:06 +13:00
Alyssa Ross
1176525f87 treewide: remove obsolete kernel version checks
We don't support Linux kernels older than 4.4 in Nixpkgs.
2022-02-19 21:09:19 +00:00
googlebot
125a347ae1 nvidia: Fix AMD APU for Prime Sync 2022-02-04 17:35:41 -05:00
Jan Tojnar
e00317be13 nixos/nvidia: remove obsolete GDM on Wayland assertion
GDM enables Wayland on supported platforms automatically (see ${gnome.gdm}/lib/udev/rules.d/61-gdm.rules), so we removed the `gdm.nvidiaWayland` option.

You will still need `hardware.nvidia.modesetting.enable = true;` with `nvidia` driver, though.
2022-02-01 19:22:04 +01:00
Sandro
b02446784d
enableRedistributableFirmware: only add rtw89-firmware when kernel older 5.16 2022-01-30 04:49:04 +01:00
Jörg Thalheim
dfdf225a98
Merge pull request #154550 from veehaitch/sgx-compat-udev
nixos/intel-sgx: add option for Intel SGX DCAP compatibility
2022-01-13 14:55:08 +00:00
Lassulus
b0b40f863b
Merge pull request #152770 from aij/hackrf
nixos/hardware/hackrf: new module
2022-01-11 22:27:48 +01:00
Vincent Haupert
b88ddadf8b nixos/intel-sgx: add option for Intel SGX DCAP compatibility
The Intel SGX DCAP driver makes the SGX application enclave device and
the SGX provisioning enclave available below the path `/dev/sgx/`. Since
Linux 5.11, a derivation of the DCAP driver is part of the kernel and
available through the X86_SGX config option; NixOS enables this option
by default.

In contrast to the out-of-tree DCAP driver, the in-tree SGX driver uses
a flat hierarchy for the SGX devices resulting in the paths
`/dev/sgx_enclave` for the application enclave device and
`/dev/sgx_provison` for the provisioning enclave device.

As of this commit, even the latest version of the Intel SGX PSW
libraries still tries to open the (legacy) DCAP paths only. This means
that SGX software currently cannot find the required SGX devices even if
the system actually supports SGX through the in-tree driver. Intel wants
to change this behavior in an upcoming release of intel/linux-sgx.

Having said that, SGX software assuming the SGX devices below
`/dev/sgx/` will prevail. Therefore, this commit introduces the NixOS
configuration option `hardware.cpu.intel.sgx.enableDcapCompat` which
creates the necessary symlinks to support existing SGX software. The
option defaults to true as it is currently the only way to support SGX
software. Also, enabling the SGX AESM service enables the option.

The permissions of the devices `/dev/sgx_enclave` and
`/dev/sgx_provison` remain the same, i.e., are not affected regardless
of having the new option enabled or not.
2022-01-11 14:02:16 +01:00
Bernardo Meurer
d72a2e7baf
firmwareLinuxNonfree -> linux-firmware
This renames our `firmwareLinuxNonfree` package to `linux-firmware`.
There is prior art for this in multiple other distros[1][2][3].

Besides making the package more discoverable by those searching for the
usual name, this also brings it in-line with the `kebab-case` we
normally see in `nixpkgs` pnames, and removes the `Nonfree` information
from the name, which I consider redundant given it's present in
`meta.license`.

The corresponding alias has been added, so this shouldn't break
anything.

[1]: https://archlinux.org/packages/core/any/linux-firmware/
[2]: https://src.fedoraproject.org/rpms/linux-firmware
[3]: https://packages.gentoo.org/packages/sys-kernel/linux-firmware
2022-01-10 12:28:03 -03:00