Commit Graph

1593 Commits

Author SHA1 Message Date
figsoda
6bb0dbf91f nixos: fix typos 2022-12-17 19:31:14 -05:00
Naïm Favier
6573e10dee
Merge pull request #204480 from ncfavier/hv-kvp 2022-12-14 12:03:20 +01:00
Izorkin
2b6bfed79c
nixos/lxc-container: undo some of the minimal profile stuff 2022-12-09 23:18:37 +03:00
Naïm Favier
0ff3b35356 nixos/doc: fix some options 2022-12-08 17:52:52 +01:00
Naïm Favier
f9743988ad
linuxPackages.hyperv-daemons: add path conditions for kvp and vss 2022-12-04 15:25:26 +01:00
Bjørn Forsman
c3cfa83884 nixos/lxd: add missing util-linux to $PATH
This fixes `lxd init`, which previously failed like this:

  $ yes "" | lxd init
  [...]
  Error: Failed to create storage pool "default": Failed to run: losetup --find --nooverlap --direct-io=on --show /var/lib/lxd/disks/default.img: exec: "losetup": executable file not found in $PATH
2022-12-03 16:01:05 +01:00
Valentin Gagarin
260de5901e
Merge pull request #204103 from ncfavier/doc-mkOrder
nixos/doc: document `mkOrder` and friends
2022-12-02 17:19:40 +01:00
Naïm Favier
e8927c46b8
nixos/doc: document mkOrder and friends
Add a section on ordering option definitions.

Also mention `mkDefault` in the section on `mkOverride`.

Clarify the code a bit by renaming `defaultPriority` to
`defaultOverridePriority` and introducing `defaultOrderPriority`.
2022-12-02 14:15:24 +01:00
AmineChikhaoui
2c90cb9304
ec2-amis: add release 22.11 2022-12-01 17:21:34 -05:00
Ryan Lahfa
a8a68c3427
Merge pull request #189935 from baloo/baloo/qemu-vm/fixup-efi-partitions
qemu-vm: ensure we do not overwrite the partition table when EFI is in use
2022-12-01 15:16:23 +01:00
Aaron Andersen
ecf7441d25 nixos/lxc: apply recommendations from distrobuilder 2022-11-30 10:09:59 -05:00
sandydoo
624ebdc10d
nixos/rosetta: init module
Run x86_64 binaries through Rosetta inside NixOS guests running on
Apple silicon.
2022-11-29 10:27:51 +00:00
Mario Rodas
22c4865309
Merge pull request #203484 from asbachb/lxd/check-for-lxcfs
lxd: Check if `lxcfs` is enabled before adding it as service dependency
2022-11-29 01:45:25 -05:00
Benjamin Asbach
96424ddf55 lxd: Check if lxcfs is enabled before adding it as service dependency
Without that check `lxc.service` cannot be manage manually as a manual start fails due to missing dependency to `lxcfs` when not enabled.
2022-11-28 21:48:34 +04:00
Sandro Jäckel
f4d8e64bed
nixos/modprobe: replace boot.isContainer with boot.modprobeConfig.enable 2022-11-24 14:07:46 +01:00
Sandro
f92201f461
Merge pull request #197925 from SuperSandro2000/lvm2 2022-11-24 13:58:29 +01:00
Linus Heckemann
36ca2b495f nixos/ec2: use only curl in metadata fetcher, log to console
We don't need both wget and curl, so let's use only curl (which is
part of a minimal NixOS closure, unlike wget).

Logging to the console is helpful for debugging.
2022-11-23 17:19:16 +01:00
Linus Heckemann
6fb582e030 ec2-metadata-fetcher: ignore failure when fetching metadata parts
Instances without SSH keys configured will receive a 404 from the
metadata server when attempting to fetch an SSH key. This is not an
actual problem though, and shouldn't result in the service failing.

