Commit Graph

1093 Commits

Author SHA1 Message Date
Jörg Thalheim
94b810348a installer/cd-dvd/channel: allow to disable bundled channel
When building kexec-based installer every mb saved will reduce the RAM usage and allow to install NixOS on smaller machines.
It also means that less data has to be downloaded from the network.
When using flakes or niv we no longer rely on nix channels beeing present
and when using something like nixos-anywhere, we no longer need to evaluate anything in the installer at all.
2023-11-02 12:39:05 +01:00
Jörg Thalheim
af459e624e installer/cd-dvd/channel: stop using lib
the lack of with allows lsp's to spot errors better
2023-11-02 12:39:05 +01:00
K900
fb1ccc91f7 nixos-generate-config: rewrite stateVersion comment again
Hopefully this version is clearer. Also tried to make it less technical.
2023-10-29 15:02:50 +03:00
K900
118694944d nixos/virtualbox-demo: use latest stateVersion
Just like we do for the other live images
2023-10-27 12:56:12 +03:00
Atemu
fb602e5608 installer/nixos-generate-config: don't set powersave cpuFreqGovernor
This script would always "detect" the "powersave" governor as it is available on
practically all CPUs while the "ondemand" governor is only available on some old
CPUs.

IME the "powersave" governor barely provides any power savings but introduces
massive performance deficits, including noticable stuttering. This is not the
default experience we should offer users, even for those who use laptops.

