Commit Graph

460 Commits

Author SHA1 Message Date
nixpkgs-ci[bot]
5a4b819043 Merge master into staging-nixos 2026-06-14 12:41:22 +00:00
Will Fancher
f7e86191f6 installer: remove all deprecated sd-image (#482728) 2026-06-14 12:15:07 +00:00
Martin Weinelt
0c1e323f6a nixos/installers/calamares: opt into pkexec 2026-06-11 20:31:23 +02:00
K900
bb38195945 nixos/plasma6: install plasma-keyboard by default
Touch devices are real and our UX sucks out of the box on them.
Let's at least suck a little bit less.
2026-06-07 13:08:38 +03:00
r-vdp
466530d1d3 nixos/calamares-plasma6: replace activation script with tmpfiles
Part of #475305.
2026-06-03 18:51:52 +03:00
NotAShelf
7b7b68f76c nixos/iso-image: update comment to reflect systemd and scripted initrd paths
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iaaa48d692e400cf17e1ec7ad82e656716a6a6964
2026-05-31 14:41:31 +03:00
Marie Ramlow
f3ba454c8d nixos/installation-cd-graphical-calamares-plasma6: disable qt5 integration 2026-05-08 19:41:48 +02:00
Will Fancher
b791c197a4 nixos/installation-cd-graphical-calamares-cosmic: init (#402741) 2026-05-08 14:55:52 +00:00
Adam C. Stephens
fb266d7643 nixos/channel: fix channel linkage if broken channel link already exists 2026-04-25 15:58:39 -04:00
Pratham Patel
732cf8d4e8 nixos/installation-cd-graphical-calamares-cosmic: init 2026-04-23 18:51:05 +05:30
Florian Klink
67808a39d6 nixos: convert boot.postBootCommands that load the nix DB to systemd services (#496852) 2026-04-06 22:43:07 +00:00
Will Fancher
f8ed5f30c0 nixos/filesystems: Remove default = "auto" from fsType
NixOS has traditionally enabled the `ext` family of file systems by
default. Originally, when switching to systemd initrd, we wanted to
transition to making this explicit so that initrds could be made
without `ext`. The problem is that anyone with `fsType = "auto";` for
an `ext` file system in initrd will fail to boot, which is not really
an acceptable regression as we switch to systemd initrd by default.

By removing `default = "auto"` from `fsType`, we rule out the vast
majority of these regressions as eval errors, since most users of
`fsType = "auto"` for ext file systems are using it because of the
default value.

In hindsight, this is probably what #225352 was really about.
2026-04-05 19:06:28 -04: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
r-vdp
d292d47526 nixos/channel: convert postBootCommands to a systemd service
Replace boot.postBootCommands with a nix-channel-init systemd
service. This is needed because the nix store DB registration in
QEMU VMs now happens in a systemd service (register-nix-paths)
rather than in postBootCommands, so the channel init must also be
a systemd service to express the ordering dependency.

The service runs in sysinit.target, after local-fs.target and
(when present) register-nix-paths.service, but before
nix-daemon.socket. Since nix-env is invoked as root before the
daemon socket exists, it accesses the store directly.
2026-03-23 10:01:49 +01:00
K900
ff11081677 nixos/installation-cd-graphical-calamares-plasma6: use plasma-login-manager and plasma-keyboard 2026-02-17 11:33:51 +03:00
Cryolitia PukNgae
582dc4aab0 installer: remove all deprecated sd-image
since commit 68afbf9d6385("installer: add deprecation warning about
sd-card file move"), it has been 5 years passed, and this should be
sufficient before the final deletion.

Signed-off-by: Cryolitia PukNgae <Cryolitia@gmail.com>
2026-01-22 23:54:46 +08:00
NAHO
a2ed7e8d88 nixos: remove optional builtins prefixes from prelude functions
Remove optional builtins prefixes from prelude functions by running:

    builtins=(
      abort
      baseNameOf
      break
      derivation
      derivationStrict
      dirOf
      false
      fetchGit
      fetchMercurial
      fetchTarball
      fetchTree
      fromTOML
      import
      isNull
      map
      null
      placeholder
      removeAttrs
      scopedImport
      throw
      toString
      true
    )

    fd \
      --exclude doc/manual/release-notes \
      --type file \
      . \
      nixos \
      --exec-batch sed --in-place --regexp-extended "
        s/\<builtins\.($(
          printf '%s\n' "${builtins[@]}" |
            paste --delimiter '|' --serial -
        ))\>/\1/g
      "

    nix fmt
2026-01-15 16:07:55 +01:00
Luna Nova
fb05ac176a nixos/installer/cd-dvd/iso-image: use new combined memtest86plus binary
memtest86plus puts the path to the binary at a passthru attr

after memtest86plus 8 there's a single combined EFI+legacy file
2025-11-27 13:19:24 +03:00
Winter M
dcb0423368 nixos/installer/cd-dvd/iso-image: include memtest86+ in grub menu
We previously only did this for Syslinux, which we don't use on UEFI machines.

Co-authored-by: Lee Bousfield <ljbousfield@gmail.com>
2025-11-04 16:17:52 -05:00
Will Fancher
1b68466acf nixos/installer: Include bcachefs in latest kernel boot option. 2025-10-15 22:27:08 +05:30
Wolfgang Walther
91a8fee3aa treewide: remove redundant parentheses
Auto-fixed by nixf-diagnose.
2025-10-05 10:52:03 +02:00
K900
15a586f29d nixos: remove Plasma 5 2025-08-21 23:09:23 +03:00
K900
fda8b43ed9 nixos/iso: enable partition-manager (for kpmcore) 2025-08-10 10:19:20 +03:00
K900
fb7d7c5fe0 calamares: 3.3.13 -> 3.4.0, qt6-ize, clean up, move to by-name 2025-08-10 10:18:31 +03:00
Emily
46aad76001 nixos/iso-image: Support systemd initrd (#291750) 2025-08-10 05:37:48 +01:00
lassulus
6c6f8f9bd4 nixos/installation-cd-base: fix installer expecting LUKS devices (#426005) 2025-08-02 12:54:56 +02:00
Will Fancher
12d0a6084b iso-image: ensure boot.loader.grub.enable is disabled by default (#430027) 2025-08-01 22:31:46 -04:00
Will Fancher
db42eeba6b nixos/iso-image: Support systemd initrd 2025-08-01 00:36:44 -04:00
Michael Hoang
7fd3735203 iso-image: ensure boot.loader.grub.enable is disabled by default
We use `mkImageMediaOverride` to ensure that GRUB is actually disabled
if a user enables it using the default priority but still allows them to
enable it using `mkForce`.
2025-08-01 14:30:10 +10:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Michael Hoang
3aed2ac768 nixos/installation-cd-base: fix installer expecting LUKS devices
If we create an installer based on a configuration that uses LUKS and we try to
boot it on an unformatted machine, it will fail waiting for the LUKS device to
appear.

We override `boot.initrd.luks.devices` like the `qemu-vm` module to solve this issue:

f23e0d855a/nixos/modules/virtualisation/qemu-vm.nix (L1407-L1408)
2025-07-17 15:18:52 +10: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
Emily
a7a3457082 nixos/installer/plasma6: disable KDE PIM 2025-06-19 21:52:02 +01:00
Emily
49dd486796 nixos/installer/plasma6: exclude kdePackages.plasma-workspace-wallpapers 2025-06-19 21:51:38 +01:00
hand7s
c464c44a42 nixos/gnome & nixos/gdm: move out of x11
Since DEs like KDE Plasma 6, GNOME and COSMIC are not designed to be X11-exclusive, putting them under `services.xserver` is misleading. In particular, GNOME defaults to Wayland these days and X11 support is going to be dropped in near future.

Let’s follow Plasma and move GNOME NixOS options out of `xserver` attribute.

This patch does not include any changes to X11 support itself.

Signed-off-by: John Titor <50095635+JohnRTitor@users.noreply.github.com>
2025-05-28 13:27:36 +02:00
Weijia Wang
cd16ea241c nixos/installation-cd-graphical-base: disable hyper-v guest on exotic platforms 2025-05-05 15:52:04 +02:00
Silvan Mosberger
374e6bcc40 treewide: Format all Nix files
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:

  nix-build ci -A fmt.check

This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).

This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).

Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).

If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.
2025-04-01 20:10:43 +02:00
Will Fancher
a2636dae46 iso-image: Combine GNOME and Plasma flavors
This allows users to choose between the two during bootup rather than
at download time.
2025-03-16 01:38:37 -04:00
Will Fancher
674a41e913 nixos-generate-config: Set linuxPackages_latest when ISO boots latest kernel 2025-03-16 01:38:37 -04:00
Will Fancher
0aad0248ce nixos/iso-image: Include latest kernel specialisation.
Now that ISOs include the latest kernel as a specialisation, separate
ISOs for the new kernel are no longer necessary.
2025-03-16 01:38:37 -04:00
Will Fancher
f2204986a7 nixos/iso-image: Support specialisations. 2025-03-16 01:38:37 -04:00
Will Fancher
8eb8908837 nixos/iso-image: Move alternate boot options to submenus
This will make more sense when specialisations are introduced in the
ISO boot menu

nixos/modules/installer/cd-dvd/iso-image.nix
2025-03-16 01:38:37 -04:00
Will Fancher
3a2e8e97c3 nixos/iso-image: Disable plymouth along with display-manager.service
GNOME in particular just breaks if plymouth isn't disabled, because
GDM takes on the role of quitting plymouth in a GNOME
configuration. But if we're disabling the DM, we should disable
plymouth too anyway.
2025-03-16 01:03:25 -04:00
Will Fancher
bef079a4b9 nixos/iso-image: Remove video= boot entries
These seem largely redundant with the progress that desktop
environments have made since they were introduced.
2025-03-16 01:03:21 -04:00
Will Fancher
da9a092c34 nixos/iso-image.nix: nixfmt 2025-03-16 00:23:46 -04:00
K900
31aa4c5fef nixos/iso-image: fix build 2025-02-21 11:19:14 +03:00
Wolfgang Walther
b19d0f6d3d treewide: replace substituteAll with replaceVars 2025-02-10 22:51:56 +01:00
phaer
0b162c3dbc iso-image: fix output filename
While switching from isoImage.baseName to the unified image.baseName,
I accidentaly dropped label and system information from the iso filename.

This fixes it by including isoImage.edition in the default baseName for
all our isos. Resulting in filenames such as
`nixos-minimal-25.05beta708350.1d95cb5-x86_64-linux.iso` again instead
of just nixos-minimal.iso.
2025-01-08 14:35:07 +01:00
phaer
a582fba754 installer/iso-image: use system.build.image
and rename:
- isoImage.isoBaseName -> image.baseName
- isoImage.isoName -> image.fileName
2024-12-16 15:35:21 +01:00
DavHau
08783a39b0 nixos: add option hardware.enableAllHardware
This allows users to simply enable support for all hardware by enabling the option `hardware.enableAllHardware`, instead of having to import `modules/profiles/all-hardware.nix`.

This is better, as the enableAllHardware option will be discoverable via search.nixos.org, while the `all-hardware.nix` is hidden inside nixpkgs and hard to discover.

Backward compatibility is provided by replacing the old `profiles/all-hardware.nix` with a file that sets the `enableAllHardware` option to true.
2024-12-12 16:45:25 +07:00