Commit Graph

56 Commits

Author SHA1 Message Date
Janne Heß
0411b51a00 nixos/systemd-stage-1: Remove unnecessary binaries
We can make the growfs and makefs binaries conditional because we know
if we'll need them. Also move the cryptsetup generator to the luksroot
so it's not included when not needed.

We drop some generators altogether: systemd-getty-generator because we
don't have getty anyway in stage 1, systemd-system-update-generator
because we don't use that logic in NixOS and
systemd-veritysetup-generator because stage 1 has no veritysetup support
(yet) and if it had, we still wouldn't want to include the generator
unconditionally.
2022-04-30 14:50:02 +02:00
Will Fancher
2e96b64e02 Merge pull request #170123 from ElvishJerricco/systemd-shutdown-ramfs-fixup
Systemd shutdown ramfs fixup
2022-04-28 20:17:23 -04:00
Will Fancher
69d8047516 nixos: Fix up systemd shutdown ramfs 2022-04-28 14:12:14 -04:00
Bernardo Meurer
59aa6e4988 Merge pull request #170099 from helsinki-systems/feat/systemd-stage-1-no-random-seed
nixos/systemd-stage-1: Get rid of random-seed
2022-04-25 14:56:45 -07:00
Janne Heß
45494fab68 nixos/systemd-stage-1: Get rid of random-seed
This is not used at all since the unit has
ConditionPathExists=!/etc/initrd-release
2022-04-24 21:59:59 +01:00
Janne Heß
dc4b2812e4 nixos/stage-1-systemd: Also accept packages as store paths 2022-04-24 21:47:34 +01:00
Janne Heß
30a00c29c4 nixos/systemd: Properly shut down the system 2022-04-16 21:17:36 +01:00
Janne Heß
031b95e587 Merge pull request #168814 from helsinki-systems/feat/systemd-stage-1-pass-vars
nixos/systemd-stage-1: Pass more vars to the builder
2022-04-16 22:02:26 +02:00
Janne Heß
b9bf28fd70 nixos/stage-1-init: Pass all parameters to the builder
This is for compatiblity with the old builder to get compat with uboot
support and to prepend microcode updates to the initrd
2022-04-16 20:36:18 +01:00
Janne Heß
01bc138a8e nixos/stage-1-init: Merge mdraid module into swraid 2022-04-15 19:57:16 +01:00
Lassulus
15b5c29a41 Merge pull request #168600 from helsinki-systems/feat/systemd-stage-1-keymap
nixos/stage-1-systemd: Add keymap support
2022-04-14 21:50:52 +01:00
Janne Heß
289f38a65b Merge pull request #168301 from helsinki-systems/feat/systemd-stage-1-mdadm
nixos/stage-1-systemd: Add mdraid support (+ test)
2022-04-14 17:56:36 +02:00
Janne Heß
dda7e9e3ee nixos/stage-1-systemd: Add mdraid support (+ test) 2022-04-14 11:39:57 +01:00
Janne Heß
6d6c1c341c nixos/stage-1-systemd: Add keymap support
Makes my life a lot easier with my non-american keyboard layout
2022-04-14 10:25:04 +01:00
Janne Heß
aeb75b3b69 nixos/stage-1-systemd: Implement hibernation + test 2022-04-13 23:02:13 +01: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
Janne Heß
3df2691e6b nixos/stage-1-systemd: Handover between the systemds directly 2022-04-11 20:04:33 +01:00
Janne Heß
fb44ecd129 nixos/udev: Add systemd stage 1 support 2022-04-11 19:43:26 +01:00
Janne Heß
adab6ce552 nixos/systemd-stage-1: Minor fixups
- Fix the name of the env
- Add the correct kmod to the initrd
- Add `less` to make journalctl usable
- Fix SYSTEMD_SULOGIN_FORCe for rescue.target
- Add some missing binaries
2022-04-11 11:13:01 +01:00
Lassulus
b69bd66518 Merge pull request #167242 from helsinki-systems/feat/systemd-stage-1-variable-bin
nixos/systemd-stage-1: Softcode bin tools...
2022-04-05 09:39:19 +01:00
Janne Heß
acf089edef nixos/systemd-stage-1: Softcode bin tools...
...and other cleanups and fixes
2022-04-04 22:56:31 +01:00
Lassulus
5083d22ec5 Merge pull request #167167 from helsinki-systems/feat/systemd-stage-1-less-systemd-files
nixos/stage-1-systemd: Limit files to the bare necessities
2022-04-04 18:25:55 +01:00
Janne Heß
41d3ca0677 nixos/systemd-stage-1: Use an own systemd package
We need more features than systemdMinimal but less than systemd so we
need some own packages :/
2022-04-04 18:12:45 +01:00
Janne Heß
75ece4eb82 nixos/stage-1-systemd: Limit files to the bare necessities 2022-04-04 12:54:18 +01:00
Janne Heß
4b9efea255 nixos/stage-1-systemd: Implement job scripts 2022-04-04 11:44:31 +01:00
Janne Heß
56b4653904 nixos/stage-2-init: Re-add creation of /etc 2022-04-03 19:03:16 +01:00
Janne Heß
7cdc4dd5d1 Merge pull request #164943 from ElvishJerricco/systemd-initrd-reuse-systemd-module
initrd: Opt-in bare bones systemd-based initrd
2022-04-03 15:53:02 +02:00
Janne Heß
7ebb4ebe40 nixos/systemd-stage-1: Append (Initrd) to /etc/initrd-release
This is more in line with what dracut does (it appends "Initramfs") and
makes it clear where the boot is currently at when it hangs.
2022-04-01 13:54:09 +02:00
Janne Heß
5653209ed9 nixos/systemd-initrd: Redo object specifications
As requested by @roberth, we now have an option similar to
environment.etc. There's also extra store paths to copy and a way to
suppress store paths to make customizations possible.

