summaryrefslogtreecommitdiff
path: root/modules/shared
diff options
context:
space:
mode:
Diffstat (limited to 'modules/shared')
-rw-r--r--modules/shared/README.md4
-rw-r--r--modules/shared/base/default.nix24
-rw-r--r--modules/shared/base/nix.nix66
-rw-r--r--modules/shared/base/programs.nix9
-rw-r--r--modules/shared/default.nix2
-rw-r--r--modules/shared/defaults/default.nix11
-rw-r--r--modules/shared/defaults/nix.nix50
7 files changed, 64 insertions, 102 deletions
diff --git a/modules/shared/README.md b/modules/shared/README.md
index 9228717..32054e3 100644
--- a/modules/shared/README.md
+++ b/modules/shared/README.md
@@ -1,8 +1,8 @@
# ./modules/shared/
-## base
+## defaults
-Low level options shared for (almost) any kind of system
+Defaults (mostly) shared across all configurations
## traits
diff --git a/modules/shared/base/default.nix b/modules/shared/base/default.nix
deleted file mode 100644
index c4b013d..0000000
--- a/modules/shared/base/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- config,
- lib,
- inputs,
- ...
-}:
-let
- cfg = config.base;
- inherit (inputs) self;
-in
-{
- options.base = {
- enable = lib.mkEnableOption "basic configurations";
- };
-
- imports = [
- ./nix.nix
- ./programs.nix
- ];
-
- config = lib.mkIf cfg.enable {
- system.configurationRevision = self.rev or self.dirtyRev or "dirty-unknown";
- };
-}
diff --git a/modules/shared/base/nix.nix b/modules/shared/base/nix.nix
deleted file mode 100644
index ebae4dc..0000000
--- a/modules/shared/base/nix.nix
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- config,
- lib,
- pkgs,
- ...
-}:
-let
- inherit (pkgs.stdenv.hostPlatform) isLinux;
- cfg = config.base.nixSettings;
-
- # TODO: remove this nonsense when all implementations remove repl-flake
- hasReplFlake =
- lib.versionOlder config.nix.package.version "2.22.0" # repl-flake was removed in nix 2.22.0
- || lib.versionAtLeast config.nix.package.version "2.90.0"; # but not in lix yet
-
- hasAlwaysAllowSubstitutes = lib.versionAtLeast config.nix.package.version "2.19.0";
-in
-{
- options.base.nixSettings = {
- enable = lib.mkEnableOption "basic Nix settings" // {
- default = config.base.enable;
- defaultText = lib.literalExpression "config.base.enable";
- };
-
- lix.enable = lib.mkEnableOption "the use of Lix over Nix";
- };
-
- config = lib.mkIf cfg.enable (
- lib.mkMerge [
- {
- nix = {
- settings = {
- auto-optimise-store = isLinux;
- experimental-features = [
- "nix-command"
- "flakes"
- "auto-allocate-uids"
- ];
-
- trusted-substituters = [ "https://getchoo.cachix.org" ];
- trusted-public-keys = [ "getchoo.cachix.org-1:ftdbAUJVNaFonM0obRGgR5+nUmdLMM+AOvDOSx0z5tE=" ];
- };
-
- gc = {
- automatic = lib.mkDefault true;
- options = lib.mkDefault "--delete-older-than 2d";
- };
- };
-
- nixpkgs.config.allowUnfree = lib.mkDefault true;
- }
-
- (lib.mkIf cfg.lix.enable {
- nix.package = pkgs.lix;
- })
-
- (lib.mkIf hasReplFlake {
- nix.settings.experimental-features = [ "repl-flake" ];
- })
-
- (lib.mkIf hasAlwaysAllowSubstitutes {
- nix.settings.always-allow-substitutes = true;
- })
- ]
- );
-}
diff --git a/modules/shared/base/programs.nix b/modules/shared/base/programs.nix
deleted file mode 100644
index fc853f8..0000000
--- a/modules/shared/base/programs.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ config, lib, ... }:
-{
- options.base.defaultPrograms = {
- enable = lib.mkEnableOption "default programs" // {
- default = config.base.enable;
- defaultText = lib.literalExpression "config.base.enable";
- };
- };
-}
diff --git a/modules/shared/default.nix b/modules/shared/default.nix
index cf3dd84..c0f8e18 100644
--- a/modules/shared/default.nix
+++ b/modules/shared/default.nix
@@ -1,6 +1,6 @@
{
imports = [
- ./base
+ ./defaults
./traits
];
}
diff --git a/modules/shared/defaults/default.nix b/modules/shared/defaults/default.nix
new file mode 100644
index 0000000..f2bb28a
--- /dev/null
+++ b/modules/shared/defaults/default.nix
@@ -0,0 +1,11 @@
+{ inputs, ... }:
+let
+ inherit (inputs) self;
+in
+{
+ imports = [
+ ./nix.nix
+ ];
+
+ system.configurationRevision = self.rev or self.dirtyRev or "dirty-unknown";
+}
diff --git a/modules/shared/defaults/nix.nix b/modules/shared/defaults/nix.nix
new file mode 100644
index 0000000..e5d7607
--- /dev/null
+++ b/modules/shared/defaults/nix.nix
@@ -0,0 +1,50 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
+let
+ inherit (pkgs.stdenv.hostPlatform) isLinux;
+
+ # TODO: remove this nonsense when all implementations remove repl-flake
+ hasReplFlake =
+ lib.versionOlder config.nix.package.version "2.22.0" # repl-flake was removed in nix 2.22.0
+ || lib.versionAtLeast config.nix.package.version "2.90.0"; # but not in lix yet
+
+ hasAlwaysAllowSubstitutes = lib.versionAtLeast config.nix.package.version "2.19.0";
+in
+{
+ config = lib.mkMerge [
+ {
+ nix = {
+ settings = {
+ auto-optimise-store = lib.mkDefault isLinux;
+ experimental-features = [
+ "nix-command"
+ "flakes"
+ "auto-allocate-uids"
+ ];
+
+ trusted-substituters = [ "https://getchoo.cachix.org" ];
+ trusted-public-keys = [ "getchoo.cachix.org-1:ftdbAUJVNaFonM0obRGgR5+nUmdLMM+AOvDOSx0z5tE=" ];
+ };
+
+ gc = {
+ automatic = lib.mkDefault true;
+ options = lib.mkDefault "--delete-older-than 2d";
+ };
+ };
+
+ nixpkgs.config.allowUnfree = lib.mkDefault true;
+ }
+
+ (lib.mkIf hasReplFlake {
+ nix.settings.experimental-features = [ "repl-flake" ];
+ })
+
+ (lib.mkIf hasAlwaysAllowSubstitutes {
+ nix.settings.always-allow-substitutes = true;
+ })
+ ];
+}