If the metadata server cannot be reached, the script will fail at an
earlier stage when attempting to get authentication data.
2022-11-23 17:19:16 +01:00
Linus Heckemann
eddfcf8622 amazon-image: fetch metadata only in stage-2
This also removes automatic enablement/mounting of instance store swap
devices and ext3 filesystems. This behaviour is strongly opinionated
and shouldn't be enabled by default.

The unionfs behaviour never took effect anyway, because the AMI
manifest path only exists for instance store-backed AMIs, which have
not been supported by nixpkgs since
84742e2293 (2019).
2022-11-23 17:19:13 +01:00
Linus Heckemann
24e33a4d2e nixos/ec2: remove paravirtualization-specific code
Paravirtualized EC2 instances haven't been supported since 2017.
It's safe to remove this now.
2022-11-23 17:18:18 +01:00
Sandro
caf13a5bb1
Merge pull request #182759 from otopetrik/proxmox-image-uefi 2022-11-21 21:34:30 +01:00
adisbladis
841bcc7a24
Merge pull request #185129 from Munksgaard/fix-nixos-container
nixos-containers: Make sure same version of nixos-container is used
2022-11-17 22:13:44 +13:00
Franz Pletz
2274143409
Merge pull request #200611 from fpletz/libvirtd-fix-autostart 2022-11-14 09:21:00 +01:00
Sandro Jäckel
5f03b6ddfc
nixos/console: move enable option out of let in 2022-11-12 23:40:20 +01:00
Sandro
9477fa1e44
Merge pull request #197917 from SuperSandro2000/kernel-enable 2022-11-12 21:12:56 +01:00
Franz Pletz
d82f52519a
nixos/libvirtd: always start libvirtd
Previously we did socket-activation but this breaks the autostart
feature since upstream expects libvirtd to be started unconditionally on
boot.

Fixes #171623.
2022-11-11 01:10:37 +01:00
Eelco Dolstra
0a00b332cd
Merge pull request #198526 from farnoy/nixos-container-unified-cgroups
[nixos-container] Make nixos containers use unified cgroupsv2
2022-11-10 13:37:43 +01:00
Sandro Jäckel
5452a26077
nixos/lvm: replace boot.isContainer with services.lvm.enable 2022-11-09 23:47:37 +01:00
Sandro Jäckel
182575a60d
nixos/kernel: replace boot.isContainer with boot.kernel.enable 2022-11-09 23:45:33 +01:00
Oto Petřík
4729d5d7f6 nixos/proxmox-image: allow building UEFI images
Allow building other than Legacy-BIOS-only Proxmox images.
Default is unchanged.

To build UEFI proxmox image use:
  proxmox.qemuConf.bios = "ovmf";
(default is "seabios")

To build image bootable using both "seabios" and "ovmf" use:
  partitionTableType = "hybrid";
BIOS can be switched in Proxmox between "seabios" and "ovmf" and VM still boots.
(GRUB2-only, systemd-boot does not boot under "seabios")

To build systemd-boot UEFI image:
  proxmox.qemuConf.bios = "ovmf";
  boot.loader.systemd-boot.enable = true;
2022-11-09 03:19:42 +01:00
pacien
e039cb9d97 nixos/qemu-vm: add option "restrictNetwork"
This adds an option to the qemu virtualisation module to isolate the
guest's from the host's and outside networks.

This is particularly useful for development sandboxes for example.

The option is disabled by default to preserve the current behaviour.
2022-11-08 17:54:31 +01:00
Jakub Okoński
12508ac79a nixos-container: force systemd-nspawn to use unified cgroups hierarchy 2022-11-06 17:12:02 +01:00
Sandro
4ca8261132
nixos/vmware-guest: depend headless option on xserver availability 2022-11-01 16:57:30 +01:00
Sandro
00bde1ac69
Merge pull request #197870 from SuperSandro2000/udev-enable 2022-10-30 19:58:23 +01:00
Robert Hensing
8837a5d68e
Merge pull request #195681 from maifel-maifel/mr-containers-hostPlatform
nixos/containers: now uses nixpkgs.hostPlatform
2022-10-27 17:52:45 +02:00
Sandro Jäckel
7fe3f63da6
nixos/udev: add enable option 2022-10-26 19:24:14 +02:00
Jan Tojnar
457f28f6f8 Merge branch 'master' into staging-next
; Conflicts:
;	pkgs/development/tools/codespell/default.nix

