Compare commits
No commits in common. "1957b47664c7fb320b94e97bfddc9be1dd32fa13" and "73f73c3d37d10d074fa820d92cfbfa78cf42147d" have entirely different histories.
1957b47664
...
73f73c3d37
8 changed files with 50 additions and 26 deletions
|
@ -17,4 +17,6 @@ with lib.wyrdgard;
|
||||||
direnv = enabled;
|
direnv = enabled;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home.stateVersion = "24.11";
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,12 +2,11 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
namespace,
|
|
||||||
osConfig ? { },
|
osConfig ? { },
|
||||||
format ? "unknown",
|
format ? "unknown",
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib.${namespace};
|
with lib.wyrdgard;
|
||||||
{
|
{
|
||||||
wyrdgard = {
|
wyrdgard = {
|
||||||
apps = {
|
apps = {
|
||||||
|
@ -18,4 +17,6 @@ with lib.${namespace};
|
||||||
direnv = enabled;
|
direnv = enabled;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home.stateVersion = "23.11";
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,10 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkEnableOption;
|
inherit (lib) mkIf mkEnableOption;
|
||||||
|
|
||||||
cfg = config.${namespace}.desktop.addons.hypridle;
|
cfg = config.${namespace}.desktop.addons.hypridle;
|
||||||
|
|
||||||
|
username = config.${namespace}.user.name;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.desktop.addons.hypridle = {
|
options.${namespace}.desktop.addons.hypridle = {
|
||||||
|
@ -15,7 +18,7 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
${namespace}.home.extraOptions = {
|
snowfallorg.users.${username}.home.config = {
|
||||||
services.hypridle = {
|
services.hypridle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
@ -20,15 +20,15 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
snowfallorg.users.${config.${namespace}.user.name}.home.config = mkMerge [
|
${namespace}.home.extraOptions = {
|
||||||
{
|
home.stateVersion = config.system.stateVersion;
|
||||||
home.stateVersion = config.system.stateVersion;
|
home.file = mkAliasDefinitions options.${namespace}.home.file;
|
||||||
home.file = mkAliasDefinitions options.${namespace}.home.file;
|
xdg.enable = true;
|
||||||
xdg.enable = true;
|
xdg.configFile = mkAliasDefinitions options.${namespace}.home.configFile;
|
||||||
xdg.configFile = mkAliasDefinitions options.${namespace}.home.configFile;
|
};
|
||||||
}
|
|
||||||
config.${namespace}.home.extraOptions
|
snowfallorg.users.${config.${namespace}.user.name}.home.config =
|
||||||
];
|
config.${namespace}.home.extraOptions;
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
|
|
|
@ -33,14 +33,7 @@ in
|
||||||
];
|
];
|
||||||
|
|
||||||
${namespace} = {
|
${namespace} = {
|
||||||
nix = {
|
nix = enabled;
|
||||||
enable = true;
|
|
||||||
extra-substituters = {
|
|
||||||
"https://nix-community.cachix.org" = {
|
|
||||||
key = "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
apps.cli-apps.helix = enabled;
|
apps.cli-apps.helix = enabled;
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
namespace,
|
namespace,
|
||||||
|
options,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
@ -10,6 +11,33 @@ with lib.${namespace};
|
||||||
let
|
let
|
||||||
cfg = config.${namespace}.user;
|
cfg = config.${namespace}.user;
|
||||||
defaultIconFileName = "profile.png";
|
defaultIconFileName = "profile.png";
|
||||||
|
defaultIcon = pkgs.stdenvNoCC.mkDerivation {
|
||||||
|
name = "default-icon";
|
||||||
|
src = ./. + "/${defaultIconFileName}";
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
cp $src $out
|
||||||
|
'';
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
fileName = defaultIconFileName;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
propagatedIcon =
|
||||||
|
pkgs.runCommandNoCC "propagated-icon"
|
||||||
|
{
|
||||||
|
passthru = {
|
||||||
|
inherit (fileName) ;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
''
|
||||||
|
local target="$out/share/${namespace}-icons/user/${cfg.name}"
|
||||||
|
mkdir -p "$target"
|
||||||
|
|
||||||
|
cp ${cfg.icon} "$target/${cfg.icon.fileName}"
|
||||||
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.user = with types; {
|
options.${namespace}.user = with types; {
|
||||||
|
@ -17,7 +45,7 @@ in
|
||||||
fullName = mkOpt str "Christoph Hollizeck" "The full name of the user.";
|
fullName = mkOpt str "Christoph Hollizeck" "The full name of the user.";
|
||||||
email = mkOpt str "christoph.hollizeck@hey.com" "The email of the user.";
|
email = mkOpt str "christoph.hollizeck@hey.com" "The email of the user.";
|
||||||
initialPassword = mkOpt str "asdf" "The initial password to use when the user is first created.";
|
initialPassword = mkOpt str "asdf" "The initial password to use when the user is first created.";
|
||||||
icon = mkOpt (nullOr path) ./${defaultIconFileName} "The profile picture to use for the user.";
|
icon = mkOpt (nullOr package) defaultIcon "The profile picture to use for the user.";
|
||||||
extraGroups = mkOpt (listOf str) [ ] "Groups for the user to be assigned.";
|
extraGroups = mkOpt (listOf str) [ ] "Groups for the user to be assigned.";
|
||||||
extraOptions = mkOpt attrs { } (mdDoc "Extra options passed to `users.users.<name>`.");
|
extraOptions = mkOpt attrs { } (mdDoc "Extra options passed to `users.users.<name>`.");
|
||||||
trustedPublicKeys = mkOption {
|
trustedPublicKeys = mkOption {
|
||||||
|
@ -50,7 +78,7 @@ in
|
||||||
"Videos/.keep".text = "";
|
"Videos/.keep".text = "";
|
||||||
"projects/.keep".text = "";
|
"projects/.keep".text = "";
|
||||||
".face".source = cfg.icon;
|
".face".source = cfg.icon;
|
||||||
"Pictures/${defaultIconFileName}".source = cfg.icon;
|
"Pictures/${cfg.icon.fileName or (builtins.baseNameOf cfg.icon)}".source = cfg.icon;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 130 B After Width: | Height: | Size: 42 KiB |
|
@ -28,9 +28,6 @@ in
|
||||||
programs.ssh.extraConfig = ''
|
programs.ssh.extraConfig = ''
|
||||||
AddressFamily inet
|
AddressFamily inet
|
||||||
'';
|
'';
|
||||||
home-manager = {
|
|
||||||
backupFileExtension = ".bak";
|
|
||||||
};
|
|
||||||
|
|
||||||
${namespace} = {
|
${namespace} = {
|
||||||
archetypes = {
|
archetypes = {
|
||||||
|
@ -79,7 +76,7 @@ in
|
||||||
|
|
||||||
windowrulev2 = [
|
windowrulev2 = [
|
||||||
"workspace 8 silent, class:^(steam)$, title:^(Friends List)"
|
"workspace 8 silent, class:^(steam)$, title:^(Friends List)"
|
||||||
"workspace 8 silent, class:^(vesktop)$, title:^(Discord)"
|
"workspace 8 silent, class:^(discord)$, title:^(Discord)"
|
||||||
"workspace 7 silent, class:^(com.obsproject.Studio)$"
|
"workspace 7 silent, class:^(com.obsproject.Studio)$"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue