refactor(nix): Seperate home manager stuff from nix-darwin

This commit is contained in:
Ahmad Ansori Palembani 2024-10-16 14:43:06 +07:00
parent 0f33f4e2de
commit 6444b67a4e
Signed by: null2264
GPG key ID: BA64F8B60AF3EFB6
9 changed files with 110 additions and 134 deletions

View file

@ -1,32 +1,8 @@
{ inputs, nixpkgs, nix-darwin, home-manager, vars, ... }:
{ inputs, nixpkgs, nix-darwin, vars, ... }:
let
mkCommon = import ../mkCommon.nix;
disablePyChecks = pkg: pkg.overridePythonAttrs (old: {
doCheck = false;
doInstallCheck = false;
dontCheck = true;
});
systemConfig = system: {
system = system;
pkgs = import nixpkgs {
inherit system;
overlays = [(final: prev: {
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [(pyfinal: pyprev: {
dnspython = (disablePyChecks pyprev.dnspython).overridePythonAttrs (old: {
disabledTests = [
# This test is unreliable when my internet is throttled by Indonesian ISP, timeout everywhere... lovely...
"test_resolver"
] ++ old.disabledTests;
});
pillow = disablePyChecks pyprev.pillow;
cherrypy = disablePyChecks pyprev.cherrypy;
})];
})];
config.allowUnfree = true;
};
};
mkCommon = import ../../lib/mkCommon.nix;
mkSystem = import ../../lib/mkSystem.nix;
in
{
# Host list
@ -37,38 +13,28 @@ in
# Lenovo ThinkPad L460; Intel Core i5-6300U
"ThiccBook-Pro" =
let
inherit (systemConfig "x86_64-darwin") system pkgs;
inherit (mkSystem "x86_64-darwin" nixpkgs) system pkgs;
common = (mkCommon pkgs);
in
nix-darwin.lib.darwinSystem {
inherit system;
specialArgs = { inherit inputs pkgs home-manager vars common; };
specialArgs = { inherit inputs pkgs vars common; };
modules = [
./configuration.nix
home-manager.darwinModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
}
];
};
# Imaginary M1, just for reference
MacBookProM1 =
let
inherit (systemConfig "aarch64-darwin") system pkgs;
inherit (mkSystem "aarch64-darwin" nixpkgs) system pkgs;
common = (mkCommon pkgs);
in
nix-darwin.lib.darwinSystem {
inherit system;
specialArgs = { inherit inputs pkgs home-manager vars common; };
specialArgs = { inherit inputs pkgs vars common; };
modules = [
./configuration.nix
home-manager.darwinModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
}
];
};
}