diff --git a/nix/vm/create.nix b/nix/vm/create.nix new file mode 100644 index 000000000..8aea5d19d --- /dev/null +++ b/nix/vm/create.nix @@ -0,0 +1,41 @@ +{ + system, + nixpkgs, + overlay, + path, + uid ? 1000, + gid ? 1000, +}: let + pkgs = import nixpkgs { + inherit system; + overlays = [ + overlay + ]; + }; +in + nixpkgs.lib.nixosSystem { + system = builtins.replaceStrings ["darwin"] ["linux"] system; + modules = [ + { + virtualisation.vmVariant = { + virtualisation.host.pkgs = pkgs; + }; + + nixpkgs.overlays = [ + overlay + ]; + + users.groups.ghostty = { + gid = gid; + }; + + users.users.ghostty = { + uid = uid; + }; + + system.stateVersion = "24.11"; + } + ./common.nix + path + ]; + }