Commit Graph

405 Commits

Author SHA1 Message Date
Jacek Galowicz
c08c053f26 linux-builder-vz: reuse vsock comms from test vms 2026-07-30 18:53:40 +02:00
Jacek Galowicz
e7c55acd40 linux-builder-vz: init modules and package 2026-07-21 15:53:47 +02:00
Jacek Galowicz
9287d5617a nix-builder: split up NixOS module into generic and qemu-specific part 2026-07-21 15:53:44 +02:00
Martin Weinelt
ef352e5401 nixos/fuse: disable by default
This change disables the fuse module by default and shifts the
obligation to enable it to consumers.
2026-06-20 17:29:40 +02:00
nixpkgs-ci[bot]
40cc662a5d Merge master into staging-nixos 2026-05-03 18:20:16 +00:00
Naïm Camille Favier
1c3eaed6b1 nixos/profiles/base: add explicit support for ext filesystems
ext filesystems are only supported unconditionally if the systemd initrd
is NOT used. Since the systemd initrd was recently enabled by default,
the default ISO image configuration is now missing support for ext
filesystems, which means that one cannot e.g. boot into a live ISO image
and run `fsck.ext4`.

This commit adds ext2, ext3 and ext4 as explicitly supported file
systems in the base profile, which ensures that the associated tools are
always available.
2026-05-03 15:14:01 +02:00
Christian Kögler
f783ef8651 nixos/qemu-guest: add virtiofs (#510241) 2026-05-01 13:21:47 +00:00
Winter
ad12a14127 nixos/modules/profiles/nix-builder-vm: remove suffix from system version (#497056) 2026-04-27 21:42:00 +00:00
Christian Kögler
a665508586 qemu-guest: Add virtiofs 2026-04-15 11:32:03 +02:00
Ramses
fb5f54e05e nixos: replace container activation scripts (#499313) 2026-04-09 15:06:25 +00:00
Florian Klink
67808a39d6 nixos: convert boot.postBootCommands that load the nix DB to systemd services (#496852) 2026-04-06 22:43:07 +00:00
Robert Rose
b2abc2a2fd nixos/profiles: disable lvm resize helper in bashless profile 2026-03-24 15:21:23 +01:00
r-vdp
6ab12a513a nixos: convert remaining postBootCommands that load the nix DB to systemd services
Convert all remaining boot.postBootCommands that call
nix-store --load-db into register-nix-paths systemd services for
consistency with qemu-vm.nix and to make the ordering dependency
with nix-channel-init explicit.

All services use the same unit name (register-nix-paths) and the
same sysinit.target ordering, so nix-channel-init's
after=register-nix-paths.service dependency works uniformly across
all platforms.

Platform-specific logic (netboot password setup, sd-image partition
expansion) is kept in the service script or in boot.postBootCommands
as appropriate.
2026-03-23 10:01:50 +01:00
zowoq
1f69b214e8 nixos/profiles: remove hardened (#501199) 2026-03-22 23:21:16 +00:00
Nico Felbinger
18a45284a2 nixos/profiles: remove hardened
- It lacks a consistent and transparent baseline or standard,
- It may introduce unexpected breakage or degrade performance without clear benefit,
- It is difficult to manage user expectations, especially since the implications of enabling it are not always obvious,
- and as multiple contributors have noted, it is often more of a “grab bag” of settings than a cohesive security policy.
2026-03-21 09:25:12 +10:00
Philip Taron
615f7910c2 nixos/nix-builder-vm: use writeTextFile directly
Replace `writeShellScriptBin` + `overrideAttrs` with a direct
`writeTextFile` call, which accepts `meta` and `passthru` natively.
This removes the need for both `overrideAttrs` and `pos = __curPos`.
2026-03-19 11:45:36 -07:00
r-vdp
0f363a1cb4 nixos: replace container activation scripts
docker: move /init symlink creation from activationScript to installBootLoader,
which is the mechanism switch-to-configuration already uses for this purpose.

lxc: remove redundant activation script.
The installBootLoader hook was already handling /sbin/init.

incus: replace activationScript with a oneshot systemd service that uses
ConditionPathExists to create /etc/nixos/configuration.nix only on first
boot.

See: https://github.com/NixOS/nixpkgs/issues/475305
2026-03-12 23:58:05 +01:00
Winter
bb0468a831 nixos/modules/profiles/nix-builder-vm: remove suffix from system version
The version suffix (`lib.trivial.versionSuffix`) differs between channel
trees and Git trees, which results in users using channels not getting
the cached builds of the system derivation, as Hydra uses a Git checkout.
2026-03-05 18:20:10 -08:00
Yohann Boniface
d408ec5b3a maintainers: drop joachifm (#490532) 2026-02-22 22:50:52 +00:00
K900
af1d598cc8 nixos/profiles/graphical: use plasma-login-manager 2026-02-17 11:33:51 +03:00
Marcin Serwin
d49d190572 maintainers: drop joachifm
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2026-02-15 00:41:24 +01:00
Adam Dinwoodie
531d3a9a45 linger-users: allow disabling for bashless profile
The linger-users systemd unit runs a Bash script.  To allow this to be
avoided for the bashless profile, provide an option to have NixOS not
manage lingering for any users.

To make this feasible, add the possibility for each individual user
account to not have its lingering configuration managed by NixOS at all,
and make this the default from 26.05.  In practice, this won't result in
a change of behaviour except for people who manually use `loginctl
enable-linger` commands to add lingering for some user accounts, then
rely on NixOS to disable lingering the next time the systemd units are
restarted.
2025-11-09 19:54:39 +00:00
nikstur
653fd8c995 nixos/systemd/shutdown: make shutdown ramfs bashless 2025-10-14 10:14:43 +02:00
nikstur
7fe74bb833 nixos/profiles/bashless: re-enable systemd-timesyncd
systemd-timesyncd is now bashless and can thus re-enabled in the
bashless profile.
2025-10-14 10:14:42 +02:00
nikstur
0e0be1398a nixos/profiles: add bashless profile 2025-10-09 23:52:39 +02:00
K900
e93c560b79 Merge remote-tracking branch 'origin/master' into staging-next 2025-10-05 12:17:08 +03:00
Wolfgang Walther
91a8fee3aa treewide: remove redundant parentheses
Auto-fixed by nixf-diagnose.
2025-10-05 10:52:03 +02:00
Wolfgang Walther
c283f32d29 treewide: remove unused with
Auto-fixed by nixf-diagnose.
2025-10-05 10:50:41 +02:00
nixpkgs-ci[bot]
1f71b1fc26 Merge master into staging-next 2025-10-04 00:15:35 +00:00
Maximilian Bosch
a6b0564b7d nixos/filesystems: fix special file-systems for systemd-nspawn (#345899) 2025-10-03 19:33:31 +00:00
nixpkgs-ci[bot]
562c842d00 Merge master into staging-next 2025-09-23 00:16:56 +00:00
h7x4
e2f6573620 nixos/profiles/nix-builder-vm: use types.port 2025-09-22 16:46:43 +02:00
Maximilian Bosch
a532cb052e nixos/containers: add boot.isNspawnContainer option
There are a bunch of components such as incus or LXC that also use
`boot.isContainer`, so we'd have to differentiate between "OS container"
and "actually nspawn".

This became necessary for the file-systems part where nspawn takes care
of setting up special filesystems like `/proc`, `/dev` etc., but others
don't.

To allow for a `boot.isContainer` being less overloaded, this introduces
`boot.isNspawnContainer` that is exclusively used for nspawn-specific
things. When `true`, `boot.isContainer = true;` is implied.
2025-09-21 13:26:23 +02:00
Emily
85b124cedd Reapply "various: fix Scudo allocator due to LLVM update"
This reverts commit 5119cafc59.
2025-09-20 16:24:40 +01:00
K900
5119cafc59 Revert "various: fix Scudo allocator due to LLVM update" 2025-09-20 17:53:06 +03:00
Lisa Gnedt
753af06dab treewide: fix Scudo options
The commit 01e8f570c6 unpinned the
LLVM version, which led to the following warnings whenever Scudo
is loaded (basically whenever a command is started when used
system-wide):

Scudo WARNING: found 3 unrecognized flag(s):
    DeleteSizeMismatch=0:DeallocationTypeMismatch=0
    DeallocationTypeMismatch=0
    ZeroContents=1

According to the current Scudo documentation [1] the options are
now spelled differently. This commit keeps all existing options
and only updates the spelling.

[1] https://llvm.org/docs/ScudoHardenedAllocator.html

Reported-by: CUB3D <callumthom11@gmail.com>
2025-09-20 13:11:04 +02:00
Robert James Hernandez
07e18d922d nixos/profiles/perlless: remove redundant lessopen default
Starting in 25.05 `programs.less.lessopen.default = null` so no need
to set this in the perlless profile:

  https://github.com/NixOS/nixpkgs/pull/316979
2025-09-17 19:20:47 +00:00
Robert James Hernandez
711dec3652 nixos/profiles/minimal: remove redundant lessopen default
Starting in 25.05 `programs.less.lessopen.default = null` so no need
to set this in the profile:

  https://github.com/NixOS/nixpkgs/pull/316979
2025-09-17 19:20:42 +00:00
Aliaksandr
f16c269a8e nixos/perlless: don't redundantly disable programs.command-not-found 2025-08-30 18:53:49 +03:00
Emily
67eb21483d nixos/treewide: don’t redundantly disable boot.enableContainers 2025-08-25 20:20:56 +01:00
Maximilian Bosch
d9829523d5 nixos/profiles/hardened: fix eval with !allowAliases 2025-08-23 17:48:34 +02:00
K900
35d0bafabf nixos/treewide: clean up Plasma 5 references
Preparing to drop.
2025-08-21 22:31:56 +03:00
Vladimír Čunát
0b0c68c77d nixos/installation-device: don’t include stdenv (#418267) 2025-08-04 08:44:35 +02:00
Emily
f5f4d6e8e3 nixos/installation-device: don’t include stdenv
A basic NixOS system shouldn’t require `stdenv` to install, and
it adds something like 45 MiB of build tools to the installer
closure. This doesn’t really help much at present since
WebKitGTK(?!) has a dodgy reference to GCC, but it’s a step in the
right direction.
2025-08-04 03:48:05 +01:00
Glen Huang
80afe79ace nixos/iso-image: add jq to PATH
It's previously already in the clousure, and is actually needed by disko without deps.
2025-07-31 21:20:05 +08:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Philip Taron
8279ffe622 treewide: specify that mebibytes are used when it's ambiguous (#424169) 2025-07-11 12:29:33 -07:00
Axel Karjalainen
7159ab6f43 treewide: specify where mebibytes are used when it's ambiguous 2025-07-11 00:44:23 +03:00
Martin Weinelt
1ef7d63228 nixos/installer: ship the minimal ISO with networkmanager
With networkmanager we can provide a much more welcoming network setup
experience in the installer and it costs us less than 10 MB with this
configuration on the minimal ISO.

By default, for new profiles it will enable DHCP and RA and allow
interactive reconfiguration through `nmtui` or `nmcli`. Especially the
TUI interface is very easy to pick up and removes the need for typing in
manual commands when setting up the WLAN connection.
2025-06-30 10:37:11 +02:00
Sizhe Zhao
dbf39b7ddb nixos/profiles/minimal: don't generate fish completions 2025-06-20 14:13:56 +08:00