{ config, lib, pkgs, modulesPath, ... }: { imports = [ ../../profiles/core.nix ../../profiles/user.nix ../../profiles/ssh.nix ../../profiles/graphical.nix ../../mixins/tailscale.nix ../../mixins/cli.nix ../../mixins/greet.nix ../../mixins/pipewire.nix # ../../mixins/hyprland.nix ../../mixins/sway.nix # (modulesPath + "/profiles/qemu-guest.nix") # (modulesPath + "/virtualisation/qemu-vm.nix") ]; config = { _module.args.nixinate = { host = "vm"; sshUser = "tzlil"; buildOn = "remote"; # valid args are "local" or "remote" substituteOnTarget = true; # if buildOn is "local" then it will substitute on the target, "-s" hermetic = false; }; networking.hostName = "vm"; # dont do this users.users.root.initialPassword = "hunter2"; boot.supportedFilesystems = ["9p"]; boot = { initrd = { supportedFilesystems = ["btrfs"]; availableKernelModules = ["ata_piix" "uhci_hcd" "floppy" "sd_mod" "sr_mod"]; }; kernelPackages = lib.mkDefault pkgs.linuxPackages_latest; kernelParams = [ "console=ttyS0" "init_on_free=1" "page_poison=1" "page_alloc.shuffle=1" "slab_nomerge" "vsyscall=none" ]; cleanTmpDir = true; loader = { systemd-boot = { enable = true; }; efi = { canTouchEfiVariables = true; efiSysMountPoint = "/boot"; }; }; }; time.timeZone = lib.mkDefault "Israel"; fileSystems = { "/" = { device = "none"; fsType = "tmpfs"; options = ["noexec" "defaults" "size=2G" "mode=755"]; }; "/nix" = { device = "/dev/disk/by-partlabel/nix"; options = ["noatime" "compress=zstd"]; }; "/boot" = { device = "/dev/disk/by-partlabel/boot"; }; }; zramSwap = { enable = true; algorithm = "zstd"; }; hardware.opengl = { enable = true; extraPackages = with pkgs; [rocm-opencl-icd rocm-opencl-runtime]; driSupport = true; driSupport32Bit = true; }; greeter.initialSession = "env WLR_RENDERER=pixman ${pkgs.sway.out}/bin/sway"; # home-manager.users.tzlil.wayland.windowManager.sway.config.input."type:keyboard".xkb_variant = lib.mkForce ""; # nice to work with security.sudo.wheelNeedsPassword = false; }; }