diff --git a/server/flake.lock b/flake.lock similarity index 80% rename from server/flake.lock rename to flake.lock index f112919..0a9f277 100644 --- a/server/flake.lock +++ b/flake.lock @@ -84,6 +84,22 @@ "type": "github" } }, + "nixos-hardware": { + "locked": { + "lastModified": 1699159446, + "narHash": "sha256-cL63IjsbPl2otS7R4kdXbVOJOXYMpGw5KGZoWgdCuCM=", + "owner": "NixOS", + "repo": "nixos-hardware", + "rev": "627bc9b88256379578885a7028c9e791c29fb581", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "master", + "repo": "nixos-hardware", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1677676435, @@ -102,11 +118,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1698924604, - "narHash": "sha256-GCFbkl2tj8fEZBZCw3Tc0AkGo0v+YrQlohhEGJ/X4s0=", + "lastModified": 1699099776, + "narHash": "sha256-X09iKJ27mGsGambGfkKzqvw5esP1L/Rf8H3u3fCqIiU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fa804edfb7869c9fb230e174182a8a1a7e512c40", + "rev": "85f1ba3e51676fa8cc604a3d863d729026a6b8eb", "type": "github" }, "original": { @@ -117,11 +133,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1698942558, - "narHash": "sha256-/UmnB+mEd6Eg3mJBrAgqRcyZX//RSjHphcCO7Ig9Bpk=", + "lastModified": 1699110214, + "narHash": "sha256-L2TU4RgtiqF69W8Gacg2jEkEYJrW+Kp0Mp4plwQh5b8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "621f51253edffa1d6f08d5fce4f08614c852d17e", + "rev": "78f3a4ae19f0e99d5323dd2e3853916b8ee4afee", "type": "github" }, "original": { @@ -135,6 +151,7 @@ "inputs": { "agenix": "agenix", "home-manager": "home-manager_2", + "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable" } diff --git a/server/flake.nix b/flake.nix similarity index 74% rename from server/flake.nix rename to flake.nix index e322a42..f5b8125 100644 --- a/server/flake.nix +++ b/flake.nix @@ -1,16 +1,17 @@ { - description = "A very basic flake"; + description = "Kop's NixOS Flake"; inputs = { # secrets management agenix.url = "github:ryantm/agenix"; nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; + nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/release-23.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; - outputs = { self, nixpkgs, nixpkgs-unstable, agenix, home-manager }@inputs: + outputs = { self, nixpkgs, nixos-hardware, nixpkgs-unstable, agenix, home-manager }@inputs: let system = "x86_64-linux"; overlay-unstable = final: prev: { @@ -20,9 +21,10 @@ nixosConfigurations.server = nixpkgs.lib.nixosSystem { inherit system; modules = [ + ./users/anon.nix ./modules/static-ip-server.nix ({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) - ./configuration.nix + ./systems/server/configuration.nix ./modules/hdd-spindown.nix ./modules/motd.nix ./modules/postgres.nix @@ -54,5 +56,14 @@ ]; specialArgs = { inherit inputs; }; }; + nixosConfigurations."nix-laptop-no-gpu" = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs = {inherit inputs; }; + modules = [ + ./laptop/configuration.nix + nixos-hardware.nixosModules.dell-xps-15-7590 + agenix.nixosModules.default + ]; + }; }; } diff --git a/server/modules/acme.nix b/modules/acme.nix similarity index 100% rename from server/modules/acme.nix rename to modules/acme.nix diff --git a/server/modules/adguard.nix b/modules/adguard.nix similarity index 100% rename from server/modules/adguard.nix rename to modules/adguard.nix diff --git a/server/modules/backup.nix b/modules/backup.nix similarity index 100% rename from server/modules/backup.nix rename to modules/backup.nix diff --git a/server/modules/coturn.nix b/modules/coturn.nix similarity index 100% rename from server/modules/coturn.nix rename to modules/coturn.nix diff --git a/server/modules/cron.nix b/modules/cron.nix similarity index 100% rename from server/modules/cron.nix rename to modules/cron.nix diff --git a/server/modules/docker.nix b/modules/docker.nix similarity index 100% rename from server/modules/docker.nix rename to modules/docker.nix diff --git a/server/modules/dyndns.nix b/modules/dyndns.nix similarity index 100% rename from server/modules/dyndns.nix rename to modules/dyndns.nix diff --git a/server/modules/fail2ban.nix b/modules/fail2ban.nix similarity index 100% rename from server/modules/fail2ban.nix rename to modules/fail2ban.nix diff --git a/server/modules/git.nix b/modules/git.nix similarity index 100% rename from server/modules/git.nix rename to modules/git.nix diff --git a/server/modules/github-runner.nix b/modules/github-runner.nix similarity index 100% rename from server/modules/github-runner.nix rename to modules/github-runner.nix diff --git a/server/modules/hdd-spindown.nix b/modules/hdd-spindown.nix similarity index 100% rename from server/modules/hdd-spindown.nix rename to modules/hdd-spindown.nix diff --git a/server/modules/home-assistant.nix b/modules/home-assistant.nix similarity index 100% rename from server/modules/home-assistant.nix rename to modules/home-assistant.nix diff --git a/server/modules/motd.nix b/modules/motd.nix similarity index 100% rename from server/modules/motd.nix rename to modules/motd.nix diff --git a/server/modules/networkmanager.nix b/modules/networkmanager.nix similarity index 100% rename from server/modules/networkmanager.nix rename to modules/networkmanager.nix diff --git a/server/modules/nextcloud.nix b/modules/nextcloud.nix similarity index 100% rename from server/modules/nextcloud.nix rename to modules/nextcloud.nix diff --git a/server/modules/nginx.nix b/modules/nginx.nix similarity index 100% rename from server/modules/nginx.nix rename to modules/nginx.nix diff --git a/server/modules/nix-settings.nix b/modules/nix-settings.nix similarity index 100% rename from server/modules/nix-settings.nix rename to modules/nix-settings.nix diff --git a/server/modules/paperless.nix b/modules/paperless.nix similarity index 100% rename from server/modules/paperless.nix rename to modules/paperless.nix diff --git a/server/modules/postgres.nix b/modules/postgres.nix similarity index 100% rename from server/modules/postgres.nix rename to modules/postgres.nix diff --git a/server/modules/rdp.nix b/modules/rdp.nix similarity index 100% rename from server/modules/rdp.nix rename to modules/rdp.nix diff --git a/server/modules/samba.nix b/modules/samba.nix similarity index 100% rename from server/modules/samba.nix rename to modules/samba.nix diff --git a/server/modules/ssh.nix b/modules/ssh.nix similarity index 100% rename from server/modules/ssh.nix rename to modules/ssh.nix diff --git a/server/modules/static-ip-server.nix b/modules/static-ip-server.nix similarity index 100% rename from server/modules/static-ip-server.nix rename to modules/static-ip-server.nix diff --git a/server/modules/synapse.nix b/modules/synapse.nix similarity index 100% rename from server/modules/synapse.nix rename to modules/synapse.nix diff --git a/server/modules/vmware-guest.nix b/modules/vmware-guest.nix similarity index 100% rename from server/modules/vmware-guest.nix rename to modules/vmware-guest.nix diff --git a/server/modules/wireguard.nix b/modules/wireguard.nix similarity index 100% rename from server/modules/wireguard.nix rename to modules/wireguard.nix diff --git a/server/secrets/coturn-secret.age b/secrets/coturn-secret.age similarity index 100% rename from server/secrets/coturn-secret.age rename to secrets/coturn-secret.age diff --git a/server/secrets/create_secrets.md b/secrets/create_secrets.md similarity index 100% rename from server/secrets/create_secrets.md rename to secrets/create_secrets.md diff --git a/server/secrets/duckdns.age b/secrets/duckdns.age similarity index 100% rename from server/secrets/duckdns.age rename to secrets/duckdns.age diff --git a/server/secrets/github-runner-pw.age b/secrets/github-runner-pw.age similarity index 100% rename from server/secrets/github-runner-pw.age rename to secrets/github-runner-pw.age diff --git a/server/secrets/github-runner-token.age b/secrets/github-runner-token.age similarity index 100% rename from server/secrets/github-runner-token.age rename to secrets/github-runner-token.age diff --git a/server/secrets/matrix-registration.age b/secrets/matrix-registration.age similarity index 100% rename from server/secrets/matrix-registration.age rename to secrets/matrix-registration.age diff --git a/server/secrets/nextcloud-admin.age b/secrets/nextcloud-admin.age similarity index 100% rename from server/secrets/nextcloud-admin.age rename to secrets/nextcloud-admin.age diff --git a/server/secrets/nextcloud-cert.age b/secrets/nextcloud-cert.age similarity index 100% rename from server/secrets/nextcloud-cert.age rename to secrets/nextcloud-cert.age diff --git a/server/secrets/nextcloud-key.age b/secrets/nextcloud-key.age similarity index 100% rename from server/secrets/nextcloud-key.age rename to secrets/nextcloud-key.age diff --git a/server/secrets/paperless.age b/secrets/paperless.age similarity index 100% rename from server/secrets/paperless.age rename to secrets/paperless.age diff --git a/server/secrets/restic-gdrive.age b/secrets/restic-gdrive.age similarity index 100% rename from server/secrets/restic-gdrive.age rename to secrets/restic-gdrive.age diff --git a/server/secrets/restic-pw.age b/secrets/restic-pw.age similarity index 100% rename from server/secrets/restic-pw.age rename to secrets/restic-pw.age diff --git a/server/secrets/restic-s3.age b/secrets/restic-s3.age similarity index 100% rename from server/secrets/restic-s3.age rename to secrets/restic-s3.age diff --git a/server/secrets/secrets.nix b/secrets/secrets.nix similarity index 100% rename from server/secrets/secrets.nix rename to secrets/secrets.nix diff --git a/server/secrets/selfsigned-cert.sh b/secrets/selfsigned-cert.sh similarity index 100% rename from server/secrets/selfsigned-cert.sh rename to secrets/selfsigned-cert.sh diff --git a/server/secrets/wireguard-private.age b/secrets/wireguard-private.age similarity index 100% rename from server/secrets/wireguard-private.age rename to secrets/wireguard-private.age diff --git a/server/configuration.nix b/systems/server/configuration.nix similarity index 99% rename from server/configuration.nix rename to systems/server/configuration.nix index 55c2b03..613bb82 100644 --- a/server/configuration.nix +++ b/systems/server/configuration.nix @@ -12,7 +12,6 @@ in{ imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix - ./users/anon.nix ]; # Bootloader. diff --git a/server/hardware-configuration.nix b/systems/server/hardware-configuration.nix similarity index 100% rename from server/hardware-configuration.nix rename to systems/server/hardware-configuration.nix diff --git a/server/wg-publickey b/systems/server/wg-publickey similarity index 100% rename from server/wg-publickey rename to systems/server/wg-publickey diff --git a/server/users/anon.nix b/users/anon.nix similarity index 100% rename from server/users/anon.nix rename to users/anon.nix diff --git a/server/users/home-manager/nvim.nix b/users/home-manager/nvim.nix similarity index 100% rename from server/users/home-manager/nvim.nix rename to users/home-manager/nvim.nix