2024-07-08 15:02:54 +02:00
|
|
|
{ config, pkgs, lib, extendedLib, inputs, machineVars, ... } @ args: let
|
2022-11-19 16:14:18 +01:00
|
|
|
inherit (lib) mkForce mkIf optionals;
|
2022-08-19 14:50:03 +02:00
|
|
|
graphics = !machineVars.headless;
|
2022-04-03 18:03:55 +02:00
|
|
|
in {
|
2022-03-07 16:01:52 +01:00
|
|
|
imports = [
|
2025-06-04 12:01:57 +02:00
|
|
|
./breakerbox.nix
|
2026-02-06 11:03:53 +09:00
|
|
|
./email.nix
|
|
|
|
|
./packages.nix
|
|
|
|
|
./shell.nix
|
2022-03-07 16:01:52 +01:00
|
|
|
|
2022-08-19 12:53:48 +02:00
|
|
|
./config/xdg
|
2025-04-25 15:00:27 +02:00
|
|
|
./config/ensure-homedir-structure.nix
|
2025-05-05 18:27:06 +02:00
|
|
|
./config/downloads-sorter.nix
|
2025-06-04 12:01:57 +02:00
|
|
|
];
|
2022-03-07 16:01:52 +01:00
|
|
|
|
2024-07-08 15:02:54 +02:00
|
|
|
sops.defaultSopsFile = ../secrets/home.yaml;
|
|
|
|
|
sops.age.sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/id_ed25519_home_sops" ];
|
2024-06-25 20:10:58 +02:00
|
|
|
|
2022-03-07 16:01:52 +01:00
|
|
|
home = {
|
|
|
|
|
username = "h7x4";
|
|
|
|
|
homeDirectory = "/home/h7x4";
|
2022-04-03 18:03:55 +02:00
|
|
|
|
2024-06-08 12:37:01 +02:00
|
|
|
sessionPath = [
|
|
|
|
|
"$HOME/.local/bin"
|
|
|
|
|
];
|
2022-11-11 21:23:25 +01:00
|
|
|
|
2024-06-29 12:38:54 +02:00
|
|
|
# TODO: fix overriding home.file in home-manager
|
|
|
|
|
# file = mkIf graphics {
|
|
|
|
|
# ".icons/default/index.theme".source = lib.mkForce null;
|
|
|
|
|
# ".icons/default/${config.home.pointerCursor.name}.theme".source = lib.mkForce null;
|
|
|
|
|
# };
|
|
|
|
|
|
2022-06-02 16:39:12 +02:00
|
|
|
pointerCursor = mkIf graphics {
|
|
|
|
|
package = pkgs.capitaine-cursors;
|
|
|
|
|
name = "capitaine-cursors";
|
|
|
|
|
size = 16;
|
2025-05-21 10:19:22 +02:00
|
|
|
dotIcons.enable = false;
|
2022-06-02 16:39:12 +02:00
|
|
|
};
|
2024-01-23 08:53:47 +01:00
|
|
|
|
|
|
|
|
keyboard.options = [ "caps:escape" ];
|
2024-06-08 12:37:01 +02:00
|
|
|
|
|
|
|
|
sessionVariables = {
|
2025-04-25 14:40:45 +02:00
|
|
|
DO_NOT_TRACK = "1";
|
2024-09-04 10:28:54 +02:00
|
|
|
_JAVA_AWT_WM_NONREPARENTING = "1";
|
2024-06-08 12:37:01 +02:00
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2025-04-28 15:09:26 +02:00
|
|
|
dconf.settings = mkIf graphics {
|
2024-12-08 15:08:25 +01:00
|
|
|
"org/gnome/desktop/interface" = {
|
|
|
|
|
color-scheme = "prefer-dark";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2024-09-26 09:58:09 +02:00
|
|
|
xsession = {
|
2024-12-06 10:33:35 +01:00
|
|
|
enable = !machineVars.wayland;
|
2024-09-26 09:58:09 +02:00
|
|
|
# TODO: declare using xdg config home
|
2025-12-29 14:28:30 +09:00
|
|
|
scriptPath = "${config.xdg.configHome}/X11/xsession";
|
|
|
|
|
profilePath = "${config.xdg.configHome}/X11/xprofile";
|
2024-09-26 09:58:09 +02:00
|
|
|
};
|
|
|
|
|
|
2022-03-07 16:01:52 +01:00
|
|
|
news.display = "silent";
|
|
|
|
|
|
2022-04-03 18:03:55 +02:00
|
|
|
fonts.fontconfig.enable = mkForce true;
|
2022-03-07 16:01:52 +01:00
|
|
|
|
|
|
|
|
manual = {
|
|
|
|
|
html.enable = true;
|
|
|
|
|
manpages.enable = true;
|
|
|
|
|
json.enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
2022-04-03 18:03:55 +02:00
|
|
|
qt = mkIf graphics {
|
2022-03-07 16:01:52 +01:00
|
|
|
enable = true;
|
2024-09-26 09:58:24 +02:00
|
|
|
platformTheme.name = "adwaita";
|
|
|
|
|
style.name = "adwaita-dark";
|
2022-03-07 16:01:52 +01:00
|
|
|
};
|
|
|
|
|
}
|