Commit Graph

445 Commits

Author SHA1 Message Date
Bernardo Meurer
c9e23626a1
nixos/udisks2: symlink libblockdev configs
Without this, you get the following error message in the logs:

udisksd[4082]: Failed to load config files: Failed to get contents of the config dir (/etc/libblockdev/conf.d/)Error opening directory “/etc/libblockdev/conf.d/”: No such file or directory. Using the built-in config
2022-11-09 18:30:59 +00:00
Bjørn Forsman
f23ddc55a6 nixos/sane: mention sane-airscan in the extraBackends option
It's a very useful backend (that probably should be enabled by default,
like on Ubuntu), let's start by making it easier to discover.

Ref https://github.com/NixOS/nixpkgs/issues/28406.
2022-11-05 16:19:04 +01:00
github-actions[bot]
9d424dbc41
Merge master into staging-next 2022-10-31 00:02:32 +00:00
Sandro Jäckel
7fe3f63da6
nixos/udev: add enable option 2022-10-26 19:24:14 +02:00
github-actions[bot]
29e01ddcd1
Merge staging-next into staging 2022-10-25 06:24:30 +00:00
Andrew Kvalheim
545b74f075 brscan4-etc-files: rename name to pname&version
re #103997
2022-10-25 02:38:39 +02:00
rnhmjoj
c90b6a859b
nixos/pcscd: allow use without polkit
The polkit support in pcsclite is entirely optional but package enables
it unconditionally and this breaks connecting to the pcscd daemon on
systems without polkit.

The fix is making this configurable and automatically disabling
`polkitSupport` when the polkit service is disabled.
2022-10-21 13:06:40 +02:00
Zhaofeng Li
bbbda58c4e nixos/fwupd: Fix configuration file merging 2022-10-10 00:01:32 -06:00
Nick Cao
309ea5a1af nixos/udev: allow marking firmware as not compressible 2022-10-07 19:40:58 +00:00
cab
e03e61f62e
nixos.fwupd: add remote list option
Co-authored-by: jtojnar <jtojnar@gmail.com>
2022-09-30 16:47:16 +04:00
Jonathan Ringer
a2bcf8564d
nixos/openrgb: init module 2022-09-27 11:59:33 -07:00
Michal Sojka
ec026d26d2 usbrelay: 1.0 -> 1.0.1 2022-09-18 22:54:13 +02:00
Sandro
2902676b30
Merge pull request #189056 from jtojnar/fwupd 2022-09-05 16:13:00 +02:00
Jan Tojnar
89c025b366 nixos/fwupd: add polkit dependency
We are building fwupd daemon with polkit support which means
polkit daemon is required.

Previously polkit was enabled by default via udisks2 but that
stopped with f763710065
breaking the fwupd installed tests as a result.

