Commit e29ef84

HPCesia <me@hpcesia.com>
2025-09-30 07:22:03
feat: basic dendritic config
1 parent 1ad6d6d
modules/flake/flake-parts.nix
@@ -0,0 +1,3 @@
+{inputs, ...}: {
+  imports = [inputs.flake-parts.flakeModules.modules];
+}
modules/flake/meta.nix
@@ -0,0 +1,9 @@
+{lib, ...}: {
+  options.flake.meta = lib.mkOption {
+    type = lib.types.submodule {
+      freeformType = lib.types.lazyAttrsOf lib.types.anything;
+    };
+  };
+
+  config.flake.meta.uri = "github:HPCesia/nix-config";
+}
modules/flake/nixpkgs.nix
@@ -0,0 +1,11 @@
+{inputs, ...}: {
+  perSystem = {system, ...}: {
+    _module.args.pkgs = import inputs.nixpkgs {
+      inherit system;
+      config = {allowUnfree = true;};
+      overlays = [
+        inputs.nur.overlays.default
+      ];
+    };
+  };
+}
modules/flake/systems.nix
@@ -0,0 +1,3 @@
+{
+  systems = ["x86_64-linux"];
+}
flake.nix
@@ -1,8 +1,6 @@
 {
   description = "NixOS configuration of HPCesia.";
 
-  outputs = inputs: import ./outputs inputs;
-
   inputs = {
     catppuccin.url = "github:catppuccin/nix";
 
@@ -57,4 +55,15 @@
     wallpapers.url = "github:HPCesia/Wallpapers";
     wallpapers.flake = false;
   };
+
+  outputs = inputs:
+    inputs.flake-parts.lib.mkFlake {inherit inputs;} {
+      imports = [(inputs.import-tree ./modules)];
+
+      # flake.meta defined in ./modules/flake/meta.nix
+      flake.meta.rootPath = ./.;
+
+      # For nixd
+      debug = true;
+    };
 }