re-organize home-modules
This commit is contained in:
194
modules/home/hyprland/config.nix
Normal file
194
modules/home/hyprland/config.nix
Normal file
@@ -0,0 +1,194 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
wayland.windowManager.hyprland = lib.mkIf config.wayland.windowManager.hyprland.enable {
|
||||
settings = {
|
||||
exec-once = [
|
||||
"${pkgs.dbus}/bin/dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||
"${pkgs.systemd}/bin/systemctl --user import-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||
"${pkgs.wpaperd}/bin/wpaperd &"
|
||||
];
|
||||
|
||||
"$mod" = "SUPER";
|
||||
bind =
|
||||
[
|
||||
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty"
|
||||
"$mod, d, exec, ${pkgs.wofi}/bin/wofi --show drun"
|
||||
"$mod, h, movefocus, l"
|
||||
"$mod, j, movefocus, d"
|
||||
"$mod, k, movefocus, u"
|
||||
"$mod, l, movefocus, r"
|
||||
"$mod, LEFT, movefocus, l"
|
||||
"$mod, DOWN, movefocus, d"
|
||||
"$mod, UP, movefocus, u"
|
||||
"$mod, RIGHT, movefocus, r"
|
||||
"$mod SHIFT, h, movewindow, l"
|
||||
"$mod SHIFT, j, movewindow, d"
|
||||
"$mod SHIFT, k, movewindow, u"
|
||||
"$mod SHIFT, l, movewindow, r"
|
||||
"$mod SHIFT, LEFT, movewindow, l"
|
||||
"$mod SHIFT, DOWN, movewindow, d"
|
||||
"$mod SHIFT, UP, movewindow, u"
|
||||
"$mod SHIFT, RIGHT, movewindow, r"
|
||||
"$mod CTRL SHIFT, LEFT, moveactive, -10 0"
|
||||
"$mod CTRL SHIFT, DOWN, moveactive, 0 10"
|
||||
"$mod CTRL SHIFT, UP, moveactive, 0 -10"
|
||||
"$mod CTRL SHIFT, RIGHT, moveactive, 10 0"
|
||||
"$mod CTRL SHIFT, h, moveactive, -10 0"
|
||||
"$mod CTRL SHIFT, j, moveactive, 0 10"
|
||||
"$mod CTRL SHIFT, k, moveactive, 0 -10"
|
||||
"$mod CTRL SHIFT, l, moveactive, 10 0"
|
||||
"$mod SHIFT, q, killactive"
|
||||
"$mod CTRL, h, resizeactive, -5% 0%"
|
||||
"$mod CTRL, l, resizeactive, 5% 0%"
|
||||
"$mod CTRL, j, resizeactive, 0% -5%"
|
||||
"$mod CTRL, k, resizeactive, 0% 5%"
|
||||
"$mod, SPACE, togglefloating, active"
|
||||
"$mod SHIFT, SPACE, centerwindow"
|
||||
"$mod, f, fullscreen, 1"
|
||||
"$mod SHIFT, f, fullscreen, 0"
|
||||
"$mod CTRL, f, fakefullscreen"
|
||||
"$mod SHIFT, s, pin"
|
||||
"$mod SHIFT, x, exec, ${pkgs.hyprland}/bin/hyprctl kill"
|
||||
", XF86AudioRaiseVolume, exec, ${pkgs.pulsemixer}/bin/pulsemixer --change-volume +5"
|
||||
", XF86AudioLowerVolume, exec, ${pkgs.pulsemixer}/bin/pulsemixer --change-volume -5"
|
||||
", XF86AudioMute, exec, ${pkgs.pulsemixer}/bin/pulsemixer --toggle-mute"
|
||||
", XF86AudioMicMute, exec, ${pkgs.pulsemixer}/bin/pulsemixer --toggle-mute --id 1"
|
||||
", XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl set +5%"
|
||||
", XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl set 5%-"
|
||||
"$mod, 0, exec, ${pkgs.wlogout}/bin/wlogout"
|
||||
]
|
||||
++ (
|
||||
# workspaces
|
||||
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
|
||||
builtins.concatLists (builtins.genList (
|
||||
x: let
|
||||
ws = builtins.toString (x + 1);
|
||||
in [
|
||||
"$mod, ${ws}, workspace, ${ws}"
|
||||
"$mod SHIFT, ${ws}, movetoworkspace, ${ws}"
|
||||
"$mod CTRL, ${ws}, movetoworkspacesilent, ${ws}"
|
||||
]
|
||||
)
|
||||
8)
|
||||
);
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
monitor = ",preferred,auto,1";
|
||||
env = [
|
||||
"GDK_SCALE,1"
|
||||
"XCURSOR_SIZE,12"
|
||||
];
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
};
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
# exec-once = waybar & hyprpaper & firefox
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input = {
|
||||
kb_layout = "de";
|
||||
kb_variant = "";
|
||||
kb_model = "";
|
||||
kb_options = "caps:ctrl_modifier";
|
||||
kb_rules = "";
|
||||
|
||||
follow_mouse = 1;
|
||||
|
||||
touchpad = {
|
||||
natural_scroll = "yes";
|
||||
};
|
||||
|
||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||
};
|
||||
|
||||
general = {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 5;
|
||||
gaps_out = 10;
|
||||
border_size = 2;
|
||||
"col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg";
|
||||
"col.inactive_border" = "rgba(595959aa)";
|
||||
|
||||
layout = "dwindle";
|
||||
|
||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||
allow_tearing = false;
|
||||
};
|
||||
|
||||
decoration = {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
rounding = 10;
|
||||
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 8;
|
||||
passes = 1;
|
||||
new_optimizations = true;
|
||||
};
|
||||
|
||||
drop_shadow = "yes";
|
||||
shadow_range = 4;
|
||||
shadow_render_power = 3;
|
||||
"col.shadow" = "rgba(1a1a1aee)";
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = "yes";
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
|
||||
|
||||
animation = [
|
||||
"windows, 1, 7, myBezier"
|
||||
"windowsOut, 1, 7, default, popin 80%"
|
||||
"border, 1, 10, default"
|
||||
"borderangle, 1, 8, default"
|
||||
"fade, 1, 7, default"
|
||||
"workspaces, 1, 6, default"
|
||||
];
|
||||
};
|
||||
|
||||
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
|
||||
no_gaps_when_only = 0;
|
||||
};
|
||||
|
||||
master = {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
# new_is_master = true;
|
||||
no_gaps_when_only = 0;
|
||||
};
|
||||
|
||||
gestures = {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = "off";
|
||||
};
|
||||
|
||||
misc = {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
force_default_wallpaper = 0; # Set to 0 to disable the anime mascot wallpapers
|
||||
};
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
# "device:epic-mouse-v1" = {
|
||||
# sensitivity = -0.5;
|
||||
# };
|
||||
};
|
||||
};
|
||||
}
|
||||
6
modules/home/hyprland/default.nix
Normal file
6
modules/home/hyprland/default.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{...}: {
|
||||
imports = [
|
||||
./config.nix
|
||||
./hyprland.nix
|
||||
];
|
||||
}
|
||||
23
modules/home/hyprland/hyprland.nix
Normal file
23
modules/home/hyprland/hyprland.nix
Normal file
@@ -0,0 +1,23 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
systemd.variables = ["--all"];
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
];
|
||||
|
||||
programs.wpaperd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default = {
|
||||
path = ../../../static/wallpaper/stones.jpg;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user