codespell 2.2.2 switched to pyproject & setuptools_scm:
https://github.com/codespell-project/codespell/pull/2523
2022-10-19 05:24:28 +02:00
digital
f4ccaa51e0 nixos/containers: support nixpkgs.hostPlatform
Use hostPlatform if both the host and the containers nixpkgs supports
hostPlatform, otherwise fall back to localSystem. This preseves backwards
compatibility.
2022-10-18 19:15:26 +02:00
Karel Kočí
76e1e908c1
nixos/modules/virtualisation: fix oci-containers with docker
The empty attribute set is invalidly provided as service config and
results in evaluation error.
2022-10-17 16:11:56 +02:00
Martin Weinelt
51fcbf5bb7 Merge remote-tracking branch 'origin/master' into staging-next 2022-10-16 00:18:40 +02:00
Florian Klink
80e4946f38
Merge pull request #177406 from davidkna/podman-gen
nixos/virtualisation.oci-containers: follow podman-generated systemd units more closely
2022-10-15 22:10:55 +02:00
github-actions[bot]
5d957f3dba
Merge staging-next into staging 2022-10-11 00:05:26 +00:00
Martin Weinelt
294201004f Merge remote-tracking branch 'origin/master' into staging-next 2022-10-10 21:45:18 +02:00
Bernardo Meurer
ed22079db4
Merge pull request #195141 from zhaofengli/vbox-headless-wrappers 2022-10-10 11:45:40 -03:00
Zhaofeng Li
6ed7e545ec nixos/virtualbox-host: Fix hardening with headless vbox
Fixes #157157.
2022-10-08 15:41:59 -06:00
Mario Rodas
405db07799
Merge pull request #167047 from helsinki-systems/drop/postgresql10
postgresql: remove 10.x
2022-10-06 21:32:46 -05:00
github-actions[bot]
9c14978f84
Merge master into staging-next 2022-09-29 12:01:25 +00:00
David Houston
28e90d3709
nixos/virtualisation/linode-image: init (#155426) 2022-09-29 00:25:03 +02:00
Artturin
6910a4eea0 treewide: makeWrapper to nativeBuildInputs
this should be all of them other than the failed splices
found with nixpkgs-lint
2022-09-26 17:53:26 +03:00
Matthieu Coudron
fd62fdca5b virtualisation.docker: require docker.service for docker-prune.service
else docker-prune fails when docker is not launched. Adjusted the test as well
2022-09-24 10:42:00 +02:00
pennae
d98322834b nixos/*: fix docbook deprecation notices
mostly no rendering changes except in buildkite, which used markdown
where docbook was expected without marking up its markdown.
2022-09-10 18:23:13 +02:00
illustris
e7ec55a72d
nixos/proxmox-image: fix broken build, reduce build time 2022-09-08 08:26:02 +05:30
sohalt
995853d13c nixos/oci-containers: wait for network before starting container
Without `ìmageFile` set, the service needs to download the image from
the registry. If the network is not up in time, the service tries to
restart rapidly until it fails.
2022-09-07 17:28:00 +02:00
Arthur Gautier
7f026cc6d0 qemu-vm: ensure we do not overwrite the partition table when EFI is in use 2022-09-05 17:18:06 -07:00
pennae
3bddcf5f90
Merge branch 'master' into option-docs-md 2022-09-01 16:10:09 +02:00
pennae
1d41cff3dc nixos/*: convert straggler options to MD 2022-08-31 17:27:38 +02:00
pennae
f2ea09ecbe nixos/*: convert options with listings
minor rendering changes.
2022-08-31 17:27:36 +02:00
pennae
722b99bc0e nixos/*: convert options with admonitions to MD
rendering changes only slightly, most changes are in spacing.
2022-08-31 16:36:16 +02:00
pennae
bd56368848 nixos/*: md-convert hidden plaintext options
most of these are hidden because they're either part of a submodule that
doesn't have its type rendered (eg because the submodule type is used in
an either type) or because they are explicitly hidden. some of them are
merely hidden from nix-doc-munge by how their option is put together.
2022-08-31 16:32:54 +02:00
pennae
9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae
ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
pennae
1013069f52 nixos/*: convert more partially-md option descriptions
this mostly means marking options that use markdown already
appropriately and making a few adjustments so they still render
correctly. notable for nftables we have to transform the md links
because the manpage would not render them correctly otherwise.
2022-08-31 16:32:14 +02:00
pennae
7d102d113a nixos/*: convert multiline inline code to listings
presumably it was not intended to have these blocks rendered inline, and
markdown conversion would be messy as well.
2022-08-31 16:27:25 +02:00
Silvan Mosberger
6eb620ace7
Merge pull request #180222 from YorikSar/qemu-vm-darwin-pkgs
nixos/qemu-vm: Allow to build and run VMs on Darwin
2022-08-30 21:54:22 +02:00
zowoq
464944c3f4 nixos/{containers,cri-o/podman}: drop outdated remove/rename
these have been around for a few release cycles
2022-08-30 17:05:48 +10:00
pennae
51a11254a7 nixos/*: literalDocBook -> literalMD
no change to rendered output
2022-08-27 19:18:29 +02:00
Silvan Mosberger
04648b8dcf nixos/qemu: Add pkgs option for allowing other systems to run the VM 2022-08-25 16:59:09 +04:00
Robert Hensing
10f1753344
Merge pull request #187887 from RaitoBezarius/ovmf-uefi-prefixes
ovmf: expose EFI prefixes and refactor qemu-vm with it
2022-08-23 13:29:23 +02:00
Raito Bezarius
c91d0713ac ovmf: expose EFI prefixes and refactor qemu-vm with it 2022-08-23 12:13:06 +02:00
Maximilian Bosch
c050aba1a8
Merge pull request #187211 from fpletz/pkgs/libvirt-8.6.0
libvirt: 8.5.0 -> 8.6.0, bugfixes
2022-08-22 23:11:12 +02:00
illustris
9cf89797e6 nixos/proxmox-image: add hydra-build-products definition 2022-08-22 14:57:57 -04:00
illustris
265e6a668e nixos/proxmox-image: qemu 6.2.0 -> 7.0.0 and fix failing build 2022-08-22 14:57:57 -04:00
Franz Pletz
3e373de301
nixos/libvirtd: point qemu-bridge-helper to store path
fixes #165897
2022-08-22 05:18:47 +02:00
pennae
6039648c50 nixos/*: automatically convert option docs 2022-08-19 22:40:58 +02:00
pennae
7e7d68a250 nixos/*: mark pre-existing markdown descriptions as mdDoc 2022-08-19 22:40:58 +02:00
pennae
e4ed177f82 nixos/* eliminate inner whitespace in tags that was missed earlier
nix-doc-munge won't match tags that contain newlines anywhere. most of
these have already been removed, but a few obviously made it through.
2022-08-19 22:40:58 +02:00
pennae
8f8e101527 nixos/*: normalize <package> to <literal>
this renders the same in the manpage and a little more clearly in the
html manual. in the manpage there continues to be no distinction from
regular text, the html manual gets code-type markup (which was probably
the intention for most of these uses anyway).
2022-08-19 22:40:58 +02:00
zowoq
72a3a868a0 nixos/{containers,podman}: nixpkgs-fmt 2022-08-19 14:10:47 +10:00
Andrew Marshall
6dc1c73aba nixos/libvirtd: Do not add autostart network
This does make the out-of-the-box install perhaps a bit worse, since
networking may need to be manually configured. However, it makes it less
frustrating that upon every start of this service, a *removed* autostart
network will be re-added when removed by the user. See
https://github.com/NixOS/nixpkgs/issues/73418 for details.

Behavior from other distros:

- Adds autostart net on install: Fedora
- Does not add autostart net   : Debian, Arch

This does not break any existing installs since it does not affect any
autostart network already in-place.
2022-08-18 15:48:05 +02:00
ajs124
817ca3699e treewide: change postgresql_10 in documentation and examples to postgresql_14 2022-08-15 22:36:32 +02:00
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
Philip Munksgaard
3daea5fa9b
nixos-containers: Make sure same version of nixos-container is used
Fixes #185126 (I hope)
2022-08-04 13:49:00 +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
David Knaack
9f7e40205e nixos/virtualisation.oci-containers: follow podman-generated systemd units more closely 2022-06-12 15:24:34 +02: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
illustris
64a204d1a7 nixos/proxmox-lxc: use hostname provided by proxmox 2022-05-05 01:05:04 +05:30
Sandro
aacb7ef4a6
Merge pull request #169966 from deinferno/vmware-host 2022-05-04 14:13:12 +02:00
deinferno
3e8e52bb91 nixos/vmware-host: init at 16.2.3 2022-05-04 01:58:32 +05:00
adisbladis
46241e156c nixos/virtualisation.oci-containers: Use podman as the default backend
This has a number of benefits such as that applying service limits will
actually work since there isn't a layer of indirection (the Docker daemon)
between the systemd service and the container runtime.
2022-05-03 14:50:43 +12:00
Janne Heß
007108f04d
nixos/*qemu*: Add systemd initrd support 2022-04-30 20:47:42 +02:00
adisbladis
3c49151f15 nixos/nixos-containers: Add warning on unsupported state version combo 2022-04-27 18:35:46 +12:00
adisbladis
f535d6f45e nixos-container: Use new configuration & state directories
We need to move NixOS containers somewhere else so these don't clash
with Podman, Skopeo & other container software in the libpod &
cri-o/cri-u/libcontainer ecosystems.

The state directory move is not strictly a requirement but is good for
consistency.
2022-04-27 18:35:08 +12:00
Graham Christensen
d65eff4fb6
Merge pull request #167902 from DeterminateSystems/openstack-zfs-cleanup
openstack-image: init, make-single-disk-zfs-image: init
2022-04-16 19:44:53 -04:00
Robert Hensing
4d464cf889
Merge pull request #168030 from samhug/qemu-vm
nixos/qemu-vm: sanitize generated environment variable name
2022-04-11 10:45:32 +02:00
Lassulus
8b9c6a1b04
Merge pull request #115391 from kfollesdal/autoresize-azure
nixos/virtualisation/azure-common: add auto resize of os disk
2022-04-10 11:25:22 +01:00
Sam Hug
cdef7bcb5b nixos/qemu-vm: sanitize generated environment variable name 2022-04-09 11:53:58 -07:00
Florian Klink
37a8a582d7 nixos/libvirtd: provide path to cloud-hypervisor for virtchd.service
Otherwise, starting this daemon fails with the message

```
virtchd[3484224]: Initialization of mandatory cloud-hypervisor state driver skipped
virtchd[3484224]: Driver state initialization failed
```

Fixes #167850
2022-04-08 13:20:42 +02:00
Graham Christensen
d99f301374 openstack-config: note the image metadata needed to boot a uefi image 2022-04-07 15:28:28 -04:00
Graham Christensen
d3aff5fa3c openstack-config: make the expandOnBoot option default to all 2022-04-07 15:28:28 -04:00
Graham Christensen
0a086bf7bf openstack-config: enable tty1
This appears to be the "default" console for openstack, but my evidence is experience on just one provider.
2022-04-07 15:28:28 -04:00
Graham Christensen
d4c502a94a openstack-metadata-fetcher: don't fail if any specific wget's fail 2022-04-07 15:28:28 -04:00
Graham Christensen
14304bfe40 openstack-config: setup serial access on ttyS0 2022-04-07 15:28:28 -04:00
Graham Christensen
e5a7d077c1 openstack-config: support a ZFS root with /boot perhaps coming from an ESP 2022-04-07 15:28:28 -04:00
Graham Christensen
80b00ef02a openstack-options: init 2022-04-07 15:28:27 -04:00
Robert Hensing
dd0d10bbb6
Merge pull request #165583 from bosu/patch-1
nixos/qemu-vm: allow booting VM with the custom kernel
2022-04-04 14:33:35 +02:00
Janne Heß
7cdc4dd5d1
Merge pull request #164943 from ElvishJerricco/systemd-initrd-reuse-systemd-module
initrd: Opt-in bare bones systemd-based initrd
2022-04-03 15:53:02 +02:00
Zhaofeng Li
e42f06f93f nixos/podman: Add zfs to wrapper if enabled 2022-04-02 06:38:16 +10:00
Dominique Martinet
e92c05349c nixos/logrotate: convert to freeform
using freeform is the new standard way of using modules and should replace
extraConfig.
In particular, this will allow us to place a condition on mails
2022-04-01 07:09:26 +09:00
Michael Hoang
2c102d19c0 nixos/qemu-vm: Set mainProgram for nix run 2022-04-01 01:34:26 +11:00
Mihai-Drosi Câju
3186c367ce nixos/waydroid: Misc fixes
* With the upgrade to waydroid to 1.2.0, dependencies that previously
  were shipped in the service's path have been moved to the waydroid
  package.

* Make sure /var/lib/misc exists when starting waydroid. As required
  by dnsmasq
2022-03-25 19:51:41 -07:00
Boris Sukholitko
6af3e61632 nixos/qemu-vm: allow booting VM with the custom kernel
While doing kernel development with the nixos testing infrastructure, it
is useful to quickly compile the kernel on the side and boot it in the testing VM.

This patch allows overriding the kernel through the environment
variable. For example, the following:

$ NIXPKGS_QEMU_KERNEL_testvm=$LINUX_SRC/arch/x86/boot/bzImage $VM/bin/nixos-test-driver

runs testvm testing VM with the fresh kernel compiled in $LINUX_SRC.

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2022-03-25 17:38:19 +03:00
Will Fancher
213de9b108 systemd-initrd: autoFormat and autoResize in initrd 2022-03-22 21:28:51 -04:00
Will Fancher
be10e86c95 systemd-initrd: Partially fix qemu-vm
TODO: Auto formatting / partitioning / resizing
2022-03-22 21:28:50 -04:00
Robert Hensing
eb8b70c020 nixos: Make config.nix.enable pass test 2022-03-21 23:14:10 +01:00
Ian Kerins
4c6772e2a1 nixos/oci-containers: improve description of imageFile
As a novice to using this module, I found the existing description to be
quite misleading. It does not at all disable pulling from the registry,
it just loads some image archive that may or may not be related to the
container you're specifying. I had thought there was extra magic behind
this option, but it's just a `docker load`. You need foreknowledge of
the contents of the archive so that whatever it contained is actually
used to run the container.

I've reworded the description to hopefully make this behavior clearer.
2022-03-12 11:14:22 +01:00
zowoq
177281ad00 nixos/amazon-image: use 5_10 kernel and add assert 2022-02-27 15:04:37 -08:00
Jörg Thalheim
a9252603d5
Merge pull request #160195 from illustris/proxmox-lxc
nixos/proxmox-lxc: init
2022-02-25 14:49:48 +00:00
Antoine Eiche
413afdae6e openstack-metadata-fetcher: do not fail if no user-data is provided
When no user-data is provided, the OpenStack metadata server doesn't
expose the user-data route.
2022-02-22 16:37:29 +01:00
James Landrein
6da3328129 nixos/containerd: fix zfs setting config override 2022-02-16 18:54:59 +10:00
illustris
19f7856b39 nixos/proxmox-lxc: init 2022-02-15 23:55:03 +05:30
Sandro
5560c824c7
Merge pull request #157761 from tp-la/amazon-ec2-utils 2022-02-07 01:53:35 +01:00
Robert Hensing
189f73465b
Merge pull request #158327 from babbaj/virtio-keyboard-option
nixos/qemu-vm: Create option for virtio-keyboard device
2022-02-06 16:37:00 +01:00
Florian Klink
def482e28d
Merge pull request #150837 from abbradar/google-guest-agent
Move GCE config to google-guest-agent
2022-02-06 11:27:27 +01:00
Babbaj
56109be38b
nixos/qemu-vm: Create option for virtio-keyboard device 2022-02-06 01:55:49 -05:00
Nikolay Amiantov
524aecf61e google-compute-config: update config 2022-02-05 23:33:10 +03:00
Nikolay Amiantov
cb18e6cd01 nixos/docker-rootless: disable for root 2022-02-05 14:59:28 +03:00
Tom Prince
653a3e4ed0 amazon-ec2-utils: 1.2 -> 2.0
This also replaces the ec2-utils package, which is an older version.
2022-02-04 12:53:58 -07:00
Pascal Bach
19763fd18e
Merge pull request #156245 from kamadorueda/nixos/virtualisation.virtualbox.guest
nixos/virtualisation.virtualbox.guest: remove override
2022-02-03 19:05:46 +01:00
Patryk Wychowaniec
30c8f7c42d
nixos/kvmgt: add myself to maintainers
I've got a use case and compatible hardware, so why not :-)
2022-02-02 20:48:35 +01:00
ajs124
ef8280914f nixos/openvswitch: remove ipsec 2022-01-26 01:12:40 +01:00
Kevin Amado
6aaf4938f8
nixos/virtualisation.virtualbox.guest: remove override
- See nixos/nixpkgs#156242 for further information
2022-01-22 20:36:24 -05:00
Jan Tojnar
b1f7021657
nixos/container-config: Only use true as fallback
LXC containers like those used by VPSAdminOS might want to install a bootloader
so passing `true` to `system.build.installBootLoader` without any priority specified,
causes a conflict for such systems with the recent `system.build` changes:

4014fb6a64

Fixes: https://github.com/NixOS/nixpkgs/issues/155839
2022-01-20 23:10:13 +01:00
kfollesdal
831dbf4e0a nixos/virtualisation/azure-common: add auto resize of os disk
At the moment os disk do not automatically expand in Azure. This commit
fixes this so os disk expands to whole disk when created or changed.
2022-01-15 12:00:04 +01:00
Robert Hensing
8a552994d8 nixos/build-vm.nix: Fix docs eval
Quick fix. Might be possible to provide `extendModules`?
2022-01-14 19:17:11 +01:00
Robert Hensing
2bf5958169
Merge pull request #151082 from hercules-ci/nixos-cleanup-vmWithBootLoader
nixos: turn vmWithBootLoader into option (`nixos-rebuild build-vm`)
2022-01-14 18:49:27 +01:00
Mark Sagi-Kazar
06771b90b2
nixos/vmware-guest: add mptspi kernel module to initrd
Required by VMware Fusion

See details in nix-community/nixos-generators#132

Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
2022-01-10 17:06:02 +01:00
pennae
1301bdb185 nixos/make-options-doc: turn relatedPackages into links
link to search.nixos.org instead of pulling package metadata out of pkgs. this
lets us cache docs of a few more modules and provides easier access to package
info from the HTML manual, but makes the manpage slightly less useful since
package description are no longer rendered.
2022-01-02 19:46:13 +01:00
pennae
fc614c37c6 nixos/documentation: split options doc build
most modules can be evaluated for their documentation in a very
restricted environment that doesn't include all of nixpkgs. this
evaluation can then be cached and reused for subsequent builds, merging
only documentation that has changed into the cached set. since nixos
ships with a large number of modules of which only a few are used in any
given config this can save evaluation a huge percentage of nixos
options available in any given config.

in tests of this caching, despite having to copy most of nixos/, saves
about 80% of the time needed to build the system manual, or about two
second on the machine used for testing. build time for a full system
config shrank from 9.4s to 7.4s, while turning documentation off
entirely shortened the build to 7.1s.
2022-01-02 19:46:13 +01:00
Nikolay Amiantov
a3e7a83514
Merge pull request #150774 from abbradar/docker-rootless
Rootless Docker service
2021-12-27 20:32:57 +03:00
Nikolay Amiantov
ab64310a5e docker-rootless service: init 2021-12-22 14:23:23 +03:00
jbpratt
e96e5ddd1f virtualisation: implement kubevirt config
KubeVirt[1] allows for VMs to be run and managed as pods inside of
Kubernetes clusters. Information about the guests can be exposed through
qemu-guest-agent[2] as well as startup scripts can be injected through
cloud-init[3].

This config has been duplicated and modified from the `cloudstack`
config/script.

To test this out, deploy KubeVirt locally with KinD[4], build the disk
image, then package it into a container image (or upload to CDI[5]) and
provision a VirtualMachine.

[1]: https://kubevirt.io/user-guide/
[2]: https://kubevirt.io/user-guide/virtual_machines/guest_agent_information/
[3]: https://kubevirt.io/user-guide/virtual_machines/startup_scripts/#cloud-init-examples
[4]: https://kubevirt.io/quickstart_kind/
[5]: https://kubevirt.io/user-guide/operations/containerized_data_importer/#containerized-data-importer

Signed-off-by: jbpratt <jbpratt78@gmail.com>
2021-12-21 05:52:16 -06:00
Bob van der Linden
f085d82ce0
make all daemon settings default 2021-12-19 14:17:04 +01:00
Bob van der Linden
6bbf3b6e0a
remove quotes for kebab-case settings 2021-12-19 14:17:04 +01:00
Bob van der Linden
92a23655c8
move cli options to json daemon settings 2021-12-19 14:17:04 +01:00
Bob van der Linden
e8dae9246b
use pkgs.formats.json 2021-12-19 14:17:04 +01:00
Bob van der Linden
c1b0d4acf5
rename daemonConfig -> daemon.settings 2021-12-19 14:16:58 +01:00
Bob van der Linden
142a1540d6
nixos/docker: add daemonConfig option
Adds the virtualisation.docker.daemonConfig option that allows
changing Docker daemon settings as done in daemon.conf.
2021-12-19 14:15:18 +01:00
Graham Christensen
06edb74413
Merge pull request #148785 from pennae/more-option-doc-staticizing
treewide: more defaultText for options
2021-12-17 11:14:08 -05:00
Robert Hensing
6510ec5acd nixos: Make system.build.vm a standard attribute based on vmVariant 2021-12-17 14:49:31 +01:00
Robert Hensing
f72432aeb2 nixos: Move build-vm into virtualisation.vmVariant
... which is like a specialisation, but for nixos-rebuild build-vm
2021-12-17 13:19:16 +01:00
Artturin
39c5525cb1 nixos/qemu-vm: add -device virtio-keyboard to opts
by default a ps/2 keyboard input is used which seems to cause issues
on aarch64-linux when the machine is used high load, causing the keymap
qwertz test to always fail and azerty to sometimes fail
See https://github.com/NixOS/nixpkgs/issues/147294
2021-12-10 01:04:33 +02:00
zowoq
79e66fce1c nixos/podman: sort files into directories
Makes codeowners, git history, etc. a bit simpler now that podman has expanded beyond the original single file module and test.
2021-12-09 13:03:16 +10:00
pennae
2d564521c0 treewide: add literalDocBook text to options with complex defaults
some options have default that are best described in prose, such as
defaults that depend on the system stateVersion, defaults that are
derivations specific to the surrounding context, or those where the
expression is much longer and harder to understand than a simple text
snippet.
2021-12-09 01:38:24 +01:00