Use the kernel default (currently "performance", CPU makers may change it in
future) instead.
2023-10-21 18:29:25 +02:00
Victor Engmark
3a6c79cff6 nixos/x11: refactor XKB options into a single attrset
[Motivation](https://github.com/NixOS/nixpkgs/issues/257817#issuecomment-1741705042):

- Having all the XKB options in the same attribute set clarifies their
  relation better than using a common option name prefix ("xkb").
- `services.xserver.layout` is an XKB option, but this is not obvious
  from its name. Putting it with the other XKB options clarifies this.

Co-authored-by: Michele Guerini Rocco <rnhmjoj@users.noreply.github.com>
2023-10-11 09:46:37 +03:00
Atemu
9084f59d36 nixos/installer: mention search.nixos.org
It's immensely helpful and more user-friendly than the humongous
configuration.nix man page.
2023-09-18 14:38:26 +02:00
Samuel Dionne-Riel
2de1bd778c nixos/iso-image: Remove leftover false dichotomy between console/serial
Relying on the built-in UEFI console here was already necessary, so we
are losing nothing by removing the needless `serial` call, which hung
some systems.

This also makes the implementation much easier to understand.

Also, no ugly-font menu anymore!
2023-09-06 14:10:09 -04:00
Samuel Dionne-Riel
7fa7158c60 nixos/iso-image: graphicalGrub -> forceTextMode
This helps keep logic simpler, as what we do is forcing text mode, which
means the non-default case is `truthy`, making things easier to digest
in the config file.

Also renaming this option is considered "internal", since it lives only
within the `iso-image` namespace, and also not a breaking change since
it was not part of a stable release.
2023-09-06 14:09:03 -04:00
Samuel Dionne-Riel
07fb2f4a97 nixos/iso-image: Tear down GOP and rely on console for Linux boot
This solves an issue where *some systems* (tested on Steam Deck) the EFI
GOP may be broken during stage-1.
2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
47ae07a23f nixos/iso-image: Drop all unneeded FS modules
It's not like the iso-image will be anything else than isohybrid
FAT+iso9660...
2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
d64b03a339 nixos/iso-image: Re-enable graphics mode
Which ***anyway*** was not disabled correctly. Following changes will
actually disable it.

What this did was disable the "themed" menu driver, but still continued
relying on the gfxterm infra, which in itself is why things were ugly
and weird.
2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
dd936c21d7 nixos/iso-image: Check GRUB config on build 2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
8623ac4656 nixos/iso-image: Add common display resolutions
Hey, look at that, grub is the correct way around on a Steam Deck!
2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
080bff8159 nixos/iso-image: Use intrinsic UEFI console for serial output in GRUB
The `serial` console hangs on some systems. Unknown why.

Anyway, the way this worked right now relied on it telling the user on
the UEFI console how to enable it. So if I understand it correctly, it
will not cause any regression there.
2023-09-06 14:09:02 -04:00
Samuel Dionne-Riel
fad94acaa8 nixos/iso-image: Make modules list easier to manage
With a bash array.

This change is morally a no-op.
2023-09-06 14:09:02 -04:00
K900
f387b065b1 nixos/iso-image: disable graphical GRUB on GNOME ISOs too
It's broken for a lot of people.
2023-09-06 13:36:31 +03:00
Doron Behar
62730f2c31
Merge pull request #248701 from doronbehar/nixos/manpages
nixos/install-tools: Add manpages to packages instead of seperating them
2023-08-16 15:49:49 +00:00
Bernardo Meurer
70dd76d94f
Merge pull request #247475 from qowoz/nix217 2023-08-13 13:27:20 -04:00
Doron Behar
924a07dc22 nixos/doc: Improve documentation of documentation
- Move contents of README.md from
  nixos/modules/installer/tools/manpages/ to
  nixos/doc/manual/contributing-to-this-manual.chapter.md.
- Don't mention DocBook as its obsolete and too specific.
- Rename derivation attribute name of configuration.nix(5) manual page,
  both on the `contributing-to-this-manual.chapter.md`, and in other
  places.
2023-08-12 22:28:04 +03:00
Jan Tojnar
08d242047c iso_gnome: Fix evaluation
`qt.enable` option requires `qt.style` to be set.
Previously, this was set in GNOME module but it has been removed
in 622745942b
2023-08-12 19:30:49 +02:00
Doron Behar
32f75a0f2a nixos/install-tools: Add manpages to packages instead of seperating them
Since each such `nixos-*` tool has it's own derivation, exposed in pkgs,
There is no point in separating the manuals from the packages. If
someone wishes to have the tools without the manuals, they can use
meta.outputsToInstall to disable the installation of the manpages of
these packages. This Fixes #244450.
2023-08-12 18:01:06 +03:00
zowoq
b2c3198256 nixos/nix-fallback-paths: 2.15.1 -> 2.17.0
https://releases.nixos.org/nix/nix-2.17.0/fallback-paths.nix
2023-08-06 16:22:39 +10:00
Pol Dellaiera
17b46c61f3
Merge pull request #246746 from mode89/fix/nixos-install-with-non-empty-mnt
nixos-install: fix removal of non-empty `/mnt`
2023-08-02 18:41:46 +02:00
Andrey Krainyak
d61cc625fa
nixos-install: fix removal of non-empty /mnt
After building the target system, `nixos-install` tries to remove `/mnt`
on the target filesystem. And the script may fail without any explanation,
if `/mnt` isn't empty.

This commit makes the installation process carry on even if there are
files under `/mnt`.

See https://github.com/NixOS/nixpkgs/issues/244643.
2023-08-02 16:37:22 +08:00
Bjørn Forsman
a7da3eacaf nixos-generate-config: add 'lib' arg to configuration.nix
Although 'lib' isn't needed by the default configuration, new NixOS uses
can get confused when being recommended configuration.nix snippets like

  systemd.services.NetworkManager-wait-online.enable = lib.mkForce false;

and have `sudo nixos-rebuild switch` fail with

  error: undefined variable 'lib'
2023-07-21 13:53:33 +02:00
Will Fancher
11fec97761
Merge pull request #183314 from DeterminateSystems/optional-swraid
Make swraid optional
2023-07-13 16:24:34 -04:00
Felix Buehler
bec27fabee treewide: use lib.optional instead of 'then []' 2023-07-12 09:36:28 +01:00
Sandro
f57af4cd1e
Merge pull request #237442 from SuperSandro2000/nixos-option
nixos-option: update to nix 2.15
2023-07-12 00:14:53 +02:00
Sandro Jäckel
49d0af0f1e
nixos/tools: remove nixos-option condition 2023-07-11 17:13:21 +02:00
Linus Heckemann
c0f963a338 boot.initrd.services.swraid -> boot.swraid
Since the option affects both stage-1 and stage-2, it does not make
sense to keep it within the boot.initrd namespace.
2023-07-10 20:20:08 +02:00
Linus Heckemann
0b277bcc2b nixos/swraid: make entire module optional
swraid support will now only be enabled by default if stateVersion is
older than 23.11. nixos-generate-config will now generate explicit
config for enabling support if needed.
2023-07-10 16:39:35 +02:00
K900
db9b857e1d nixos/iso-image: fix syntax 2023-07-05 21:49:03 +03:00
lassulus
e4f361f352 installation-cd: enable graphicalGrub 2023-06-29 14:35:54 +02:00
lassulus
363c846d77 nixos/iso-image: make graphical grub configurable 2023-06-29 14:35:54 +02:00
Robert Hensing
1350e522fa nixos-generate-config: Fix generated hostPlatform.system
While the intent of the code was correct, the system string can not be used
in the substituteAll function.

See https://github.com/NixOS/nixpkgs/issues/237216
2023-06-11 19:28:51 +02:00
Silvan Mosberger
d4fe69faea nix-fallback-paths.nix: Update to 2.15.1 2023-06-01 22:55:14 +02:00
Will Fancher
fe43923a70
Merge pull request #229767 from mberndt123/mberndt123/stratis-rootfs
nixos/stratis: initrd support for stratis root volumes
2023-05-25 14:06:31 -04:00
Ivan Trubach
c68a5bb85a nixos/iso-image: enable BIOS boot by default if possible
The change introduced in commit e5b072eca1
breaks backwards compatibility for some users, see
e5b072eca1 (commitcomment-113775008)
https://github.com/NixOS/nixpkgs/pull/219351#discussion_r1139773448

This change updates the implementation to enable BIOS boot if possible
for the build and host platforms, and also assert that BIOS boot is not
enabled for non-x86 host platforms.
2023-05-23 04:43:31 +03:00
ners
afdf7705ad nixos/iso-image: add some types 2023-05-22 13:01:56 +02:00
ners
c281a355fe nixos/iso-image: prepend to ISO menu labels 2023-05-22 11:25:00 +02:00
figsoda
701bcdbead nixos: fix typos 2023-05-19 22:31:04 -04:00
Matthias Berndt
cb410a8c59 Merge remote-tracking branch 'upstream/master' into mberndt123/stratis-rootfs 2023-05-17 21:47:19 -04:00
Matthias Berndt
3aa262b644 make nixos-generate-config generate stratis pool UUIDs 2023-05-15 20:48:10 -04:00
ajs124
30bea8d82d nixos/*: remove boot.grub.version 2023-05-10 21:51:26 +02:00
Alyssa Ross
e5e49df7fd
nixos/netboot: add squashfsCompression option
This is copied from isoImage.squashfsCompression.  It's useful to be
able to customise, as iteration cycles are very slow with xz, and
subjectively systems booted with less efficiently compressed squashfs
stores appear to have faster reads (although I didn't test that
scientificly so there could be other factors).
2023-05-09 14:15:10 +00:00
Alyssa Ross
096cdeeac4
nixos/iso-image: type isoImage.squashfsCompression 2023-05-09 14:15:02 +00:00
Alyssa Ross
bf7de549b9
nixos/iso-image: targetPlatform -> hostPlatform
This is not a compiler, and therefore does not need to care about the
target platform.
2023-05-08 11:50:06 +00:00
Rick van Schijndel
5e2d479540
Merge pull request #229874 from mcnesium/fix_ambig_char
fix ambiguous unicode characters
2023-05-06 16:54:54 +02:00
Ryan Lahfa
32264d614a
Merge pull request #227696 from aktaboot/fix-install-tools-deps
nixos/installer: fix util-linux dependencies in install script
2023-05-05 21:58:23 +02:00