remove sane.home-manager.extraPackages

replaced by sane.packages.extraUserPkgs
This commit is contained in:
colin 2022-11-22 05:11:02 +00:00
parent 7284452aa5
commit ca43811c16
7 changed files with 27 additions and 24 deletions

View File

@ -29,7 +29,7 @@
];
# sane.packages.enableGuiPkgs = false; # XXX faster builds/imaging for debugging
sane.home-manager.extraPackages = [
sane.packages.extraUserPkgs = [
pkgs.plasma5Packages.konsole # terminal
];

View File

@ -9,7 +9,7 @@
./services
];
sane.home-manager.extraPackages = [
sane.packages.extraUserPkgs = [
# for administering services
pkgs.matrix-synapse
pkgs.freshrss

View File

@ -69,7 +69,7 @@ in
NIXOS_OZONE_WL = "1";
};
sane.home-manager.extraPackages = with pkgs; [
sane.packages.extraUserPkgs = with pkgs; [
phosh-mobile-settings
# TODO: see about removing this if the in-built gnome-settings bluetooth manager can work

View File

@ -597,7 +597,7 @@ in
# }
# '';
};
sane.home-manager.extraPackages = with pkgs; [
sane.packages.extraUserPkgs = with pkgs; [
swaylock
swayidle # (unused)
wl-clipboard

View File

@ -9,9 +9,9 @@
with lib;
let
cfg = config.sane.home-manager;
# extract package from `extraPackages`
# extract package from `sane.packages.enabledUserPkgs`
pkg-list = pkgspec: builtins.map (e: e.pkg or e) pkgspec;
# extract `dir` from `extraPackages`
# extract `dir` from `sane.packages.enabledUserPkgs`
dir-list = pkgspec: builtins.concatLists (builtins.map (e: if e ? "dir" then [ e.dir ] else []) pkgspec);
private-list = pkgspec: builtins.concatLists (builtins.map (e: if e ? "private" then [ e.private ] else []) pkgspec);
feeds = import ./feeds.nix { inherit lib; };
@ -33,14 +33,6 @@ in
];
options = {
# packages to deploy to the user's home
sane.home-manager.extraPackages = mkOption {
default = [ ];
# each entry can be either a package, or attrs:
# { pkg = package; dir = optional string;
type = types.listOf (types.either types.package types.attrs);
};
# attributes to copy directly to home-manager's `wayland.windowManager` option
sane.home-manager.windowManager = mkOption {
default = {};
@ -65,7 +57,7 @@ in
"Music"
"Pictures"
"Videos"
] ++ (dir-list cfg.extraPackages);
] ++ (dir-list config.sane.packages.enabledUserPkgs);
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
@ -79,7 +71,7 @@ in
manual.html.enable = false; # TODO: set to true later (build failure)
manual.manpages.enable = false; # TODO: enable after https://github.com/nix-community/home-manager/issues/3344
home.packages = pkg-list cfg.extraPackages;
home.packages = pkg-list sysconfig.sane.packages.enabledUserPkgs;
wayland.windowManager = cfg.windowManager;
home.stateVersion = "21.11";
@ -101,7 +93,7 @@ in
name = path;
value = { source = config.lib.file.mkOutOfStoreSymlink "/home/colin/private/${path}"; };
})
(private-list cfg.extraPackages)
(private-list sysconfig.sane.packages.enabledUserPkgs)
);
in {
# convenience

View File

@ -10,7 +10,7 @@
{ lib, pkgs, ... }: lib.mkIf false # XXX disabled!
{
sane.home-manager.extraPackages = [ pkgs.nb ];
sane.packages.extraUserPkgs = [ pkgs.nb ];
home-manager.users.colin = { config, ... }: {
# nb markdown/personal knowledge manager

View File

@ -221,6 +221,13 @@ let
in
{
options = {
# packages to deploy to the user's home
sane.packages.extraUserPkgs = mkOption {
default = [ ];
# each entry can be either a package, or attrs:
# { pkg = package; dir = optional string; private = optional string };
type = types.listOf (types.either types.package types.attrs);
};
sane.packages.enableConsolePkgs = mkOption {
default = false;
type = types.bool;
@ -242,15 +249,19 @@ in
type = types.bool;
description = "enable system-wide packages";
};
sane.packages.enabledUserPkgs = mkOption {
default = cfg.extraUserPkgs
++ (if cfg.enableConsolePkgs then consolePkgs else [])
++ (if cfg.enableGuiPkgs then guiPkgs else [])
++ (if cfg.enableDevPkgs then devPkgs else [])
;
type = types.listOf (types.either types.package types.attrs);
description = "generated from other config options";
};
};
config = {
sane.home-manager.extraPackages = []
++ (if cfg.enableConsolePkgs then consolePkgs else [])
++ (if cfg.enableGuiPkgs then guiPkgs else [])
++ (if cfg.enableDevPkgs then devPkgs else [])
;
environment.systemPackages = mkIf cfg.enableSystemPkgs systemPkgs;
};
}