diff --git a/flake.lock b/flake.lock index 7149648..43ce87c 100644 --- a/flake.lock +++ b/flake.lock @@ -4,11 +4,15 @@ "inputs": { "data-mesher": "data-mesher", "disko": "disko", - "flake-parts": "flake-parts", + "flake-parts": [ + "flake-parts" + ], "nix-darwin": "nix-darwin", "nix-select": "nix-select", "nixos-facter-modules": "nixos-facter-modules", - "nixpkgs": "nixpkgs", + "nixpkgs": [ + "nixpkgs" + ], "sops-nix": "sops-nix", "systems": "systems", "treefmt-nix": "treefmt-nix" @@ -52,6 +56,24 @@ "url": "https://git.clan.lol/clan/data-mesher/archive/main.tar.gz" } }, + "devshell": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1741473158, + "narHash": "sha256-kWNaq6wQUbUMlPgw8Y+9/9wP0F8SHkjy24/mN3UAppg=", + "owner": "numtide", + "repo": "devshell", + "rev": "7c9e793ebe66bcba8292989a68c0419b737a22a0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, "disko": { "inputs": { "nixpkgs": [ @@ -74,27 +96,6 @@ } }, "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "clan-core", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1756770412, - "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "4524271976b625a4a605beefd893f270620fd751", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { "inputs": { "nixpkgs-lib": [ "nixpkgs" @@ -165,25 +166,42 @@ }, "nixpkgs": { "locked": { - "lastModified": 315532800, - "narHash": "sha256-1tUpklZsKzMGI3gjo/dWD+hS8cf+5Jji8TF5Cfz7i3I=", - "rev": "08b8f92ac6354983f5382124fef6006cade4a1c1", - "type": "tarball", - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre862603.08b8f92ac635/nixexprs.tar.xz" + "lastModified": 1722073938, + "narHash": "sha256-OpX0StkL8vpXyWOGUD6G+MA26wAXK6SpT94kLJXo6B4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e36e9f57337d0ff0cf77aceb58af4c805472bfae", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://nixos.org/channels/nixpkgs-unstable/nixexprs.tar.xz" + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1757745802, + "narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" } }, "root": { "inputs": { "clan-core": "clan-core", - "flake-parts": "flake-parts_2", - "nixpkgs": [ - "clan-core", - "nixpkgs" - ] + "devshell": "devshell", + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs_2" } }, "sops-nix": { diff --git a/flake.nix b/flake.nix index c97bb86..3b09ff6 100644 --- a/flake.nix +++ b/flake.nix @@ -2,50 +2,51 @@ description = "Clan services for use with Amarth Cloud"; inputs = { - clan-core.url = "https://git.clan.lol/clan/clan-core/archive/main.tar.gz"; - - nixpkgs.follows = "clan-core/nixpkgs"; + nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-unstable"; flake-parts = { url = "github:hercules-ci/flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; }; - }; - outputs = inputs@{ self, flake-parts, clan-core, nixpkgs, ... }: - let - # clan = clan-core.lib.clan { - # inherit self; - # imports = []; - # specialArgs = { inherit inputs; }; - # }; - in - { - # inherit (clan.config) nixosConfigurations nixosModules clanInternals; - # clan = clan.config; - - imports = [ - clan-core.flakeModules.default - # ./clanServices/flake-module.nix - ]; - - clan.modules = { - "@amarth/zitadel" = flake-parts.lib.importApply ./modules/service/zitadel/default.nix {}; - "@amarth/k3s" = flake-parts.lib.importApply ./clanServices/k3s/default.nix {}; + clan-core = { + url = "https://git.clan.lol/clan/clan-core/archive/main.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.flake-parts.follows = "flake-parts"; }; - devShells = - nixpkgs.lib.genAttrs - [ - "x86_64-linux" - "aarch64-linux" - "aarch64-darwin" - "x86_64-darwin" - ] - (system: { - default = clan-core.inputs.nixpkgs.legacyPackages.${system}.mkShell { - packages = [ clan-core.packages.${system}.clan-cli ]; - }; - }); + devshell = { + url = "github:numtide/devshell"; + }; }; + + outputs = + inputs@{ flake-parts, ... }: + flake-parts.lib.mkFlake { inherit inputs; } ({ self, pkgs, ... }: { + systems = [ + "x86_64-linux" + ]; + + imports = [ + inputs.clan-core.flakeModules.default + inputs.devshell.flakeModule + ]; + + clan = { + meta.name = "amarth-services"; + + modules = { + "@amarth/zitadel" = flake-parts.lib.importApply ./modules/service/zitadel/default.nix {}; + "@amarth/k3s" = flake-parts.lib.importApply ./clanServices/k3s/default.nix {}; + }; + }; + + perSystem = { system, ... }: { + devshells = { + default = { + packages = [ inputs.clan-core.packages.${system}.clan-cli ]; + }; + }; + }; + }); }