Compare commits
4 Commits
6bbdb462e4
...
01cb099643
Author | SHA1 | Date |
---|---|---|
Moritz Böhme | 01cb099643 | |
Moritz Böhme | 1522d55d88 | |
Moritz Böhme | 4a528e1f4b | |
Moritz Böhme | c9314498c7 |
|
@ -127,7 +127,10 @@ with lib; {
|
||||||
synology-drive-client
|
synology-drive-client
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.chromium.enable = true;
|
programs = {
|
||||||
|
chromium.enable = true;
|
||||||
|
nix-ld.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
home-manager.users.moritz = {
|
home-manager.users.moritz = {
|
||||||
services.nextcloud-client = {
|
services.nextcloud-client = {
|
||||||
|
|
|
@ -6,6 +6,10 @@
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
|
cfg = config.my.programs.hyprland;
|
||||||
|
|
||||||
|
boolToYesNo = bool: if bool then "yes" else "no";
|
||||||
|
|
||||||
mkRule = rule: windowRegexes: "windowrulev2 = ${rule},${concatStringsSep "," windowRegexes}";
|
mkRule = rule: windowRegexes: "windowrulev2 = ${rule},${concatStringsSep "," windowRegexes}";
|
||||||
mkRules = rules: windowRegexes: concatStringsSep "\n" (map (flip mkRule windowRegexes) rules);
|
mkRules = rules: windowRegexes: concatStringsSep "\n" (map (flip mkRule windowRegexes) rules);
|
||||||
in
|
in
|
||||||
|
@ -55,12 +59,12 @@ in
|
||||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||||
|
|
||||||
rounding = 3
|
rounding = 3
|
||||||
blur = yes
|
blur = ${boolToYesNo cfg.blur}
|
||||||
blur_size = 3
|
blur_size = 3
|
||||||
blur_passes = 3
|
blur_passes = 3
|
||||||
blur_new_optimizations = on
|
blur_new_optimizations = on
|
||||||
|
|
||||||
drop_shadow = yes
|
drop_shadow = ${boolToYesNo cfg.shadows}
|
||||||
shadow_range = 10
|
shadow_range = 10
|
||||||
shadow_render_power = 2
|
shadow_render_power = 2
|
||||||
|
|
||||||
|
@ -109,17 +113,19 @@ in
|
||||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||||
|
|
||||||
|
${optionalString cfg.blur ''
|
||||||
# Kitty
|
# Kitty
|
||||||
windowrulev2 = opacity 0.95 0.95, class:^kitty$
|
windowrulev2 = opacity 0.95 0.95, class:^kitty$
|
||||||
|
|
||||||
|
# Rofi
|
||||||
|
${mkRules ["float" "opacity 0.85 0.85" "noborder"] ["class:^([rR]ofi)$"]}
|
||||||
|
|
||||||
windowrulev2 = opacity 0.85 0.85, floating:1
|
windowrulev2 = opacity 0.85 0.85, floating:1
|
||||||
|
''}
|
||||||
|
|
||||||
# Firefox Sharing Indicator
|
# Firefox Sharing Indicator
|
||||||
${mkRules ["float" "move 49% 40" "noborder"] ["title:^(.*Sharing Indicator)$"]}
|
${mkRules ["float" "move 49% 40" "noborder"] ["title:^(.*Sharing Indicator)$"]}
|
||||||
|
|
||||||
# Rofi
|
|
||||||
${mkRules ["float" "opacity 0.85 0.85" "noborder"] ["class:^([rR]ofi)$"]}
|
|
||||||
|
|
||||||
# Emacs
|
# Emacs
|
||||||
windowrulev2 = opaque, class:^emacs$
|
windowrulev2 = opaque, class:^emacs$
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,16 @@ in
|
||||||
options.my.programs.hyprland = {
|
options.my.programs.hyprland = {
|
||||||
enable = mkEnableOption "hyprland";
|
enable = mkEnableOption "hyprland";
|
||||||
nvidiaSupport = mkEnableOption "enable nvidia Support";
|
nvidiaSupport = mkEnableOption "enable nvidia Support";
|
||||||
|
blur = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
description = "enable window blurring";
|
||||||
|
default = true;
|
||||||
|
};
|
||||||
|
shadows = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
description = "enable window shadows";
|
||||||
|
default = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
@ -135,6 +145,7 @@ in
|
||||||
# only consider graphical-session.target started when hyprland-sesstion.target is reached
|
# only consider graphical-session.target started when hyprland-sesstion.target is reached
|
||||||
systemd.user.targets.hyprland-session = {
|
systemd.user.targets.hyprland-session = {
|
||||||
wantedBy = [ "graphical-session.target" ];
|
wantedBy = [ "graphical-session.target" ];
|
||||||
|
before = [ "graphical-session.target" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -34,15 +34,14 @@ in
|
||||||
"flake8"
|
"flake8"
|
||||||
"isort"
|
"isort"
|
||||||
"mypy"
|
"mypy"
|
||||||
"poetry"
|
|
||||||
"pytest"
|
"pytest"
|
||||||
"python-lsp-server"
|
|
||||||
];
|
];
|
||||||
type = with types; listOf (enum commonPackages);
|
type = with types; listOf (enum commonPackages);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
users.users.moritz.packages = map (mkPython cfg.packages) cfg.versions;
|
users.users.moritz.packages = map (mkPython cfg.packages) cfg.versions
|
||||||
|
++ [ pkgs.poetry pkgs.nodePackages.pyright ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue