Category:Virtualization: Difference between revisions
imported>Neongreensniper |
Refactor page: split tables, improve introduction |
||
(13 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
This category page exists to list resources related to <strong>virtualisation</strong> in the Nix ecosystem. | |||
== Overview == | == Overview == | ||
You can use the following technologies for classic virtualisation on NixOS. You can also use [[:Category:Container|containers]], though they come with their own advantages and drawbacks. | |||
NixOS. | |||
* QEMU/KVM (see [[Virt-manager]]) | |||
* [[VirtualBox]] | |||
* [[VMware]] | |||
* The [[Xen Project Hypervisor]] | |||
= | {| class="wikitable" | ||
|+Installing a hypervisor on the host system. | |||
!Hypervisor | |||
!Code snippet to be added to <code>configuration.nix</code> | |||
|- | |||
|QEMU/KVM | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
virtualisation.libvirtd.enable = true; | |||
# if you use libvirtd on a desktop environment | |||
programs.virt-manager.enable = true; # can be used to manage non-local hosts as well | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|Xen Project Hypervisor | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
virtualisation.xen.enable = true; | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|VirtualBox | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
virtualisation.virtualbox.host.enable = true; | |||
users.extraGroups.vboxusers.members = [ "username" ]; | |||
# Non-free Extension Pack | |||
nixpkgs.config.allowUnfree = true; | |||
virtualisation.virtualbox.host.enableExtensionPack = true; | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|VMware | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
virtualisation.vmware.host.enable = true; | |||
} | |||
</nowiki> | |||
}} | |||
|} | |||
{| class="wikitable" | |||
|+Installing the appropriate guest utilities on a virtualised system. | |||
!Hypervisor the guest is running on | |||
!Code snippet to be added to the guest's <code>configuration.nix</code> | |||
|- | |||
|QEMU/KVM | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
services.qemuGuest.enable =true; | |||
services.spice-vdagentd.enable = true; | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|VirtualBox | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
virtualisation.virtualbox.guest.enable = true; | |||
virtualisation.virtualbox.guest.x11 = true; | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|VMware | |||
|{{file|configuration.nix|nix| | |||
<nowiki> | |||
{ | |||
services.xserver.videoDrivers = [ "vmware" ]; | |||
virtualisation.vmware.guest.enable = true; | |||
} | |||
</nowiki> | |||
}} | |||
|- | |||
|microvm.nix | |||
|Consult the [https://astro.github.io/microvm.nix/ MicroVM.nix documentation] | |||
[[Category: | [[Category:Software]] | ||
[[Category: | [[Category:Desktop]] | ||
[[Category:Server]] |