Compare commits
5 Commits
14fe127d33
...
906ce21aaa
| Author | SHA1 | Date | |
|---|---|---|---|
| 906ce21aaa | |||
| 588f1a17ca | |||
| 8a9569bb76 | |||
| 6e9949ac39 | |||
| 74446a9e81 |
@@ -0,0 +1,3 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [delfin];
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
{pkgs, ...}: {
|
||||
imports = [
|
||||
./hypr/binds.nix
|
||||
./hypr/general.nix
|
||||
@@ -12,4 +12,7 @@
|
||||
];
|
||||
wayland.windowManager.hyprland.enable = true;
|
||||
wayland.windowManager.hyprland.systemd.enable = false; # for UWSM support...
|
||||
wayland.windowManager.hyprland.plugins = [
|
||||
pkgs.hyprlandPlugins.hyprsplit
|
||||
];
|
||||
}
|
||||
|
||||
@@ -71,22 +71,18 @@
|
||||
"SUPER, Tab, Cycle workspaces, workspace, previous"
|
||||
]
|
||||
++ (
|
||||
# Generate binds for Super + [1-10] to switch workspaces
|
||||
# and Super + Shift + [1-10] to move window to workspace
|
||||
# Generate binds for Super + [1-5] to switch workspaces on current monitor
|
||||
# and Super + Shift + [1-5] to move window to workspace on current monitor
|
||||
builtins.concatLists (builtins.genList (
|
||||
i: let
|
||||
ws = i + 1;
|
||||
key = toString (
|
||||
if ws == 10
|
||||
then 0
|
||||
else ws
|
||||
);
|
||||
key = toString ws;
|
||||
in [
|
||||
"SUPER, ${key}, Switch to workspace ${toString ws}, exec, hakase-workspace-switch-force ${toString ws}"
|
||||
"SUPER SHIFT, ${key}, Move window to workspace ${toString ws}, movetoworkspace, ${toString ws}"
|
||||
"SUPER, ${key}, Switch to workspace ${toString ws}, split:workspace, ${toString ws}"
|
||||
"SUPER SHIFT, ${key}, Move window to workspace ${toString ws}, split:movetoworkspace, ${toString ws}"
|
||||
]
|
||||
)
|
||||
10)
|
||||
5)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
];
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
env = [
|
||||
"HYPRCURSOR_THEME,rose-pine-hyprcursor"
|
||||
"HYPRCURSOR_SIZE,24"
|
||||
"GUM_CONFIRM_PROMPT_FOREGROUND,6"
|
||||
"GUM_CONFIRM_SELECTED_FOREGROUND,0"
|
||||
"GUM_CONFIRM_SELECTED_BACKGROUND,2"
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
"killall -SIGUSR2 .ghostty-wrappe"
|
||||
];
|
||||
exec-once = [
|
||||
"hyprpm reload -n"
|
||||
"[workspace special:preload silent] uwsm app -- firefox"
|
||||
"[workspace special:preload silent] uwsm app -- firefox -P YouTube"
|
||||
"[workspace special:preload silent] uwsm app -- xdg-terminal-exec"
|
||||
|
||||
@@ -7,5 +7,23 @@
|
||||
anr_missed_pings = 3;
|
||||
new_window_takes_over_fullscreen = 1;
|
||||
};
|
||||
|
||||
cursor = {
|
||||
no_hardware_cursors = true;
|
||||
no_break_fs_vrr = true;
|
||||
min_refresh_rate = 48;
|
||||
};
|
||||
|
||||
render = {
|
||||
direct_scanout = true;
|
||||
cm_enabled = true;
|
||||
};
|
||||
|
||||
plugin = {
|
||||
hyprsplit = {
|
||||
num_workspaces = 5;
|
||||
persistent_workspaces = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -37,16 +37,21 @@ let
|
||||
echo "$pos" > "$state_file"
|
||||
echo "''${text:0:$pos}_"
|
||||
else
|
||||
# Blink cursor via foreground color toggle
|
||||
# Blink cursor via foreground color toggle (slow blink)
|
||||
if [ ! -f "$blink_file" ]; then
|
||||
echo 0 > "$blink_file"
|
||||
echo "0 0" > "$blink_file"
|
||||
fi
|
||||
blink=$(cat "$blink_file")
|
||||
read -r blink count < "$blink_file"
|
||||
count=$((count + 1))
|
||||
# Toggle every 5 updates (~600ms at 120ms interval)
|
||||
if [ "$count" -ge 5 ]; then
|
||||
count=0
|
||||
blink=$((1 - blink))
|
||||
fi
|
||||
echo "$blink $count" > "$blink_file"
|
||||
if [ "$blink" -eq 0 ]; then
|
||||
echo 1 > "$blink_file"
|
||||
echo "''${text}_"
|
||||
else
|
||||
echo 0 > "$blink_file"
|
||||
echo "''${text}<span fgalpha=\"1\">_</span>"
|
||||
fi
|
||||
fi
|
||||
|
||||
+6
-1
@@ -17,7 +17,12 @@
|
||||
};
|
||||
};
|
||||
hyprland = {
|
||||
monitors = ["HDMI-A-1, 1920x1080@120, auto, 1"];
|
||||
monitors = [
|
||||
"DP-1,highres@180,0x1080,1,bitdepth,10,cm,hdr,sdrbrightness,1.4,sdrsaturation,0.98,vrr,0"
|
||||
"DP-2, highres@165,760x0,1"
|
||||
"HDMI-A-1, highres@highrr@120, 3440x1440, 1.6"
|
||||
];
|
||||
|
||||
# wallpaper = "nixos_rainbow.png";
|
||||
wallpaper = "ai_pixel_purple.jpg"; # FIXME: redundant
|
||||
};
|
||||
|
||||
Generated
+25
-4
@@ -333,11 +333,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1766498696,
|
||||
"narHash": "sha256-74qO6ynwUav+QqNhBVn/4yoBCpU6r3/eCkX/V11uL+E=",
|
||||
"lastModified": 1767201430,
|
||||
"narHash": "sha256-4BUM06GqP5YAVnWvxkdeYuweMF6n+oKdxJI5S9TmA1E=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "f7f357f15f83612078eb0919ca08b71cac01c25e",
|
||||
"revCount": 6741,
|
||||
"rev": "48a024e0322bbd7c4c88126498ec478444ec4cb2",
|
||||
"revCount": 6763,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
@@ -448,6 +448,26 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprsplit": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1766546378,
|
||||
"narHash": "sha256-GSoSLHErh1mRfgXM57W98L67MMBHKCemHzxoZPrejSI=",
|
||||
"owner": "shezdy",
|
||||
"repo": "hyprsplit",
|
||||
"rev": "9a8b55f4269bfa5c59d03ed9f4502f433572c616",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "shezdy",
|
||||
"repo": "hyprsplit",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprtoolkit": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
@@ -764,6 +784,7 @@
|
||||
"elephant": "elephant",
|
||||
"home-manager": "home-manager_2",
|
||||
"hyprland": "hyprland",
|
||||
"hyprsplit": "hyprsplit",
|
||||
"nixovim": "nixovim",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nur": "nur",
|
||||
|
||||
@@ -27,6 +27,10 @@
|
||||
url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hyprsplit = {
|
||||
url = "github:shezdy/hyprsplit";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
nixovim = {
|
||||
# FIXME: treesitter does not install automatically (disabled due to read-only problems)
|
||||
url = "git+https://git.sakamoto.dev/kenji/nixovim.git";
|
||||
|
||||
@@ -4,5 +4,6 @@
|
||||
../../apps/jellyfin
|
||||
../../apps/tickrs
|
||||
../../apps/claude
|
||||
../../apps/delfin
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
../../apps/matugen
|
||||
];
|
||||
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
package = pkgs.rose-pine-hyprcursor;
|
||||
name = "rose-pine-hyprcursor";
|
||||
size = 24;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
{
|
||||
myConfig,
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
# Use nixpkgs Hyprland for ABI compatibility with plugins
|
||||
withUWSM = true;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user