Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
systemd: add a name option to all systemd units
|
|
nixos/systemd-lib: fix restart/reloadTriggers when passing paths
|
|
When passing a path to restartTriggers or reloadTriggers, X-Restart/Reload-Triggers
will get populated by the absolute path of the file on the machine where the
config is evaluated. This patch corrects this behavior.
|
|
This allows us to set things like dependencies in a way that we can
catch typos at eval time.
So instead of
```nix
systemd.services.foo.wants = [ "bar.service" ];
```
we can write
```nix
systemd.services.foo.wants = [ config.systemd.services.bar.name ];
```
which will throw an error if no such service has been defined.
Not all cases can be done like this (eg template services), but in a lot
of cases this will allow to avoid typos.
There is a matching option on the unit option
(`systemd.units."foo.service".name`) as well.
|
|
This setting was missing from netdev.
This commit additionally adds a test using the new
section, ensuring that STP can be enabled.
|
|
|
|
|
|
|
|
nixos/image/repart: assert maximum label length
|
|
|
|
nixos/test-driver: don't add QEMU_OPTS twice
|
|
As the TODO says, this is already included by the script.
If adding a device, including this again here would result in either
two devices being added, or, if they were explicitly named, an error
due to reuse of the name.
|
|
- use normal VM nodes for target, with some extra trickery
- rename preBootCommands to postBootCommands to match its actual intent
- rename VMs to installer and target, so they're not all called machine
- set platforms on non-UEFI tests properly
- add missing packages for systemd-boot test
- fix initrd secrets leaking into the store and having wrong paths
|
|
* doc: remove references to mdDoc in nixos/doc/manual/development/option-declarations.section.md
* nixos/lib: remove mdDoc in nixos/lib/make-options-doc/default.nix
* nixos/lib: remove mdDoc in nixos/lib/systemd-types.nix
* nixos/lib: remove mdDoc in nixos/lib/systemd-unit-options.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/driver.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/interactive.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/meta.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/name.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/network.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/nodes.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/run.nix
* nixos/lib: remove mdDoc in nixos/lib/testing/testScript.nix
|
|
Avoid top-level `with ...;` in `nixos/lib/systemd*`
|
|
nixos/docs: remove docbook support machinery
|
|
these were deprecated in 23.11 and slated for removal in 24.05. 24.05 is
soon enough, so we should probably make good on this promise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
They can be transformed into their outpath string, which is useful for
config generators.
|
|
* doc: write improved documentation for nixosOptionsDoc
* Apply suggestions from @infinisil
Co-authored-by: Silvan Mosberger <github@infinisil.com>
* doc: minor fixup
---------
Co-authored-by: Silvan Mosberger <github@infinisil.com>
|
|
nixos/networkd: allow RoutingPolicyRule port ranges
|
|
Right now the worst case chain of events for building an ISO on Hydra is
- copy everything to squashfs builder
- run squashfs builder
- download squashfs from builder
- compress squashfs
- upload squashfs to S3
- copy squashfs to ISO builder
- run ISO builder
- download ISO from builder
- compress ISO
- upload ISO to S3
This inlines the squashfs build into the ISO build, which makes it
- copy everything to ISO builder
- run ISO builder
- download ISO from builder
- compress ISO
- upload ISO to S3
Which should reduce queue runner load by $alot per ISO, which we have four of on small channels
(one release, one test per arch) and a lot more than four of on large channels (with various desktops)
|
|
|
|
Linux and Systemd allow port ranges to be used in routing policy rules.
https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html#SourcePort=
|
|
Closes #193336
Closes #261694
Related to #108984
The goal here was to get the following flake to build and run on
`aarch64-darwin`:
```nix
{ inputs.nixpkgs.url = <this branch>;
outputs = { nixpkgs, ... }: {
checks.aarch64-darwin.default =
nixpkgs.legacyPackages.aarch64-darwin.nixosTest {
name = "test";
nodes.machine = { };
testScript = "";
};
};
}
```
… and after this change it does. There's no longer a need for the
user to set `nodes.*.nixpkgs.pkgs` or
`nodes.*.virtualisation.host.pkgs` as the correct values are inferred
from the host system.
|
|
/homeless-shelter
systemd-boot-builder.py calls nix-env --list-generations which creates
$HOME/.nix-defexpr/channels/nixos if it doesn't exist. This would cause a folder
/homeless-shelter to show up in the final image which in turn breaks nix builds
in the target image if sandboxing is turned off (as /homeless-shelter is never
allowed to exist).
|
|
|
|
|
|
|
|
nixos/tests: drop LegacyStartCommand
|
|
create_machine({"startCommand": "..."})
|
|
nixos/systemd: merge unit options as lists when at least one value is a list
|
|
nixos/systemd-boot: Add support for an XBOOTLDR partition
|
|
|
|
We can finally do this now that it's no longer used.
|
|
|
|
|
|
|
|
Enable MS-compatible secure boot with OVMF
|
|
|
|
|
|
Co-authored-by: Arthur Gautier <arthur.gautier@arista.com>
|
|
Support for this was added in systemd 253:
https://github.com/systemd/systemd/releases/tag/v253
|
|
|