This commit is contained in:
2026-03-31 20:07:15 -05:00
parent 297b993992
commit 59a6dc79f0
15 changed files with 229 additions and 187 deletions

View File

@@ -0,0 +1,35 @@
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
bind = $mainMod, F1, submap dwindle
submap = master
bind = $mainMod, F2, submap master
bind = $mainMod, F3, submap scrolling
bind = $mainMod, End, submap reset
bind = $mainMod, down, workspace, r+1
bind = $mainMod, up, workspace, r-1
bind = $mainMod, left, layoutmsg, move -col
bind = $mainMod, right, layoutmsg, move +col
bind = $mainMod SHIFT, down, movetoworkspace, r+1
bind = $mainMod SHIFT, up, movetoworkspace, r-1
bind = $mainMod SHIFT, left, layoutmsg, swapcol l
bind = $mainMod SHIFT, right, layoutmsg, swapcol r
bind = $mainMod, H, layoutmsg, focus l
bind = $mainMod, J, workspace, e+1
bind = $mainMod, K, workspace, e-1
bind = $mainMod, L, layoutmsg, focus r
bind = $mainMod SHIFT, H, layoutmsg, swapcol l
bind = $mainMod SHIFT, J, movetoworkspace, e+1
bind = $mainMod SHIFT, K, movetoworkspace, e-1
bind = $mainMod SHIFT, L, layoutmsg, swapcol r
submap = reset

View File

@@ -1,108 +0,0 @@
# sample hyprlock.conf
# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock
#
# rendered text in all widgets supports pango markup (e.g. <b> or <i> tags)
# ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#general-remarks
#
# shortcuts to clear password buffer: ESC, Ctrl+U, Ctrl+Backspace
#
# you can get started by copying this config to ~/.config/hypr/hyprlock.conf
#
$font = Monospace
source = ~/.cache/wal/colors-hypr.conf
general {
hide_cursor = false
}
# uncomment to enable fingerprint authentication
# auth {
# fingerprint {
# enabled = true
# ready_message = Scan fingerprint to unlock
# present_message = Scanning...
# retry_delay = 250 # in milliseconds
# }
# }
animations {
enabled = true
bezier = linear, 1, 1, 0, 0
animation = fadeIn, 1, 5, linear
animation = fadeOut, 1, 5, linear
animation = inputFieldDots, 1, 2, linear
}
background {
monitor =
path = screenshot
blur_passes = 3
}
input-field {
monitor =
size = 20%, 5%
outline_thickness = 3
inner_color = rgba(0, 0, 0, 0.0) # no fill
outer_color = $color1 $color5 100deg
check_color = $color2 $color6 120deg
fail_color = $color3 $color7 40deg
font_color = rgb(143, 143, 143)
fade_on_empty = false
rounding = 15
font_family = $font
placeholder_text = Input password...
fail_text = $PAMFAIL
# uncomment to use a letter instead of a dot to indicate the typed password
# dots_text_format = *
# dots_size = 0.4
dots_spacing = 0.3
# uncomment to use an input indicator that does not show the password length (similar to swaylock's input indicator)
# hide_input = true
position = 0, -20
halign = center
valign = center
}
# TIME
label {
monitor =
text = $TIME # ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#variable-substitution
font_size = 90
font_family = $font
position = -30, 0
halign = right
valign = top
}
# DATE
label {
monitor =
text = cmd[update:60000] date +"%A, %d %B %Y" # update every 60 seconds
font_size = 25
font_family = $font
position = -30, -150
halign = right
valign = top
}
label {
monitor =
text = $LAYOUT[en,ru]
font_size = 24
onclick = hyprctl switchxkblayout all next
position = 250, -20
halign = center
valign = center
}

View File

@@ -16,7 +16,7 @@ exec-once = onSystemStart
env = XCURSOR_SIZE,16
source = ~/.config/hypr/otf.conf
source = ~/.cache/wal/colors-hypr.conf
source = ~/.cache/wal/colors-hyprland.conf
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
@@ -81,22 +81,12 @@ animations {
}
source = ~/.config/hypr/dwindle.conf
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
source = ~/.config/hypr/master.conf
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_status = "master"
}
source = ~/.config/hypr/scroll.conf
scrolling {
column_width = 0.7
direction = "right"
}
misc {
disable_hyprland_logo = false
@@ -208,19 +198,24 @@ bind = $mainMod SHIFT, 0, movetoworkspace, 10
bind = $mainMod SHIFT, Home, movetoworkspace, 11
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, down, workspace, e+1
bind = $mainMod, up, workspace, e-1
bind = $mainMod, down, workspace, r+1
bind = $mainMod, up, workspace, r-1
bind = $mainMod, left, layoutmsg, move -col
bind = $mainMod, right, layoutmsg, move +col
bind = $mainMod, H, layoutmsg, move -col
bind = $mainMod, J, workspace, r+1
bind = $mainMod, K, workspace, r-1
bind = $mainMod, L, layoutmsg, move +col
bind = $mainMod SHIFT, down, movetoworkspace, r+1
bind = $mainMod SHIFT, up, movetoworkspace, r-1
bind = $mainMod SHIFT, left, layoutmsg, swapcol l
bind = $mainMod SHIFT, right, layoutmsg, swapcol r
bind = $mainMod, H, layoutmsg, focus l
bind = $mainMod, J, workspace, e+1
bind = $mainMod, K, workspace, e-1
bind = $mainMod, L, layoutmsg, focus r
bind = $mainMod SHIFT, H, layoutmsg, swapcol l
bind = $mainMod SHIFT, J, movetoworkspace, r+1
bind = $mainMod SHIFT, K, movetoworkspace, r-1
bind = $mainMod SHIFT, J, movetoworkspace, e+1
bind = $mainMod SHIFT, K, movetoworkspace, e-1
bind = $mainMod SHIFT, L, layoutmsg, swapcol r
#switch network connections
@@ -231,10 +226,14 @@ bind = CTRL SHIFT, 2, exec, nmcli connection up CXNK00813829
bind = CTRL SHIFT, 3, exec, nmcli connection up ATT9MhT2ql
#brightness keys
bind = , XF86MonBrightnessUp, exec, brightnessctl set +10%
bind = , XF86MonBrightnessDown, exec, brightnessctl set 10%-
binde = SHIFT, XF86MonBrightnessUp, exec, brightnessctl set +2%
binde = SHIFT, XF86MonBrightnessDown, exec, brightnessctl set 2%-
binde = , XF86MonBrightnessUp, exec, brightnessctl set +10%
binde = , XF86MonBrightnessDown, exec, brightnessctl set 10%-
#volume keys
binde = SHIFT, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 2%+
binde = SHIFT, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 2%-
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 10%+
binde = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 10%-
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle
@@ -256,27 +255,7 @@ bind = $mainMod SHIFT, D, movewindow, r
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod SHIFT, mouse:272, resizewindow
$scratchpadsize = size (monitor_w*0.6) (monitor_h*0.8)
$kitty = ^(scratchpad-kitty)$
windowrule = float on, match:class $kitty
windowrule = $scratchpadsize, match:class $kitty
windowrule = workspace special silent, match:class $kitty
$files = ^(scratchpad-files)$
windowrule = float on, match:class $files
windowrule = $scratchpadsize, match:class $files
windowrule = workspace special silent, match:class $files
$cal = ^(scratchpad-cal)$
windowrule = float on, match:class $cal
windowrule = $scratchpadsize, match:class $cal
windowrule = workspace special silent, match:class $cal
bind = $mainMod, semicolon, exec, pypr toggle lf
bind = $mainMod, E, exec, pypr toggle kitty
bind = $mainMod, C, exec, pypr toggle calendar
source = ~/.config/hypr/pypr.conf
bind = CTRL SHIFT, Home, exec, ssh nathan@esotericbytes.com -fL 5900:localhost:5900 sleep 10; vncviewer localhost:5900 -fullscreen
bind = CTRL SHIFT, Home, submap, clean

View File

@@ -0,0 +1,35 @@
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_status = "master"
}
bind = $mainMod, F2, submap master
submap = master
bind = $mainMod, F1, submap dwindle
bind = $mainMod, F3, submap scrolling
bind = $mainMod, End, submap reset
bind = $mainMod, down, workspace, r+1
bind = $mainMod, up, workspace, r-1
bind = $mainMod, left, layoutmsg, move -col
bind = $mainMod, right, layoutmsg, move +col
bind = $mainMod SHIFT, down, movetoworkspace, r+1
bind = $mainMod SHIFT, up, movetoworkspace, r-1
bind = $mainMod SHIFT, left, layoutmsg, swapcol l
bind = $mainMod SHIFT, right, layoutmsg, swapcol r
bind = $mainMod, H, layoutmsg, focus l
bind = $mainMod, J, workspace, e+1
bind = $mainMod, K, workspace, e-1
bind = $mainMod, L, layoutmsg, focus r
bind = $mainMod SHIFT, H, layoutmsg, swapcol l
bind = $mainMod SHIFT, J, movetoworkspace, e+1
bind = $mainMod SHIFT, K, movetoworkspace, e-1
bind = $mainMod SHIFT, L, layoutmsg, swapcol r
submap = reset

View File

@@ -0,0 +1,21 @@
$scratchpadsize = size (monitor_w*0.6) (monitor_h*0.8)
$kitty = ^(scratchpad-kitty)$
windowrule = float on, match:class $kitty
windowrule = $scratchpadsize, match:class $kitty
windowrule = workspace special silent, match:class $kitty
$files = ^(scratchpad-files)$
windowrule = float on, match:class $files
windowrule = $scratchpadsize, match:class $files
windowrule = workspace special silent, match:class $files
$cal = ^(scratchpad-cal)$
windowrule = float on, match:class $cal
windowrule = $scratchpadsize, match:class $cal
windowrule = workspace special silent, match:class $cal
bind = $mainMod, semicolon, exec, pypr toggle files
bind = $mainMod, E, exec, pypr toggle kitty
bind = $mainMod, C, exec, pypr toggle calendar

View File

@@ -0,0 +1,35 @@
scrolling {
column_width = 0.7
direction = "right"
}
bind = $mainMod, F3, submap scrolling
submap = scrolling
bind = $mainMod, F1, submap dwindle
bind = $mainMod, F2, submap master
bind = $mainMod, End, submap reset
bind = $mainMod, down, workspace, r+1
bind = $mainMod, up, workspace, r-1
bind = $mainMod, left, layoutmsg, move -col
bind = $mainMod, right, layoutmsg, move +col
bind = $mainMod SHIFT, down, movetoworkspace, r+1
bind = $mainMod SHIFT, up, movetoworkspace, r-1
bind = $mainMod SHIFT, left, layoutmsg, swapcol l
bind = $mainMod SHIFT, right, layoutmsg, swapcol r
bind = $mainMod, H, layoutmsg, focus l
bind = $mainMod, J, workspace, e+1
bind = $mainMod, K, workspace, e-1
bind = $mainMod, L, layoutmsg, focus r
bind = $mainMod SHIFT, H, layoutmsg, swapcol l
bind = $mainMod SHIFT, J, movetoworkspace, e+1
bind = $mainMod SHIFT, K, movetoworkspace, e-1
bind = $mainMod SHIFT, L, layoutmsg, swapcol r
submap = reset

View File

@@ -1,18 +0,0 @@
$foregroundCol = 0xff{foreground.strip}
$backgroundCol = 0xff{background.strip}
$color0 = 0xff{color0.strip}
$color1 = 0xff{color1.strip}
$color2 = 0xff{color2.strip}
$color3 = 0xff{color3.strip}
$color4 = 0xff{color4.strip}
$color5 = 0xff{color5.strip}
$color6 = 0xff{color6.strip}
$color7 = 0xff{color7.strip}
$color8 = 0xff{color8.strip}
$color9 = 0xff{color9.strip}
$color10 = 0xff{color10.strip}
$color11 = 0xff{color11.strip}
$color12 = 0xff{color12.strip}
$color13 = 0xff{color13.strip}
$color14 = 0xff{color14.strip}
$color15 = 0xff{color15.strip}

View File

@@ -0,0 +1,18 @@
set -g @background {background}
set -g @foreground {foreground}
set -g @color0 {color0}
set -g @color1 {color1}
set -g @color2 {color2}
set -g @color3 {color3}
set -g @color4 {color4}
set -g @color5 {color5}
set -g @color6 {color6}
set -g @color7 {color7}
set -g @color8 {color8}
set -g @color9 {color9}
set -g @color10 {color10}
set -g @color11 {color11}
set -g @color12 {color12}
set -g @color13 {color13}
set -g @color14 {color14}
set -g @color15 {color15}

View File

@@ -35,14 +35,14 @@
if [[ ''$ext == "gif" || ''$ext == "mp4" ]]; then
yes | ${pkgs.ffmpeg}/bin/ffmpeg -i "''$img" -vframes 1 /tmp/nathan/tmp.jpg >> ''$out
cp /tmp/nathan/tmp.jpg /tmp/nathan/tmp2.jpg
pidof mpvpaper && pkill mpvpaper
pidof mpvpaper >> $out && pkill mpvpaper
${pkgs.swww}/bin/swww img /tmp/nathan/tmp.jpg -t wipe >> ''$out
sleep 0.4
sleep 0.6
hyprctl dispatch exec "${pkgs.mpvpaper}/bin/mpvpaper ALL ''$img -o loop"
rm /tmp/nathan/tmp2.jpg
else
yes | ${pkgs.ffmpeg}/bin/ffmpeg -i "''$img" /tmp/nathan/tmp.jpg >> ''$out
pidof mpvpaper && pkill mpvpaper
pidof mpvpaper >> $out && pkill mpvpaper
hyprctl dispatch exec "${pkgs.swww}/bin/swww img ''$img -t wipe" >> ''$out
fi
@@ -72,6 +72,7 @@
(pkgs.writeShellScriptBin "colorPrefix" ''
pidof firefox > /dev/null && ${pkgs.pywalfox-native}/bin/pywalfox update &
pidof kitty > /dev/null && pkill -USR1 kitty
kitten @ send-text --match cmdline:zsh \\r
pidof cava > /dev/null && pkill -USR1 cava
for i in ''$(ls /run/user/1000 | grep nvim); do
${pkgs.neovim-remote}/bin/nvr -s --servername /run/user/1000/''$i --remote-send '<cmd>colorscheme pywal<CR>';
@@ -99,8 +100,6 @@
setcursor Bibata-Modern-Classic 16"
sleep 3
hyprctl reload
hyprctl dispatch exec ${pkgs.pyprland}/bin/pypr toggle calendar
#tmux new-session -s hyprland
'')
];

View File

@@ -31,7 +31,7 @@
allow_remote_control yes
'';
'';
};
};
}

View File

@@ -12,6 +12,13 @@
(mkIf config.homeconfig.wal.enable (mkBefore ''
cat ${config.home.homeDirectory}/.cache/wal/sequences
eval "$(oh-my-posh init zsh --config ${config.home.homeDirectory}/.cache/wal/ohmyposh.toml)"
function _colorRefresh() {
eval $(oh-my-posh init zsh --config ~/.cache/wal/ohmyposh.toml)
zle accept-line
}
zle -N _colorRefresh
bindkey '\r' _colorRefresh
''))
(mkIf (!config.homeconfig.wal.enable) (mkBefore ''

View File

@@ -10,7 +10,7 @@
mouse = true;
baseIndex = 1;
baseIndex = 0;
keyMode = "vi";
@@ -18,6 +18,48 @@
shell = "${pkgs.zsh}/bin/zsh";
extraConfig = ''
set-option -g status-position top
set -g @background #0B0704
set -g @foreground #c2c1c0
set -g @color0 #0B0704
set -g @color1 #846550
set -g @color2 #4a526c
set -g @color3 #538281
set -g @color4 #7b8179
set -g @color5 #b4a589
set -g @color6 #78ada3
set -g @color7 #958d89
set -g @color8 #665b54
set -g @color9 #B1876B
set -g @color10 #636E90
set -g @color11 #6FAEAC
set -g @color12 #A5ADA2
set -g @color13 #F1DCB7
set -g @color14 #A1E7DA
set -g @color15 #c2c1c0
source ~/.cache/wal/colors-tmux.conf
set @p `pwd`
set-option -g status-interval 1
set-option -g status-style fg=@background,bg=@color3
set-option -g status-left-length 50
set-option -g status-left "#[fg=@color12,bg=@color1] #[fg=@color1,bg=@color2]#[fg=@color14]#{user}@#H#[fg=@color2,bg=@color4]#[fg=@color2]#{s|/home/#{user}|~:@p}#[fg=@color4,bg=@background]"
set-option -g status-right "#[fg=@color2]#[fg=@color14,bg=@color2]%A %T#[fg=@color1]#[fg=@color12,bg=@color1]%D "
set-option -g window-status-separator '/'
set-option -g window-status-format '#[fg=@color3,bg=@color3]#[fg=@background,bg=@color3] #{window_index}: #{window_name} #[fg=@color3,bg=@color3]'
set-option -g window-status-current-format '#[fg=@color11,bg=@color3]#[fg=@background,bg=@color11,bold] #{window_index}: #{window_name} #[fg=@color11,bg=@color3]'
'';
};
};

View File

@@ -8,7 +8,7 @@
initContent = lib.mkOrder 1200 ''
bindkey ' ' magic-space
'';
'';
enableCompletion = true;

View File

@@ -1,4 +1,4 @@
{ inputs, ... }: {
{ self, inputs, ... }: {
flake.nixosModules.laptop = { config, pkgs, lib, ... }:
@@ -8,6 +8,8 @@
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
self.nixosModules.aurora-greeter
];
config = {

View File

@@ -1,17 +1,12 @@
{ inputs, ... }: {
flake.nixosModules.default = { config, lib, pkgs, ... }: {
flake.nixosModules.aurora-greeter = { config, lib, pkgs, ... }: {
imports = [
inputs.aurora.nixosModules.default
];
options.sysconfig.services.aurora-greeter.enable = lib.mkOption {
type = lib.types.bool;
default = false;
};
config = lib.mkIf config.sysconfig.services.aurora-greeter.enable {
config = {
services.aurora-greeter = {
enable = true;