diff --git a/flake.nix b/flake.nix index 41522b51..92bdc6b7 100644 --- a/flake.nix +++ b/flake.nix @@ -177,10 +177,15 @@ type = "app"; program = ''${tailwind-watcher}/bin/run''; }; - vm = { + vm = let + system = + if pkgs.stdenv.hostPlatform.isAarch64 + then "aarch64" + else "x86_64"; + in { type = "app"; program = toString (pkgs.writeShellScript "vm" '' - ${pkgs.nixos-shell}/bin/nixos-shell --flake .#vm + ${pkgs.nixos-shell}/bin/nixos-shell --flake .#vm-${system} ''); }; gomod2nix = { @@ -218,6 +223,13 @@ services.tangled-spindle.package = lib.mkDefault self.packages.${pkgs.system}.spindle; }; - nixosConfigurations.vm = import ./nix/vm.nix {inherit self nixpkgs;}; + nixosConfigurations.vm-x86_64 = import ./nix/vm.nix { + inherit self nixpkgs; + system = "x86_64-linux"; + }; + nixosConfigurations.vm-aarch64 = import ./nix/vm.nix { + inherit self nixpkgs; + system = "aarch64-linux"; + }; }; } diff --git a/nix/vm.nix b/nix/vm.nix index 41ff743c..07498b01 100644 --- a/nix/vm.nix +++ b/nix/vm.nix @@ -1,9 +1,10 @@ { nixpkgs, + system, self, }: nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; + inherit system; modules = [ self.nixosModules.knot self.nixosModules.spindle