Commit Graph

2613 Commits

Author SHA1 Message Date
Will Fancher
a906632245 systemd-stage-1: No longer experimental 2023-10-27 16:46:47 -04:00
Nick Cao
020adc777c
Merge pull request #263492 from aschleck/patch-1
nixos/networkd: fix typoed hairpin option name
2023-10-26 13:28:52 -04:00
April Schleck
13956f7f1f nixos/networkd: fix typoed hairpin option name
You can see in https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html that
this should be "HairPin" not "Hairpin". Using "Hairpin" results in

```
Oct 25 18:55:03 my-host systemd-networkd[843736]: /etc/systemd/network/10-bridge.network:11:
    Unknown key name 'Hairpin' in section 'Bridge', ignoring.
```
2023-10-26 10:26:04 -07:00
nikstur
b3c1d8c9ae nixos: add system.switch.enable flag
This flag allows the user to optionally exclude
switch-to-confguration.pl from toplevel.

This is interesting for appliance images where you don't want to re-build
the system. This flag is called `rebuildable` because the standard
interface to do this is `nixos-rebuild` which will not work anymore with
this change.
2023-10-26 17:47:35 +02:00
Lassulus
95a366309a
Merge pull request #262731 from Lassulus/tmpfiles
nixos/systemd-tmpfiles: add settings option
2023-10-26 09:29:46 +01:00
nikstur
256956e34d nixos/activation: link gcroot with tmpfiles instead of in activation 2023-10-26 01:44:21 +02:00
nikstur
88f63d1165 nixos/binfmt: replace activationScript via tmpfiles 2023-10-25 23:44:01 +02:00
nikstur
a8f50f9919 nixos/activation: remove specialfs activationScript
The stage-2-init.sh script has the same functionality hardcoded so we do
not need it in the activationScript again.
2023-10-25 00:48:37 +02:00
nikstur
59e3726755 nixos/activation: replace var activationScript via tmpfiles 2023-10-25 00:48:37 +02:00
Julian Stecklina
3c1c4b65e9 nixos/timesyncd: replace activationScript via ExecPreStart 2023-10-25 00:48:35 +02:00
Martin Weinelt
0e4b63f713 Revert "nixos/systemd-boot: Avoid remote mypy executions"
This reverts commit ea0dcd0ae1.
2023-10-23 03:38:13 +02:00
DavHau
cae154a67e nixos/systemd-tmpfiles: add settings option 2023-10-23 00:34:23 +02:00
Will Fancher
13f325005c
Merge pull request #262740 from ElvishJerricco/systemd-stage-1-improve-udhcpc-assertion
systemd-stage-1: Improve udhcpc assertion
2023-10-22 13:46:38 -04:00
Will Fancher
1a6c2e4837 systemd-stage-1: Improve udhcpc assertion 2023-10-22 09:12:34 -04:00
Will Fancher
a662970807
Merge pull request #262167 from jakubgs/systemd/fix-autofs-config
systemd: rename required AUTOFS4_FS to AUTOFS_FS
2023-10-22 08:08:11 -04:00
nikstur
9b20e22b88
Merge pull request #262573 from ElvishJerricco/systemd-repart-stage-1-assertion
nixos/systemd-repart: Add assertion requiring systemd in initrd
2023-10-22 11:53:59 +02:00
Will Fancher
22325ce016 systemd-stage-1: Support for user shells 2023-10-21 13:24:16 -04:00
Will Fancher
b57c850790 nixos/systemd-repart: Add assertion requiring systemd in initrd 2023-10-21 12:29:34 -04:00
nikstur
6958acea7e
Merge pull request #262179 from ElvishJerricco/systemd-stage-1-specific-fs-packages
systemd-stage-1: Use specific fs packages
2023-10-21 13:25:42 +02:00
Bjørn Forsman
142074c2a8 nixos: fix bad mkEnableOption descriptions
Fix descriptions that don't account for (1) the "Whether to enable"
prefix or (2) the automatically added trailing dot.
2023-10-20 16:22:40 +01:00
Janne Heß
a1012b2160
nixos/switch-to-configuration: Allow not filtering units 2023-10-20 15:45:43 +02:00
Arian van Putten
0257e9f13a
Merge pull request #261449 from arianvp/growpart-online
nixos/grow-partition: Resize partition online instead of in initrd
2023-10-20 09:25:31 +00:00
Will Fancher
18013cc71e systemd-stage-1: Use specific fs packages 2023-10-19 21:13:22 -04:00
Jakub Sokołowski
26c4e35cea
systemd: rename required AUTOFS4_FS to AUTOFS_FS
The `AUTOFS4_FS` name appears to be a legacy naming stub:

>Ok, I ran the script, and also decided that we might as well remove
>the AUTOFS4 legacy naming stub entry by now.
>
>It has been five years, and people will have either picked up the new
>name with 'make oldconfig', or they just don't use 'make oldconfig' at
>all.

https://lore.kernel.org/lkml/CAHk-=wgK9-Tx4BxYMrc0pg==mcaz3cjWF6-CBwVpM_BZAmf4JQ@mail.gmail.com/#r

