Build home in Linux, too

This commit is contained in:
Greg Hellings
2023-06-28 22:51:18 -05:00
parent f35f7207d5
commit e3babb3ac8
4 changed files with 51 additions and 37 deletions
Generated
+7 -7
View File
@@ -171,11 +171,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1687163790, "lastModified": 1687871164,
"narHash": "sha256-CmG/ZdswJrWM0CMgJiVyWfO6LqaI4SKEAx9IrnYDrpI=", "narHash": "sha256-bBFlPthuYX322xOlpJvkjUBz0C+MOBjZdDOOJJ+G2jU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "ac53777f52929bc82efcd2830bfc5aa60bcb4337", "rev": "07c347bb50994691d7b0095f45ebd8838cf6bc38",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -358,11 +358,11 @@
}, },
"nixunstable": { "nixunstable": {
"locked": { "locked": {
"lastModified": 1684749550, "lastModified": 1687898314,
"narHash": "sha256-0uqCE8cDYvQ53KbGXKB/kNV9u4fhU9A8j7PjceZ7Gq8=", "narHash": "sha256-B4BHon3uMXQw8ZdbwxRK1BmxVOGBV4viipKpGaIlGwk=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "fc89970a268de31561c98a4b61e40b6f0636d50a", "rev": "e18dc963075ed115afb3e312b64643bf8fd4b474",
"type": "github" "type": "github"
}, },
"original": { "original": {
+30 -9
View File
@@ -3,27 +3,48 @@ let
wsl = args: (unstable (args // { extraMods = [ inputs.wsl.nixosModules.wsl ]; })); wsl = args: (unstable (args // { extraMods = [ inputs.wsl.nixosModules.wsl ]; }));
unstable = args: (machine (args // { channel = inputs.nixunstable; })); unstable = args: (machine (args // { channel = inputs.nixunstable; }));
machine = { machine = {
system ? "x86_64-linux",
name,
channel ? inputs.nixstable, channel ? inputs.nixstable,
extraMods ? [] extraMods ? [],
gnome ? false,
gui ? false,
name,
system ? "x86_64-linux"
}: }:
let let
nixpkgs = channel; nixpkgs = import channel {
in nixpkgs.lib.nixosSystem { inherit system;
};
in channel.lib.nixosSystem {
inherit system; inherit system;
specialArgs = { inherit nixpkgs; };
modules = [ modules = [
{ nixpkgs.overlays = overlays; } {
nixpkgs.overlays = overlays;
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.greg = import ../home/home.nix;
home-manager.extraSpecialArgs = {
inherit gnome gui inputs overlays;
home = "/home/greg";
};
}
inputs.agenix.nixosModules.default inputs.agenix.nixosModules.default
inputs.hm.nixosModules.home-manager
../modules-all ../modules-all
../modules-linux ../modules-linux
./${name} ./${name}
] ++ extraMods; ] ++ extraMods;
specialArgs = { inherit nixpkgs; };
}; };
in { in {
"2maccabees" = unstable { system = "aarch64-linux"; name = "2maccabees"; }; "2maccabees" = unstable {
jude = unstable { name = "jude"; }; system = "aarch64-linux";
name = "2maccabees";
};
jude = unstable {
name = "jude";
gnome = true;
gui = true;
};
icdm-root = unstable { name = "icdm-root"; }; icdm-root = unstable { name = "icdm-root"; };
linode = machine { name = "linode"; }; linode = machine { name = "linode"; };
linodeeu = machine { name = "linodeeu"; }; linodeeu = machine { name = "linodeeu"; };
+2 -2
View File
@@ -30,8 +30,8 @@ in with lib; {
# Enablement for Firefox # Enablement for Firefox
gnome = { gnome = {
#gnome-browser-connector.enable = true; gnome-browser-connector.enable = true;
chrome-gnome-shell.enable = true; #chrome-gnome-shell.enable = true;
sushi.enable = true; sushi.enable = true;
gnome-online-accounts.enable = true; gnome-online-accounts.enable = true;
}; };
+12 -19
View File
@@ -1,9 +1,7 @@
final: prev: final: prev:
let let
cp = prev.python3.pkgs.callPackage; myPackages = pypackages: with pypackages; [
myPackages = pypackages: with pypackages; with pkgs.my-py-addons; [
black black
copier copier
dateutil dateutil
@@ -53,27 +51,22 @@ in rec {
## Testing adding python packages in the correct manner ## Testing adding python packages in the correct manner
pythonPackagesExtensions = (prev.pythonPackagesExtensions or []) ++ [ pythonPackagesExtensions = (prev.pythonPackagesExtensions or []) ++ [
(python-final: python-prev: { (python-final: python-prev: let cp = python-final.callPackage; in {
django-rapyd-modernauth = python-final.callPackage ./django-rapyd-modernauth.nix {}; django-rapyd-modernauth = cp ./django-rapyd-modernauth.nix {};
xonsh-apipenv = cp ./xonsh-apipenv.nix {}; xonsh-apipenv = cp ./xonsh-apipenv.nix {};
xonsh-direnv = cp ./xonsh-direnv.nix {}; xonsh-direnv = cp ./xonsh-direnv.nix {};
copier = cp ./copier.nix {
inherit (python-final)
iteration-utilities
jinja2-ansible-filters
pyyaml-include;
};
iteration-utilities = cp ./iteration-utilities.nix {};
jinja2-ansible-filters = cp ./jinja2-ansible-filters.nix {};
pyyaml-include = cp ./pyyaml-include.nix {};
}) })
]; ];
my-py-addons = rec {
copier = cp ./copier.nix {
inherit iteration-utilities
jinja2-ansible-filters
pyyaml-include
;
};
iteration-utilities = cp ./iteration-utilities.nix {};
jinja2-ansible-filters = cp ./jinja2-ansible-filters.nix {};
pydantic = cp ./pydantic.nix {};
pyyaml-include = cp ./pyyaml-include.nix {};
};
#fcitx-engines = if ! prev.stdenv.isDarwin then prev.fcitx5 else prev.fcitx-engines;
brew = prev.callPackage ./homebrew.nix {}; brew = prev.callPackage ./homebrew.nix {};
enwiki-dump = prev.callPackage ./enwiki-dump.nix {}; enwiki-dump = prev.callPackage ./enwiki-dump.nix {};