Compare commits

..

5 commits

12 changed files with 94 additions and 35 deletions

View file

@ -17,9 +17,12 @@ let
}; };
in in
{ {
xdg.desktopEntries = builtins.listToAttrs [ xdg = {
(mkURLEntry "Paperless" "https://paperless.ccnlc.eu" "${self}/assets/favicon-paperless.png") userDirs.enable = true;
(mkURLEntry "KitchenOwl" "https://kitchenowl.ccnlc.eu" "${self}/assets/favicon-kitchenowl.png") desktopEntries = builtins.listToAttrs [
(mkURLEntry "Discord" "https://discord.com/app" "${self}/assets/favicon-discord.png") (mkURLEntry "Paperless" "https://paperless.ccnlc.eu" "${self}/assets/favicon-paperless.png")
]; (mkURLEntry "KitchenOwl" "https://kitchenowl.ccnlc.eu" "${self}/assets/favicon-kitchenowl.png")
(mkURLEntry "Discord" "https://discord.com/app" "${self}/assets/favicon-discord.png")
];
};
} }

View file

@ -5,7 +5,10 @@
config, config,
... ...
}: }:
lib.mkIf osConfig.programs.hyprland.enable { let
inherit (lib) mapAttrsToList mkIf hasAttr;
in
mkIf osConfig.programs.hyprland.enable {
home.sessionVariables.ELECTRON_OZONE_PLATFORM_HINT = "auto"; home.sessionVariables.ELECTRON_OZONE_PLATFORM_HINT = "auto";
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
@ -14,10 +17,15 @@ lib.mkIf osConfig.programs.hyprland.enable {
settings = { settings = {
"$mod" = "SUPER"; "$mod" = "SUPER";
monitor = [ monitor = mapAttrsToList (
"DP-2,1920x1080@144, 0x0, 1" name: value:
"HDMI-A-1,1920x1080@60, 1920x0, 1" let
]; inherit (value) resX resY scale;
posFinal = "${toString value.posX}x${toString value.posY}";
rrFinal = if hasAttr "rr" value then "@${toString value.rr}" else "";
in
"${name}, ${toString resX}x${toString resY}${rrFinal}, ${posFinal}, ${toString scale}"
) osConfig.modules.system.outputs;
exec-once = [ exec-once = [
"${config.services.kdeconnect.package}/bin/kdeconnect-indicator" "${config.services.kdeconnect.package}/bin/kdeconnect-indicator"
@ -51,6 +59,7 @@ lib.mkIf osConfig.programs.hyprland.enable {
input = { input = {
numlock_by_default = true; numlock_by_default = true;
kb_options = "compose:caps"; kb_options = "compose:caps";
kb_layout = osConfig.console.keyMap;
}; };
decoration = { decoration = {
@ -60,10 +69,12 @@ lib.mkIf osConfig.programs.hyprland.enable {
active_opacity = 1.0; active_opacity = 1.0;
inactive_opacity = 1.0; inactive_opacity = 1.0;
drop_shadow = true; shadow = {
shadow_range = 4; enabled = true;
shadow_render_power = 3; range = 4;
"col.shadow" = "rgba(1a1a1aee)"; render_power = 3;
color = "rgba(1a1a1aee)";
};
# https://wiki.hyprland.org/Configuring/Variables/#blur # https://wiki.hyprland.org/Configuring/Variables/#blur
blur = { blur = {

View file

@ -33,6 +33,8 @@
modules = { modules = {
system = { system = {
roles.desktop.enable = true;
outputs = { outputs = {
"DP-2" = { "DP-2" = {
resX = 1920; resX = 1920;
@ -75,10 +77,7 @@
}; };
media.enableAll = true; media.enableAll = true;
}; };
documentation = {
doc.enable = false;
man.generateCaches = false;
};
services = { services = {
displayManager.sddm.enable = true; displayManager.sddm.enable = true;
dbus.enable = true; dbus.enable = true;

View file

@ -17,6 +17,8 @@
media.enableAll = true; media.enableAll = true;
system = { system = {
roles.desktop.enable = true;
outputs = { outputs = {
eDP-1 = { eDP-1 = {
resX = 3840; resX = 3840;

View file

@ -47,7 +47,17 @@
} }
{ {
name = "movies"; name = "movies";
comment = "backup location for movies shows"; comment = "backup location for movies and shows";
mode = "write";
}
{
name = "books";
comment = "backup location for books";
mode = "write";
}
{
name = "games";
comment = "backup location for games";
mode = "write"; mode = "write";
} }
]; ];

View file

@ -28,6 +28,9 @@ in
upstream_dns_file = config.age.secrets.adguard-dns-list.path; upstream_dns_file = config.age.secrets.adguard-dns-list.path;
fallback_dns = [ "9.9.9.9" ]; fallback_dns = [ "9.9.9.9" ];
}; };
filtering = {
filtering_enabled = true;
};
clients = { clients = {
persistent = [ persistent = [
{ {

View file

@ -1,3 +1,6 @@
{ {
imports = [ ./system.nix ]; imports = [
./system.nix
./documentation.nix
];
} }

View file

@ -0,0 +1,6 @@
{
documentation = {
doc.enable = false;
man.generateCaches = false;
};
}

View file

@ -1,16 +1,23 @@
{ pkgs, ... }:
{ {
qt = { pkgs,
enable = true; lib,
platformTheme = "gtk2"; config,
#platformTheme = "qt5ct"; ...
#style = "kvantum"; }:
}; {
config = lib.mkIf config.modules.system.roles.desktop.enable {
qt = {
enable = true;
platformTheme = "gtk2";
#platformTheme = "qt5ct";
#style = "kvantum";
};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
#vimix-icon-theme #vimix-icon-theme
#pop-icon-theme #pop-icon-theme
catppuccin-papirus-folders catppuccin-papirus-folders
#catppuccin-kvantum #catppuccin-kvantum
]; ];
};
} }

View file

@ -82,7 +82,8 @@ in
serviceConfig = serviceConfigSecurity // { serviceConfig = serviceConfigSecurity // {
ExecStart = "${pkgs.rsync}/bin/rsync --daemon --no-detach --config=${configFile}"; ExecStart = "${pkgs.rsync}/bin/rsync --daemon --no-detach --config=${configFile}";
RestartSec = 1; RestartSec = 15;
Restart = "always";
}; };
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];

View file

@ -1 +1,6 @@
{ imports = [ ./terminal.nix ]; } {
imports = [
./terminal.nix
./desktop.nix
];
}

View file

@ -0,0 +1,9 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.modules.system.roles.desktop = {
enable = mkEnableOption "desktop usage features";
};
}