Commit graph

1360 commits

Author SHA1 Message Date
Robert Hensing 6851adc178 nixos/qemu-vm: Fix warning message 2022-08-14 12:48:43 +02:00
Robert Hensing bd3fb4069d
Merge pull request #181746 from hercules-ci/nixosTest-erofs
nixos/qemu-vm: Use disposable EROFS for store when writableStore = false
2022-08-14 08:46:21 +02:00
pennae 50f9b3107a
Merge pull request #185474 from pennae/option-docs-md
nixos/*: more options md conversion
2022-08-12 23:23:26 +02:00
ajs124 f763710065 nixos/udisks2: don't enable by default
This was enabled by default in 18a7ce76fc
with the reason that it would be "useful regardless of the desktop
environment.", which I'm not arguing against.

The reason why this should not be enabled by default is that there are a
lot of systems that NixOS runs on that are not desktop systems.
Users on such systems most likely do not want or need this feature and
could even consider this an antifeature.
Furthermore, it is surprising to them to find out that they have this
enabled on their systems.
They might be even more surprised to find that they have polkit enabled
by default, which was a default that was flipped in
a813be071c. For some discussion as to why
see https://github.com/NixOS/nixpkgs/pull/156858.

Evidently, this default is not only surprising to users, but also module
developers, as most if not all modules for desktop environments already
explicity set services.udisks2.enable = true; which they don't need to
right now.
2022-08-11 02:47:34 +02:00
adisbladis 053ab2f7a8
Merge pull request #185153 from puppe/enable-container-warning
nixos/nixos-containers: Fix ineffective warning
2022-08-10 23:24:14 +08:00
pennae 087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
pennae 423545fe48 nixos/*: normalize manpage references to single-line form
now nix-doc-munge will not introduce whitespace changes when it replaces
manpage references with the MD equivalent.

no change to the manpage, changes to the HTML manual are whitespace only.
2022-08-05 18:34:50 +02:00
Martin Puppe 82c64d154b nixos/nixos-containers: Fix ineffective warning
A warning regarding enabling NixOS containers and
virtualisation.containers at the same time with state versions < 22.05
had been added in commit 3c49151f15. But
this warning had accidentally been defined in the wrong place, and the
warning has therefore not actually been in effect. This commit fixes
that.
2022-08-04 22:52:16 +02:00
pennae 61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
pennae 9c8531c8a5 nixos/*: replace <replaceable>s with «thing»
we can't embed syntactic annotations of this kind in markdown code
blocks without yet another extension. replaceable is rare enough to make
this not much worth it, so we'll go with «thing» instead. the module
system already uses this format for its placeholder names in attrsOf
paths.
2022-08-03 21:08:58 +02:00
pennae 16102dce2f nixos/*: replace <code> in option docs with <literal>
markdown can't represent the difference without another extension and
both the html manual and the manpage render them the same, so keeping the
distinction is not very useful on its own. with the distinction removed
we can automatically convert many options that use <code> tags to markdown.

the manpage remains unchanged, html manual does not render
differently (but class names on code tags do change from "code" to "literal").
2022-08-03 21:03:23 +02:00
pennae 6b13dd0e9e
Merge pull request #183491 from pennae/automatic-md-conversions
treewide: automatically md-convert option descriptions
2022-08-02 02:15:30 +02:00
Silvan Mosberger fe2c9ae814
Merge pull request #177012 from hercules-ci/nixos-modular-system
`flake.lib.nixosSystem`: Allow `nixpkgs.system` to be set modularly; improve error message
2022-08-01 15:05:16 +02:00
Alyssa Ross 5330c0a1af
treewide: use isAarch where appropriate 2022-07-30 16:18:27 +00:00
pennae 2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
github-actions[bot] f6895f13b0
Merge master into staging-next 2022-07-27 18:01:33 +00:00
pennae a16b25432e
Merge pull request #182685 from pennae/invariant-option-conversions
treewide: invariant option conversions to MD
2022-07-27 15:39:47 +02:00
github-actions[bot] 21a6aafb7d
Merge master into staging-next 2022-07-24 12:01:21 +00:00
pennae 5bf55a4ad5 nixos/virtualization: invariant option docs MD conversions 2022-07-24 13:01:47 +02:00
pennae 3fdde45825 nixos/oci-containers: convert option docs to MD
no changes to the manpages, no rendering changes to the html manual
2022-07-19 16:23:57 +02:00
Robert Hensing 438f6f17de nixos/qemu-vm: Warn when wasting space 2022-07-17 14:56:35 +02:00
Robert Hensing afc60d017b nixos/qemu-vm: Use disposable EROFS for store when writableStore = false
This avoids putting a large disk image in the store (and possibly
in a binary cache), while improving runtime performance.

Assuming you're running an SSD, and/or with plenty of cache (?)
it is feasible to preempt the virtualization overhead before
VM start, in single-digit seconds.

For some tests that perform many reads on the store, the improved
performance of EROFS is sufficient that not only the image creation
overhead is compensated for, but is actually faster.

Stats for nixosTests.gitlab:

Baseline without useNixStoreImage: >1000s

Baseline with useNixStoreImage without writableStore = false
ext4 image in store: 277 seconds
  + significant image build time and/or disk space

Disposable erofs image: 249 seconds _including_ image build time

Custom erofs overlay on 9p host store: 391 seconds; presumably
because the overlay still performs too many 9p accesses, or perhaps
some other overhead. This solution had no obvious performance
advantage, while requiring extra options to work, so it was
discarded.
2022-07-17 14:56:35 +02:00
github-actions[bot] 97f117148f
Merge staging-next into staging 2022-07-17 00:02:54 +00:00
Sandro 04a5c30245
Merge pull request #179582 from catap/prl-tools 2022-07-17 01:41:46 +02:00
Sivizius 5e941caa0d
nixos/cri-o: removed defaultText of internal package-option 2022-07-17 08:04:15 +10:00
Martin Weinelt b2d57db6c2
Merge pull request #180516 from Atemu/kernel-disable-ashmem
linux: disable ASHMEM on >= 5.18
2022-07-14 23:20:26 +02:00
illustris f60f165501 nixos/proxmox-image: use qemu 6.2 for building VMA 2022-07-13 10:44:41 +02:00
Robert Hensing e153087276 nixos: Fix use of nixpkgs.localSystem
localSystem is ill-defined because unlike hostPlatform, its
meaning is different in a cross or non-cross context.
2022-07-10 13:35:54 +02:00
Kirill A. Korinsky f41fc22111
prl-tools: 12.2.1-41615 -> 17.1.4-51567
Install Parallel Tools updated for version 17 of Parallels for macOS. This
fixes clipboard sharing, so that copy and paste works between the host
macOS and the guest NixOS VM. Support for guests on M1 Apple Silicon-based
Macs (aarch64-linux) is also added.

Co-authored-by: Paul Smith <paulsmith@gmail.com>
Co-authored-by: Weijia Wang <9713184+wegank@users.noreply.github.com>
2022-07-09 14:43:27 +02:00
Atemu 339ce46af2 nixos/waydroid: add FIXME regarding ASHMEM removal in 5.18 2022-07-07 14:40:17 +02:00
zowoq b7eb3285b3 railcar, nixos/railcar: remove
Upstream repo is archived and hasn't had any commits since 2018, isn't packaged anywhere else apart from AUR.
2022-07-07 07:16:58 +10:00
T0astBread 87cd533a32
nixos/qemu-vm: allow custom partitions and filesystems in VM
Potential use cases for disabling `useDefaultFilesystems` include:

  - Testing with uncommon filesystem layouts
  - Testing scenarios where swapping occurs
  - Testing with LUKS-encrypted disks

Closes #177963
2022-07-02 15:37:08 +02:00
Robert Hensing e2c261f2c0
Merge pull request #176146 from pennae/module-docs-markdown
treewide: markdown option docs
2022-06-21 13:16:02 +02:00
Adam Stephens 2e090e0d60 nixos/lxc-container: improve template example 2022-06-17 11:42:16 -04:00
pennae 320aa2a791 treewide: attempt at markdown option docs 2022-06-12 12:44:38 +02:00
zowoq f063970e50 nixos/podman: add user socket/service 2022-06-10 07:21:56 +10:00
Janne Heß 4a77546116
Merge pull request #175655 from AmineChikhaoui/ec2-amis-22.05
ec2-amis: add release 22.05
2022-06-08 17:39:36 +02:00
zowoq e9f4412eb4 docker-edge: remove 2022-06-06 14:06:39 +10:00
AmineChikhaoui 3909226544
ec2-amis: add release 22.05 2022-05-31 18:43:58 -04:00
Janne Heß 5157246aa4
nixos/vmware-guest: Remove the video driver
This breaks isos since https://github.com/NixOS/nixpkgs/pull/172668
because vmware is enabled there. @K900 tested this and confirmed that
the GPU acceleration still works.
2022-05-30 11:56:21 +02:00
Guillaume Girol f2493e87d8
Merge pull request #173110 from symphorien/ovmf-cross
nixos/libvirtd: make it possible to boot a UEFI aarch64 vm on x86_64
2022-05-29 21:46:45 +00:00
Alyssa Ross c3c0dd00d8 treewide: fix loss of precision in NixOS systems
Prior to this patch:

	$ nix-instantiate --eval -E '
	>   with import ./. {
	>     localSystem.config = "aarch64-unknown-linux-musl";
	>   };
	>   (nixos {}).config.nixpkgs.localSystem.config
	> '
	"aarch64-unknown-linux-gnu"

Because only the system triple was being passed through, the Musl part
of the system specification was lost.  This patch fixes various
occurrences of NixOS evaluation when a Nixpkgs evaluation is already
available, to pass through the full elaborated system attribute set,
to avoid this loss of precision.
2022-05-28 20:01:55 +00:00
Jonas Heinrich f81c763c1d nixos/appvm: init at unstable-2021-12-20
Co-authored-by: Mikhail Klementev <blame@dumpstack.io>
Co-authored-by: Cabia Rangris <me@cab404.ru>
2022-05-26 08:33:49 -04:00
Guillaume Girol 110c6e6c96 nixos/libvirtd: allow to provide both x86 and aarch64 ovmf 2022-05-14 12:00:00 +00:00
Artturi c7b10b6df9
Merge pull request #172131 from euank/ena-2.7.1
ena: 2.5.0 -> 2.7.1 & nixos/amazon-image: default to 5.15 kernel
2022-05-12 01:38:24 +03:00
Rick van Schijndel f433d91bb3 anbox: drop kernel modules package
All builds are broken:
- 4.14
- 4.19
- 5.4

https://hydra.nixos.org/eval/1761072?filter=anbox&compare=1760998&full=#tabs-still-fail

Let's just drop it.

This leaves the anbox module possibly in a broken-ish state,
but I'm not sure what to do about it.
2022-05-10 21:15:48 +02:00
Janne Heß e6fb1e63d1
Merge pull request #171650 from helsinki-systems/feat/config-systemd-package
treewide: pkgs.systemd -> config.systemd.package
2022-05-09 10:23:04 +02:00
Euan Kemp 35cfe2c29c nixos/amazon-image: default to 5.15 kernel
Previously, it was held back due to the ENA driver not building on the
current default (5.15). The previous commit bumps the ENA driver, which
allows 5.15 to work.
2022-05-08 21:13:50 -07:00
Sandro 398cf5bf2d
Merge pull request #164698 from illustris/proxmox-lxc 2022-05-06 23:35:13 +02:00
Janne Heß 57cd07f3a9
treewide: pkgs.systemd -> config.systemd.package
This ensures there is only one systemd package when e.g. testing the
next systemd version.
2022-05-05 20:00:31 +02:00