Let’s add the polkit dependency to the fwupd module to ensure polkit is available.
2022-09-04 20:23:12 +02:00
pennae
f2ea09ecbe nixos/*: convert options with listings
minor rendering changes.
2022-08-31 17:27:36 +02:00
pennae
722b99bc0e nixos/*: convert options with admonitions to MD
rendering changes only slightly, most changes are in spacing.
2022-08-31 16:36:16 +02:00
pennae
bd56368848 nixos/*: md-convert hidden plaintext options
most of these are hidden because they're either part of a submodule that
doesn't have its type rendered (eg because the submodule type is used in
an either type) or because they are explicitly hidden. some of them are
merely hidden from nix-doc-munge by how their option is put together.
2022-08-31 16:32:54 +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
pennae
c915b915b5 nixos/*: md-convert options with unordered lists
mostly no rendering changes. some lists (like simplelist) don't have an
exact translation to markdown, so we use a comma-separated list of
literals instead.
2022-08-31 16:32:53 +02:00
pennae
7d102d113a nixos/*: convert multiline inline code to listings
presumably it was not intended to have these blocks rendered inline, and
markdown conversion would be messy as well.
2022-08-31 16:27:25 +02:00
pennae
429ae9ff3d nixos/thinkfan: convert descriptions to MD
also convert multi-line literals to code blocks to make them render in a
legible manner.
2022-08-27 19:18:29 +02:00
Lin Jian
9f4e8ea56d
nixos/kanata: remove redundant lib 2022-08-21 09:45:26 +08:00
Kenny MacDermid
7b0b92f5a9
Revert "nixos/fwupd: enable udisks2"
This reverts commit fb5bceb3ff.

Reverted at the request of the author, Bernardo Meurer, to avoid
requiring udisks2 for fwupd to work.
2022-08-19 12:53:34 -03:00
Kenny MacDermid
9754c6d332
nixos/fwupd: migrate to uefi_capsule.conf
In version 1.5.5 of fwupd the uefi plugin was renamed to
uefi-capsule. As part of those changes the configuration file was
renamed and changed.

This modules configuration mismatch was generally hidden because
when udisks2 is enabled fwupd will use that instead. Without
udisks2 the following warning is seen:

    WARNING: UEFI ESP partition not detected or configured
2022-08-19 12:53:23 -03:00
Bernardo Meurer
fb5bceb3ff
nixos/fwupd: enable udisks2
Without this, you get a warning that fwupd is unable to find the ESP
partition.

c.f. https://github.com/fwupd/fwupd/wiki/PluginFlag:esp-not-found
2022-08-16 18:15:18 -04:00
pennae
50f9b3107a
Merge pull request #185474 from pennae/option-docs-md
nixos/*: more options md conversion
2022-08-12 23:23:26 +02:00
ajs124
f763710065 nixos/udisks2: don't enable by default
This was enabled by default in 18a7ce76fc
with the reason that it would be "useful regardless of the desktop
environment.", which I'm not arguing against.

The reason why this should not be enabled by default is that there are a
lot of systems that NixOS runs on that are not desktop systems.
Users on such systems most likely do not want or need this feature and
could even consider this an antifeature.
Furthermore, it is surprising to them to find out that they have this
enabled on their systems.
They might be even more surprised to find that they have polkit enabled
by default, which was a default that was flipped in
a813be071c. For some discussion as to why
see https://github.com/NixOS/nixpkgs/pull/156858.

Evidently, this default is not only surprising to users, but also module
developers, as most if not all modules for desktop environments already
explicity set services.udisks2.enable = true; which they don't need to
right now.
2022-08-11 02:47:34 +02:00
pennae
087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
Lin Jian
b6d45f1448 nixos/kanata: sync with version 1.0.6
- improve some descriptions
- device -> devices
- add options
  - extraArgs
  - port
- create a symlink in RUNTIME_DIRECTORY
- grant it read permission of /dev/uinput
- relax network-related restrictions when port is used
- change type of some hardening options to list to align with systemd
  - CapabilityBoundingSet
  - IPAddressDeny
  - SystemCallArchitectures
2022-08-06 15:07:44 +02:00
pennae
423545fe48 nixos/*: normalize manpage references to single-line form
now nix-doc-munge will not introduce whitespace changes when it replaces
manpage references with the MD equivalent.

no change to the manpage, changes to the HTML manual are whitespace only.
2022-08-05 18:34:50 +02: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
Winter
468c10d8e0
Merge pull request #183039 from jansol/master 2022-08-01 18:17:39 -04:00
Jan Solanti
34a04025cf xow: remove
Upstream project has been deprecated in favour of the 'xone' kernel
mode driver.
2022-08-02 00:50:32 +03: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
Lin Jian
b6617bb594
nixos/kanata: init 2022-07-26 00:06:48 +08:00
Gabriel Fontes
17fc78ea58
nixos/argonone: init 2022-06-24 21:20:32 -03:00
Alyssa Ross
8aa8e0ce7f
nixos/udev: compress all firmware if supported
This should be a significant disk space saving for most NixOS
installations.  This method is a bit more complicated than doing it in
the postInstall for the firmware derivations, but this way it's
automatic, so each firmware package doesn't have to separately
implement its compression.

Currently, only xz compression is supported, but it's likely that
future versions of Linux will additionally support zstd, so I've
written the code in such a way that it would be very easy to implement
zstd compression for those kernels when they arrive, falling back to
xz for older (current) kernels.

I chose the highest possible level of compression (xz -9) because even
at this level, decompression time is negligible.  Here's how long it took
to decompress every firmware file my laptop uses:

	i915/kbl_dmc_ver1_04.bin                  	2ms
	regulatory.db                             	4ms
	regulatory.db.p7s                         	3ms
	iwlwifi-7265D-29.ucode                    	62ms
	9d71-GOOGLE-EVEMAX-0-tplg.bin             	22ms
	intel/dsp_fw_kbl.bin                      	65ms
	dsp_lib_dsm_core_spt_release.bin          	6ms
	intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq	7ms

And since booting NixOS is a parallel process, it's unlikely (but
difficult to measure) that the time to user interaction was held up at
all by most of these.

Fixes (partially?) #148197
2022-05-13 14:36:34 +00:00
Sandro
b196dea22d
Merge pull request #172080 from wentasah/usbrelay-1.0
usbrelay: 0.9 -> 1.0
2022-05-09 01:02:08 +02:00
Michal Sojka
26ec7081d6 nixos/usbrelayd: set myself as module maintainer
I forgot setting that when creating the module.
2022-05-08 21:44:50 +02:00
Michal Sojka
3effbca0bc usbrelay: 0.9 -> 1.0 2022-05-08 21:16:32 +02:00
Claudio Bley
fd3d1a834b illum: Restart service on failure
If there is a fatal error and illum exits, it should be safe to restart it.
2022-05-05 22:31:56 +02:00
Janne Heß
89ace3967e
nixos/udev: systemd initrd improvements
First, add the builtin udev rules to /etc/udev/rules.d so they are used.
Then, add all networkd .link units to the initrd. This is done in the
old stage 1 as well so I assume this is needed even when networkd is not
used. I assume this is for things like changing the MAC address.

Also limit the number of udev/lib binaries that is put into the initrd
because the old initrd doesn't use all units either.
2022-04-30 14:17:29 +02:00
Sandro
93da45162d
Merge pull request #166321 from wentasah/usbrelay 2022-04-25 02:23:19 +02:00
Michal Sojka
6a5b839069 usbrelay: init at 0.9 2022-04-18 19:02:41 +02:00
Lassulus
65cc198539
Merge pull request #167349 from helsinki-systems/feat/udev-systemd-stage-1
nixos/udev: Add systemd stage 1 support
2022-04-12 21:02:52 +01:00