yazi updates

This commit is contained in:
Miguel Palhas
2026-03-03 10:43:56 +00:00
parent 6385102d3d
commit c9f554e276
5 changed files with 314 additions and 292 deletions
+2 -1
View File
@@ -26,9 +26,10 @@
./monitors.nix
];
custom.hyprland.cursorSize = 32;
wayland.windowManager.hyprland.settings = {
exec-once = [
"hyprctl setcursor Nordzy-cursors 32"
];
workspace = [
+4 -3
View File
@@ -1,6 +1,7 @@
{ pkgs, inputs, ... }:
{ pkgs, config, inputs, ... }:
let
nordzy-cursors = pkgs.callPackage ../../../../pkgs/nordzy-cursors/package.nix { };
cursorSize = config.custom.hyprland.cursorSize;
in
{
home.packages = [
@@ -9,9 +10,9 @@ in
home.sessionVariables = {
HYPRCURSOR_THEME = "Nordzy-cursors"; # Dark variant (default)
HYPRCURSOR_SIZE = 24;
HYPRCURSOR_SIZE = cursorSize;
XCURSOR_THEME = "Nordzy-cursors";
XCURSOR_SIZE = 24;
XCURSOR_SIZE = cursorSize;
};
dconf = {
+40 -11
View File
@@ -1,13 +1,28 @@
{
config,
inputs,
lib,
pkgs,
...
}:
let
rofiLaunchers = import ../../../pkgs/rofi-launchers/package.nix { };
cfg = config.custom.hyprland;
in
{
options.custom.hyprland = {
yaziSize = lib.mkOption {
type = lib.types.str;
default = "1400 1400";
description = "Size of the yazi special workspace window";
};
cursorSize = lib.mkOption {
type = lib.types.int;
default = 24;
description = "Cursor size for XCURSOR_SIZE and HYPRCURSOR_SIZE";
};
};
imports = [
./rofi.nix
./cursor.nix
@@ -16,6 +31,7 @@ in
./wallpapers.nix
];
config = {
home.packages = with pkgs; [
hyprcursor
pamixer
@@ -125,13 +141,14 @@ in
env = [
"GDK_SCALE, 2.0"
"XCURSOR_SIZE, 24"
"XCURSOR_SIZE, ${toString cfg.cursorSize}"
"HYPRCURSOR_THEME, rose-pine-hyprcursor"
"HYPRCURSOR_SIZE, 24"
"HYPRCURSOR_SIZE, ${toString cfg.cursorSize}"
];
"exec-once" = [
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
"hyprctl setcursor Nordzy-cursors ${toString cfg.cursorSize}"
"hyprsunset"
"nerd-dictation begin --simulate-input-tool WTYPE --suspend-on-start && touch ~/.cache/nerd-dictation-suspended"
"noctalia-shell"
@@ -148,7 +165,7 @@ in
"f[1], gapsout:0, gapsin:0"
"special:terminal, on-created-empty:[float; size 1400 1000; move center] kitty, persistent:false"
"special:yazi, on-created-empty:[float; size 1400 1000; move center] kitty --session sessions/yazi, persistent:false"
"special:yazi, on-created-empty:[float; size ${cfg.yaziSize}; move center] kitty --session sessions/yazi, persistent:false"
];
windowrule = [
@@ -157,21 +174,32 @@ in
# imv
"float on, match:class imv"
"move cursor -50% -50%, match:class imv"
"size 1920 1080, match:class imv"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class imv"
# mpv
"float on, match:class mpv"
"size 1920 1080, match:class mpv"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class mpv"
"float on, match:title termfilechooser"
"size 1200 800, match:title termfilechooser"
"move center, match:title termfilechooser"
# thunar
"float on, match:class thunar"
"size 1800 1200, match:class thunar"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class thunar"
# bluetooth
"float on, match:class blueman-manager"
"move cursor -50% -50%, match:class blueman-manager"
"size 600 400, match:class blueman-manager"
"float on, match:class \\.blueman-manager-wrapped"
"size 1200 800, match:class \\.blueman-manager-wrapped"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class \\.blueman-manager-wrapped"
# pavucontrol
"float on, match:class pavucontrol"
"move cursor -50% -50%, match:class pavucontrol"
"size 600 600, match:class pavucontrol"
"float on, match:class org\\.pulseaudio\\.pavucontrol"
"size 1200 1200, match:class org\\.pulseaudio\\.pavucontrol"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class org\\.pulseaudio\\.pavucontrol"
# metamask
"float on, match:class chrome-nkbihfbeogaeaoehlefnkodbefgpgknn-.*"
@@ -181,7 +209,7 @@ in
# claude for chrome
"float on, match:class chrome-fcoeoabgfenejglbffodgkkbkcdhcgfn-.*"
"move cursor -50% -50%, match:class chrome-fcoeoabgfenejglbffodgkkbkcdhcgfn-.*"
"move (cursor_x-(window_w*0.5)) (cursor_y-(window_h*0.5)), match:class chrome-fcoeoabgfenejglbffodgkkbkcdhcgfn-.*"
# no gaps when only window
"border_size 0, match:float 0, match:workspace w[t1]"
@@ -305,4 +333,5 @@ in
];
};
};
};
}
+1 -9
View File
@@ -8,15 +8,7 @@
xdg.configFile."xdg-desktop-portal-termfilechooser/config".text = ''
[filechooser]
cmd=${pkgs.writeShellScript "termfilechooser-yazi" ''
output="$1"
chooser=$(mktemp)
kitty -T termfilechooser yazi --chooser-file="$chooser"
if [ -s "$chooser" ]; then
cat "$chooser" > "$output"
fi
rm -f "$chooser"
''}
cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
default_dir=$HOME
'';
}
+5 -6
View File
@@ -31,20 +31,19 @@
LIBVA_DRIVER_NAME = "nvidia";
GDM_BACKEND = "nvidia-drm";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
# Larger cursor size for desktop (4K monitors)
XCURSOR_SIZE = lib.mkForce 42;
HYPRCURSOR_SIZE = lib.mkForce 42;
};
custom.hyprland = {
yaziSize = "2400 1800";
cursorSize = 42;
};
wayland.windowManager.hyprland.settings = {
env = [
"WEBKIT_DISABLE_DMABUF_RENDERER, 1"
"XCURSOR_SIZE, 42"
"HYPRCURSOR_SIZE, 42"
];
exec-once = [
"hyprctl setcursor Nordzy-cursors 42"
"$HOME/.local/bin/hyprpaper-rotate"
];