summaryrefslogtreecommitdiffstats
path: root/nixos/modules/system
AgeCommit message (Collapse)Author
2020-03-29nixos/systemd: remove one DefaultBlockIOAccountingRouven Czerwinski
DefaultBlockIOAccounting=yes is set twice in the same file, remove one copy.
2020-03-25nixos/initrd-ssh: switch from Dropbear to OpenSSHEmily
Dropbear lags behind OpenSSH significantly in both support for modern key formats like `ssh-ed25519`, let alone the recently-introduced U2F/FIDO2-based `sk-ssh-ed25519@openssh.com` (as I found when I switched my `authorizedKeys` over to it and promptly locked myself out of my server's initrd SSH, breaking reboots), as well as security features like multiprocess isolation. Using the same SSH daemon for stage-1 and the main system ensures key formats will always remain compatible, as well as more conveniently allowing the sharing of configuration and host keys. The main reason to use Dropbear over OpenSSH would be initrd space concerns, but NixOS initrds are already large (17 MiB currently on my server), and the size difference between the two isn't huge (the test's initrd goes from 9.7 MiB to 12 MiB with this change). If the size is still a problem, then it would be easy to shrink sshd down to a few hundred kilobytes by using an initrd-specific build that uses musl and disables things like Kerberos support. This passes the test and works on my server, but more rigorous testing and review from people who use initrd SSH would be appreciated!
2020-03-20$toplevel/system: use kernel's architecturevolth
`$toplevel/system` of a system closure with `x86_64` kernel and `i686` userland should contain "x86_64-linux". If `$toplevel/system` contains "i686-linux", the closure will be run using `qemu-system-i386`, which is able to run `x86_64` kernel on most Intel CPU, but fails on AMD. So this fix is for a rare case of `x86_64` kernel + `i686` userland + AMD CPU
2020-03-19nixos/networkd: respect systemd.network.links also with disabled ↵Florian Klink
systemd-networkd This mirrors the behaviour of systemd - It's udev that parses `.link` files, not `systemd-networkd`. This was originally applied in 36ef112a477034fc6d1d9170bf1bcda0140a8d1d, but was reverted due to 1115959a8d4d73ad73341563dc8bbf52230a281e causing evaluation errors on hydra.
2020-03-16Merge pull request #80114 from rnhmjoj/initrdDanylo Hlynskyi
nixos/boot: add option to disable initrd
2020-03-13Revert Merge #82310: nixos/systemd: apply .linkVladimír Čunát
...even when networkd is disabled This reverts commit ce78f3ac701017008aa7f1db387b871b7ae65e01, reversing changes made to dc34da0755b3c36469965659c0ee4a1337e81c05. I'm sorry; Hydra has been unable to evaluate, always returning > error: unexpected EOF reading a line and I've been unable to reproduce the problem locally. Bisecting pointed to this merge, but I still can't see what exactly was wrong.
2020-03-13Merge pull request #81241 from thefloweringash/nesting-systemMichele Guerini Rocco
nixos/activation: propagate system to nested configurations
2020-03-11nixos/networkd: respect systemd.network.links also with disabled ↵Florian Klink
systemd-networkd This mirrors the behaviour of systemd - It's udev that parses `.link` files, not `systemd-networkd`.
2020-03-10Merge pull request #82139 from adisbladis/switch-to-configuration-manualadisbladis
switch-to-configuration: Add new option X-OnlyManualStart
2020-03-09switch-to-configuration: Add new option X-OnlyManualStartadisbladis
This is to facilitate units that should _only_ be manually started and not activated when a configuration is switched to. More specifically this is to be used by the new Nixops deploy-* targets created in https://github.com/NixOS/nixops/pull/1245 that are triggered by Nixops before/after switch-to-configuration is called.
2020-03-09environment.etc: fix typozimbatm
2020-03-05nixos/activation: use eval-config's system argument for nestingAndrew Childs
This avoids a possible surprise if the user is using `nixpkgs.system` and `nesting.children`. `nesting.children` is expected to ignore all parent configuration so we shouldn't propagate the user-facing option `nixpkgs.system`. To avoid doing so, we introduce a new internal option for holding the value passed to eval-config.nix, and use that when recursing for nesting.
2020-03-04Merge pull request #81405 from NinjaTrappeur/nin-networkd-policy-rulesMaximilian Bosch
nixos/networkd: add RoutingPolicyRules-related options
2020-03-02Merge pull request #79532 from NixOS/fix-predictable-ifnames-in-initrdMaximilian Bosch
nixos/stage-1: fix predictable interface names in initrd
2020-03-02nixos/networkd: test routingPolicyRules with a nixos vm testFélix Baylac-Jacqué
2020-03-01nixos/networkd: Add the RoutingPolicyRule-related optionsFélix Baylac-Jacqué
2020-02-27nixos/activation: propagate system to nested configurationsAndrew Childs
The current behavior lets `system` default to `builtins.currentSystem`. The system value specified to `eval-config.nix` has very low precedence, so this should compose properly. Fixes #80806
2020-02-15grub: Update extraConfig example text (#79406)Benjamin Staffin
This expands the example to something one might actually want to use to set up a serial console.
2020-02-15nixos/boot: add option to disable initrdrnhmjoj
2020-02-13Merge pull request #76481 from fare-patches/vesaMarek Mahut
Deprecate the boot.vesa option
2020-02-09Merge pull request #78453 from wedens/memtest-efi-grubworldofpeace
nixos/grub: make memtest work with EFI
2020-02-08nixos/initrd-network: always run postCommandsFranz Pletz
As outlined in #71447, postCommands should always be run if networking in initrd is enabled. regardless if the configuration actually succeeded.
2020-02-08nixos/initrd-network: use ipconfig from klibcFranz Pletz
This apparently has features that the version from Arch's mkinitcpio-nfs-utils does not have. Fixes #75314.
2020-02-08nixos/initrd-network: flush interfaces before stage 2Franz Pletz
Depending on the network management backend being used, if the interface configuration in stage 1 is not cleared, there might still be some old addresses or routes from stage 1 present in stage 2 after network configuration has finished.
2020-02-08nixos/stage-1: fix predictable interfaces namesFranz Pletz
This makes predictable interfaces names available as soon as possible with udev by adding the default network link units to initrd which are read by udev. Also adds some udev rules that are needed but which would normally loaded from the udev store path which is not included in the initrd.
2020-02-06Merge pull request #59827 from oxij/nixos/suppress-systemd-unitsSilvan Mosberger
nixos/systemd: add an option to suppress system units
2020-02-05Revert "Revert "Merge master into staging-next""Frederik Rietdijk
In 87a19e9048773d5a363679617406ad148d36c3b8 I merged staging-next into master using the GitHub gui as intended. In ac241fb7a570d6cf81d229ad22a8889602639160 I merged master into staging-next for the next staging cycle, however, I accidentally pushed it to master. Thinking this may cause trouble, I reverted it in 0be87c79797a5fa384fbc356c74ed54f9f7829ea. This was however wrong, as it "removed" master. This reverts commit 0be87c79797a5fa384fbc356c74ed54f9f7829ea.
2020-02-05Revert "Merge master into staging-next"Frederik Rietdijk
I merged master into staging-next but accidentally pushed it to master. This should get us back to 87a19e9048773d5a363679617406ad148d36c3b8. This reverts commit ac241fb7a570d6cf81d229ad22a8889602639160, reversing changes made to 76a439239eb310d9ad76d998b34d5d3bc0e37acb.
2020-02-05Merge pull request #35188 from sorki/overlayfsSilvan Mosberger
use overlayfs by default for netboot and iso
2020-02-05use overlayfs by default for netboot and isoRichard Marko
2020-02-05nixos/grub: make memtest work with EFIwedens
Memtest86+ doesn't support EFI, so unfree Memtest86 is used when EFI support is enabled (systemd-boot currently also uses Memtest86 when memtest is enabled).
2020-02-05Merge pull request #77594 from Frostman/fix-grub-extrafiles-mirroredbootsSilvan Mosberger
Fix boot.loader.grub.extraFiles when used with mirroredBoots
2020-02-03Fix boot.loader.grub.extraFiles when used with mirroredBootsSergey Lukjanov
Substitute @bootPath@ in boot.loader.grub.extraPrepareConfig script same way as it's done for boot.loader.grub.extraEntries option.
2020-02-03nixos/systemd: add `systemd.sleep.extraConfig` config optionmisuzu
2020-02-02Revert "add config.environment.ld-linux"Eelco Dolstra
This reverts commit af665d822a166ae62547c1c310207f11acaded17, see https://github.com/NixOS/nixpkgs/pull/78798#issuecomment-580059834 for the reasons in a similar PR.
2020-02-02Revert "rmdir: avoid failing when directory did not exist"Eelco Dolstra
This reverts commit 45db499d2de2235388212a911b8344b58ddfda36.
2020-02-02Merge pull request #74624 from Ma27/networkd-units-internalMaximilian Bosch
nixos/networkd: mark `units` option as internal
2020-01-31Merge pull request #78476 from Ma27/networkd-vrf-optionsAndreas Rammhold
nixos/networkd: add vrfConfig option for netdevs, add simple test
2020-01-27Merge pull request #69057 from volth/ld-linuxMatthew Bauer
add config.environment.ld-linux
2020-01-27Merge pull request #78426 from Mic92/tmpfilesJörg Thalheim
nixos/systemd: add all systemd tmpfiles files
2020-01-25nixos/networkd: add `vrfConfig` option to netdevsMaximilian Bosch
2020-01-24nixos/systemd: add all systemd tmpfiles filesJörg Thalheim
Especially tmp.conf is important to create /tmp and /var/tmp with the correct permissions.
2020-01-22boot.initrd.luks: adding a warning when using FIDO2 with kernel ≤ 5.4Marek Mahut
2020-01-22boot.initrd.luks: Adding FIDO2 supportMarek Mahut
2020-01-21Merge pull request #77665 from zaninime/ifxfrmFlorian Klink
systemd-networkd: add configuration for XFRM interfaces
2020-01-14systemd-networkd: add configuration for XFRM interfacesFrancesco Zanini
2020-01-07nixos/systemd-lib: don't fail on systemd.packages duplicatesworldofpeace
In some cases like we've noticed in https://github.com/NixOS/nixpkgs/issues/76169, having duplicate packages in systemd.packages like ``` systemd.packages = [ gnome-shell gnome-shell gnome-session ]; ``` breaks. Here we use an associative array to ensure no duplicate paths when we symlink all the units listed in systemd.packages.
2020-01-06nixos/systemd: Explicitly put default path packages after othe… (#77088)Silvan Mosberger
nixos/systemd: Explicitly put default path packages after others
2020-01-06treewide: use attrs instead of list for types.loaOf optionsrnhmjoj
2020-01-06nixos/systemd: Explicitly put default path packages after othersSilvan Mosberger
This fixes the dhcpcd issue in https://github.com/NixOS/nixpkgs/issues/76969, which was exposed by https://github.com/NixOS/nixpkgs/pull/75031 introducing changes in the module ordering and therefore option ordering too. The dhcpcd issue would also be fixable by explicitly putting dhcpcd's paths before others, however it makes more sense for systemd's default paths to be after all others by default, since they should only be a fallback, which is how binary finding will work if they come after.