update dms, hyprland. add hyprexpo & hyprscrolling

This commit is contained in:
2025-12-02 15:58:28 +00:00
parent 4d5338da86
commit 6f5fd4cd01
5 changed files with 96 additions and 48 deletions
+14 -1
View File
@@ -39,6 +39,11 @@
"controlCenterShowNetworkIcon": true, "controlCenterShowNetworkIcon": true,
"controlCenterShowBluetoothIcon": true, "controlCenterShowBluetoothIcon": true,
"controlCenterShowAudioIcon": true, "controlCenterShowAudioIcon": true,
"controlCenterShowVpnIcon": false,
"controlCenterShowBrightnessIcon": false,
"controlCenterShowMicIcon": false,
"controlCenterShowBatteryIcon": false,
"controlCenterShowPrinterIcon": false,
"showPrivacyButton": true, "showPrivacyButton": true,
"privacyShowMicIcon": false, "privacyShowMicIcon": false,
"privacyShowCameraIcon": false, "privacyShowCameraIcon": false,
@@ -81,6 +86,7 @@
"showWorkspaceApps": true, "showWorkspaceApps": true,
"maxWorkspaceIcons": 3, "maxWorkspaceIcons": 3,
"workspacesPerMonitor": false, "workspacesPerMonitor": false,
"showOccupiedWorkspacesOnly": false,
"dwlShowAllTags": false, "dwlShowAllTags": false,
"workspaceNameIcons": {}, "workspaceNameIcons": {},
"waveProgressEnabled": true, "waveProgressEnabled": true,
@@ -138,6 +144,8 @@
"lockBeforeSuspend": true, "lockBeforeSuspend": true,
"preventIdleForMedia": true, "preventIdleForMedia": true,
"loginctlLockIntegration": true, "loginctlLockIntegration": true,
"fadeToLockEnabled": false,
"fadeToLockGracePeriod": 5,
"launchPrefix": "", "launchPrefix": "",
"brightnessDevicePins": {}, "brightnessDevicePins": {},
"wifiNetworkPins": {}, "wifiNetworkPins": {},
@@ -147,7 +155,7 @@
"gtkThemingEnabled": false, "gtkThemingEnabled": false,
"qtThemingEnabled": false, "qtThemingEnabled": false,
"syncModeWithPortal": true, "syncModeWithPortal": true,
"terminalsAlwaysDark": false, "terminalsAlwaysDark": true,
"showDock": false, "showDock": false,
"dockAutoHide": false, "dockAutoHide": false,
"dockGroupByApp": false, "dockGroupByApp": false,
@@ -158,6 +166,10 @@
"dockMargin": 0, "dockMargin": 0,
"dockIconSize": 40, "dockIconSize": 40,
"dockIndicatorStyle": "circle", "dockIndicatorStyle": "circle",
"dockBorderEnabled": false,
"dockBorderColor": "surfaceText",
"dockBorderOpacity": 1,
"dockBorderThickness": 1,
"notificationOverlayEnabled": false, "notificationOverlayEnabled": false,
"modalDarkenBackground": true, "modalDarkenBackground": true,
"lockScreenShowPowerActions": true, "lockScreenShowPowerActions": true,
@@ -178,6 +190,7 @@
"osdCapsLockEnabled": true, "osdCapsLockEnabled": true,
"osdPowerProfileEnabled": false, "osdPowerProfileEnabled": false,
"powerActionConfirm": true, "powerActionConfirm": true,
"powerActionHoldDuration": 1,
"powerMenuActions": [ "powerMenuActions": [
"reboot", "reboot",
"logout", "logout",
+26 -5
View File
@@ -1,4 +1,9 @@
# Startup # Startup
# Plugin loading
exec-once = hyprctl plugin load "$HYPR_PLUGIN_DIR/lib/libhyprexpo.so"
exec-once = hyprctl plugin load "$HYPR_PLUGIN_DIR/lib/libhyprscrolling.so"
exec-once= bash -c "wl-paste --watch cliphist store &" exec-once= bash -c "wl-paste --watch cliphist store &"
exec-once= fcitx5 -d exec-once= fcitx5 -d
exec-once= emacs --daemon exec-once= emacs --daemon
@@ -121,6 +126,21 @@ misc {
} }
plugin {
hyprexpo {
columns = 3
gap_size = 5
bg_col = $background
workspace_method = center current
gesture_distance = 300
}
hyprscrolling {
column_width = 0.7
fullscreen_on_one_column = true
}
}
# Window Rules # Window Rules
# Rule :: Window # Rule :: Window
@@ -146,7 +166,7 @@ $ws = workspace
windowrule = match:class ^(Emacs|emacs)$, opacity 0.96 0.90 windowrule = match:class ^(Emacs|emacs)$, opacity 0.96 0.90
windowrule = match:class ^(.*desktop-portal.*)$, float on windowrule = match:class ^(.*desktop-portal.*)$, float on
windowrule = match:class ^(org.quickshell)$, match:title Settings, float on windowrule = match:class ^(org.quickshell)$, float on
windowrule = match:class ^(polkit.*agent.*)$, float on windowrule = match:class ^(polkit.*agent.*)$, float on
windowrule = match:class ^(praat)$, float on windowrule = match:class ^(praat)$, float on
windowrule = match:class ^(network)$, float on windowrule = match:class ^(network)$, float on
@@ -232,15 +252,16 @@ $mainCtrlShift = $mainCtrl SHIFT
bind = $mainShift, N, exec, dms ipc call night toggle bind = $mainShift, N, exec, dms ipc call night toggle
bind = $mainCtrl, B, exec, dms ipc call bar toggle bind = $mainCtrl, B, exec, dms ipc call bar toggle
bind = $mainMod, G, hyprexpo:expo, toggle
bind = $mainShift, P, pseudo, bind = $mainShift, P, pseudo,
bind = $mainMod, C, killactive, bind = $mainMod, C, killactive,
bind = $mainMod, F, togglefloating, bind = $mainMod, F, togglefloating,
bind = $mainShift, F, fullscreen bind = $mainShift, F, fullscreen
bind = $mainCtrl, S, togglesplit, bind = $mainCtrl, S, togglesplit,
bind = $mainMod, right, resizeactive, 10 0 binde = $mainMod, right, resizeactive, 10 0
bind = $mainMod, left, resizeactive, -10 0 binde = $mainMod, left, resizeactive, -10 0
bind = $mainMod, up, resizeactive, 0 -10 binde = $mainMod, up, resizeactive, 0 -10
bind = $mainMod, down, resizeactive, 0 10 binde = $mainMod, down, resizeactive, 0 10
bind = $mainCtrl, L, exec, $lock bind = $mainCtrl, L, exec, $lock
bind = $mainCtrl, Q, exec, $lock bind = $mainCtrl, Q, exec, $lock
bind = $mainMod, F4, exit, bind = $mainMod, F4, exit,
Generated
+39 -39
View File
@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762356719, "lastModified": 1763922789,
"narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=", "narHash": "sha256-XnkWjCpeXfip9tqYdL0b0zzBDjq+dgdISvEdSVGdVyA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7", "rev": "a20a0e67a33b6848378a91b871b89588d3a12573",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -71,11 +71,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1764173958, "lastModified": 1764650935,
"narHash": "sha256-TX083ovrIAb0D82Q638CWgDPvDLf85whKZHFLWg8Id8=", "narHash": "sha256-WGNMbRgdVKaqhe2T/rP3b0GMre0IZuiRfNALiaKPznA=",
"owner": "AvengeMedia", "owner": "AvengeMedia",
"repo": "DankMaterialShell", "repo": "DankMaterialShell",
"rev": "039c98b9e350cfc0d0fc791e7356a59088549c38", "rev": "f96a2e2325a364bb347054cd2ac2de145bc417dd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -108,11 +108,11 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1747046372, "lastModified": 1761588595,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -208,11 +208,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762462052, "lastModified": 1763733840,
"narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=", "narHash": "sha256-JnET78yl5RvpGuDQy3rCycOCkiKoLr5DN1fPhRNNMco=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162", "rev": "8f1bec691b2d198c60cccabca7a94add2df4ed1a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -266,11 +266,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1763912895, "lastModified": 1764607679,
"narHash": "sha256-tTdCVeROhYTwV510tygS5AMutJGz5imM++P4+cXAy2w=", "narHash": "sha256-1Bsem6lhJWMQmkLIml5oKOL+z1dYMewZ6ql0K35Y3TA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "2b0fd417d32278159d0ca1d23fb997588c37995b", "rev": "f82a8630d7a51dab4cc70924f500bf70e723db12",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -312,11 +312,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762755186, "lastModified": 1763727565,
"narHash": "sha256-ZjjETUHtoEhVN7JI1Cbt3p/KcXpK8ZQaPHx7UkG1OgA=", "narHash": "sha256-vRff/2R1U1jzPBy4OODqh2kfUzmizW/nfV2ROzTDIKo=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-guiutils", "repo": "hyprland-guiutils",
"rev": "66356e20a8ed348aa49c1b9ceace786e224225b3", "rev": "7724d3a12a0453e7aae05f2ef39474219f05a4b4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -342,11 +342,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1760659005, "lastModified": 1764636589,
"narHash": "sha256-wyS6tXYJuzbwckOeaCoRtT4qIG2UZ0YvSZx7EBNjTV0=", "narHash": "sha256-8j0QzbFF3QindJZ0DVEwLA1Ty1/4t4hcU5zHGQ2meI8=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-plugins", "repo": "hyprland-plugins",
"rev": "a5a6f93d72d5fb37e78b98c756cfd8b340e71a19", "rev": "8f796f7cec39e7a9aa2bb65d28006025e1bc14ae",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -422,11 +422,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763254292, "lastModified": 1763819661,
"narHash": "sha256-JNgz3Fz2KMzkT7aR72wsgu/xNeJB//LSmdilh8Z/Zao=", "narHash": "sha256-0jLarTR/BLWdGlboM86bPVP2zKJNI2jvo3JietnDkOM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "deea98d5b61d066bdc7a68163edd2c4bd28d3a6b", "rev": "a318deec0c12409ec39c68d2be8096b636dc2a5c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -578,11 +578,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762463729, "lastModified": 1763503177,
"narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=", "narHash": "sha256-VPoiswJBBmTLVuNncvT/8FpFR+sYcAi/LgP/zTZ+5rA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprtoolkit", "repo": "hyprtoolkit",
"rev": "88483bdee5329ec985f0c8f834c519cd18cfe532", "rev": "f4e1e12755567ecf39090203b8f43eace8279630",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -642,11 +642,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763323331, "lastModified": 1763996058,
"narHash": "sha256-+Z0OfCo1MS8/aIutSAW5aJR9zTae1wz9kcJYMgpwN6M=", "narHash": "sha256-DsqzFZvrEV+aDmavjaD4/bk5qxeZwhGxPWBQdpFyM9Y=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "0c6411851cc779d551edc89b83966696201611aa", "rev": "0168583075baffa083032ed13a8bea8ea12f281a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -746,11 +746,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755184602, "lastModified": 1763640274,
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=", "narHash": "sha256-Uan1Nl9i4TF/kyFoHnTq1bd/rsWh4GAK/9/jDqLbY5A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d", "rev": "f6cf414ca0e16a4d30198fd670ec86df3c89f671",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -815,11 +815,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1763283776, "lastModified": 1763966396,
"narHash": "sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c+i7novT85Uk=", "narHash": "sha256-6eeL1YPcY1MV3DDStIDIdy/zZCDKgHdkCmsrLJFiZf0=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a", "rev": "5ae3b07d8d6527c42f17c876e404993199144b6a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -887,11 +887,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763319842, "lastModified": 1763988335,
"narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=", "narHash": "sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh+M4Qc=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761", "rev": "50b9238891e388c9fdc6a5c49e49c42533a1b5ce",
"type": "github" "type": "github"
}, },
"original": { "original": {
+12 -2
View File
@@ -45,9 +45,19 @@
hyprpwcenter = inputs.hyprpwcenter.packages.${system}.hyprpwcenter; hyprpwcenter = inputs.hyprpwcenter.packages.${system}.hyprpwcenter;
xdg-desktop-portal-hyprland = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland; xdg-desktop-portal-hyprland = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland;
quickshell = inputs.quickshell.packages.${system}.quickshell; quickshell = inputs.quickshell.packages.${system}.quickshell;
hyprPluginPkgs = inputs.hyprland-plugins.packages.${system};
}) })
]; ];
}; };
hypr-plugin-dir = pkgs.symlinkJoin {
name = "hyprland-plugins";
paths = with pkgs.hyprPluginPkgs; [
hyprexpo
hyprscrolling
];
};
defaultCfg = rec { defaultCfg = rec {
username = "liamm"; username = "liamm";
homeDirectory = "/home/${username}"; homeDirectory = "/home/${username}";
@@ -58,7 +68,7 @@
{ {
nixosConfigurations = { nixosConfigurations = {
darp8 = nixpkgs.lib.nixosSystem { darp8 = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; cfg = defaultCfg; }; specialArgs = { inherit inputs; cfg = defaultCfg; hypr-plugin-dir = hypr-plugin-dir; };
modules = [ modules = [
hyprland.nixosModules.default hyprland.nixosModules.default
./hosts/darp8/configuration.nix ./hosts/darp8/configuration.nix
@@ -66,7 +76,7 @@
]; ];
}; };
desktop = nixpkgs.lib.nixosSystem { desktop = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; cfg = defaultCfg; }; specialArgs = { inherit inputs; cfg = defaultCfg; hypr-plugin-dir = hypr-plugin-dir; };
modules = [ modules = [
hyprland.nixosModules.default hyprland.nixosModules.default
./hosts/desktop/configuration.nix ./hosts/desktop/configuration.nix
+5 -1
View File
@@ -1,4 +1,4 @@
{ cfg, config, lib, pkgs, inputs, ... }: { cfg, config, lib, pkgs, inputs, hypr-plugin-dir, ... }:
{ {
boot = { boot = {
loader.systemd-boot.enable = true; loader.systemd-boot.enable = true;
@@ -196,6 +196,10 @@
zip zip
]; ];
environment.sessionVariables = {
HYPR_PLUGIN_DIR = hypr-plugin-dir;
};
zramSwap = { zramSwap = {
enable = true; enable = true;
algorithm = "zstd"; algorithm = "zstd";