separate out nixpkgs per host
This commit is contained in:
parent
7db5442cc0
commit
b12cc50714
3 changed files with 187 additions and 65 deletions
157
flake.lock
generated
157
flake.lock
generated
|
@ -3,7 +3,7 @@
|
||||||
"agenix": {
|
"agenix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"darwin": "darwin",
|
"darwin": "darwin",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ragenix",
|
"ragenix",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
@ -105,27 +105,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1717525419,
|
|
||||||
"narHash": "sha256-5z2422pzWnPXHgq2ms8lcCfttM0dz+hg+x1pCcNkAws=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "a7117efb3725e6197dd95424136f79147aa35e5b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "master",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ragenix",
|
"ragenix",
|
||||||
|
@ -147,13 +126,124 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"home-manager_gdpPocket3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs_gpdPocket3"
|
||||||
|
]
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717602782,
|
"lastModified": 1718530513,
|
||||||
"narHash": "sha256-pL9jeus5QpX5R+9rsp3hhZ+uplVHscNJh8n8VpqscM0=",
|
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "release-24.05",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_h002": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs_h002"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718530513,
|
||||||
|
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "release-24.05",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_joe": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs_joe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718530513,
|
||||||
|
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "release-24.05",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_gpdPocket3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718717462,
|
||||||
|
"narHash": "sha256-qddfQLMaWR2gxfEzUM/zFZVK6H1kTv9WBQSBQxbP3MU=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e8057b67ebf307f01bdcc8fba94d94f75039d1f6",
|
"rev": "938aa157bbd6e3c6fd7dcb77998b1f92c2ad1631",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-24.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_h002": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718714799,
|
||||||
|
"narHash": "sha256-FUZpz9rg3gL8NVPKbqU8ei1VkPLsTIfAJ2fdAf5qjak=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_joe": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718714799,
|
||||||
|
"narHash": "sha256-FUZpz9rg3gL8NVPKbqU8ei1VkPLsTIfAJ2fdAf5qjak=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718714799,
|
||||||
|
"narHash": "sha256-FUZpz9rg3gL8NVPKbqU8ei1VkPLsTIfAJ2fdAf5qjak=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -214,7 +304,7 @@
|
||||||
"nypkgs": {
|
"nypkgs": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs_unstable"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -237,7 +327,7 @@
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs_unstable"
|
||||||
],
|
],
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
|
@ -258,7 +348,7 @@
|
||||||
"ringofstorms-nvim": {
|
"ringofstorms-nvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs_unstable"
|
||||||
],
|
],
|
||||||
"nvim_plugin-chrisgrieser/nvim-early-retirement": "nvim_plugin-chrisgrieser/nvim-early-retirement",
|
"nvim_plugin-chrisgrieser/nvim-early-retirement": "nvim_plugin-chrisgrieser/nvim-early-retirement",
|
||||||
"nvim_plugin-j-hui/fidget.nvim": "nvim_plugin-j-hui/fidget.nvim",
|
"nvim_plugin-j-hui/fidget.nvim": "nvim_plugin-j-hui/fidget.nvim",
|
||||||
|
@ -281,8 +371,13 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager_gdpPocket3": "home-manager_gdpPocket3",
|
||||||
"nixpkgs": "nixpkgs",
|
"home-manager_h002": "home-manager_h002",
|
||||||
|
"home-manager_joe": "home-manager_joe",
|
||||||
|
"nixpkgs_gpdPocket3": "nixpkgs_gpdPocket3",
|
||||||
|
"nixpkgs_h002": "nixpkgs_h002",
|
||||||
|
"nixpkgs_joe": "nixpkgs_joe",
|
||||||
|
"nixpkgs_unstable": "nixpkgs_unstable",
|
||||||
"nypkgs": "nypkgs",
|
"nypkgs": "nypkgs",
|
||||||
"ragenix": "ragenix",
|
"ragenix": "ragenix",
|
||||||
"ringofstorms-nvim": "ringofstorms-nvim"
|
"ringofstorms-nvim": "ringofstorms-nvim"
|
||||||
|
|
66
flake.nix
66
flake.nix
|
@ -2,28 +2,39 @@
|
||||||
description = "My systems flake";
|
description = "My systems flake";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
|
nixpkgs_unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
|
nixpkgs_joe.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
home-manager_joe = {
|
||||||
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs_joe";
|
||||||
|
};
|
||||||
|
nixpkgs_h002.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
home-manager_h002 = {
|
||||||
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs_h002";
|
||||||
|
};
|
||||||
|
nixpkgs_gpdPocket3.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||||
|
home-manager_gdpPocket3 = {
|
||||||
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs_gpdPocket3";
|
||||||
|
};
|
||||||
|
|
||||||
# Nix utility methods
|
# Nix utility methods
|
||||||
nypkgs = {
|
nypkgs = {
|
||||||
url = "github:yunfachi/nypkgs";
|
url = "github:yunfachi/nypkgs";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs_unstable";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Secrets management for nix
|
# Secrets management for nix
|
||||||
ragenix = {
|
ragenix = {
|
||||||
url = "github:yaxitech/ragenix";
|
url = "github:yaxitech/ragenix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs_unstable";
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
|
||||||
url = "github:nix-community/home-manager/master";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs"; # Use system packages list where available
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
||||||
|
|
||||||
ringofstorms-nvim = {
|
ringofstorms-nvim = {
|
||||||
url = "github:RingOfStorms/nvim";
|
url = "github:RingOfStorms/nvim";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs_unstable";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -31,8 +42,13 @@
|
||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
nypkgs,
|
nypkgs,
|
||||||
nixpkgs,
|
nixpkgs_unstable,
|
||||||
home-manager,
|
nixpkgs_joe,
|
||||||
|
home-manager_joe,
|
||||||
|
nixpkgs_gpdPocket3,
|
||||||
|
home-manager_gdpPocket3,
|
||||||
|
nixpkgs_h002,
|
||||||
|
home-manager_h002,
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
let
|
let
|
||||||
|
@ -44,15 +60,6 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
myHosts = [
|
myHosts = [
|
||||||
{
|
|
||||||
name = "gpdPocket3";
|
|
||||||
opts = {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
};
|
|
||||||
settings = {
|
|
||||||
inherit user;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
name = "joe";
|
name = "joe";
|
||||||
opts = {
|
opts = {
|
||||||
|
@ -60,6 +67,19 @@
|
||||||
};
|
};
|
||||||
settings = {
|
settings = {
|
||||||
inherit user;
|
inherit user;
|
||||||
|
nixpkgs = nixpkgs_joe;
|
||||||
|
home-manager = home-manager_joe;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "gpdPocket3";
|
||||||
|
opts = {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
inherit user;
|
||||||
|
nixpkgs = nixpkgs_gpdPocket3;
|
||||||
|
home-manager = home-manager_gdpPocket3;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
@ -75,6 +95,8 @@
|
||||||
name = "RingOfStorms (Joshua Bell)";
|
name = "RingOfStorms (Joshua Bell)";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
nixpkgs = nixpkgs_h002;
|
||||||
|
home-manager = home-manager_h002;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
@ -94,7 +116,7 @@
|
||||||
acc
|
acc
|
||||||
// {
|
// {
|
||||||
"${nixConfig.name}" =
|
"${nixConfig.name}" =
|
||||||
nixpkgs.lib.nixosSystem {
|
nixConfig.settings.nixpkgs.lib.nixosSystem {
|
||||||
# module = nixConfig.overrides.modules or [...]
|
# module = nixConfig.overrides.modules or [...]
|
||||||
modules = [ ./hosts/_common/configuration.nix ];
|
modules = [ ./hosts/_common/configuration.nix ];
|
||||||
specialArgs = inputs // {
|
specialArgs = inputs // {
|
||||||
|
|
|
@ -1,18 +1,23 @@
|
||||||
{ config, pkgs, home-manager, settings, ylib, ... } @ inputs:
|
|
||||||
# Note that we must have the channel added for the import to work below
|
|
||||||
# `sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager`
|
|
||||||
# `sudo nix-channel --update`
|
|
||||||
{
|
{
|
||||||
imports =
|
config,
|
||||||
[
|
settings,
|
||||||
# home manager import
|
ylib,
|
||||||
home-manager.nixosModules.home-manager
|
...
|
||||||
# home-manager
|
}@inputs:
|
||||||
];
|
let
|
||||||
|
home-manager = settings.home-manager;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [ home-manager.nixosModules.home-manager ];
|
||||||
|
|
||||||
# Home manager options
|
# Home manager options
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.extraSpecialArgs = { inherit settings; inherit ylib; inherit (inputs) ragenix; inherit (config) age; };
|
home-manager.extraSpecialArgs = {
|
||||||
|
inherit settings;
|
||||||
|
inherit ylib;
|
||||||
|
inherit (inputs) ragenix;
|
||||||
|
inherit (config) age;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue