added random hyprpaper script and options
hyprpaper: added script for a random background every 15mins
|
@ -119,206 +119,206 @@
|
|||
monitor = desc:LG Electronics LG IPS QHD 109NTWG4Y865,preferred,-2560x0,auto
|
||||
monitor=,preferred,auto,auto
|
||||
|
||||
# unscale XWayland apps
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
# unscale XWayland apps
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
# toolkit-specific scale
|
||||
env = GDK_SCALE,${gdk_scale}
|
||||
# toolkit-specific scale
|
||||
env = GDK_SCALE,${gdk_scale}
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,${cursor_size}
|
||||
env = QT_QPA_PLATFORMTHEME,${qt_platform_theme}
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,${cursor_size}
|
||||
env = QT_QPA_PLATFORMTHEME,${qt_platform_theme}
|
||||
|
||||
# Execute necessary apps
|
||||
exec-once = ${pkgs.hyprshade}/bin/hyprshade auto
|
||||
exec-once = ${pkgs.hypridle}/bin/hypridle
|
||||
exec-once = ${wallpaperd}
|
||||
exec-once = ${bar}
|
||||
exec-once = ${notifyd}
|
||||
exec-once = ${pkgs.wl-clipboard}/bin/wl-paste --type text --watch cliphist store
|
||||
exec-once = ${pkgs.wl-clipboard}/bin/wl-paste --type image --watch cliphist store
|
||||
# Execute necessary apps
|
||||
exec-once = ${pkgs.hyprshade}/bin/hyprshade auto
|
||||
exec-once = ${pkgs.hypridle}/bin/hypridle
|
||||
exec-once = ${wallpaperd}
|
||||
exec-once = ${bar}
|
||||
exec-once = ${notifyd}
|
||||
exec-once = ${pkgs.wl-clipboard}/bin/wl-paste --type text --watch cliphist store
|
||||
exec-once = ${pkgs.wl-clipboard}/bin/wl-paste --type image --watch cliphist store
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = us
|
||||
follow_mouse = 1
|
||||
sensitivity = 0 # -1.0 to 1.0, 0 means no modification.
|
||||
touchpad {
|
||||
clickfinger_behavior = true
|
||||
drag_lock = true
|
||||
middle_button_emulation = true
|
||||
natural_scroll = yes
|
||||
tap-to-click = true
|
||||
}
|
||||
}
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = us
|
||||
follow_mouse = 1
|
||||
sensitivity = 0 # -1.0 to 1.0, 0 means no modification.
|
||||
touchpad {
|
||||
clickfinger_behavior = true
|
||||
drag_lock = true
|
||||
middle_button_emulation = true
|
||||
natural_scroll = yes
|
||||
tap-to-click = true
|
||||
}
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 10
|
||||
border_size = 2
|
||||
col.active_border = rgba(${border_secondary}) rgba(${border_primary}) 45deg
|
||||
col.inactive_border = rgba(${border_inactive})
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 10
|
||||
border_size = 2
|
||||
col.active_border = rgba(${border_secondary}) rgba(${border_primary}) 45deg
|
||||
col.inactive_border = rgba(${border_inactive})
|
||||
|
||||
layout = dwindle
|
||||
layout = dwindle
|
||||
|
||||
allow_tearing = false
|
||||
}
|
||||
allow_tearing = false
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 1
|
||||
}
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(${drop_shadow})
|
||||
decoration {
|
||||
rounding = 10
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 1
|
||||
}
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(${drop_shadow})
|
||||
|
||||
dim_special = 0.5
|
||||
dim_special = 0.5
|
||||
|
||||
# Window-specific rules
|
||||
layerrule = blur, waybar
|
||||
layerrule = ignorezero, waybar
|
||||
layerrule = blur, launcher
|
||||
layerrule = blur, notifications
|
||||
layerrule = ignorezero, notifications
|
||||
layerrule = blur, logout_dialog
|
||||
}
|
||||
# Window-specific rules
|
||||
layerrule = blur, waybar
|
||||
layerrule = ignorezero, waybar
|
||||
layerrule = blur, launcher
|
||||
layerrule = blur, notifications
|
||||
layerrule = ignorezero, notifications
|
||||
layerrule = blur, logout_dialog
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = specialWorkspace, 1, 6, default, slidevert
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = specialWorkspace, 1, 6, default, slidevert
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
dwindle {
|
||||
preserve_split = yes # you probably want this
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
}
|
||||
dwindle {
|
||||
preserve_split = yes # you probably want this
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
}
|
||||
|
||||
master {
|
||||
always_center_master = true
|
||||
new_is_master = false
|
||||
}
|
||||
master {
|
||||
always_center_master = true
|
||||
new_is_master = false
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
focus_on_activate = true
|
||||
vfr = true
|
||||
}
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
focus_on_activate = true
|
||||
vfr = true
|
||||
}
|
||||
|
||||
# Window Rules
|
||||
windowrulev2 = center(1),class:(blueberry.py)
|
||||
windowrulev2 = center(1),class:(nmtui)
|
||||
windowrulev2 = center(1),class:(pavucontrol)
|
||||
windowrulev2 = float,class:(blueberry.py)
|
||||
windowrulev2 = float,class:(nmtui)
|
||||
windowrulev2 = float,class:(pavucontrol)
|
||||
windowrulev2 = suppressevent maximize, class:.*
|
||||
# Window Rules
|
||||
windowrulev2 = center(1),class:(blueberry.py)
|
||||
windowrulev2 = center(1),class:(nmtui)
|
||||
windowrulev2 = center(1),class:(pavucontrol)
|
||||
windowrulev2 = float,class:(blueberry.py)
|
||||
windowrulev2 = float,class:(nmtui)
|
||||
windowrulev2 = float,class:(pavucontrol)
|
||||
windowrulev2 = suppressevent maximize, class:.*
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = ${modifier}, T, exec, ${terminal}
|
||||
bind = ${modifier}, F, exec, ${fileManager}
|
||||
bind = ${modifier}, B, exec, ${browser}
|
||||
bind = ${modifier}, E, exec, ${editor}
|
||||
bind = ${modifier}, R, exec, ${launcher}
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = ${modifier}, T, exec, ${terminal}
|
||||
bind = ${modifier}, F, exec, ${fileManager}
|
||||
bind = ${modifier}, B, exec, ${browser}
|
||||
bind = ${modifier}, E, exec, ${editor}
|
||||
bind = ${modifier}, R, exec, ${launcher}
|
||||
|
||||
# Manage session.
|
||||
bind = ${modifier}, C, killactive,
|
||||
bind = ${modifier}, M, exec, ${logout}
|
||||
bind = ${modifier}, L, exec, ${lock}
|
||||
# Manage session.
|
||||
bind = ${modifier}, C, killactive,
|
||||
bind = ${modifier}, M, exec, ${logout}
|
||||
bind = ${modifier}, L, exec, ${lock}
|
||||
|
||||
# Basic window management.
|
||||
bind = ${modifier} SHIFT, W, fullscreen
|
||||
bind = ${modifier} SHIFT, V, togglefloating,
|
||||
bind = ${modifier} SHIFT, P, pseudo, # dwindle
|
||||
bind = ${modifier} SHIFT, J, togglesplit, # dwindle
|
||||
# Basic window management.
|
||||
bind = ${modifier} SHIFT, W, fullscreen
|
||||
bind = ${modifier} SHIFT, V, togglefloating,
|
||||
bind = ${modifier} SHIFT, P, pseudo, # dwindle
|
||||
bind = ${modifier} SHIFT, J, togglesplit, # dwindle
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = ${modifier}, left, movefocus, l
|
||||
bind = ${modifier}, right, movefocus, r
|
||||
bind = ${modifier}, up, movefocus, u
|
||||
bind = ${modifier}, down, movefocus, d
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = ${modifier}, left, movefocus, l
|
||||
bind = ${modifier}, right, movefocus, r
|
||||
bind = ${modifier}, up, movefocus, u
|
||||
bind = ${modifier}, down, movefocus, d
|
||||
|
||||
# Gnome-like workspaces.
|
||||
bind = ${modifier}, 1, exec, ${hyprnome} --previous
|
||||
bind = ${modifier}, 2, exec, ${hyprnome}
|
||||
bind = ${modifier} SHIFT, 1, exec, ${hyprnome} --previous --move
|
||||
bind = ${modifier} SHIFT, 2, exec, ${hyprnome} --move
|
||||
# Gnome-like workspaces.
|
||||
bind = ${modifier}, 1, exec, ${hyprnome} --previous
|
||||
bind = ${modifier}, 2, exec, ${hyprnome}
|
||||
bind = ${modifier} SHIFT, 1, exec, ${hyprnome} --previous --move
|
||||
bind = ${modifier} SHIFT, 2, exec, ${hyprnome} --move
|
||||
|
||||
# # Switch workspaces with mainMod + [0-9]
|
||||
# bind = ${modifier}, 1, workspace, 1
|
||||
# bind = ${modifier}, 2, workspace, 2
|
||||
# bind = ${modifier}, 3, workspace, 3
|
||||
# bind = ${modifier}, 4, workspace, 4
|
||||
# bind = ${modifier}, 5, workspace, 5
|
||||
# bind = ${modifier}, 6, workspace, 6
|
||||
# bind = ${modifier}, 7, workspace, 7
|
||||
# bind = ${modifier}, 8, workspace, 8
|
||||
# bind = ${modifier}, 9, workspace, 9
|
||||
# bind = ${modifier}, 0, workspace, 10
|
||||
# # Switch workspaces with mainMod + [0-9]
|
||||
# bind = ${modifier}, 1, workspace, 1
|
||||
# bind = ${modifier}, 2, workspace, 2
|
||||
# bind = ${modifier}, 3, workspace, 3
|
||||
# bind = ${modifier}, 4, workspace, 4
|
||||
# bind = ${modifier}, 5, workspace, 5
|
||||
# bind = ${modifier}, 6, workspace, 6
|
||||
# bind = ${modifier}, 7, workspace, 7
|
||||
# bind = ${modifier}, 8, workspace, 8
|
||||
# bind = ${modifier}, 9, workspace, 9
|
||||
# bind = ${modifier}, 0, workspace, 10
|
||||
|
||||
# # Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
# bind = ${modifier} SHIFT, 1, movetoworkspace, 1
|
||||
# bind = ${modifier} SHIFT, 2, movetoworkspace, 2
|
||||
# bind = ${modifier} SHIFT, 3, movetoworkspace, 3
|
||||
# bind = ${modifier} SHIFT, 4, movetoworkspace, 4
|
||||
# bind = ${modifier} SHIFT, 5, movetoworkspace, 5
|
||||
# bind = ${modifier} SHIFT, 6, movetoworkspace, 6
|
||||
# bind = ${modifier} SHIFT, 7, movetoworkspace, 7
|
||||
# bind = ${modifier} SHIFT, 8, movetoworkspace, 8
|
||||
# bind = ${modifier} SHIFT, 9, movetoworkspace, 9
|
||||
# bind = ${modifier} SHIFT, 0, movetoworkspace, 10
|
||||
# # Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
# bind = ${modifier} SHIFT, 1, movetoworkspace, 1
|
||||
# bind = ${modifier} SHIFT, 2, movetoworkspace, 2
|
||||
# bind = ${modifier} SHIFT, 3, movetoworkspace, 3
|
||||
# bind = ${modifier} SHIFT, 4, movetoworkspace, 4
|
||||
# bind = ${modifier} SHIFT, 5, movetoworkspace, 5
|
||||
# bind = ${modifier} SHIFT, 6, movetoworkspace, 6
|
||||
# bind = ${modifier} SHIFT, 7, movetoworkspace, 7
|
||||
# bind = ${modifier} SHIFT, 8, movetoworkspace, 8
|
||||
# bind = ${modifier} SHIFT, 9, movetoworkspace, 9
|
||||
# bind = ${modifier} SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Example special workspace (scratchpad)
|
||||
bind = ${modifier}, S, togglespecialworkspace, magic
|
||||
bind = ${modifier} SHIFT, S, movetoworkspace, special:magic
|
||||
# Example special workspace (scratchpad)
|
||||
bind = ${modifier}, S, togglespecialworkspace, magic
|
||||
bind = ${modifier} SHIFT, S, movetoworkspace, special:magic
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = ${modifier}, mouse_down, workspace, e+1
|
||||
bind = ${modifier}, mouse_up, workspace, e-1
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = ${modifier}, mouse_down, workspace, e+1
|
||||
bind = ${modifier}, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = ${modifier}, mouse:272, movewindow
|
||||
bindm = ${modifier}, mouse:273, resizewindow
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = ${modifier}, mouse:272, movewindow
|
||||
bindm = ${modifier}, mouse:273, resizewindow
|
||||
|
||||
# Display, volume, microphone, and media keys.
|
||||
bindle = , xf86monbrightnessup, exec, ${brightness_up}
|
||||
bindle = , xf86monbrightnessdown, exec, ${brightness_down}
|
||||
bindle = , xf86audioraisevolume, exec, ${volume_up};
|
||||
bindle = , xf86audiolowervolume, exec, ${volume_down};
|
||||
bindl = , xf86audiomute, exec, ${volume_mute}
|
||||
bindl = , xf86audiomicmute, exec, ${mic_mute}
|
||||
bindl = , xf86audioplay, exec, ${media_play}
|
||||
bindl = , xf86audioprev, exec, ${media_previous}
|
||||
bindl = , xf86audionext, exec, ${media_next}
|
||||
# Display, volume, microphone, and media keys.
|
||||
bindle = , xf86monbrightnessup, exec, ${brightness_up}
|
||||
bindle = , xf86monbrightnessdown, exec, ${brightness_down}
|
||||
bindle = , xf86audioraisevolume, exec, ${volume_up};
|
||||
bindle = , xf86audiolowervolume, exec, ${volume_down};
|
||||
bindl = , xf86audiomute, exec, ${volume_mute}
|
||||
bindl = , xf86audiomicmute, exec, ${mic_mute}
|
||||
bindl = , xf86audioplay, exec, ${media_play}
|
||||
bindl = , xf86audioprev, exec, ${media_previous}
|
||||
bindl = , xf86audionext, exec, ${media_next}
|
||||
|
||||
# Extra bindings for petalburg.
|
||||
bind = , xf86launch4, exec, pp-adjuster
|
||||
bind = , xf86launch1, exec, ${pkgs.hyprshade}/bin/hyprshade toggle
|
||||
bind = , xf86launch2, exec, ${media_play}
|
||||
# Extra bindings for petalburg.
|
||||
bind = , xf86launch4, exec, pp-adjuster
|
||||
bind = , xf86launch1, exec, ${pkgs.hyprshade}/bin/hyprshade toggle
|
||||
bind = , xf86launch2, exec, ${media_play}
|
||||
|
||||
# Screenshot with hyprshot.
|
||||
bind = , PRINT, exec, ${screenshot_screen}
|
||||
# Screenshot with hyprshot.
|
||||
bind = , PRINT, exec, ${screenshot_screen}
|
||||
|
||||
# Show/hide waybar.
|
||||
bind = ${modifier}, F11, exec, pkill -SIGUSR1 waybar
|
||||
# Show/hide waybar.
|
||||
bind = ${modifier}, F11, exec, pkill -SIGUSR1 waybar
|
||||
'';
|
||||
|
||||
};
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
{ pkgs, lib, config, ... }: {
|
||||
|
||||
imports = [ ./hyprpaper-random.nix ];
|
||||
|
||||
options = {
|
||||
desktopEnv.hyprland.hyprpaper.enable =
|
||||
lib.mkEnableOption "Enables hyprpaper and assorted wallpapers.";
|
||||
|
@ -10,13 +12,29 @@
|
|||
# Packages that should be installed to the user profile.
|
||||
home.packages = with pkgs; [ hyprpaper ];
|
||||
|
||||
desktopEnv.hyprland.hyprpaper.randomWallpaper.enable = lib.mkDefault true;
|
||||
|
||||
xdg.configFile."hypr/hyprpaper.conf".source = ./hyprpaper.conf;
|
||||
|
||||
xdg.configFile."hypr/wallpapers/greenCity.jpg".source =
|
||||
./wallpapers/greenCity.jpg;
|
||||
xdg.configFile."hypr/wallpapers/evening-sky.png".source =
|
||||
./wallpapers/evening-sky.png;
|
||||
xdg.configFile."hypr/wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg".source =
|
||||
./wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg;
|
||||
xdg.configFile."hypr/wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg".source =
|
||||
./wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-6d7xmx.jpg".source =
|
||||
./wallpapers/wallhaven-6d7xmx.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-83v96o.png".source =
|
||||
./wallpapers/wallhaven-83v96o.png;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-285rjm.jpg".source =
|
||||
./wallpapers/wallhaven-285rjm.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-4219wy.jpg".source =
|
||||
./wallpapers/wallhaven-4219wy.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-4267k6.jpg".source =
|
||||
./wallpapers/wallhaven-4267k6.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-d6ggel.jpg".source =
|
||||
./wallpapers/wallhaven-d6ggel.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-q2o2w5.jpg".source =
|
||||
./wallpapers/wallhaven-q2o2w5.jpg;
|
||||
xdg.configFile."hypr/wallpapers/wallhaven-zm7x5o.jpg".source =
|
||||
./wallpapers/wallhaven-zm7x5o.jpg;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
|
||||
let
|
||||
hyprpaper-random = pkgs.writeShellScriptBin "hyprpaper-random" ''
|
||||
directory=${config.home.homeDirectory}/.config/hypr/wallpapers
|
||||
monitor=`hyprctl monitors | grep Monitor | awk '{print $2}'`
|
||||
|
||||
if [ -d "$directory" ]; then
|
||||
while true; do
|
||||
sleep 30
|
||||
hyprctl hyprpaper unload all
|
||||
for m in ''${monitor[@]}; do
|
||||
random_background=$(ls $directory/* | shuf -n 1)
|
||||
hyprctl hyprpaper preload $random_background
|
||||
hyprctl hyprpaper wallpaper "$m,$random_background"
|
||||
done
|
||||
sleep 870
|
||||
done
|
||||
fi
|
||||
'';
|
||||
in {
|
||||
options = {
|
||||
desktopEnv.hyprland.hyprpaper.randomWallpaper.enable =
|
||||
lib.mkEnableOption "Enables hyprpaper random wallpaper script.";
|
||||
};
|
||||
|
||||
config =
|
||||
lib.mkIf config.desktopEnv.hyprland.hyprpaper.randomWallpaper.enable {
|
||||
|
||||
# Packages that should be installed to the user profile.
|
||||
home.packages = with pkgs; [ hyprpaper-random ];
|
||||
|
||||
wayland.windowManager.hyprland.extraConfig = "exec-once = ${hyprpaper-random}/bin/hyprpaper-random";
|
||||
};
|
||||
}
|
|
@ -1,6 +1,4 @@
|
|||
preload = ~/.config/hypr/wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg
|
||||
preload = ~/.config/hypr/wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg
|
||||
preload = ~/.config/hypr/wallpapers/tokyoGreen.jpg
|
||||
|
||||
wallpaper = ,~/.config/hypr/wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg
|
||||
|
||||
|
|
After Width: | Height: | Size: 4.3 MiB |
Before Width: | Height: | Size: 4.1 MiB |
Before Width: | Height: | Size: 2.4 MiB |
After Width: | Height: | Size: 716 KiB |
After Width: | Height: | Size: 1.4 MiB |
After Width: | Height: | Size: 3 MiB |
After Width: | Height: | Size: 4.6 MiB |
After Width: | Height: | Size: 5.6 MiB |
After Width: | Height: | Size: 2.4 MiB |
After Width: | Height: | Size: 4.7 MiB |
After Width: | Height: | Size: 4.1 MiB |
|
@ -13,6 +13,8 @@
|
|||
|
||||
home.stateVersion = "23.11";
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
desktopEnv.hyprland.hyprpaper.randomWallpaper.enable = false;
|
||||
};
|
||||
|
||||
users.users.aly.hashedPassword =
|
||||
|
|