summaryrefslogtreecommitdiffstats
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..f4054ad
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,45 @@
+{
+ description = "Jon's NixOS configuration";
+
+ inputs = {
+ nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-23.05";
+ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
+
+ home-manager = {
+ url = "github:nix-community/home-manager";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+
+ nixos-hardware.url = "github:NixOS/nixos-hardware/master";
+
+ nurpkgs.url = "github:nix-community/NUR";
+ };
+
+ outputs = { self, nixpkgs, nixos-hardware, home-manager, ... }@inputs:
+ let
+ inherit (self) outputs;
+ stateVersion = "23.05";
+
+ overlays = [
+ inputs.nurpkgs.overlay
+ ];
+
+ housemaker = import ./housemaker.nix { inherit inputs outputs stateVersion overlays; };
+ in {
+ nixosConfigurations = {
+ jontest = housemaker.newhost { nixpkgs = nixpkgs; overlays = overlays; hostname = "jontest"; username = "jon"; };
+ };
+ nixosConfigurations = {
+ jontop = housemaker.newhost { nixpkgs = nixpkgs; overlays = overlays; hostname = "jontop"; username = "jon"; };
+ };
+ nixosConfigurations = {
+ jonbox = housemaker.newhost { nixpkgs = nixpkgs; overlays = overlays; hostname = "jonbox"; username = "jon"; };
+ };
+
+ homeConfigurations = {
+ "jon@jontest" = housemaker.newhome { nixpkgs = nixpkgs; overlays = overlays; hostname = "jontest"; username = "jon"; platform = "x86_64-linux"; };
+ "jon@jontop" = housemaker.newhome { nixpkgs = nixpkgs; overlays = overlays; hostname = "jontop"; username = "jon"; platform = "x86_64-linux"; };
+ "jon@jonbox" = housemaker.newhome { nixpkgs = nixpkgs; overlays = overlays; hostname = "jonbox"; username = "jon"; platform = "x86_64-linux"; };
+ };
+ };
+}