We also link mount and umount to /bin to make recovery easier when
something fails
2022-04-01 13:26:06 +02:00
Janne Heß
c465c8d719 nixos/systemd-initrd: Make emergency access more flexible 2022-04-01 11:58:31 +02:00
Janne Heß
b7c62b8238 nixos/systemd-initrd: Remove unit options that don't work 2022-04-01 11:58:30 +02:00
Janne Heß
452102db8f nixos/stage-2-init: Clean up legacy commands
We can perform most of the mkdir/ln/rm using systemd-tmpfiles
instead which cleans up the script.

/bin and /home are created by their activation script snippets

usbfs is deprecated and unused.

hwclock seems to be automatically executed by systemd on startup.

The mkswap to prevent hibernation cycles seems to be executed by systemd
as well since the provided regression tests succeeds.
2022-03-27 13:51:02 +02:00
Florian Klink
e3083decc4 systemd-initrd, systemd-lib: drop initrdServiceToUnit
We can just use serviceToUnit here.
2022-03-24 18:57:16 +01:00
Florian Klink
74bae06748 systemd-initrd: use pkgs.fakeNss, document why we need libnss_files.so 2022-03-24 18:51:32 +01:00
Will Fancher
5bfe213315 Clarify suppressed units description 2022-03-22 21:28:51 -04:00
Will Fancher
213de9b108 systemd-initrd: autoFormat and autoResize in initrd 2022-03-22 21:28:51 -04:00
Will Fancher
1abf154179 systemd-initrd: Add PATH to everything 2022-03-22 21:28:50 -04:00
Will Fancher
2d4ebf1259 initrd: Optional systemd-based initrd 2022-03-22 21:28:43 -04:00
Will Fancher
25113740a5 nixos: systemd-lib: Make generateUnits general with default args 2022-03-22 07:02:23 -04:00
Will Fancher
52c98fc3e9 nixos: systemd: Split unit types into separate module 2022-03-21 10:25:27 -04:00
Bob van der Linden
397b8257a0 nixos: systemd-user: fix additionalUpstreamUserUnits description
Co-authored-by: Martin Weinelt <mweinelt@users.noreply.github.com>
2022-03-21 12:30:37 +01:00
Bob van der Linden
92af44e04d nixos: systemd: remove unhelpful comments in additionalUpstreamSystemUnits
Co-authored-by: Janne Heß <janne@hess.ooo>
2022-03-20 16:14:13 +01:00
Bob van der Linden
6514bb4620 nixos: systemd-user: make additionalUpstreamUserUnits internal 2022-03-19 12:06:56 +01:00
Bob van der Linden
66759cea7d nixos: systemd-user: expand on additionalUpstreamUserUnits description 2022-03-19 12:06:43 +01:00
Bob van der Linden
753b911708 nixos: systemd-tmpfiles: use cfg shorthand 2022-03-17 23:16:38 +01:00
Bob van der Linden
38d043de9c nixos: systemd: split off systemd-tmpfiles into separate module 2022-03-17 23:16:37 +01:00
Bob van der Linden
0e665d1815 nixos: systemd-user: allow additional upstream user units
Currently it is only possible to add upstream _system_ units. The option
systemd.additionalUpstreamSystemUnits can be used for this.

However, this was not yet possible for systemd.user. In a similar
fashion this was added to systemd-user.nix.

This is intended to have other modules add upstream units.
2022-03-17 23:16:37 +01:00
Bob van der Linden
b6d50528dd nixos: systemd-user: use cfg shorthand 2022-03-17 23:16:37 +01:00
Bob van der Linden
022b4209a3 nixos: systemd: split off systemd-user into separate module 2022-03-17 23:16:37 +01:00
Bob van der Linden
cae8ef1232 nixos: systemd-coredump: use cfg shorthand 2022-03-17 23:16:30 +01:00