That has been remove in 6.6 kernel and results in a failure:
```
error:
       Failed assertions:
       - CONFIG_AUTOFS4_FS is not enabled!
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-10-20 01:44:13 +02:00
nicoo
ea0dcd0ae1 nixos/systemd-boot: Avoid remote mypy executions 2023-10-19 20:58:52 +01:00
Arian van Putten
80a578580f nixos/grow-partition: Resize partition online instead of in initrd
There's no reason to do this in initrd. Partitions can be resized online.
We just have to make sure it happens before we resize the file system.

This also makes grow-partition work with systemd-initrd
2023-10-19 12:34:27 +00:00
Philip Taron
173a3a25f0
Remove restriction on PhysicalDevice being int; reformat and document the Type field 2023-10-17 09:43:37 -07:00
Philip Taron
989cca26c4
systemd.network.netdev: Add support for WLAN devices
These are virtual interface, where one physical wifi adapter can have
more than one interface.

See https://systemd.network/systemd.netdev.html#%5BWLAN%5D%20Section%20Options
and dedf2d0054
2023-10-16 15:04:44 -07:00
Tom Fitzhenry
69e24a579c nixos/module: add boot.initrd.unl0kr 2023-10-16 21:33:02 +11:00
Jörg Thalheim
b7057368c8 systemd-boot-builder: add missing fsync in atomic writes
write(2) and close(2) doesn't ensure the file content actually got synched, so let's also fsync before doing the rename
2023-10-10 14:49:51 +02:00
Jörg Thalheim
865a2cf8c1 Revert "nixos/systemd-boot: skip EFI update to 252"
This reverts commit 80665d606a.

Parsing the package version broke our systemd-boot builder test.

i.e. it won't be able to parse systemd-boot efi binaries coming from
ubuntu

We no longer use the faulty systemd-boot version so this code should no
longer be needed.
2023-10-10 14:49:51 +02:00
Jörg Thalheim
b7fbd1ffd4 systemd-boot-builder: use regex prefix string
otherwise there are warnings for \.
2023-10-10 14:49:51 +02:00
Jörg Thalheim
5ee9fdf929 systemd-boot-builder: use new builtin typing style 2023-10-10 14:49:51 +02:00
Jörg Thalheim
e20a886f87 systemd-boot-builder: drop unused import 2023-10-10 14:49:51 +02:00
Jörg Thalheim
a17f41ed0b systemd-boot-builder: replace mkdir_p function with stdlib equivalent 2023-10-10 14:49:51 +02:00
Jörg Thalheim
f4bf9702be systemd-boot-builder: always do syncfs, even after a failure 2023-10-10 14:49:51 +02:00
Jörg Thalheim
dbac7467ad systemd-boot-builder: drop semicolons
this is python, not C.
2023-10-10 14:49:51 +02:00
Jörg Thalheim
1f70361d08 systemd-boot-builder: resort imports according to isort
foo
2023-10-10 14:49:51 +02:00
Florian Klink
7239f0198e
Merge pull request #258920 from ElvishJerricco/systemd-stage-1-full-build
systemd-stage-1: Default to full systemd build.
2023-10-04 12:02:36 +03:00
Florian Klink
42f2e2dadd
Merge pull request #257510 from ign0tus/fix/wake-on-lan-policy
Fix: WakeOnLan policy
2023-10-04 11:36:16 +03:00
Will Fancher
710b96b191 systemd-stage-1: Default to full systemd build. 2023-10-04 04:21:35 -04:00
Florian Klink
d89aa11c89
Merge pull request #258345 from lf-/jade/wait-for-online
nixos/networkd: fix wait-online on networking.useDHCP default configuration
2023-10-04 10:58:14 +03:00
Will Fancher
37601de942
Merge pull request #237154 from ElvishJerricco/sd-s1-networkd-flush-with-keep-configuration
systemd stage 1 networking: Use KeepConfiguration
2023-10-03 23:37:03 -04:00
Jade Lovelace
28ab2b278d nixos/networkd: make wait-online not time out
A further bug to our strange multi-user.target depending on
network-online.target issue is that systemd recently changed the
behaviour of systemd-networkd-wait-online to no longer consider the
absence of interfaces with RequiredForOnline to be sufficient to be
online: https://github.com/systemd/systemd/pull/27825

On the advice of the systemd developers
(https://github.com/systemd/systemd/issues/29388), this commit changes
the configuration of systemd-networkd-wait-online to pass --any by
default, and lets the default DHCP interfaces be RequiredForOnline
as they would be by default if the option is omitted.

It is plausible that systemd-networkd-wait-online may still fail if
there are no interfaces at all. However, that probably cannot be
avoided.
2023-10-02 14:47:21 -07:00
Ryan Lahfa
3c3ef90189
Merge pull request #242191 from tie/systemd-required-for-online-range 2023-09-30 01:16:21 +02:00
Janne Heß
5d7723dd5b
nixos/switch-to-configuration: Lock the switch
This prevents any concurrent switches from happening which is not an
issue I have seen people complaining about but it seems like a good
measure.
2023-09-29 19:46:10 +02:00
Adam Stephens
b1237da5b2
systemd: revert allow udev-trigger for lxd nested containers 2023-09-28 13:58:11 -04:00
ign0tus
237f7ba7d2 networkd: Allow combinations of WakeOnLan policies
To comply with the systemd.link WakeOnLan[^1] specification, the option
"off" and all other possible policy combinations must be allowed.

[^1]: https://www.freedesktop.org/software/systemd/man/systemd.link.html#WakeOnLan=
2023-09-28 17:04:35 +02:00
Mario Rodas
25b9f4d2b6
Merge pull request #255116 from adamcstephens/lxd/udev-container
systemd: allow udev-trigger to run on lxd containers with nesting
2023-09-28 02:17:27 -05:00
Ryan Lahfa
12eb1e5d28
Merge pull request #249412 from JTarasovic/jdt/systemd-networkd/ipv6-assign-prefix 2023-09-27 18:39:00 +02:00
Ryan Lahfa
cb403e56a6
Merge pull request #249386 from JTarasovic/jdt/systemd-networkd/dhcpv6config 2023-09-27 18:38:16 +02:00
github-actions[bot]
fc1f757bf6
Merge master into staging-next 2023-09-25 18:01:06 +00:00
Yureka
6500b4580c
Revert "nixos/boot/rasbperrypi: add support for boot.initrd.secret with uboot (#240358)" (#257251)
This reverts commit 94e939985b.
2023-09-25 14:22:51 +02:00
github-actions[bot]
ab2ecc25c1
Merge master into staging-next 2023-09-23 18:00:59 +00:00
Janne Heß
cc55ef9d55
Merge pull request #254993 from helsinki-systems/feat/stc-mount-improvements
nixos/switch-to-configuration: Mount improvements and a lot more test cases
2023-09-23 17:03:13 +02:00
digital
94e939985b
nixos/boot/rasbperrypi: add support for boot.initrd.secret with uboot (#240358)
Co-authored-by: digital <didev@dinid.net>
2023-09-23 14:32:09 +02:00
Giorgio Gallo
fed5af2d15
nixos/systemd: update rateLimitBurst documentaion.
This updates the documentation for the services.journald.rateLimitBurst
option, clarifying that the journal size limit may very well default to
a lot less than 4GB with small disks or disk with not much free space
(eg: virtualized machines)
2023-09-22 16:34:59 +02:00
Janne Heß
85c1c30fd9
nixos/switch-to-configuration: Never unmount / or /nix
Also adds a huge test for fstab handling
2023-09-22 10:26:10 +02:00
github-actions[bot]
3245a21e71
Merge master into staging-next 2023-09-19 06:01:00 +00:00
Artturi
73d552ecb7
Merge pull request #254918 from RaitoBezarius/dnssec-resolved 2023-09-19 06:45:07 +03:00
Erno Hopearuoho
7d112f7da3 luksroot: fix issue when yubikey is detached during boot process
Fixes #228141, which describes an issue where detaching Yubikey during the boot process
causes cryptsetup to write empty passphrase instead of the challenge-response salt stored
on the boot drive.
2023-09-18 23:10:06 -03:00
github-actions[bot]
cb25ab46c1
Merge master into staging-next 2023-09-18 00:02:10 +00:00
Jörg Thalheim
fd6901755d stage1: use correct zfs package
This in particular broke zfsUnstable because it added symbols not present in zfsStable
2023-09-17 21:11:29 +02:00
Adam Stephens
8565cd862a
systemd: allow udev-trigger to run on lxd containers with nesting 2023-09-14 09:17:33 -04:00
Janne Heß
d1c1335908
nixos/switch-to-configuration: Test more action things 2023-09-13 16:42:19 +02:00
Raito Bezarius
97ee93da10 systemd: apply upstream patch for tmpfiles
This fixes notably the fact that /dev/zfs was not usable anymore as a user,
and potentially other things.

Tracked in systemd upstream under issue number 28653, 28765.
2023-09-13 12:02:41 +02:00
Raito Bezarius
fe6e299381 systemd: 253.5 -> 254-rc1
This is an early preparation for systemd v254 which causes some patch reflows
and EFI-related cleanups to their new build system with elf2efi, requiring pyelftools
as a Python packge.
2023-09-13 12:02:39 +02:00
Raito Bezarius
4f461f7b77 nixos/modules/system/resolved: disable DNSSEC validation by default
Historically, we allowed downgrade of DNSSEC, but some folks argue
this may decrease actually the security posture to do opportunistic DNSSEC.

In addition, the current implementation of (opportunistic) DNSSEC validation
is broken against "in the wild" servers which are usually slightly non-compliant.

systemd upstream recommended to me (in personal communication surrounding
the All Systems Go 2023 conference) to disable DNSSEC validation until
they work on it in a significant capacity, ideally, by next year.
2023-09-13 11:49:16 +02:00
Artturi
48a57a9884
Merge pull request #254480 from andersk/memtest86plus-name 2023-09-12 18:19:50 +03:00
Maciej Krüger
78e149fba3
Merge pull request #244722 from mdlayher/mdl-dhcp 2023-09-11 21:12:56 +02:00
Anders Kaseorg
191dee486f nixos/systemd-boot: Fix Memtest86+ name.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-09-10 18:44:20 -07:00
Florian Klink
688d95b6e6
Merge pull request #254056 from n8henrie/master
Include note about systemd default watchdog reboot time
2023-09-10 16:07:44 +02:00
ajs124
5ccc7d632b nixos/boot/kernel: include nvme kmod by default 2023-09-10 15:39:54 +02:00
Andrew Marshall
3f9cc71228 nixos/networkd: Fix incorrectly treating attrset as list
This reverses a [change made during PR review][1] that I did not sufficiently
test, causing [this error][2].

[1]: https://github.com/NixOS/nixpkgs/pull/249643#discussion_r1309151135
[2]: https://github.com/NixOS/nixpkgs/pull/249643#issuecomment-1712707336
2023-09-10 00:54:42 -04:00
Artturi
b3e16d6e10
Merge pull request #254166 from Artturin/fixthingy1 2023-09-09 19:56:02 +03:00
Janne Heß
6b8306c21c
Merge pull request #249643 from amarshall/networkd-reload
nixos/networkd: Reload (not restart) when only .network units change
2023-09-09 17:31:09 +02:00
Janne Heß
a71936c70f
Merge pull request #254027 from luochen1990/feature-better-binfmt
nixos/binfmt: improve type annotations
2023-09-09 17:24:53 +02:00
Artturin
f25f2a4209 nixos/stage-2-init: dont use install to create /etc/nixos if it's a symlink
it should be checking that it is not a broken symlink but bash
conditionals are difficult

-d was causing the directory to not be created if it does not exist

```
$ install -m 0755 -d $PWD/hello
$ ls
hello/
$ ln -s something notexist
'notexist' -> 'something'
$ ls -l
lrwxrwxrwx artturin artturin 9 B Sat Sep  9 06:59:44 2023 notexist@ ⇒ something
drwxr-xr-x artturin artturin 2 B Sat Sep  9 06:59:36 2023 hello/
$ install -m 0755 -d $PWD/notexist
install: cannot change permissions of ‘/home/artturin/nixgits/my-nixpkgs/test/notexist’: No such file or directory
```
2023-09-09 07:22:05 +03:00
Nathan Henrie
5061d9daf0 systemd.watchdog: (docs): include note about systemd default watchdog reboot time
I found it very confusing to get an error message on reboot about `10min` when that didn't seem to be the NixOS default.
2023-09-08 09:12:29 -06:00
LuoChen
9c5afb2f9a
nixos/binfmt: improve type annotations 2023-09-08 19:40:42 +08:00
Jared Baur
c47f423a9d
nixos/systemd-initrd: disable tpm-crb if on armv7l-linux
In addition to the existing riscv64 exception, also disable adding the
tpm-crb module to the initrd if the host platform is armv7.
2023-09-07 00:38:55 +02:00
Florian Klink
0a49365db9
Merge pull request #253498 from elohmeier/tpmfix
boot.initrd.systemd: make TPM2 modules optional
2023-09-06 11:49:47 +03:00
Ivan Trubach
bc644aee70 nixos/networkd: allow state ranges in RequiredForOnline
RequiredForOnline takes a boolean or a minimum operational state and an
optional maximum operational state. In the latter case, range values are
separated with colon.
2023-09-04 20:38:54 +03:00
Artturi
26b11c54d8
Merge pull request #247153 from Artturin/fixwarning1 2023-09-02 03:13:30 +03:00
Florian Klink
90204f058c
Merge pull request #251684 from jmbaur/user-activation-tmpfiles
nixos/systemd-user: call systemd-tmpfiles during activation
2023-09-01 21:52:19 +03:00
Andrew Marshall
189b14246a nixos/networkd: Reload (not restart) when only .network units change
Underneath, systemd-networkd’s reload is just `networkctl reload`. Per
`man networkctl`, calling `reload` is expected to fully handle new,
modified, and removed .network files, but it only handles *new* .netdev
files. For simplicity, assume .network -> reload and .netdev -> restart.

It’s desirable to perform reload instead of restart, as restart has the
potential to bring down interfaces, resulting in a loss of network
connectivity.
2023-08-31 12:24:17 -04:00
Jared Baur
e39c9f13bc
nixos/systemd-user: call systemd-tmpfiles during activation
Just like with system-wide tmpfiles, call `systemd-tmpfiles --create
--remove` for users during activation. This fixes an issue where new
entries in a user's tmpfiles are not reflected after activation, only at
boot when the user service systemd-tmpfiles-setup.service runs or only
after running systemd-tmpfiles manually.
2023-08-29 10:46:44 -07:00
Artturi
206ca4bef4
Merge pull request #246487 from amjoseph-nixpkgs/pr/binfmt-mips 2023-08-28 22:40:30 +03:00
Janne Heß
fd454fe4b6
Merge pull request #250316 from helsinki-systems/feat/stc-improve-mount-units
nixos/switch-to-configuration: Improve mount unit handling
2023-08-28 09:18:44 +02:00
K900
c6cf85b0d5 nixos/binfmt: use PE magic to detect Wine executables
Otherwise we break every Meson build because it creates native executables named foo.exe
2023-08-23 16:20:57 +03:00
dev-null-undefined
a39526b3ef
nixos/grub: Add submenu for each generation with specialisation
Before this commit there was no way to access (boot into) specialisation of previous generations from grub,even tho they are there.

This commit will add grub submenu for each generation if the generation has any specialisation.
Which will allow you to boot into them.

Co-authored-by: Samuel Dionne-Riel <samuel@dionne-riel.com>
2023-08-21 21:44:42 +02:00
Janne Heß
eb831f759b
nixos/stc: Improve mount unit handling
We should sometimes restart the units rather than reloading them so the
changes are actually applied. / and /nix are explicitly excluded because
there was some very old issue where these were unmounted. I don't think
this will affect many people since most people use fstab mounts instead
but I plan to adapt this behavior for fstab mounts as well in the future
(once I wrote a test for the fstab thingies).
2023-08-21 09:07:14 +02:00
Maciej Krüger
56700d64b1
Merge pull request #226821 from enc0urage/memtest 2023-08-16 15:31:32 +02:00
Janne Heß
bc9b484db8
Merge pull request #232230 from oddlama/fix-activation-template-unit-specializations
Fix detection of changed template unit specializations in switch-to-configuration.pl
2023-08-16 13:46:45 +02:00
Jason Tarasovic
fb59bf8a6d
systemd-networkd: add option to assign ipv6 prefix 2023-08-15 17:47:51 -05:00
Jason Tarasovic
521944571a
systemd-networkd: add dhcpv6Config options 2023-08-15 15:23:57 -05:00
Enno Richter
3f52185de8 boot.initrd.systemd: make TPM2 modules optional 2023-08-14 09:34:29 +02:00
enc0urage
00d7065913 nixos/systemd-boot: Replace proprietary memtest86 with free memtest86+ in UEFI 2023-08-14 03:05:24 +00:00
Janne Heß
d995da11d8
nixos/switch-to-configuration: Fix unit location in toplevel 2023-08-13 14:26:30 +02:00
enc0urage
1488a2bc1a nixos/grub: Replace proprietary memtest86 with free memtest86+ in UEFI mode 2023-08-13 12:04:34 +00:00
Samuel Dionne-Riel
f064a5bcc2
Merge pull request #220263 from samueldr/feature/misc-grub-fixes
nixos/grub: Fixes to allow flicker-free boot, themes and bug fixes
2023-08-12 20:32:51 -04:00
Artturin
103bb49f84 nixos/stage-2-init: Change permission of /etc/nixos only if it exists
When I boot there's a warning `stage-2-init: install: cannot change permissions of '/etc/nixos': No such file or directory`
because my /etc/nixos is a symlink to $HOME/dotfiles.

```
/etc/nixos -> /home/artturin/dotfiles
```

These lines were added in 56b4653904
2023-08-04 20:54:18 +03:00
Vincent Haupert
fbebce610f nixos/toplevel: move systemBuilder for boot.kernel.enable
This avoids creating a build-time reference on `boot.kernelParams` if
the configuration does not use a kernel, i.e., `boot.kernel.enable` is
set to `false`.
2023-08-04 12:46:03 +02:00
Samuel Dionne-Riel
1d416595ad nixos/grub: Remove with with broad scopes.
There is only other `with` with a somewhat broad scope, `with pkgs`, but
it's used in a place where it would become awkward to change out. And
anyway its scope is rather limited still.
2023-08-01 19:18:48 -04:00
Samuel Dionne-Riel
c867c6d172 nixos/grub: Insert required image modules for themes
With a limited testing of all packaged GRUB 2 themes (pkgs.nixos-grub2-theme)
this is tested to work.

Without this change, the theme loading will error out (waiting for a key press).

With this change, the theme loads and works as expected.
2023-08-01 18:56:03 -04:00
Samuel Dionne-Riel
50063bf9d6 nixos/grub: Add support for timeoutStyle 2023-08-01 18:56:03 -04:00
Samuel Dionne-Riel
f12b216574 nixos/grub: Fix extraFiles in subdirectories
This directly copies the systemd-boot logic, which works.

`install` with `-D` will create all leading directory components.
2023-08-01 18:54:27 -04:00
Samuel Dionne-Riel
894d47f989 nixos/grub: Always install with bootloader id
The intent was to not pass the flag when installing as removable. In
reality there is a third case, where you may not want to touch EFI
variables, and not want to install as removable.

In that case, it would install to the generic \EFI\grub\grubx64.efi,
which is not a good choice in any cases. The operating system should
"own" their path under \EFI\ to be a good citizen [citation needed].

With this change, there can be only two paths GRUB can be installed to:

 - \EFI\NixOS-boot\grubx64.efi
 - \EFI\BOOT\bootx64.efi

This removes the surprising behaviour where GRUB may be installed to a
different location only because we configured NixOS not to touch EFI
variables.

It may be necessary under some configurations to install GRUB without
touching EFI variables, but to the NixOS-owned location.
2023-08-01 18:54:27 -04:00
Adam Joseph
957541ad69 nixos/modules/system/boot/binfmt.nix: update mips patterns
This commit updates the binfmt magic-patterns using

  f5e6786de4/scripts/qemu-binfmt-conf.sh

The patterns prior to this commit did not understand the difference
between mips32-*-* (32-bit void*,int) and mips64-*-*abin32 (32-bit
void*, 64-bit int).  This commit corrects that.
2023-07-31 21:24:26 -07:00
digital
9d78971007
nixos/boot/initrd-network: add option to enable udhcpc (#240406)
In some setups, and especially with sytemd-networkd becoming more widely
used, networking.useDHCP is set to false. Despite this, it may be useful
to have dhcp in the initramfs.
2023-07-31 16:08:56 +02:00
Florian Klink
a2a7096157
Merge pull request #246082 from ElvishJerricco/exitrd-fix-shutdown-loop
systemd shutdownRamfs: Fix infinite shutdown loop
2023-07-30 00:11:55 +02:00
Will Fancher
7a3730f901 nixos/systemd: Add util-linux to systemd-mkswap's path 2023-07-29 14:02:06 -04:00
Will Fancher
4ecd0c119a systemd shutdownRamfs: Fix infinite shutdown loop 2023-07-29 13:52:52 -04:00
Pol Dellaiera
fd304ecc8a
Merge pull request #236027 from iliana/grub-dont-die
nixos/grub: don't die on EFI-only systems if devices != ["nodev"]
2023-07-28 17:26:24 +02:00
nikstur
a662dc8b73 nixos/lib: systemd definition files function
Add a re-usable function that converts an attrset to a directory
containing systemd definition files.
2023-07-26 23:30:08 +02:00
nikstur
9b4d3b840e nixos/systemd-sysupdate: init 2023-07-26 20:33:31 +02:00
Pol Dellaiera
07fd6694b5
Merge pull request #236368 from SuperSandro2000/etc-dir-names
nixos/etc: keep directories in derivation name
2023-07-25 03:02:47 +02:00
oddlama
d073105d6b
nixos/switch-to-configuration: fix ignoring of template unit specialization dropins 2023-07-23 13:16:58 +02:00
Felix Bühler
0a2745684e
Merge pull request #239624 from Stunkymonkey/use-optionalString-then
treewide: use optionalString instead of 'then ""'
2023-07-22 13:02:47 +02:00
Matt Layher
93efcdac79
nixos/networkd: add DHCPServer PXE boot options
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2023-07-21 16:59:21 -04:00
Artturi
dbef093f84
Merge pull request #244449 from Artturin/fixsrip1 2023-07-21 01:44:33 +03:00
Andrew Marshall
3d774b4453 util-linux: Fix build on non-Linux
Build logs show:

> configure: WARNING: non-linux system; not building mount
> configure: WARNING: non-linux system; not building swapon

So skip these on non-Linux

Using getOutput prevents eval failures on other platforms.
Things should stay eval'able with NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1

Co-authored-by: Artturin <Artturin@artturin.com>
2023-07-20 22:03:15 +03:00
Artturin
69267c22f1 nixos/stage-1: fix stripping
got broken in 6ea1a2a1be which changed
runCommandCC to runCommand but was not
noticed because it was failing silently

runCommand doesn't include CC or bintools
2023-07-20 21:26:38 +03:00
Will Fancher
22bcc32f63
Merge pull request #244033 from SuperSandro2000/issue-243820
nixos/stage-1: fix mount replacement in extra-utils
2023-07-20 00:43:33 -04:00
Will Fancher
2e60058b95
Revert "nixos/boot/stage-1: chase symlinks when copying binaries" 2023-07-20 00:03:50 -04:00
Florian Klink
8f15fe7914
Merge pull request #241370 from RaitoBezarius/vxlan-independent
nixos/networkd: support `Independent` flag for VXLAN netdevs
2023-07-19 23:18:54 +03:00
Florian Klink
6f66c57acc
Merge pull request #241365 from RaitoBezarius/macaddrs-netdevs
nixos/networkd: support netdev MAC addresses
2023-07-19 23:03:34 +03:00
Linus Heckemann
dd2a892144 nixos/boot/stage-1: chase symlinks when copying binaries
The split of util-linux into further outputs (#236463) resulted in
${util-linux.bin}/bin/mount becoming a symlink. This broke zfs in some
cases.
2023-07-17 22:13:49 +02:00
Sandro Jäckel
222222bedb
nixos/stage-1: fix mount replacement in extra-utils 2023-07-17 21:12:39 +02:00
Linus Heckemann
7d2124f9e3 stage-1: Only copy mdadm and mdmon into initramfs if enabled 2023-07-10 20:31:13 +02:00
Linus Heckemann
c0f963a338 boot.initrd.services.swraid -> boot.swraid
Since the option affects both stage-1 and stage-2, it does not make
sense to keep it within the boot.initrd namespace.
2023-07-10 20:20:08 +02:00
Lily Foster
5c1583bfd7
nixos/plymouth: fix minor doc rendering issue 2023-07-09 02:31:05 -04:00
K900
8533b23159 nixos/networkd: fix mismerge of #240969 and #241362 2023-07-09 07:34:42 +03:00
Will Fancher
0b25b4c7c9
Merge pull request #237908 from lilyinstarlight/upd/plymouth-2023-06-05
plymouth: unstable-2021-10-18 -> unstable-2023-06-05
2023-07-08 16:57:31 -04:00
Ryan Lahfa
186edce0a0
Merge pull request #241362 from RaitoBezarius/macvtap-networkd 2023-07-08 20:00:52 +02:00
Robert Hensing
3fd4ac8e82
Merge pull request #237040 from roberth/flexible-activation
nixos/system: Support pre-activated images
2023-07-08 16:06:25 +02:00
Raito Bezarius
6b9e49230d nixos/networkd: add MACVTAP= option for networks
Example 10. of man page of systemd.network(5) shows:
```

       Example 10. MacVTap

       This brings up a network interface "macvtap-test" and attaches it to "enp0s25".

           # /usr/lib/systemd/network/25-macvtap.network
           [Match]
           Name=enp0s25

           [Network]
           MACVTAP=macvtap-test
