summaryrefslogtreecommitdiff
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--flake.nix101
1 files changed, 12 insertions, 89 deletions
diff --git a/flake.nix b/flake.nix
index e1fcbdb..4f9c5b0 100644
--- a/flake.nix
+++ b/flake.nix
@@ -39,98 +39,21 @@
vpsadminos.url = "github:vpsfreecz/vpsadminos";
};
- outputs =
- flakes@{ self
- , nixpkgs
- , unstable
- , home-manager
- , nur
- , impermanence
- , hm-isolation
- , nixvirt
- , flake-utils
- , lanzaboote
- , trivionomicon
- , vpsadminos
- }:
- let
- system = "x86_64-linux";
+ outputs = flakes: flakes.trivionomicon.lib.mkSystemFlake {
+ inherit flakes;
- pkgs = importPkgs nixpkgs;
+ system = "x86_64-linux";
+ doctrinePrefix = "local";
- importPkgs = flake: import flake {
- inherit system;
+ paths = {
+ localOverlay = "pkgs";
+ nixpkgsConfig = "pkgs/config";
- config = import ./pkgs/config nixpkgs.lib;
- overlays = [ nur.overlays.default trivionomicon.overlays.default self.overlays.default ];
- };
-
- inherit (pkgs.local.lib) importAll;
-
- local = import ./pkgs;
- in
- with pkgs.lib; {
- formatter.${system} = pkgs.nixpkgs-fmt;
- packages.${system} = pkgs.local;
-
- overlays.default = final: prev:
- let
- locals = local final prev;
- in
- {
- local = locals;
- unstable = importPkgs unstable;
- } // locals.override;
-
- nixosConfigurations =
- let
- nixosSystem = { modules }: makeOverridable nixpkgs.lib.nixosSystem {
- inherit modules pkgs system;
-
- specialArgs = {
- inherit flakes;
- doctrine = import "${trivionomicon}/doctrine" {
- inherit pkgs;
- namespace = "sys";
- };
- };
- };
+ nixosSource = "sys";
+ nixosPlatforms = "sys/platform";
- hostConfig = host: nixosSystem {
- modules = [
- ./sys
- host
- ];
- };
- in
- mapAttrs (_: hostConfig) (importAll { root = ./sys/platform; });
-
- homeConfigurations =
- let
- registry = { ... }: {
- config.nix.registry = mapAttrs
- (_: value: { flake = value; })
- flakes;
- };
-
- home = name: platform: home-manager.lib.homeManagerConfiguration {
- inherit pkgs;
-
- extraSpecialArgs = {
- inherit flakes;
- doctrine = import "${trivionomicon}/doctrine" {
- inherit pkgs;
- namespace = "hm";
- };
- };
-
- modules = [
- ./home
- platform
- registry
- ];
- };
- in
- mapAttrs home (importAll { root = ./home/platform; });
+ hmSource = "home";
+ hmPlatforms = "home/platform";
};
+ };
}