Commit graph

1263 commits

Author SHA1 Message Date
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
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
Maximilian Bosch c959de5b30
Merge pull request #148360 from helsinki-systems/drop/pg96
postgresql_9_6: drop
2021-12-06 21:57:05 +01:00
Robert Hensing 862d167f17
Merge pull request #147441 from pennae/option-doc-staticizing
nixos/*: add trivial defaultText to options where applicable
2021-12-06 01:35:38 +01:00
Tristan 7f6a2d5663 oci-containers: fix imageFile example 2021-12-04 10:23:58 +01:00
Maciej Krüger 79f6a3147f
Merge pull request #147365 from FlorianFranzen/waydroid/psi-default 2021-12-03 14:58:31 +01:00
Florian Franzen 64a0cf0df2
nixos/waydroid: enable kernel psi interface if required 2021-12-03 13:04:17 +01:00
ajs124 757dd008b2 postgresql_9_6: drop 2021-12-03 01:14:29 +01:00
pennae 2512455639 nixos/*: add trivial defaultText for options with simple defaults 2021-12-02 22:35:04 +01:00
AmineChikhaoui fa06cf556e ec2-amis: add release 21.11 2021-12-02 11:01:47 -05:00
Robert Hensing 0f33d439a7
Merge pull request #140992 from hercules-ci/aarch64-amis
Add aarch64 AMIs
2021-12-01 14:48:00 +01:00
Artturin 21585dc683 nixos/vmware-guest: add display-manager to after and
add ConditionVirtualization

and remove unneeded before and wants which are not in the upstream
package, the wantedBy should be enough
2021-11-25 04:33:05 +02:00
Artturi c4851c0d71
Revert msize related commits (#147180) 2021-11-24 02:33:53 +02:00
Artturi 53edfe1d1c
Merge pull request #146804 from Artturin/qemudefaultmem 2021-11-21 17:48:08 +02:00
Artturin 54ece050b8 nixos/qemu-vm: default memorySize 384 -> 1024
the default hasn't been changed since 2009
this can improve our test performances

nixos/tests: remove explicit memorySize <1024

1024MiB is now the default
2021-11-21 17:27:58 +02:00
Ryan Burns 2175b157ac treewide: refactor isi686 && isx86_64 -> isx86 2021-11-20 17:50:41 -08:00
Artturi dd4ce550b3
Merge pull request #146456 from Artturin/misc-updates1 2021-11-20 01:14:44 +02:00
Janne Heß ecf388e90b
vmTools: Make msize larger to silence warning
See https://issues.guix.gnu.org/47225
2021-11-18 21:21:49 +01:00
Artturin a96a6e7515 nixos/qemu-vm: fix deprecation readonly -> readonly=on
machine # qemu-system-x86_64: -drive if=pflash,format=raw,unit=0,readonly,...: warning:
short-form boolean option 'readonly' deprecated
vm-test-run-systemd-boot-specialisation> machine # Please use readonly=on instead
2021-11-18 21:32:56 +02:00
Alyssa Ross 42adeef9ec
nixos/qemu-guest-agent: use qemu_kvm
Since e791519f0f ("nixos/qemu-vm: use qemu_kvm"), VMs generated with
nixos-rebuild build-vm use the qemu_kvm package instead of the qemu
package.  (The difference between them is that qemu_kvm is only built
with support for the host architecture, not all architectures.)

But with this change, nixos-rebuild build-vm would now depend on
_both_ QEMUs, because the guest agent module was still using the one
from the full QEMU package.  There's no need for it to use this
instead of the lighter qemu_kvm, because the guest agent shouldn't be
affected by which platforms QEMU can emulate.
2021-11-14 20:28:06 +00:00
Artturi 76439257f4
Merge pull request #145394 from Artturin/removedeprecated1 2021-11-13 03:19:16 +02:00
Artturin 0686311257 nixos/lxc-container: remove deprecated literalExample 2021-11-10 23:55:13 +02:00
Robert Hensing 6c690b07f7
Merge pull request #144788 from hercules-ci/double-default-qemu-diskSize
virtualisation/qemu-vm: Double the default diskSize
2021-11-10 17:47:29 +01:00
illustris 8d197bffd8
nixos/proxmox-image: init (#144013)
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-11-07 16:02:54 +01:00
Magicloud 40c83d1e0a
virtualbox: Add option to build vboxwebsrv tool
`vboxwebsrv`, a.k.a, Virtualbox Web Service, provides a way to manage VMs via SOAP interface. This is very useful on headless servers.
2021-11-07 08:34:47 +01:00
Maciej Krüger 83c93c8e1c
Merge pull request #141076 from CajuM/waydroid-module 2021-11-07 08:14:45 +01:00
Martin Weinelt 65be52ba2a
Merge pull request #144201 from misuzu/iptables-switch-fix 2021-11-06 12:28:51 +01:00
Mihai-Drosi Câju 7e76b12d57
nixos/waydroid: init 2021-11-06 08:57:57 +01:00
Robert Hensing 4ec119009b virtualisation/qemu-vm: Double the default diskSize
The default has been unchanged for a decade. Space is cheaper and
software catches up with that. Let's not make our testing harder
than necessary by default.
2021-11-05 21:06:08 +01:00
ajs124 ce21576c61
Merge pull request #142408 from mschwaig/fix-vmware-guest-headless
nixos/vmware-guest: fix headless option
2021-11-05 12:33:37 +01:00
Maciej Krüger 1c31f8db6a
nixosTest.lxdImage: add lxdImage test 2021-11-03 07:49:54 +01:00