Files
Nomarchy/core/system/virtualization.nix
Bernardo Magri 7086a6f29c feat(installer): add software-profile multi-select
- Add select_profiles step with gum choose --no-limit
- Implement state persistence and review for selected profiles
- Map profiles to home.packages and system-level toggles (Docker, Steam)
- Update generate_flake_config to emit profile-specific Nix snippets
- Fix duplicate environment.systemPackages in virtualization.nix
- Update ROADMAP.md
2026-04-25 22:44:24 +01:00

37 lines
1.0 KiB
Nix

{ config, lib, pkgs, ... }:
let
libvirt = config.nomarchy.system.virtualization.libvirt.enable;
docker = config.nomarchy.system.virtualization.docker.enable;
in
{
# uwsm + Hyprland session — present on every Nomarchy install regardless
# of the optional libvirt branch below.
programs.uwsm = {
enable = lib.mkDefault true;
waylandCompositors.hyprland = {
binPath = "/run/current-system/sw/bin/Hyprland";
prettyName = "Hyprland";
};
};
# Optional: libvirt + virt-manager + OVMF. Toggle with
# `nomarchy.system.virtualization.libvirt.enable = true;`. The user must
# be in the `libvirtd` group to drive virsh / virt-manager.
virtualisation.libvirtd.enable = lib.mkIf libvirt true;
# Optional: Docker + docker-compose.
virtualisation.docker.enable = lib.mkIf docker true;
environment.systemPackages = lib.mkMerge [
(lib.mkIf libvirt (with pkgs; [
virt-manager
qemu
OVMF
]))
(lib.mkIf docker (with pkgs; [
docker-compose
]))
];
}