diff options
Diffstat (limited to 'home-modules')
| -rw-r--r-- | home-modules/apps/default.nix | 2 | ||||
| -rw-r--r-- | home-modules/apps/desktop/default.nix | 12 | ||||
| -rw-r--r-- | home-modules/apps/nvim/default.nix | 2 | ||||
| -rw-r--r-- | home-modules/desktop/hyprland.nix | 95 | ||||
| -rw-r--r-- | home-modules/desktop/wayland/default.nix | 11 | ||||
| -rw-r--r-- | home-modules/desktop/wayland/mako.nix | 47 | ||||
| -rw-r--r-- | home-modules/services/vdirsyncer.nix | 6 | ||||
| -rw-r--r-- | home-modules/theming.nix | 8 |
8 files changed, 142 insertions, 41 deletions
diff --git a/home-modules/apps/default.nix b/home-modules/apps/default.nix index ece0543..31766ab 100644 --- a/home-modules/apps/default.nix +++ b/home-modules/apps/default.nix @@ -103,7 +103,7 @@ in }) (lib.mkIf cfg.work.enable { home.packages = with pkgs; [ - inputs.tatuin.packages.${pkgs.system}.default + inputs.tatuin.packages.${pkgs.stdenv.hostPlatform.system}.default todoman ]; }) diff --git a/home-modules/apps/desktop/default.nix b/home-modules/apps/desktop/default.nix index 9a6f0e4..5472dad 100644 --- a/home-modules/apps/desktop/default.nix +++ b/home-modules/apps/desktop/default.nix @@ -67,7 +67,17 @@ in ]; }) (lib.mkIf cfg.note-taking.enable { - home.packages = with pkgs; [ obsidian ]; + home.packages = + with pkgs; + [ + obsidian + kdePackages.kdepim-runtime + ] + ++ (with pkgs.kdePackages; [ + zanshin + kdepim-runtime + akonadi-calendar + ]); # Todo force synthing to be on here }) (lib.mkIf cfg.art.enable { diff --git a/home-modules/apps/nvim/default.nix b/home-modules/apps/nvim/default.nix index c99a343..fc73d2d 100644 --- a/home-modules/apps/nvim/default.nix +++ b/home-modules/apps/nvim/default.nix @@ -52,7 +52,7 @@ in rustup nil statix - nixfmt-rfc-style + nixfmt # phpactor pyright nodePackages.intelephense diff --git a/home-modules/desktop/hyprland.nix b/home-modules/desktop/hyprland.nix index 1fdc801..164282e 100644 --- a/home-modules/desktop/hyprland.nix +++ b/home-modules/desktop/hyprland.nix @@ -15,12 +15,14 @@ with lib; networkmanagerapplet wl-clipboard brightnessctl + hyprsunset ]; services.hyprpolkitagent.enable = true; homeprogs.waybar.enable = true; homeprogs.mako.enable = true; + homeprogs.mako.systemdWantedBy = [ "hyprland-session.target" ]; # Environment variables for hyprland. # This can be used to configure wayland/hyprland-specific things home.file.".config/uwsm/env-hyprland".text = '' @@ -33,12 +35,11 @@ with lib; export QT_WAYLAND_DISABLE_WINDOWDECORATION=1 export QT_AUTO_SCREEN_SCALE_FACTOR=1 export MOZ_ENABLE_WAYLAND=1 - export -n GTK_IM_MODULE ''; # Hyprland wayland.windowManager.hyprland = { - systemd.enable = false; + systemd.enable = true; enable = true; xwayland.enable = true; settings = { @@ -252,15 +253,32 @@ with lib; }; }; + systemd.user.services.hyprpaper = { + Install.WantedBy = lib.mkForce [ "hyprland-session.target" ]; + }; + + # TODO: Put the default wallpaper somewhere else. + home.file.defaultWallpaper = { + source = ./wallpaper.png; + target = "Pictures/Wallpapers/wallpaper.png"; + enable = true; + }; + services.hyprpaper = { enable = true; settings = { ipc = "on"; splash = false; - splash_offset = 2.0; + splash_offset = 2; - preload = [ "${./wallpaper.png}" ]; - wallpaper = [ ",${./wallpaper.png}" ]; + # preload = [ "${./wallpaper.png}" ]; + wallpaper = [ + { + monitor = ""; + path = "${config.home.homeDirectory}/${config.home.file.defaultWallpaper.target}"; + fit_mode = "cover"; + } + ]; }; }; @@ -299,26 +317,57 @@ with lib; ]; }; }; + services.hyprsunset = { + enable = true; + systemdTarget = "hyprland-session.target"; + settings = { + max-gamma = 140; + profile = [ + { + # Morning + time = "07:00"; + identity = true; + # temperature = 6500; + gamme = 1; + } + { + # Evening + time = "19:00"; + temperature = 4000; + gamma = 0.6; + } + { + # Night + time = "22:00"; + temperature = 3000; + gamma = 0.4; + } + ]; + }; + }; - services.hypridle.enable = true; - services.hypridle.settings = { - general = { - lock_cmd = "pidof hyprlock || hyprlock"; - before_sleep_cmd = "loginctl lock-session"; - ignore_dbus_inhibit = false; - after_sleep_cmd = "hyprctl_dispatch dpms on"; + services.hypridle = { + enable = true; + systemdTarget = "hyprland-session.target"; + settings = { + general = { + lock_cmd = "pidof hyprlock || hyprlock"; + before_sleep_cmd = "loginctl lock-session"; + ignore_dbus_inhibit = false; + after_sleep_cmd = "hyprctl_dispatch dpms on"; + }; + listener = [ + { + timeout = 120; + on-timeout = "hyprlock"; + } + { + timeout = 300; + on-timeout = "hyprctl dispatch dpms off"; + on-resume = "hyprctl dispatch dpms on"; + } + ]; }; - listener = [ - { - timeout = 120; - on-timeout = "hyprlock"; - } - { - timeout = 300; - on-timeout = "hyprctl dispatch dpms off"; - on-resume = "hyprctl dispatch dpms on"; - } - ]; }; }; } diff --git a/home-modules/desktop/wayland/default.nix b/home-modules/desktop/wayland/default.nix index 27b1176..97f5fef 100644 --- a/home-modules/desktop/wayland/default.nix +++ b/home-modules/desktop/wayland/default.nix @@ -1,12 +1,17 @@ -{ pkgs, ... }: +{ + pkgs, + lib, + hostconfig, + ... +}: { imports = [ ./waybar.nix ./mako.nix ]; - xdg.portal = { + xdg.portal = lib.mkIf hostconfig.addons.desktop.wayland.enable { enable = true; - config.common.default = "*"; + extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; diff --git a/home-modules/desktop/wayland/mako.nix b/home-modules/desktop/wayland/mako.nix index ddf0a91..99987db 100644 --- a/home-modules/desktop/wayland/mako.nix +++ b/home-modules/desktop/wayland/mako.nix @@ -1,16 +1,49 @@ { + pkgs, config, lib, ... }: +let + cfg = config.homeprogs.mako; +in { - options.homeprogs.mako.enable = lib.mkEnableOption "Enable Mako notification manager"; - config = lib.mkIf config.homeprogs.mako.enable { - services.mako = { - enable = true; + options.homeprogs.mako = { + enable = lib.mkEnableOption "Enable Mako notification manager"; + systemdWantedBy = lib.mkOption { + description = "SystemD targets where mako should start for."; + # TODO: Put a null here, so that we can add a non-persistent default + default = [ ]; + example = [ "hyprland-session.target" ]; + type = lib.types.listOf lib.types.str; + }; + package = lib.mkOption { + description = "mako package to use"; + default = pkgs.mako; + example = pkgs.mako; + type = lib.types.package; }; - xdg.configFile."mako/config".source = ./mako.ini; - }; - + config = lib.mkIf config.homeprogs.mako.enable ({ + home.packages = [ pkgs.mako ]; + xdg.configFile."mako/config" = { + onChange = "${pkgs.mako}/bin/makoctl reload || true"; + source = ./mako.ini; + }; + systemd.user.services.mako = { + Install.WantedBy = config.homeprogs.mako.systemdWantedBy; + Unit = { + Description = "Lightweight Wayland notification daemon"; + Documentation = "man:mako(1)"; + After = "graphical-session.target"; + }; + Service = { + Type = "dbus"; + BusName = "org.freedesktop.Notifications"; + ExecCondition = "/bin/sh -c '[ -n \"$WAYLAND_DISPLAY\" ]'"; + ExecStart = "${cfg.package}/bin/mako"; + ExecReload = "${cfg.package}/bin/makoctl reload"; + }; + }; + }); } diff --git a/home-modules/services/vdirsyncer.nix b/home-modules/services/vdirsyncer.nix index df76bc8..8afe2c8 100644 --- a/home-modules/services/vdirsyncer.nix +++ b/home-modules/services/vdirsyncer.nix @@ -10,7 +10,7 @@ in options.homesv.vdirsyncer = { enable = lib.mkEnableOption "Enable syncing via vdirsyncer"; user = lib.mkOption { default = config.home.username; }; - server = lib.mkOption { default = "https://webdav.wilkuu.xyz/dav.php"; }; + server = lib.mkOption { default = "https://mail.wilkuu.xyz/dav/"; }; }; config = lib.mkIf cfg.enable { sops.secrets.webdav_uname = { @@ -45,7 +45,7 @@ in [storage contacts_remote] type = "carddav" - auth = "digest" + auth = "basic" url = "${cfg.server}" username = "${config.sops.placeholder.webdav_uname}" password = "${config.sops.placeholder.webdav_pass}" @@ -64,7 +64,7 @@ in [storage calendar_remote] type = "caldav" - auth = "digest" + auth = "basic" url = "${cfg.server}" username = "${config.sops.placeholder.webdav_uname}" password = "${config.sops.placeholder.webdav_pass}" diff --git a/home-modules/theming.nix b/home-modules/theming.nix index ee6b13b..15b596b 100644 --- a/home-modules/theming.nix +++ b/home-modules/theming.nix @@ -36,8 +36,12 @@ in qt = { enable = true; - platformTheme.name = "qtct"; - style.name = "kvantum"; + kde.settings = { + + }; + style.package = pkgs.catppuccin-qt5ct; + + # style.name = "kvantum"; }; xdg.configFile."Kvantum/kvantum.kvconfig".source = |
