some hyprland updates
This commit is contained in:
@@ -1,28 +1,7 @@
|
||||
{ lib, pkgs, ... }:
|
||||
let
|
||||
theme = import ./theme.nix { inherit pkgs; };
|
||||
wallpaper = "/home/matt/.config/wallpapers/wall.png";
|
||||
cursorTheme = "macOS";
|
||||
cursorThemePkg = pkgs.apple-cursor;
|
||||
cursorSize = 24;
|
||||
gtkThemeSize = "compact";
|
||||
gtkThemeAccent = "all";
|
||||
gtkThemeVariant = "nord";
|
||||
gtkThemeColor = "dark";
|
||||
gtkTheme = "Colloid-Dark-Compact-Nord";
|
||||
gtkThemePkg = pkgs.colloid-gtk-theme.override {
|
||||
sizeVariants = [ gtkThemeSize ];
|
||||
colorVariants = [ gtkThemeColor ];
|
||||
themeVariants = [ gtkThemeAccent ];
|
||||
tweaks = [ gtkThemeVariant ];
|
||||
};
|
||||
# iconThemeColor = "dark"; # "" "light" "dark"
|
||||
# iconThemeVariant = ""; # "" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey"
|
||||
iconThemeScheme = "nord"; # "" "nord" "dracula" "gruvbox" "everforest" "catppuccin"
|
||||
iconTheme = "Colloid-Nord-Dark";
|
||||
iconThemePkg = pkgs.colloid-icon-theme.override {
|
||||
schemeVariants = [ iconThemeScheme ];
|
||||
colorVariants = [ "default" ];
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
@@ -119,8 +98,8 @@ in
|
||||
settings = {
|
||||
preload = [ wallpaper ];
|
||||
wallpaper = [
|
||||
"DP-1, ${wallpaper}"
|
||||
"DP-2, ${wallpaper}"
|
||||
"${theme.displayLeft.input}, ${wallpaper}"
|
||||
"${theme.displayRight.input}, ${wallpaper}"
|
||||
];
|
||||
splash = false;
|
||||
};
|
||||
@@ -142,16 +121,16 @@ in
|
||||
# on-resume = "brightnessctl -r"; # monitor backlight restore.
|
||||
# }
|
||||
{
|
||||
timeout = 900; # 15 min
|
||||
timeout = theme.lockScreenTimer;
|
||||
on-timeout = "loginctl lock-session"; # lock screen when timeout has passed
|
||||
}
|
||||
{
|
||||
timeout = 930; # 15.5 min
|
||||
timeout = theme.screenOffTimer;
|
||||
on-timeout = "hyprctl dispatch dpms off"; # screen off when timeout has passed
|
||||
on-resume = "hyprctl dispatch dpms on"; # screen on when activity is detected after timeout has fired.
|
||||
}
|
||||
{
|
||||
timeout = 3600; # 1hr
|
||||
timeout = theme.suspendTimer;
|
||||
on-timeout = "systemctl suspend"; # suspend pc
|
||||
}
|
||||
];
|
||||
@@ -159,55 +138,58 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
programs.hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
background = [
|
||||
{
|
||||
monitor = "";
|
||||
path = wallpaper; # supports png, jpg, webp (no animations, though)
|
||||
color = "rgba(25, 20, 20, 1.0)";
|
||||
programs = {
|
||||
hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
background = [
|
||||
{
|
||||
monitor = "";
|
||||
path = wallpaper; # supports png, jpg, webp (no animations, though)
|
||||
color = "rgba(25, 20, 20, 1.0)";
|
||||
|
||||
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
|
||||
blur_passes = "3"; # 0 disables blurring
|
||||
blur_size = "7";
|
||||
noise = "0.0117";
|
||||
contrast = "0.8916";
|
||||
brightness = "0.8172";
|
||||
vibrancy = "0.1696";
|
||||
vibrancy_darkness = "0.0";
|
||||
}
|
||||
];
|
||||
input-field = [
|
||||
{
|
||||
size = "200, 50";
|
||||
position = "0, -80";
|
||||
monitor = "DP-1";
|
||||
dots_center = true;
|
||||
fade_on_empty = true;
|
||||
font_color = "rgb(202, 211, 245)";
|
||||
inner_color = "rgb(91, 96, 120)";
|
||||
outer_color = "rgb(24, 25, 38)";
|
||||
bothlock_color = -1;
|
||||
outline_thickness = 5;
|
||||
placeholder_text = ''<span foreground="##cad3f5">Password...</span>'';
|
||||
shadow_passes = 2;
|
||||
}
|
||||
];
|
||||
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
|
||||
blur_passes = "3"; # 0 disables blurring
|
||||
blur_size = "7";
|
||||
noise = "0.0117";
|
||||
contrast = "0.8916";
|
||||
brightness = "0.8172";
|
||||
vibrancy = "0.1696";
|
||||
vibrancy_darkness = "0.0";
|
||||
}
|
||||
];
|
||||
input-field = [
|
||||
{
|
||||
size = "200, 50";
|
||||
position = "0, -80";
|
||||
monitor = theme.displayLeft.input;
|
||||
dots_center = true;
|
||||
fade_on_empty = true;
|
||||
font_color = "rgb(202, 211, 245)";
|
||||
inner_color = "rgb(91, 96, 120)";
|
||||
outer_color = "rgb(24, 25, 38)";
|
||||
bothlock_color = -1;
|
||||
outline_thickness = 5;
|
||||
placeholder_text = ''<span foreground="##cad3f5">Password...</span>'';
|
||||
shadow_passes = 2;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
vscode.profiles.default.userSettings."window"."titleBarStyle" = "custom";
|
||||
};
|
||||
|
||||
home = {
|
||||
sessionVariables = {
|
||||
BROWSER = "firefox";
|
||||
CLUTTER_BACKEND = "wayland";
|
||||
EDITOR = "nano";
|
||||
ICON_THEME = iconTheme;
|
||||
EDITOR = "micro";
|
||||
ICON_THEME = theme.iconTheme;
|
||||
GTK_CSD = "0";
|
||||
GTK_THEME = gtkTheme;
|
||||
GTK_THEME = theme.gtkTheme;
|
||||
GTK_USE_PORTAL = "1";
|
||||
HYPRCURSOR_THEME = cursorTheme;
|
||||
HYPRCURSOR_SIZE = cursorSize;
|
||||
HYPRCURSOR_THEME = theme.cursorTheme;
|
||||
HYPRCURSOR_SIZE = theme.cursorSize;
|
||||
MOZ_ENABLE_WAYLAND = "1";
|
||||
NIXOS_OZONE_WL = "1";
|
||||
NIXOS_XDG_OPEN_USE_PORTAL = "1";
|
||||
@@ -218,8 +200,8 @@ in
|
||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||
SDL_VIDEODRIVER = "wayland";
|
||||
TERMINAL = "kitty";
|
||||
XCURSOR_THEME = cursorTheme;
|
||||
XCURSOR_SIZE = cursorSize;
|
||||
XCURSOR_THEME = theme.cursorTheme;
|
||||
XCURSOR_SIZE = theme.cursorSize;
|
||||
XDG_CACHE_HOME = "\${HOME}/.cache";
|
||||
XDG_CONFIG_HOME = "\${HOME}/.config";
|
||||
XDG_CURRENT_DESKTOP = "Hyprland";
|
||||
@@ -230,19 +212,21 @@ in
|
||||
|
||||
pointerCursor = {
|
||||
gtk.enable = true;
|
||||
package = cursorThemePkg;
|
||||
name = cursorTheme;
|
||||
size = cursorSize;
|
||||
package = theme.cursorThemePkg;
|
||||
name = theme.cursorTheme;
|
||||
size = theme.cursorSize;
|
||||
};
|
||||
|
||||
packages = theme.requiredPkgs;
|
||||
};
|
||||
|
||||
dconf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
|
||||
"org/gnome/desktop/interface".cursor-theme = cursorTheme;
|
||||
"org/gnome/desktop/interface".gtk-theme = gtkTheme;
|
||||
"org/gnome/desktop/interface".icon-theme = iconTheme;
|
||||
"org/gnome/desktop/interface".cursor-theme = theme.cursorTheme;
|
||||
"org/gnome/desktop/interface".gtk-theme = theme.gtkTheme;
|
||||
"org/gnome/desktop/interface".icon-theme = theme.iconTheme;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -250,18 +234,18 @@ in
|
||||
enable = true;
|
||||
|
||||
cursorTheme = {
|
||||
name = cursorTheme;
|
||||
package = cursorThemePkg;
|
||||
name = theme.cursorTheme;
|
||||
package = theme.cursorThemePkg;
|
||||
};
|
||||
|
||||
theme = {
|
||||
name = gtkTheme;
|
||||
package = gtkThemePkg;
|
||||
name = theme.gtkTheme;
|
||||
package = theme.gtkThemePkg;
|
||||
};
|
||||
|
||||
iconTheme = {
|
||||
name = iconTheme;
|
||||
package = iconThemePkg;
|
||||
name = theme.iconTheme;
|
||||
package = theme.iconThemePkg;
|
||||
};
|
||||
|
||||
gtk3.extraConfig = {
|
||||
@@ -273,9 +257,9 @@ in
|
||||
};
|
||||
|
||||
font = {
|
||||
name = "JetBrainsMono NFM";
|
||||
package = pkgs.nerd-fonts.jetbrains-mono;
|
||||
size = 12;
|
||||
name = theme.fontName;
|
||||
package = theme.fontPackage;
|
||||
size = theme.fontSize;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user