hyprexpo 1
This commit is contained in:
233
flake.lock
generated
233
flake.lock
generated
@@ -21,19 +21,148 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"hyprcursor": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1712588820,
|
||||
"narHash": "sha256-y31s5idk3jMJMAVE4Ud9AdI7HT3CgTAeMTJ0StqKN7Y=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d272ca50d1f7424fbfcd1e6f1c9e01d92f6da167",
|
||||
"lastModified": 1712434681,
|
||||
"narHash": "sha256-qwmR2p1oc48Bj7gUDvb1oGL19Rjs2PmEmk4ChV01A5o=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "818d8c4b69e0997483d60b75f701fe14b561a7a3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-23.11",
|
||||
"type": "indirect"
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprlang": "hyprlang",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"systems": "systems",
|
||||
"wlroots": "wlroots",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1712797985,
|
||||
"narHash": "sha256-2WS5zErQC7DuGUoVIiWUqQPXsIpdYBqFJip5XSpCVrU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "ac0f3411c18497a39498b756b711e092512de9e0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-plugins": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1712420644,
|
||||
"narHash": "sha256-h2X8qhN5RKYQXzT1kxKgUz1u1QthqOrP9xk800mTM6E=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "5ec0140d4aeca42b8a33e7f335f979e376d1b549",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1691753796,
|
||||
"narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1711671891,
|
||||
"narHash": "sha256-C/Wwsy/RLxHP1axFFl+AnwJRWfd8gxDKKoa8nt8Qk3c=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "c1402612146ba06606ebf64963a02bc1efe11e74",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1712439257,
|
||||
"narHash": "sha256-aSpiNepFOMk9932HOax0XwNxbA38GOUVOiXfUVPOrck=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ff0dbd94265ac470dda06a657d5fe49de93b4599",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
@@ -51,12 +180,96 @@
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1712588820,
|
||||
"narHash": "sha256-y31s5idk3jMJMAVE4Ud9AdI7HT3CgTAeMTJ0StqKN7Y=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d272ca50d1f7424fbfcd1e6f1c9e01d92f6da167",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-23.11",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"wlroots": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"host": "gitlab.freedesktop.org",
|
||||
"lastModified": 1709983277,
|
||||
"narHash": "sha256-wXWIJLd4F2JZeMaihWVDW/yYXCLEC8OpeNJZg9a9ly8=",
|
||||
"owner": "wlroots",
|
||||
"repo": "wlroots",
|
||||
"rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"host": "gitlab.freedesktop.org",
|
||||
"owner": "wlroots",
|
||||
"repo": "wlroots",
|
||||
"rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": [
|
||||
"hyprland",
|
||||
"hyprland-protocols"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709299639,
|
||||
"narHash": "sha256-jYqJM5khksLIbqSxCLUUcqEgI+O2LdlSlcMEBs39CAU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "2d2fb547178ec025da643db57d40a971507b82fe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
50
flake.nix
50
flake.nix
@@ -4,11 +4,23 @@
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-23.11";
|
||||
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
|
||||
home-manager.url = "github:nix-community/home-manager/release-23.11";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-23.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, ... }:
|
||||
hyprland = {
|
||||
url = "github:hyprwm/Hyprland";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hyprland-plugins = {
|
||||
url = "github:hyprwm/hyprland-plugins";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, ... }@inputs:
|
||||
# outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, hyprland, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
@@ -84,40 +96,28 @@
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
NxXPS =
|
||||
let
|
||||
host = "NxXPS";
|
||||
in
|
||||
nixpkgs.lib.nixosSystem {
|
||||
NxXPS = let host = "NxXPS"; in nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
modules = [
|
||||
./configuration.nix
|
||||
];
|
||||
specialArgs = { inherit user host pkgs-unstable allowed secrets rice nvidia; };
|
||||
modules = [ ./configuration.nix ];
|
||||
specialArgs = { inherit inputs user host pkgs-unstable allowed secrets rice nvidia; };
|
||||
};
|
||||
NxNORTH =
|
||||
let
|
||||
host = "NxNORTH";
|
||||
in
|
||||
nixpkgs.lib.nixosSystem {
|
||||
NxNORTH = let host = "NxNORTH"; in nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
modules = [
|
||||
./configuration.nix
|
||||
];
|
||||
specialArgs = { inherit user host pkgs-unstable allowed secrets rice nvidia; };
|
||||
modules = [ ./configuration.nix ];
|
||||
specialArgs = { inherit inputs user host pkgs-unstable allowed secrets rice nvidia; };
|
||||
};
|
||||
};
|
||||
|
||||
homeConfigurations = {
|
||||
NxXPS = home-manager.lib.homeManagerConfiguration {
|
||||
NxXPS = let host = "NxXPS"; in home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [ ./home.nix ];
|
||||
extraSpecialArgs = let host = "NxXPS"; in { inherit system user host allowed secrets pkgs-unstable rice nvidia; };
|
||||
extraSpecialArgs = { inherit inputs system user host allowed secrets pkgs-unstable rice nvidia; };
|
||||
};
|
||||
NxNORTH = home-manager.lib.homeManagerConfiguration {
|
||||
NxNORTH = let host = "NxNORTH"; in home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [ ./home.nix ];
|
||||
extraSpecialArgs = let host = "NxNORTH"; in { inherit system user host allowed secrets pkgs-unstable rice nvidia; };
|
||||
extraSpecialArgs = { inherit inputs system user host allowed secrets pkgs-unstable rice nvidia; };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, pkgs-unstable, host, nvidia, rice, lib, ... }:
|
||||
{ config, pkgs, pkgs-unstable, inputs, host, nvidia, rice, lib, ... }:
|
||||
let
|
||||
animation-speed = "2";
|
||||
transparency = rice.transparency;
|
||||
@@ -90,13 +90,14 @@ in
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
xwayland.enable = true;
|
||||
systemd.enable = true;
|
||||
# plugins = [];
|
||||
plugins = let plugins = inputs.hyprland-plugins.packages.${pkgs.system}; in with plugins; [
|
||||
hyprexpo
|
||||
];
|
||||
|
||||
settings = {
|
||||
# source = /home/nx2/.config/hypr/hyprland-nosync.conf;
|
||||
|
||||
monitor =
|
||||
if host == "NxXPS" then [
|
||||
"${monitors.xps.main.name}, ${monitors.xps.main.resolution}, ${monitors.xps.main.position}, ${monitors.xps.main.scale}"
|
||||
@@ -112,10 +113,10 @@ in
|
||||
d1 = if host == "NxXPS" then monitors.xps.main.name else monitors.north.main.name;
|
||||
d2 = if host == "NxXPS" then monitors.xps.second.name else monitors.north.left.name;
|
||||
d3 = if host == "NxXPS" then monitors.xps.main.name else monitors.north.right.name;
|
||||
compact = ",gapsin:0,gapsout:0,rounding:0,bordersize:0";
|
||||
compact = ",gapsin:0, gapsout:0, rounding:0, bordersize:0";
|
||||
in
|
||||
[
|
||||
"${d1}, 11"
|
||||
"${d1}, 11, default:true"
|
||||
"${d1}, 12"
|
||||
"${d1}, 13"
|
||||
"${d1}, 14"
|
||||
@@ -124,9 +125,9 @@ in
|
||||
"${d1}, 17"
|
||||
"${d1}, 18"
|
||||
"${d1}, 19"
|
||||
"${d1}, 10${compact}"
|
||||
"${d1}, 100${compact}"
|
||||
"${d2}, 21${compact}"
|
||||
"${d1}, 10 ${compact}"
|
||||
"${d1}, 100 ${compact}"
|
||||
"${d2}, 21 ${compact}"
|
||||
"${d2}, 22"
|
||||
"${d2}, 23"
|
||||
"${d2}, 24"
|
||||
@@ -136,7 +137,7 @@ in
|
||||
"${d2}, 28"
|
||||
"${d2}, 29"
|
||||
"${d2}, 20"
|
||||
"${d3}, 31"
|
||||
"${d3}, 31, default:true"
|
||||
"${d3}, 32"
|
||||
"${d3}, 33"
|
||||
"${d3}, 34"
|
||||
@@ -145,12 +146,12 @@ in
|
||||
"${d3}, 37"
|
||||
"${d3}, 38"
|
||||
"${d3}, 39"
|
||||
"${d3}, 30"
|
||||
"${d3}, 30 ${compact}"
|
||||
];
|
||||
|
||||
"device:logitech-wireless-mouse-mx-master-1" = {
|
||||
sensitivity = -0.2;
|
||||
};
|
||||
# "device:logitech-wireless-mouse-mx-master-1" = {
|
||||
# sensitivity = -0.2;
|
||||
# };
|
||||
|
||||
|
||||
env = if nvidia.enable == true then [
|
||||
@@ -216,11 +217,11 @@ in
|
||||
# bezier = "myBezier, 0.01, 0.9, 0.1, 1.0"; #o
|
||||
# bezier = "myBezier, 0.83, 0, 0.17, 1"; # io
|
||||
bezier = "myBezier, 0.33, 1, 0.68, 1";
|
||||
animation = [
|
||||
animation = let direction = if host == "NxXPS" then "slide" else "slidevert"; in [
|
||||
"windows, 1, ${animation-speed}, myBezier, slide"
|
||||
"border, 1, ${animation-speed}, myBezier"
|
||||
"fade, 1, ${animation-speed}, myBezier"
|
||||
"workspaces, 1, ${animation-speed}, myBezier, slide"
|
||||
"workspaces, 1, ${animation-speed}, myBezier, ${direction}"
|
||||
];
|
||||
};
|
||||
|
||||
@@ -382,6 +383,7 @@ in
|
||||
## ROW 2:
|
||||
|
||||
#bind = SUPER, TAB, hycov:toggleoverview
|
||||
"SUPER, TAB, hyprexpo:expo, toggle"
|
||||
"ALT, TAB, focuscurrentorlast"
|
||||
"SUPER, Q, killactive"
|
||||
"SUPER, W, exec, waybar_mode set ' '"
|
||||
@@ -407,7 +409,6 @@ in
|
||||
"SUPER, A, execr, waybar_mode set ' '"
|
||||
"SUPER, A, submap, scrL"
|
||||
"SUPER, S, exec, spotify"
|
||||
# "SUPER, D, exec, discord "
|
||||
"SUPER, D, exec, vesktop"
|
||||
"SUPER, F, fullscreen"
|
||||
"SUPER, G, exec, xrandr --verbose --output 'DP-1' --primary && lutris"
|
||||
@@ -495,6 +496,21 @@ in
|
||||
bindl = [
|
||||
# ",switch:on:Lid Switch, exec, hyprlock &"
|
||||
];
|
||||
|
||||
# plugin = {
|
||||
# hyprexpo = {
|
||||
# columns = 1;
|
||||
# gap_size = gap-size;
|
||||
# bg_col = "rgb(ff1111)";
|
||||
# workspace_method = "center current"; # [center/first] [workspace] e.g. first 1 or center m+1
|
||||
|
||||
# enable_gesture = true; # laptop touchpad, 4 fingers
|
||||
# gesture_distance = "300"; # how far is the "max"
|
||||
# gesture_positive = true; # positive = swipe down. Negative = swipe up.
|
||||
# };
|
||||
# };
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -787,6 +803,22 @@ in
|
||||
bind = , Escape, execr, waybar_mode unset
|
||||
bind = , Escape, submap, reset
|
||||
submap = reset
|
||||
|
||||
|
||||
|
||||
|
||||
plugin {
|
||||
hyprexpo {
|
||||
columns = 3
|
||||
gap_size = ${builtins.toString gap-size}
|
||||
bg_col = rgb(${rice.color.background})
|
||||
workspace_method = [10] # [center/first] [workspace] e.g. first 1 or center m+1
|
||||
|
||||
enable_gesture = true # laptop touchpad, 4 fingers
|
||||
gesture_distance = 300 # how far is the "max"
|
||||
gesture_positive = true # positive = swipe down. Negative = swipe up.
|
||||
}
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user