```

Which is a MACVTAP example and is currently unsupported in NixOS.
This is useful for people using "modern" technologies with virtual machines.
2023-07-08 15:42:10 +02:00
Ryan Lahfa
828633d36a
Merge pull request #241534 from samueldr/fix/finally-deprecate-boot-loader-raspberrypi 2023-07-08 14:16:27 +02:00
Samuel Dionne-Riel
a6e61a1ea9 nixos: Formally deprecate boot.loader.raspberryPi
The whole option set was recommended against since mid-2019, and never
worked with the Raspberry Pi 4 family of devices.

We should have deprecated it in early 2020 for removal by 2021. At the
time I did not feel confident in making such a decision, and never
ended-up getting around to it.

The ***only*** supported-by-NixOS boot methods for AArch64 are
standards-based boot methods, namely UEFI or the pragmatically
almost-standard extlinux-compatible for U-Boot.

You can quote me on that.
2023-07-04 13:42:57 -04:00
Raito Bezarius
faba775beb nixos/networkd: support Independent flag for VXLAN netdevs
According to networkd netdev's manpage:
```
       Independent=
           Takes a boolean. When true, the vxlan interface is created without any underlying network interface. Defaults to false, which means that a .network
           file that requests this VXLAN interface using VXLAN= is required for the VXLAN to be created.
