Commit graph

467 commits

Author SHA1 Message Date
figsoda 6bb0dbf91f nixos: fix typos 2022-12-17 19:31:14 -05:00
Sandro Jäckel 8f99f34194
nixos/opengl: cleanup suggestions for extraPackages
- libvdpau-va-gl supports only H.264
- vaapiVdpau is unmaintained for 10 years
2022-12-11 17:44:48 +01:00
rnhmjoj 47d9e7d3d7
nixos/hardware/printers: stop cupsd when unneeded
If socket activation is enable (the default) and printers are configured
declaratively, the ensure-printers service will always start cupsd and
leave it running, thus defeating the point of socket activation.

With this change ensure-printers continues to start the cups.service at
boot, but automatically stops it afterwards if socket activation is
enabled.

Note: Later restarts of ensure-printers will also restart cupsd, but
it's not an issue since it will be reactivate, if necessary.
2022-12-07 15:57:44 +01:00
Daniel Nagy b4674b39c1
treewide: use mkEnableOption in nixos modules 2022-11-10 09:30:00 +01:00
Anderson Torres 97f523e3c8
Merge pull request #185688 from bb2020/usbstor
nixos/usbStorage: add new option
2022-11-03 22:33:20 -03:00
Artturin 7e49471316 treewide: optional -> optionals where the argument is a list
the argument to optional should not be list
2022-10-10 15:40:21 +03:00
Martin Weinelt 253ca4957d Merge remote-tracking branch 'origin/master' into staging-next 2022-10-05 00:44:16 +02:00
superherointj 2e19f2fa53 maintainers: remove superherointj 2022-10-04 14:06:48 -03:00
github-actions[bot] 25043f0f28
Merge master into staging-next 2022-10-01 12:01:27 +00:00
Artturin 6910a4eea0 treewide: makeWrapper to nativeBuildInputs
this should be all of them other than the failed splices
found with nixpkgs-lint
2022-09-26 17:53:26 +03:00
Kira Bruneau 216a21c638 linuxPackages.xpadneo: 0.9.4 -> 0.9.5 2022-09-20 18:52:46 -04:00
Nick Cao 81b615ea51
nixos/nvidia: replace IFD based assertion on power management support with version constraint 2022-09-03 19:38:23 +08:00
pennae f2ea09ecbe nixos/*: convert options with listings
minor rendering changes.
2022-08-31 17:27:36 +02:00
pennae 9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
Max Schorradt 2461a62334 nvidia: remove deleted useGlamor option 2022-08-24 21:34:42 +02:00
K900 66d043b296
Merge pull request #187528 from rnhmjoj/pr-fix-dt-overlays
nixos/hardware/device-tree: make overlays more reliable
2022-08-24 10:08:52 +03:00
K900 175f140b8b
Merge pull request #187252 from K900/kernel-sanity
linux: assorted build cleanups
2022-08-20 22:42:13 +03:00
rnhmjoj 916ca8f2b0
nixos/hardware/device-tree: make overlays more reliable
This make the process of applying overlays more reliable by:

1. Ignoring dtb files that are not really device trees. [^1]

2. Adding a `filter` option (per-overlay, there already is a global one)
   to limit the files to which the overlay applies. This is useful
   in cases where the `compatible` string is ambiguous and multiple
   unrelated files match.

Previously the script would fail in both cases.

[^1]: For example, there is dtbs/overlays/overlay_map.dtb in the
      Raspberry Pi 1 kernel.
2022-08-20 13:34:14 +02:00
pennae 6039648c50 nixos/*: automatically convert option docs 2022-08-19 22:40:58 +02:00
pennae 7e7d68a250 nixos/*: mark pre-existing markdown descriptions as mdDoc 2022-08-19 22:40:58 +02:00
K900 907b497d7e nixos/hardware/device-tree: use symbols from the exact kernel package 2022-08-19 20:17:28 +03:00
Christian Kögler b055aadc3d
Merge pull request #157997 from kirelagin/grayscale-antialiasing
hidpi: Use gray-scale antialiasing for fonts
2022-08-19 10:37:30 +02:00
Sergei Trofimovich 5ad2e70f95
Merge pull request #181079 from profianinc/init/nixos/amd-sev
nixos/amd.sev: init
2022-08-10 23:32:39 +01:00
Kira Bruneau b739495304
Merge pull request #185068 from kira-bruneau/linuxPackages.xpadneo
nixos/xpadneo: don't disable ertm on kernel 5.12 or later
2022-08-09 18:54:37 -04:00
bb2020 ac06f213ef nixos/usbStorage: add new option 2022-08-08 21:03:22 +03:00
Kira Bruneau bda6036d2e nixos/xpadneo: don't disable ertm on kernel 5.12 or later
The [v0.9.2 changelog](https://github.com/atar-axis/xpadneo/releases/tag/v0.9.2)
mentions that ERTM should no longer be unconditionally disabled on
kernels later than 5.12.
2022-08-03 18:20:59 -04:00
pennae 61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
pennae 3aebb4a2be nixos/*: normalize link format
make (almost) all links appear on only a single line, with no
unnecessary whitespace, using double quotes for attributes. this lets us
automatically convert them to markdown easily.

the few remaining links are extremely long link in a gnome module, we'll
come back to those at a later date.
2022-08-03 21:57:46 +02:00
pennae 9c8531c8a5 nixos/*: replace <replaceable>s with «thing»
we can't embed syntactic annotations of this kind in markdown code
blocks without yet another extension. replaceable is rare enough to make
this not much worth it, so we'll go with «thing» instead. the module
system already uses this format for its placeholder names in attrsOf
paths.
2022-08-03 21:08:58 +02:00
pennae 694d5b19d3 nixos/*: replace </para><para> with double linebreaks
our xslt already replaces double line breaks with a paragraph close and
reopen. not using explicit para tags lets nix-doc-munge convert more
descriptions losslessly.

only whitespace changes to generated documents, except for two
strongswan options gaining paragraph two breaks they arguably should've
had anyway.
2022-08-03 20:39:21 +02:00
pennae 6b13dd0e9e
Merge pull request #183491 from pennae/automatic-md-conversions
treewide: automatically md-convert option descriptions
2022-08-02 02:15:30 +02:00
Alyssa Ross 5330c0a1af
treewide: use isAarch where appropriate 2022-07-30 16:18:27 +00:00
pennae 2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
pennae a16b25432e
Merge pull request #182685 from pennae/invariant-option-conversions
treewide: invariant option conversions to MD
2022-07-27 15:39:47 +02:00
Roman Volosatovs 191f777c4a
nixos/amd.sev: init
Signed-off-by: Roman Volosatovs <roman@profian.com>
Signed-off-by: Roman Volosatovs <rvolosatovs@riseup.net>
2022-07-25 18:13:52 +02:00
pennae 4dd84a34db nixos/hardware: invariant option docs MD conversions 2022-07-24 13:01:18 +02:00
Timothy DeHerrera 371db36e56
nvidia: improve robustness of udev rules
fixes #165719
2022-07-15 19:37:13 -07:00
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
Kirill Elagin ad735b87e4 hidpi: Use gray-scale antialiasing for fonts
For displays with high pixel density, there is no need to do subpixel
anti-aliasing (which is the default) – grayscale antialiasing is enough.

In terms of fontconfig, we keep antialiasing on, but tell it not to play
any RGB tricks.
2022-02-03 10:20:50 -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
Vladimír Čunát d856f24d3c
Merge #151019: amdgpu-pro: 17.40 -> 21.30 2022-01-09 11:27:18 +01:00
Wael Nasreddine 1a4a216bf5
onlykey: set the group correctly in the udev rule (#153618) 2022-01-05 10:29:37 -08:00
Ivan Jager 0d7fc6f090 nixos/hardware/rtl-sdr: Fix description 2021-12-31 10:24:55 -06:00
Ivan Jager ca0fbf9739 nixos/hardware/hackrf: new module
This is a very this module to enable the
hackrf udev rules and ensure the "plugdev"
group they use exists.
2021-12-31 10:24:49 -06:00
Allen Short 9e47e60971 amdgpu-pro: 17.40 -> 21.30 2021-12-21 11:17:34 -04:00
Graham Christensen 06edb74413
Merge pull request #148785 from pennae/more-option-doc-staticizing
treewide: more defaultText for options
2021-12-17 11:14:08 -05:00
Jörg Thalheim afa3c99cd5
Merge pull request #148593 from veehaitch/sgx-psw
sgx-psw: init package and module
2021-12-13 14:16:26 +00:00
Stig 8f21565901
Merge pull request #121085 from colemickens/gpg-ccid-udev
nixos/hardware/gnupg-ccid: init udev rules
2021-12-10 14:22:06 +01:00
Vincent Haupert ac60e78b48 nixos/intel-sgx: add option for SGX provisioning 2021-12-10 10:09:41 +01:00
0x4A6F c92ba86931
Merge pull request #146605 from FlorianFranzen/zsa-udev
zsa-udev-rules: unstable-2020-12-16 -> 2.1.3
2021-12-09 21:03:35 +01:00
pennae e24a8775a8 treewide: set defaultText for options using simple path defaults
adds defaultText for all options that set their default to a path expression
using the ubiquitous `cfg` shortcut bindings.
2021-12-09 01:12:13 +01:00