This repository has been archived on 2024-08-18. You can view files and clone it, but cannot push or open issues or pull requests.
home/module.nix

59 lines
1.9 KiB
Nix
Raw Permalink Normal View History

2024-07-30 13:55:58 +02:00
inputs: user: { config, lib, pkgs, ... }:
let
2024-08-07 14:43:20 +02:00
graphical = config.hardware.graphics.enable;
2024-07-30 13:55:58 +02:00
in {
imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager = {
useUserPackages = lib.mkDefault true;
useGlobalPkgs = lib.mkDefault true;
users.${user} = inputs.self.homeConfigurations.default;
};
2024-08-07 14:28:14 +02:00
nixpkgs.config.allowUnfreePredicate = lib.mkIf graphical
(pkg: builtins.elem (lib.getName pkg) [ "obsidian" ]);
2024-07-31 14:33:16 +02:00
programs.dconf.enable = lib.mkIf graphical true;
2024-07-30 13:55:58 +02:00
programs.fish.enable = true;
services.udev.packages = [
(pkgs.writeTextDir "/etc/udev/rules.d/98-user-power-supply.rules" ''
SUBSYSTEM=="power_supply", KERNEL=="AC", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}+="power-internal.target power-external.target"
'')
];
systemd.user = {
targets = {
power-internal = {
description = "On internal power supply";
conflicts = [ "power-external.target" ];
wantedBy = [ "default.target" ];
unitConfig = {
ConditionACPower = false;
DefaultDependencies = false;
};
};
power-external = {
description = "On external power supply";
conflicts = [ "power-internal.target" ];
wantedBy = [ "default.target" ];
unitConfig = {
ConditionACPower = true;
DefaultDependencies = false;
};
};
};
};
2024-07-30 13:55:58 +02:00
users.users.${user} = {
isNormalUser = true;
shell = config.programs.fish.package;
openssh.authorizedKeys.keys = [
2024-08-05 17:09:10 +02:00
"sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAICczPHRwY9MAwDGlcB0QgMOJjcpLJhVU3covrW9RBS62AAAABHNzaDo= primary"
"sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIAgnEAwe59/yY/U55y7WxGa/QI20/XMQEsQvs1/6LitRAAAABHNzaDo= backup"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGOTvXiNHTXq9wkcxdVOblHVyvcAaCfxmJp/CXI4rzMj legacy"
2024-07-30 13:55:58 +02:00
];
};
}