```

is a valid option for [VXLAN] section.
2023-07-04 01:53:34 +02:00
Raito Bezarius
4d38fa043b nixos/networkd: support netdev MAC addresses
According to systemd.netdev manpage:

```
MACAddress=
           Specifies the MAC address to use for the device, or takes the special value "none". When "none", systemd-networkd does not request the MAC address for
           the device, and the kernel will assign a random MAC address. For "tun", "tap", or "l2tp" devices, the MACAddress= setting in the [NetDev] section is
           not supported and will be ignored. Please specify it in the [Link] section of the corresponding systemd.network(5) file. If this option is not set,
           "vlan" device inherits the MAC address of the master interface. For other kind of netdevs, if this option is not set, then the MAC address is
           generated based on the interface name and the machine-id(5).

           Note, even if "none" is specified, systemd-udevd will assign the persistent MAC address for the device, as 99-default.link has
           MACAddressPolicy=persistent. So, it is also necessary to create a custom .link file for the device, if the MAC address assignment is not desired.
```

Therefore, `none` is an acceptable value.
2023-07-04 01:21:35 +02:00
mutantmell
d51ebb6173 nixos/networkd: refactor
Reduces size of networkd module by moving unit file generation code into a util.
2023-07-01 17:17:51 -07:00
pennae
969b4d7ba9
Merge pull request #232454 from quentinmit/bridge-vlan
nixos/networkd: Fix typo in BridgeVLAN options
2023-07-01 00:19:37 +02:00
Robert Hensing
772d6076e8 nixos: Add system.activatable flag for images that are pre-activated 2023-06-28 14:06:28 +02:00
Robert Hensing
9edad17d29 nixos/top-level: Remove unused builder variables
These variables were previously used by the activation script
build commands, but are now embedded into those commands for
to improve reusability for an upcoming addition.
2023-06-28 12:49:34 +02:00
Robert Hensing
7891c8cdaf nixos/activatable-system: Move legacy variables to top-level 2023-06-28 12:48:59 +02:00
Robert Hensing
990b72f6af nixos/activatable-system: Make system builder commands env independent
This way it will be easier to reuse in a different context, such as
a separate build of the activation script by itself (TBD).
2023-06-28 12:42:51 +02:00
Lily Foster
35337085ea
Merge pull request #237820 from lilyinstarlight/fix/systemd-initrd-network-default-package
nixos/networkd: make overriding boot.initrd.systemd.package a little easier by using mkDefault
2023-06-27 15:58:57 -04:00
Naïm Favier
0179d9f7e6
nixos/top-level: change extraDependencies from package to pathInStore
Allows adding subdirectory flake inputs that aren't top-level store paths.
2023-06-27 11:48:08 +02:00
iliana etaoin
53135cc8c7 nixos/grub: don't die on EFI-only systems if devices != ["nodev"]
Without this change, GRUB installation on non-PC systems (such as
aarch64-linux) only works if boot.loader.grub.devices is set to exactly
`["nodev"]`. If boot.loader.grub.devices was any other value (including
the default `[]`), users got the error:

    Died at /nix/store/an9ngv2vg95bdcy0ifsxlbkasprm4dcw-install-grub.pl line 586.

install-grub.pl verifies that if both $grub and $grubEfi are set, then
$grubTarget (e.g. i386-pc) and $grubTargetEfi (e.g. x86_64-efi) must
both be set, or the script will `die`. On non-PC systems, $grubTarget
is "".

When boot.loader.grub.devices is ["nodev"], $grub is set to null,
disabling non-EFI installation. But if a user has devices set for an
x86_64 config, or is using only mirroredBoots without setting devices,
they will hit this `die`.

This change sets $grub to "" if $grubTarget is "".
2023-06-25 17:46:12 +00:00
Felix Buehler
933a41a73f treewide: use optional instead of 'then []' 2023-06-25 09:11:40 -03:00
Felix Buehler
f3719756b5 treewide: use optionalString instead of 'then ""' 2023-06-24 20:19:19 +02:00
Ryan Lahfa
230a3705fc
Merge pull request #234223 from alyssais/stage-1-bind-file 2023-06-22 21:47:30 +02:00
Sandro Jäckel
900104fc52
nixos/grub: remove grub 1 from descriptions 2023-06-20 22:34:25 +02:00
r-vdp
c3fa4f9170
nixos/systemd: Make the fsck unit depend only on FS packages.
This means that this unit no longer need to be rebuilt when the system path is changed.
2023-06-18 12:46:13 +02:00
Lily Foster
7fb3975256
nixos/plymouth: add actual logo defaultText and move existing to example
Fixes #221391
2023-06-15 10:42:40 -04:00
Lily Foster
ef0c0d5c2f
nixos/plymouth: use new runtime paths for plugins and themes 2023-06-15 10:42:37 -04:00
Lily Foster
be48010eb2
nixos/networkd: make overriding boot.initrd.systemd.package a little easier by using mkDefault 2023-06-14 16:09:25 -04:00
Wout Mertens
a97fe8990d
switch-to-configuration.pl: fix inverted dry-activate logic for swap 2023-06-14 12:11:45 +02:00
zi3m5f
67f5dcfd94 nixos/nspawn: fix spelling of systemd.nspawn MachineID option
This changes option systemd.nspawn.execConfig.MachineId to MachineID.
See man page systemd.nspawn(5)
2023-06-12 12:08:15 +02:00
Will Fancher
e23693e129 systemd stage 1 networking: Use KeepConfiguration 2023-06-11 13:59:00 -04:00
Robert Hensing
193f4fea90 nixos/activatable-system: Make substitutions explicit
This helps with understanding the code.
We might make this not depend on environment variables later.
systemBuilderArgs is a form of global state, which isn't helpful.
2023-06-10 19:15:00 +02:00
Robert Hensing
a16986f1a3 nixos: Move installBootLoader to activation script modules 2023-06-10 19:15:00 +02:00
Robert Hensing
61d43dee5f nixos: Extract module for activation script inclusion into toplevel
Allows omission of this functionality through disabledModules, e.g.
for image building.
2023-06-10 19:15:00 +02:00
Will Fancher
90d69b1634
Merge pull request #236388 from ElvishJerricco/sd-s1-networkd-stop-on-switch-root
systemd stage 1 networking: Stop systemd-networkd on switch-root
2023-06-10 00:35:56 -04:00
Will Fancher
5d6ea734a1 systemd stage 1 networking: Stop systemd-networkd on switch-root
This essentially backports
https://github.com/systemd/systemd/pull/27791. `systemd-networkd.service`
is sent the `SIGTERM` signal, but it is not required to be stopped
before `initrd-switch-root.target` is reached, despite the use of
`systemctl isolate initrd-switch-root.target`. This is because when
there is no ordering at all between two units, and a transaction stops
one and starts the other, the two operations can happen
simultaneously. This means the service could still be running when
`switch-root` actually occurs. Then, stage 2 systemd will see the
service still running and decide it doesn't need to add a start
operation for it to its initial transaction. Finally, the service
exits, but only after it's already too late. If, however, there is any
ordering at all between a stopping unit and a starting unit, then the
stop operation will be done first. This way, we ensure that the
service is properly exited before doing `switch-root`.

This is something to keep in mind going forward. There may be other
services that need this treatment. These `before` and `conflicts`
definitions are the correct way to ensure a unit is actually stopped
before you reach initrd-switch-root
2023-06-08 00:25:15 -04:00
Victor Engmark
8deaa732a8 refactor: Split mkdir -m … into mkdir + chmod
As recommended by ShellCheck
<https://www.shellcheck.net/wiki/SC2174>.
2023-06-08 15:55:40 +12:00
Sandro Jäckel
fadc824f20
nixos/etc: keep directories in derivation name
This changes eg. etc-timesyncd.conf to etc-systemd-timesyncd.conf which
better reflects the actual location of the config file.
2023-06-07 00:08:43 +02:00
Will Fancher
b497502357 nixos: Use systemd-growfs for autoResize 2023-06-04 22:57:22 -04:00
Will Fancher
5176a4f113 nixos: Use systemd-makefs for autoFormat 2023-06-04 22:57:20 -04:00
Will Fancher
76d668fae7
Merge pull request #227628 from m-bdf/logind-handle-keys
nixos/logind: Add key handling options
2023-05-29 14:31:43 -04:00
Graham Christensen
479712af11
networkd: support specifying the ClientIdentifier for DHCPv4 options 2023-05-27 15:06:06 +02:00
Alyssa Ross
a92bc576b1
nixos/stage-1: support bind mounts of files
On my system, / is tmpfs, and /etc/machine-id is bind mounted from
/persist.
2023-05-26 13:26:48 +00:00
Will Fancher
fe43923a70
Merge pull request #229767 from mberndt123/mberndt123/stratis-rootfs
nixos/stratis: initrd support for stratis root volumes
2023-05-25 14:06:31 -04:00
Will Fancher
636e03bef3
Merge pull request #232533 from nikstur/systemd-repart-create-root
nixos/systemd-repart: enable creating root partition
2023-05-22 09:13:00 -04:00
figsoda
701bcdbead nixos: fix typos 2023-05-19 22:31:04 -04:00
Bjørn Forsman
ef85c3fe51 nixos: use passAsFile to avoid "Argument list too long" error
This patch fixes "Argument list too long" build failure when passing a
list of store paths to system.extraDependencies that exceeds Linux'
MAX_ARG_STRLEN limit of 128 KiB. With the shortest possible derivation
names (one byte), the 128 KiB limit is equivalent to about 2850
derivations. With longer derivations names, the limit is hit earlier.
Fix this restriction.
2023-05-19 22:31:31 +02:00
Matthias Berndt
765349d345 minor refactoring 2023-05-19 10:22:45 -04:00
nikstur
ef80e11032 nixos/systemd-repart: enable creating root partition 2023-05-19 15:54:55 +02:00
Matthias Berndt
cb410a8c59 Merge remote-tracking branch 'upstream/master' into mberndt123/stratis-rootfs 2023-05-17 21:47:19 -04:00
Matthias Berndt
92814241a8 improve stratis initrd support
it is now possible to supply a stratis pool uuid
for every filesystem, and if that filesystem
is required for boot, the relevant pool will be
started in the initramfs.
2023-05-16 22:48:36 -04:00
Quentin Smith
ad7b199d5d
nixos/networkd: Fix typo in BridgeVLAN options 2023-05-16 19:33:34 -04:00
Robert Hensing
25f227fc67
Merge pull request #231316 from hercules-ci/nixos-system.checks
NixOS: add `system.checks`
2023-05-15 23:16:29 +02:00
Ryan Lahfa
1ee11b8a31
Merge pull request #231283 from nikstur/filesystems-erofs
nixos/filesystems: init erofs
2023-05-14 18:54:37 +02:00
Florian Klink
e9c6179ad0
Merge pull request #231504 from nikstur/systemd-repart-add-maintainer
nixos/systemd-repart: add myself as maintainer
2023-05-13 10:51:11 +03:00
nikstur
fa09e0a3c7 nixos/filesystems: init erofs
Enable using an erofs filesystem as one of the filesystems needed to
boot the system. This is useful for example in image based deployments
where the Nix store is mounted read only.
[erofs](https://docs.kernel.org/filesystems/erofs.html) offers multiple
benefits over older filesystems like squashfs. Skip fsck.erofs because
it is still experimental.
2023-05-12 19:55:32 +02:00
nikstur
1bd62f43eb nixos/systemd-repart: add myself as maintainer 2023-05-12 18:55:09 +02:00
Robert Hensing
5bdf63819b nixos/top-level.nix: Add system.checks
Note that this does not add to the `forbiddenDependenciesRegex`
code because that code check should be unaffected as it only checks
output dependencies, not build dependencies.
Build deps are added after that check, if those are enabled in the
first place.
2023-05-11 21:18:38 +02:00
ajs124
96fbdcedcd trustedGrub: remove 2023-05-10 22:17:56 +02:00
ajs124
1319323458 nixos/grub: turn definition of version option from an error into a warning
because a lot of configurations (generated by nixos-generate-config) contain it
2023-05-10 21:51:26 +02:00
ajs124
30bea8d82d nixos/*: remove boot.grub.version 2023-05-10 21:51:26 +02:00
Lin Yinfeng
1e05869917
nixos/networkd: fix typo of tokenBucketFilterConfig 2023-05-09 23:06:47 +08:00
nikstur
d85abd2764 nixos/systemd-repart: definition files in initrd
Store the definition files in the initrd instead of reading them from
the Nix store in /sysroot.

This way, the initrd has to be re-generated every time the definition
files change. When the path to the defintion files instead of the
definition files themselves are embedded in the initrd, however, the
initrd also has to be re-generated every time. In this regard, this
change does not improve the status quo.

However, now systemd-repart also works reliable when the Nix store is
mounted separately from the root partition.

This change also enables new use-cases like creating partitions
necessary to boot the system. However, by default, the root partition
cannot be created on first boot because the systemd-repart service
requires a /sysroot to be mounted. Otherwise, systemd-repart cannot
determine the device to operate on.
2023-05-09 00:11:21 +02:00
Matthias Berndt
8aa320b4c2 address code review issues 2023-05-08 23:18:55 +02:00
nikstur
5c2a7490cf nixos/systemd-repart: fix
Since v253, systemd-repart tries to create temporary directories in
/var/tmp. However, this directory doesn't exist in the initrd. This
commit adds an enviroment variable to re-use the existing /tmp directory
instead of /var/tmp.
2023-05-08 23:12:59 +02:00
Matthias Berndt
9f1bc0fa02 address review comments 2023-05-07 18:48:28 +02:00
Matthias Berndt
1632e73b19 nixos/stratis: enable booting from stratis volume 2023-05-07 18:48:28 +02:00
Bernardo Meurer
aa8eff129d
nixos/networkd: add TransmitQueues and TransmitQueueLength
These are relevant when using networkd to configure CAN networks

Co-authored-by: Martin Weinelt <mweinelt@users.noreply.github.com>
2023-05-06 21:55:09 -04:00
Ryan Lahfa
0b0c5fdf95
Merge pull request #230027 from jmbaur/fix-cross-nixos-system
nixos/bootspec: Fix cross for nixos-system systemBuilder
2023-05-05 22:05:44 +02:00
Ryan Lahfa
275a6e3d8d
Merge pull request #193469 from minijackson/mount-options-stage-1
nixos/stage-1: follow mount options
2023-05-05 17:05:48 +02:00
Jared Baur
67561dcc59
nixos/bootspec: Fix cross for nixos-system systemBuilder
When `nixpkgs.hostPlatform` != `nixpkgs.buildPlatform`, building the
top-level attribute fails since the bootspec portion of the system
builder tries to reference the host platform's `jq`. Change this to
reference the build platform's `jq`.
2023-05-04 20:09:16 -07:00
Rene Hollander
a70c7aba36 nixos/networkd: Fix typo in usage sectionBridgeVLAN
The `B` in bridge should be capitalized.

It currently leads to an evuluation error: 
```
error: attribute 'sectionbridgeVLAN' missing

       at /nix/store/7wmrwj0sgwg1iivxk43lpkqjhji57mq7-source/nixos/modules/system/boot/networkd.nix:2386:56:

         2385|       example = { VLAN = "10-20"; };
         2386|       type = types.addCheck (types.attrsOf unitOption) check.network.sectionbridgeVLAN;
             |                                                        ^
         2387|       description = lib.mdDoc ''
       Did you mean sectionBridgeVLAN?
```
2023-05-04 16:20:56 +02:00
Jörg Thalheim
be8e3128b9
Merge pull request #223418 from Mic92/grub
nixos/grub-install: don't rely on shell to run commands
2023-05-04 09:48:41 +01:00
Raito Bezarius
bc502d0a14 nixos/bootspec: adopt the merged RFC-0125
This removes the feature preview warning, enable by default bootspec,
adds a validation flag to prevent Go to go into build-time closure.

This will break all downstream users of bootspec as those changes are
not backward-compatible.
2023-04-28 18:26:11 -07:00
Weijia Wang
b2ef7956b6
Merge pull request #227560 from jackyliu16/loongnix-commit
lib.platforms.loongarch64: init
2023-04-28 13:21:42 +03:00
jackyliu16
15e3a50bd3 nixos/binfmt: add loongarch64-linux 2023-04-28 12:11:58 +03:00
Minijackson
b25259e021
nixos/stage-1: follow mount options
For fileSystems needed for boot which are bind mounts, busybox tend to
ignore mount options, so we remount right afterwards
2023-04-25 12:47:39 +02:00
Maëlys Bras de fer
520150fa89
nixos/logind: Add key handling options 2023-04-22 14:41:36 +00:00
Will Fancher
e56084d2a0 systemd-stage-1: Revert assertions about initrd commands 2023-04-22 10:25:16 -04:00
Will Fancher
1598338521 systemd-stage-1: Make networkd options shallow 2023-04-21 21:52:38 -04:00
Will Fancher
5c46e6f4e3 systemd-stage-1: Add assertions for unsupported options. 2023-04-21 13:05:12 -04:00
Will Fancher
8f9416e9e3 systemd-stage-1: Unhide documentation 2023-04-21 13:04:15 -04:00
Florian Klink
6b27ed3229
Merge pull request #169116 from ElvishJerricco/systemd-stage-1-networkd
Systemd stage 1 networkd
2023-04-21 18:40:59 +02:00
Artturi
b83db86a9e
Merge pull request #222080 from Stunkymonkey/nixos-optionalString 2023-04-20 16:07:30 +03:00
Will Fancher
3cb9534df6 systemd-initrd: Flush networkd 2023-04-17 16:41:36 -04:00
Will Fancher
8598234651 systemd-initrd: dbus 2023-04-17 16:41:36 -04:00
Will Fancher
834ec135ce systemd-initrd: OpenVPN 2023-04-17 16:41:35 -04:00
Will Fancher
0698a1cf04 systemd-initrd: sshd 2023-04-17 16:41:35 -04:00
Will Fancher
dd392d7c76 systemd-initrd: networkd 2023-04-17 16:41:34 -04:00
lewo
ff24a05847
Merge pull request #206445 from nlewo/ssytemd-boot-fail
systemd-boot-builder only ignores OSError "invalid argument"
2023-04-16 22:17:28 +02:00
Sandro
603320b64f
Merge pull request #204534 from SuperSandro2000/boot-tmp 2023-04-12 21:37:47 +02:00
Will Fancher
e70b42bf61 systemd-initrd: Add users and groups with static IDs. 2023-04-12 13:55:50 -04:00
Will Fancher
762b69f2ff systemd-initrd: Fix up root directory mode 2023-04-11 15:20:47 -04:00
Will Fancher
fef26d88e2 systemd-initrd: Support secrets when boot loader doesn't
initrd-secrets: Fix service config with systemd-stage-1
2023-04-11 15:20:47 -04:00
Will Fancher
71983a6eb5 systemd-initrd: Don't use SYSTEMD_SULOGIN_FORCE 2023-04-11 15:20:47 -04:00
Felix Buehler
327b0cff7a treewide: use more lib.optionalString 2023-04-07 13:38:33 +02:00
Robert Hensing
bcd2d49d85 nixos: Make services.resolved discoverable via "systemd-resolved" search
This query yielded no results on search.nixos.org.
I don't think I can make all options magically appear, but you can
the other options by reading the text.
2023-04-07 01:09:05 +02:00
Antoine Eiche
2638fb722e systemd-boot-builder only ignores OSError "invalid argument"
In order to fix
https://github.com/NixOS/nixpkgs/issues/114552 (profile name with
special characters), all OSError have been ignored while only the OSError
with errno 22 (invalid argument) could has been ignored.

The drawback of ignoring all OSError is that the "No space left on
device" error is also ignored. When the /boot doesn't have enough
available disk space, the switch-to-configuration script succeeds
while the boot menu has not been updated: the user thinks it's system
has been updated, but on the next reboot it is actually rollbacked.
2023-04-04 09:16:41 +02:00
K900
48b2f723f5 nixos/system: disallow system.copySystemConfiguration in pure eval mode
This is already broken, so let's give it a better error message.
2023-03-29 17:49:30 +03:00
Jörg Thalheim
d9c92360a8 nixos/install-grub: stop using bare file handles for readFile/WriteFile 2023-03-27 19:25:46 +02:00
Jörg Thalheim
5a23a24ba2 nixos/grub-install: don't rely on shell to run commands
data passed to these programs might be accidentially interpreted as
shell. Discovered in https://github.com/Mic92/envfs/issues/111
2023-03-27 19:21:55 +02:00
Vladimír Čunát
12dd95fbb1
Merge branch 'master' into staging-next 2023-03-24 09:07:41 +01:00
Will Fancher
5a9b9e620d
Merge pull request #176828 from therishidesai/luks-multi-key-files
nixos/luksroot: add tryEmptyPassphrase option
2023-03-24 03:02:20 -04:00
github-actions[bot]
6a3714135d
Merge master into staging-next 2023-03-23 00:02:14 +00:00
pennae
31f422d95f
Merge pull request #218721 from apfelkuchen6/nw
nixos/networkd: add some missing options
2023-03-22 22:22:03 +01:00
Rishi Desai
cccc3f8a8e nixos/luksroot: add tryEmptyPassphrase option 2023-03-22 09:17:23 -05:00
Sandro Jäckel
3a5de0e725
nixos/tmp: add a note to useTmpfs on potential issues 2023-03-20 17:27:06 +01:00
Sandro Jäckel
a5d95ac5fc
nixos/tmp: move /tmp options under boot.tmp 2023-03-19 18:49:37 +01:00
apfelkuchen06
0ddfb0a5df nixos/networkd: add BridgeVLAN options 2023-03-16 03:31:04 +01:00
apfelkuchen06
cd650b3fa3 nixos/networkd: add QuickFairQueueingClass options 2023-03-16 03:31:04 +01:00
apfelkuchen06
fde806d5a5 nixos/networkd: add QuickFairQueueing options 2023-03-16 03:31:04 +01:00
apfelkuchen06
493ed75418 nixos/networkd: add HeavyHitterFilter options 2023-03-16 03:31:04 +01:00
apfelkuchen06
88d99a3630 nixos/networkd: add HierarchyTokenBucketClass options 2023-03-16 03:31:04 +01:00
apfelkuchen06
24df07c786 nixos/networkd: add HierarchyTokenBucket options 2023-03-16 03:31:03 +01:00
apfelkuchen06
29e5451963 nixos/networkd: add TrivialLinkEqualizer options 2023-03-16 03:31:03 +01:00
apfelkuchen06
cf470ebd88 nixos/networkd: add FairQueueing options 2023-03-16 03:31:03 +01:00
apfelkuchen06
dbc14e5a44 nixos/networkd: add FairQueueingControlledDelay options 2023-03-16 03:31:03 +01:00
apfelkuchen06
5b5c79c6a0 nixos/networkd: add GenericRandomEarlyDetection options 2023-03-16 03:28:23 +01:00
apfelkuchen06
ca496f8754 nixos/networkd: add EnhancedTransmissionSelection options 2023-03-16 03:28:23 +01:00
apfelkuchen06
3cde7aaa36 nixos/networkd: add DeficitRoundRobinSchedulerClass options 2023-03-16 03:28:23 +01:00