From 1216e9e0aaa53329f4baf68692f26e90083bc69c Mon Sep 17 00:00:00 2001 From: Daiderd Jordan Date: Sun, 25 Oct 2020 12:55:55 +0100 Subject: [PATCH] split out flake overrides into a separate module --- flake.nix | 27 +++++++-------------------- modules/system/flake-overrides.nix | 17 +++++++++++++++++ 2 files changed, 24 insertions(+), 20 deletions(-) create mode 100644 modules/system/flake-overrides.nix diff --git a/flake.nix b/flake.nix index 191c5fbd..1c3e3c3c 100644 --- a/flake.nix +++ b/flake.nix @@ -2,35 +2,22 @@ # WARNING this is very much still experimental. description = "A collection of darwin modules"; - outputs = { self, nixpkgs }: - let - versionsModule = { lib, ... }: { - _file = ./flake.nix; - config = { - system.darwinVersionSuffix = ".${nixpkgs.shortRev or "dirty"}"; - system.darwinRevision = lib.mkIf (self ? rev) self.rev; - - system.nixpkgsVersionSuffix = ".${lib.substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified or "19700101")}.${nixpkgs.shortRev or "dirty"}"; - system.nixpkgsRevision = lib.mkIf (nixpkgs ? rev) nixpkgs.rev; - }; - }; - in - { - + outputs = { self, nixpkgs }: { lib = { # TODO handle multiple architectures. evalConfig = import ./eval-config.nix { inherit (nixpkgs) lib; }; darwinSystem = { modules, inputs ? {}, ... }@args: self.lib.evalConfig (args // { inputs = { inherit nixpkgs; darwin = self; } // inputs; - modules = modules ++ [ versionsModule ]; + modules = modules ++ [ self.darwinModules.flakeOverrides ]; }); }; - darwinModules.lnl = import ./modules/examples/lnl.nix; - darwinModules.simple = import ./modules/examples/simple.nix; - darwinModules.ofborg = import ./modules/examples/ofborg.nix; - darwinModules.hydra = import ./modules/examples/hydra.nix; + darwinModules.flakeOverrides = ./modules/system/flake-overrides.nix; + darwinModules.hydra = ./modules/examples/hydra.nix; + darwinModules.lnl = ./modules/examples/lnl.nix; + darwinModules.ofborg = ./modules/examples/ofborg.nix; + darwinModules.simple = ./modules/examples/simple.nix; checks.x86_64-darwin.simple = (self.lib.darwinSystem { modules = [ self.darwinModules.simple ]; diff --git a/modules/system/flake-overrides.nix b/modules/system/flake-overrides.nix new file mode 100644 index 00000000..9a6c5067 --- /dev/null +++ b/modules/system/flake-overrides.nix @@ -0,0 +1,17 @@ +{ lib, inputs, ... }: + +with lib; + +let + inherit (inputs) darwin nixpkgs; +in + +{ + config = { + system.darwinVersionSuffix = ".${darwin.shortRev or "dirty"}"; + system.darwinRevision = mkIf (darwin ? rev) darwin.rev; + + system.nixpkgsVersionSuffix = ".${substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified or "19700101")}.${nixpkgs.shortRev or "dirty"}"; + system.nixpkgsRevision = mkIf (nixpkgs ? rev) nixpkgs.rev; + }; +}