use nh from nixpkgs, move common options from hosts/ to modules/common/
This commit is contained in:
parent
d46e1d0f32
commit
07c2d7e460
4 changed files with 41 additions and 90 deletions
37
flake.lock
generated
37
flake.lock
generated
|
@ -353,24 +353,6 @@
|
|||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"nh": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705251288,
|
||||
"narHash": "sha256-TwCR7tZvrjsvz6SmgjWYOne7Qz7J2jn4Cr4Er0Yj+LA=",
|
||||
"owner": "viperML",
|
||||
"repo": "nh",
|
||||
"rev": "36eba281576afe0f67e5aafb4e7a414f256dba31",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "viperML",
|
||||
"repo": "nh",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-std": {
|
||||
"locked": {
|
||||
"lastModified": 1701658249,
|
||||
|
@ -449,22 +431,6 @@
|
|||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1701263465,
|
||||
"narHash": "sha256-lNXUIlkfyDyp9Ox21hr+wsEf/IBklLvb6bYcyeXbdRc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "50aa30a13c4ab5e7ba282da460a3e3d44e9d0eb3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1705697961,
|
||||
"narHash": "sha256-XepT3WS516evSFYkme3GrcI3+7uwXHqtHbip+t24J7E=",
|
||||
|
@ -551,8 +517,7 @@
|
|||
"hercules-ci-effects": "hercules-ci-effects",
|
||||
"home-manager": "home-manager",
|
||||
"mailserver": "mailserver",
|
||||
"nh": "nh",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nvidia-patch": "nvidia-patch",
|
||||
"racket": "racket",
|
||||
"wrapper-manager": "wrapper-manager",
|
||||
|
|
10
flake.nix
10
flake.nix
|
@ -25,12 +25,11 @@
|
|||
...
|
||||
}: {
|
||||
devShells.default = pkgs.mkShellNoCC {
|
||||
packages =
|
||||
[
|
||||
packages = [
|
||||
inputs'.agenix.packages.agenix
|
||||
]
|
||||
# TODO: Contribute darwin support to nh
|
||||
++ lib.optionals (!pkgs.stdenv.isDarwin) [inputs'.nh.packages.default];
|
||||
pkgs.nh
|
||||
];
|
||||
};
|
||||
|
||||
formatter = pkgs.alejandra;
|
||||
|
@ -84,9 +83,6 @@
|
|||
hercules-ci-effects = {
|
||||
url = "github:hercules-ci/hercules-ci-effects";
|
||||
};
|
||||
nh = {
|
||||
url = "github:viperML/nh";
|
||||
};
|
||||
conduit-src = {
|
||||
url = "gitlab:famedly/conduit?ref=next";
|
||||
flake = false;
|
||||
|
|
|
@ -17,40 +17,11 @@
|
|||
];
|
||||
|
||||
builders = let
|
||||
# FIXME: Move to common
|
||||
sharedOptions = {
|
||||
inputs',
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
_file = ./default.nix;
|
||||
|
||||
settei = {
|
||||
username = lib.mkDefault "niko";
|
||||
sane-defaults = {
|
||||
enable = lib.mkDefault true;
|
||||
allSshKeys = config.assets.sshKeys.user;
|
||||
tailnet = "discus-macaroni.ts.net";
|
||||
};
|
||||
flake-qol = {
|
||||
enable = true;
|
||||
inputs = inputs // {settei = self;};
|
||||
};
|
||||
user = {
|
||||
enable = true;
|
||||
config = {
|
||||
home.packages = let
|
||||
extraPkgs = [inputs'.nh.packages.default];
|
||||
in
|
||||
[inputs'.settei.packages.base-packages] ++ extraPkgs;
|
||||
|
||||
programs.git.enable = true;
|
||||
home.sessionVariables.EDITOR = "hx";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
time.timeZone = lib.mkDefault "Europe/Warsaw";
|
||||
settei.sane-defaults.allSshKeys = config.assets.sshKeys.user;
|
||||
settei.flake-qol.inputs = inputs // {settei = self;};
|
||||
};
|
||||
in {
|
||||
nixos = name: module:
|
||||
|
|
|
@ -8,7 +8,22 @@
|
|||
...
|
||||
}: let
|
||||
sharedConfig = {
|
||||
settei.user.config = {
|
||||
settei = {
|
||||
username = lib.mkDefault "niko";
|
||||
sane-defaults = {
|
||||
enable = lib.mkDefault true;
|
||||
tailnet = "discus-macaroni.ts.net";
|
||||
};
|
||||
flake-qol.enable = true;
|
||||
user = {
|
||||
enable = true;
|
||||
config = {
|
||||
home.packages = let
|
||||
extraPkgs = [pkgs.nh];
|
||||
in
|
||||
[inputs'.settei.packages.base-packages] ++ extraPkgs;
|
||||
|
||||
home.sessionVariables.EDITOR = "hx";
|
||||
programs.git = {
|
||||
enable = true;
|
||||
difftastic.enable = true;
|
||||
|
@ -27,10 +42,14 @@
|
|||
|
||||
programs.fish.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.fish.enable = true;
|
||||
users.users.${username}.shell = pkgs.fish;
|
||||
|
||||
time.timeZone = lib.mkDefault "Europe/Warsaw";
|
||||
|
||||
# NixOS' fish module doesn't allow setting what package to use for fish,
|
||||
# so I need to override the fish package.
|
||||
nixpkgs.overlays = [(_: _: {inherit (inputs'.settei.packages) fish;})];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue