mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-16 10:05:13 -05:00
feat: init
This commit is contained in:
commit
96c6f790fc
804 changed files with 33411 additions and 0 deletions
11
modules/home/gui/desktop/hypr/default.nix
Executable file
11
modules/home/gui/desktop/hypr/default.nix
Executable file
|
@ -0,0 +1,11 @@
|
|||
let
|
||||
importList =
|
||||
let
|
||||
content = builtins.readDir ./.;
|
||||
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
|
||||
in
|
||||
map (name: ./. + "/${name}") dirContent;
|
||||
in
|
||||
{
|
||||
imports = importList;
|
||||
}
|
19
modules/home/gui/desktop/hypr/idle/config/settings.nix
Executable file
19
modules/home/gui/desktop/hypr/idle/config/settings.nix
Executable file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
general = {
|
||||
after_sleep_cmd = "hyprctl dispatch dpms on";
|
||||
ignore_dbus_inhibit = false;
|
||||
lock_cmd = "swaylock";
|
||||
};
|
||||
|
||||
listener = [
|
||||
{
|
||||
timeout = 900;
|
||||
on-timeout = "swaylock";
|
||||
}
|
||||
{
|
||||
timeout = 1800;
|
||||
on-timeout = "hyprctl dispatch dpms off";
|
||||
on-resume = "hyprctl dispatch dpms on";
|
||||
}
|
||||
];
|
||||
}
|
10
modules/home/gui/desktop/hypr/idle/default.nix
Executable file
10
modules/home/gui/desktop/hypr/idle/default.nix
Executable file
|
@ -0,0 +1,10 @@
|
|||
let
|
||||
configPath = ./config;
|
||||
settingsPath = import (configPath + /settings.nix);
|
||||
in
|
||||
{
|
||||
services.hypridle = {
|
||||
enable = true;
|
||||
settings = settingsPath;
|
||||
};
|
||||
}
|
18
modules/home/gui/desktop/hypr/land/config/animations.nix
Executable file
18
modules/home/gui/desktop/hypr/land/config/animations.nix
Executable file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
enabled = true;
|
||||
animation = [
|
||||
"border, 1, 2.2, bounce"
|
||||
"fadeIn, 1, 1, bounce"
|
||||
"fadeOut, 1, 4.5, bounce"
|
||||
"fadeSwitch, 1, 2.2, bounce"
|
||||
"windows, 1, 2.2, bounce"
|
||||
"windowsOut, 1, 1.1, bounce"
|
||||
"workspaces, 1, 2.2, bounce, slide"
|
||||
];
|
||||
bezier = [
|
||||
"wind, 0, 1, 0.5, 1"
|
||||
"winIn, 0, 0.5, 0, 1"
|
||||
"winOut, 0, 0.5, 0, 1"
|
||||
"bounce, 0.7, 1.7, 0.5, 1"
|
||||
];
|
||||
}
|
98
modules/home/gui/desktop/hypr/land/config/bind-user0.nix
Executable file
98
modules/home/gui/desktop/hypr/land/config/bind-user0.nix
Executable file
|
@ -0,0 +1,98 @@
|
|||
let
|
||||
superBinds = builtins.map (x: "SUPER, " + x) [
|
||||
# Apps
|
||||
"Z, exec, obsidian"
|
||||
"L, exec, slack"
|
||||
"H, exec, feishin"
|
||||
"G, exec, scrcpy"
|
||||
"K, exec, ghostty -e nu -e y"
|
||||
"S, exec, steam"
|
||||
"R, exec, ghostty -e zellij a dotfiles"
|
||||
"N, exec, signal-desktop"
|
||||
"T, exec, zeditor"
|
||||
"B, exec, floorp"
|
||||
"X, exec, freetube"
|
||||
"V, exec, discordcanary"
|
||||
"M, exec, element-desktop"
|
||||
"D, exec, ghostty"
|
||||
"P, exec, bitwarden"
|
||||
# Workspaces
|
||||
"1, workspace, 1"
|
||||
"2, workspace, 2"
|
||||
"3, workspace, 3"
|
||||
"4, workspace, 4"
|
||||
"5, workspace, 5"
|
||||
# Windows
|
||||
"Tab, killactive"
|
||||
# Window Focus
|
||||
"C, movefocus, l"
|
||||
"A, movefocus, u"
|
||||
"E, movefocus, d"
|
||||
"I, movefocus, r"
|
||||
"F, splitratio, 0.33"
|
||||
"O, splitratio, -0.33"
|
||||
# Audio
|
||||
"PageUp, exec, playerctl next"
|
||||
"PageDown, exec, playerctl previous"
|
||||
"Home, exec, playerctl play-pause"
|
||||
"Space, exec, rm -r /home/$USER/.cache/tofi* ; tofi-drun"
|
||||
];
|
||||
|
||||
superShiftBinds = builtins.map (x: "SUPER SHIFT, " + x) [
|
||||
# Super+shift binds
|
||||
|
||||
# Quick Action
|
||||
"T, exec, ghostty"
|
||||
"S, exec, flameshot gui"
|
||||
"period, exec, emote"
|
||||
"Tab, fullscreen, 0"
|
||||
"Backspace, layoutmsg, togglesplit"
|
||||
"P, pin, enable"
|
||||
"F, togglefloating"
|
||||
# "Print, exec, grim -g \"$(slurp)\""
|
||||
# Utility
|
||||
"End, exec, shutdown now"
|
||||
"Insert, exec, systemctl reboot"
|
||||
"Home, exec, swaylock"
|
||||
];
|
||||
superCtrlBinds = builtins.map (x: "SUPER CTRL, " + x) [
|
||||
# Super+shift binds
|
||||
|
||||
];
|
||||
|
||||
altBinds = builtins.map (x: "CTRL ALT, " + x) [
|
||||
# Alt binds
|
||||
"1, movetoworkspacesilent, 1"
|
||||
"2, movetoworkspacesilent, 2"
|
||||
"3, movetoworkspacesilent, 3"
|
||||
"4, movetoworkspacesilent, 4"
|
||||
"5, movetoworkspacesilent, 5"
|
||||
# Window Move
|
||||
"C, movewindow, l"
|
||||
"A, movewindow, u"
|
||||
"E, movewindow, d"
|
||||
"I, movewindow, r"
|
||||
];
|
||||
|
||||
shiftBinds = builtins.map (x: "SHIFT, " + x) [
|
||||
# Shift binds
|
||||
];
|
||||
|
||||
ctrlBinds = builtins.map (x: "CTRL, " + x) [
|
||||
# Ctrl binds
|
||||
];
|
||||
|
||||
ctrlShiftBinds = builtins.map (x: "CTRL SHIFT, " + x) [
|
||||
# Ctrl+shift binds
|
||||
# "End, exec, shutdown now"
|
||||
];
|
||||
in
|
||||
superBinds
|
||||
++ superShiftBinds
|
||||
++ superCtrlBinds
|
||||
++ altBinds
|
||||
++ ctrlBinds
|
||||
++ ctrlShiftBinds
|
||||
++ shiftBinds
|
||||
# Docs
|
||||
# https://wiki.hyprland.org/Getting-Started/Master-Tutorial/
|
91
modules/home/gui/desktop/hypr/land/config/bind-user1.nix
Executable file
91
modules/home/gui/desktop/hypr/land/config/bind-user1.nix
Executable file
|
@ -0,0 +1,91 @@
|
|||
let
|
||||
superBinds = builtins.map (x: "SUPER, " + x) [
|
||||
# Apps
|
||||
"B, exec, brave"
|
||||
"E, exec, ghostty -e nu -e y"
|
||||
"S, exec, steam"
|
||||
"N, exec, signal-desktop"
|
||||
"D, exec, discordcanary"
|
||||
"R, exec, flatpak run org.vinegarhq.Sober"
|
||||
"T, exec, ghostty"
|
||||
"P, exec, spotify"
|
||||
"M, exec, prismlauncher"
|
||||
"J, exec, jellyfinmediaplayer"
|
||||
"L, exec, lutris"
|
||||
# Workspaces
|
||||
"1, workspace, 1"
|
||||
"2, workspace, 2"
|
||||
"3, workspace, 3"
|
||||
"4, workspace, 4"
|
||||
"5, workspace, 5"
|
||||
# Windows
|
||||
"X, killactive"
|
||||
"bracketright, splitratio, 0.33"
|
||||
"bracketleft, splitratio, -0.33"
|
||||
"Tab, fullscreen, 0"
|
||||
"F, togglefloating"
|
||||
# Window Focus
|
||||
"left, movefocus, l"
|
||||
"up, movefocus, u"
|
||||
"down, movefocus, d"
|
||||
"right, movefocus, r"
|
||||
# Audio
|
||||
"PageUp, exec, playerctl next"
|
||||
"PageDown, exec, playerctl previous"
|
||||
"Home, exec, playerctl play-pause"
|
||||
"Space, exec, rm -r /home/$USER/.cache/tofi* ; tofi-drun"
|
||||
];
|
||||
|
||||
superShiftBinds = builtins.map (x: "SUPER SHIFT, " + x) [
|
||||
# Super+shift binds
|
||||
# Window Move
|
||||
"left, movewindow, l"
|
||||
"up, movewindow, u"
|
||||
"down, movewindow, d"
|
||||
"right, movewindow, r"
|
||||
# Quick Action
|
||||
"S, exec, flameshot gui"
|
||||
"period, exec, emote"
|
||||
"Backspace, layoutmsg, togglesplit"
|
||||
"P, pin, enable"
|
||||
# "Print, exec, grim -g \"$(slurp)\""
|
||||
# Utility
|
||||
"End, exec, shutdown now"
|
||||
"Insert, exec, systemctl reboot"
|
||||
"Home, exec, swaylock"
|
||||
"1, movetoworkspacesilent, 1"
|
||||
"2, movetoworkspacesilent, 2"
|
||||
"3, movetoworkspacesilent, 3"
|
||||
"4, movetoworkspacesilent, 4"
|
||||
"5, movetoworkspacesilent, 5"
|
||||
];
|
||||
superCtrlBinds = builtins.map (x: "SUPER CTRL, " + x) [
|
||||
# Super+shift binds
|
||||
];
|
||||
|
||||
altBinds = builtins.map (x: "ALT, " + x) [
|
||||
# Alt binds
|
||||
];
|
||||
|
||||
shiftBinds = builtins.map (x: "SHIFT, " + x) [
|
||||
# Shift binds
|
||||
];
|
||||
|
||||
ctrlBinds = builtins.map (x: "CTRL, " + x) [
|
||||
# Ctrl binds
|
||||
];
|
||||
|
||||
ctrlShiftBinds = builtins.map (x: "CTRL SHIFT, " + x) [
|
||||
# Ctrl+shift binds
|
||||
# "End, exec, shutdown now"
|
||||
];
|
||||
in
|
||||
superBinds
|
||||
++ superShiftBinds
|
||||
++ superCtrlBinds
|
||||
++ altBinds
|
||||
++ ctrlBinds
|
||||
++ ctrlShiftBinds
|
||||
++ shiftBinds
|
||||
# Docs
|
||||
# https://wiki.hyprland.org/Getting-Started/Master-Tutorial/
|
4
modules/home/gui/desktop/hypr/land/config/bindl.nix
Executable file
4
modules/home/gui/desktop/hypr/land/config/bindl.nix
Executable file
|
@ -0,0 +1,4 @@
|
|||
[
|
||||
",switch:on:Lid Switch, exec, hyprlock --immediate"
|
||||
",switch:off:Lid Switch, exec, hyprlock --immediate"
|
||||
]
|
10
modules/home/gui/desktop/hypr/land/config/bindm.nix
Executable file
10
modules/home/gui/desktop/hypr/land/config/bindm.nix
Executable file
|
@ -0,0 +1,10 @@
|
|||
let
|
||||
superBinds = builtins.map (x: "SUPER, " + x) [
|
||||
"mouse:272, resizewindow"
|
||||
];
|
||||
|
||||
altBinds = builtins.map (x: "ALT, " + x) [
|
||||
"mouse:272, movewindow"
|
||||
];
|
||||
in
|
||||
superBinds ++ altBinds
|
3
modules/home/gui/desktop/hypr/land/config/binds.nix
Executable file
3
modules/home/gui/desktop/hypr/land/config/binds.nix
Executable file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"allow_workspace_cycles" = "1";
|
||||
}
|
36
modules/home/gui/desktop/hypr/land/config/decoration.nix
Executable file
36
modules/home/gui/desktop/hypr/land/config/decoration.nix
Executable file
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
active_opacity = 0.95;
|
||||
inactive_opacity = 0.90;
|
||||
fullscreen_opacity = 1;
|
||||
rounding = 10;
|
||||
dim_inactive = 1;
|
||||
dim_strength = 0.05;
|
||||
|
||||
shadow = {
|
||||
enabled = true;
|
||||
color = "rgba(00000000)";
|
||||
ignore_window = true;
|
||||
offset = "0 2";
|
||||
range = 20;
|
||||
render_power = 3;
|
||||
scale = 0.97;
|
||||
};
|
||||
|
||||
blur = {
|
||||
enabled = true;
|
||||
|
||||
size = 5;
|
||||
passes = 2;
|
||||
|
||||
brightness = 1;
|
||||
contrast = 1.300000;
|
||||
ignore_opacity = true;
|
||||
noise = 0.011700;
|
||||
|
||||
new_optimizations = true;
|
||||
|
||||
xray = true;
|
||||
popups = true;
|
||||
popups_ignorealpha = 0.2;
|
||||
};
|
||||
}
|
4
modules/home/gui/desktop/hypr/land/config/dwindle.nix
Executable file
4
modules/home/gui/desktop/hypr/land/config/dwindle.nix
Executable file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
}
|
33
modules/home/gui/desktop/hypr/land/config/exec-once.nix
Executable file
33
modules/home/gui/desktop/hypr/land/config/exec-once.nix
Executable file
|
@ -0,0 +1,33 @@
|
|||
{ flake, ... }:
|
||||
let
|
||||
inherit (flake.config.aesthetics.themes)
|
||||
cursor
|
||||
;
|
||||
scarlettOut = "pactl set-default-sink alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y818KFJ0C671CE-00.HiFi__Line1__sink";
|
||||
scarlettIn = "pactl set-default-source alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y818KFJ0C671CE-00.HiFi__Mic1__source";
|
||||
catppuccin = [
|
||||
"gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'"
|
||||
"gsettings set org.gnome.desktop.interface cursor-theme 'catppuccin-mocha-dark-cursors'"
|
||||
"gsettings set org.gnome.desktop.interface cursor-size ${builtins.toString cursor.size}"
|
||||
];
|
||||
in
|
||||
[
|
||||
"swaylock"
|
||||
"hypridle"
|
||||
"wl-clipboard"
|
||||
"wpaperd"
|
||||
"gammastep"
|
||||
"dunst"
|
||||
"playerctrld"
|
||||
"waybar"
|
||||
"nm-applet"
|
||||
"blueman-applet"
|
||||
"rfkill block bluetooth"
|
||||
"rfkill unblock bluetooth"
|
||||
"easyeffects -r"
|
||||
"emote"
|
||||
"flameshot"
|
||||
scarlettIn
|
||||
scarlettOut
|
||||
]
|
||||
++ catppuccin
|
33
modules/home/gui/desktop/hypr/land/config/general.nix
Executable file
33
modules/home/gui/desktop/hypr/land/config/general.nix
Executable file
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
config,
|
||||
flake,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
inherit (flake.config.aesthetics.themes) currentTheme palettes;
|
||||
|
||||
inherit (flake.config.people) user0 user1 user2;
|
||||
|
||||
user = config.home.username;
|
||||
|
||||
themeLogic =
|
||||
if user == user0 then
|
||||
currentTheme.theme0
|
||||
else if user == user1 then
|
||||
currentTheme.theme1
|
||||
else if user == user2 then
|
||||
currentTheme.theme2
|
||||
else
|
||||
currentTheme.theme0;
|
||||
|
||||
el = palettes.${themeLogic}.colours;
|
||||
in
|
||||
{
|
||||
gaps_in = 5;
|
||||
gaps_out = 5;
|
||||
border_size = 2;
|
||||
"col.active_border" = "rgb(${el.base0E})";
|
||||
"col.inactive_border" = "0xff${el.base02}";
|
||||
|
||||
}
|
6
modules/home/gui/desktop/hypr/land/config/input.nix
Executable file
6
modules/home/gui/desktop/hypr/land/config/input.nix
Executable file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
sensitivity = 0.07;
|
||||
accel_profile = "flat";
|
||||
follow_mouse = 1;
|
||||
numlock_by_default = true;
|
||||
}
|
7
modules/home/gui/desktop/hypr/land/config/misc.nix
Executable file
7
modules/home/gui/desktop/hypr/land/config/misc.nix
Executable file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
focus_on_activate = 1;
|
||||
force_default_wallpaper = 0;
|
||||
disable_hyprland_logo = true;
|
||||
disable_splash_rendering = true;
|
||||
disable_hyprland_qtutils_check = true;
|
||||
}
|
6
modules/home/gui/desktop/hypr/land/config/monitor.nix
Executable file
6
modules/home/gui/desktop/hypr/land/config/monitor.nix
Executable file
|
@ -0,0 +1,6 @@
|
|||
let
|
||||
monitorSettings = [
|
||||
"eDP-1,highres@highrr,0x0,1"
|
||||
];
|
||||
in
|
||||
monitorSettings
|
134
modules/home/gui/desktop/hypr/land/config/windowrulev2.nix
Executable file
134
modules/home/gui/desktop/hypr/land/config/windowrulev2.nix
Executable file
|
@ -0,0 +1,134 @@
|
|||
let
|
||||
blueman = "(.blueman-manager-wrapped)";
|
||||
calculator = "(org.gnome.Calculator)";
|
||||
easyeffects = "(com.github.wwmm.easyeffects)";
|
||||
floorp = "(floorp)";
|
||||
nomacs = "(org.nomacs.ImageLounge)";
|
||||
mpv = "(mpv)";
|
||||
vlc = "(vlc)";
|
||||
emote = "(emote)";
|
||||
flameshot = "(flameshot)";
|
||||
bitwarden = "(.*Bitwarden.*)";
|
||||
save = "(.*Enter name of file to save to….*)";
|
||||
proton = "(.*.protonvpn-app-wrapped.*)";
|
||||
picture = "(.*Picture-in-Picture.*)";
|
||||
discord-popout = "(.*Discord Popout.*)";
|
||||
upload = "(.*File Upload.*)";
|
||||
signal = "(signal)";
|
||||
vesktop = "(vesktop)";
|
||||
code = "(code)";
|
||||
feishin = "(feishin)";
|
||||
steam = "(steam)";
|
||||
kdenlive = "(org.kde.kdenlive)";
|
||||
shotcut = "(shotcut)";
|
||||
scrcpy = "(.scrcpy-wrapped)";
|
||||
battle = "(.*Battle.net.*)";
|
||||
|
||||
maxsizeWindows = [
|
||||
"maxsize 720 400, class:^${blueman}$"
|
||||
"maxsize 360 500, class:^${calculator}$"
|
||||
"maxsize 720 400, class:^${easyeffects}$"
|
||||
# "maxsize 720 400, class:^${scrcpy}$"
|
||||
"maxsize 720 400, class:^${mpv}$"
|
||||
"maxsize 720 400, class:^${vlc}$"
|
||||
"maxsize 640 360, class:^${nomacs}$"
|
||||
"maxsize 1000 600, class:^${proton}$"
|
||||
"maxsize 800 450, title:^${bitwarden}$"
|
||||
"maxsize 720 400, title:^${picture}$"
|
||||
"maxsize 720 400, title:^${save}$"
|
||||
"maxsize 720 400, title:^${discord-popout}$"
|
||||
"maxsize 1280 720, title:^${battle}$"
|
||||
"minsize 1280 720, title:^${battle}$"
|
||||
"maxsize 1280 720, title:^${upload}$"
|
||||
"minsize 1280 720, title:^${upload}$"
|
||||
];
|
||||
|
||||
floatWindows = builtins.map (x: "float, " + x) [
|
||||
"class:^${blueman}$"
|
||||
"class:^${calculator}$"
|
||||
"class:^${easyeffects}$"
|
||||
"class:^${emote}$"
|
||||
"class:^${mpv}$"
|
||||
"class:^${vlc}$"
|
||||
"class:^${nomacs}$"
|
||||
"class:^${flameshot}$"
|
||||
# "class:^${scrcpy}$"
|
||||
"class:^${nomacs}$"
|
||||
"class:^${proton}$"
|
||||
"title:^(${picture})$"
|
||||
"title:^(${discord-popout})$"
|
||||
"title:^${bitwarden}$"
|
||||
"title:^${save}$"
|
||||
"title:^${battle}$"
|
||||
"title:^${upload}$"
|
||||
];
|
||||
|
||||
pinWindows = builtins.map (x: "pin, " + x) [
|
||||
"title:^${picture}$"
|
||||
"title:^${discord-popout}$"
|
||||
];
|
||||
|
||||
idleInhibit = builtins.map (x: "idleinhibit, " + x) [
|
||||
"fullscreen, class:^${floorp}$"
|
||||
];
|
||||
|
||||
workspaceInit1 = builtins.map (x: "workspace 1 silent, " + x) [
|
||||
"class:^${signal}$"
|
||||
"class:^${vesktop}$"
|
||||
];
|
||||
|
||||
workspaceInit2 = builtins.map (x: "workspace 2 silent, " + x) [
|
||||
"class:^${code}$"
|
||||
# "class:^${floorp}$"
|
||||
];
|
||||
|
||||
workspaceInit3 = builtins.map (x: "workspace 3 silent, " + x) [
|
||||
"class:^${steam}$"
|
||||
"class:^${shotcut}$"
|
||||
];
|
||||
|
||||
workspaceInit4 = builtins.map (x: "workspace 4 silent, " + x) [
|
||||
"class:^${feishin}$"
|
||||
"class:^${scrcpy}$"
|
||||
];
|
||||
|
||||
centerWindows = builtins.map (x: "center, " + x) [
|
||||
"class:^${blueman}$"
|
||||
"class:^${calculator}$"
|
||||
"class:^${easyeffects}$"
|
||||
"class:^${emote}$"
|
||||
"class:^${mpv}$"
|
||||
"class:^${vlc}$"
|
||||
"class:^${nomacs}$"
|
||||
"class:^${flameshot}$"
|
||||
# "class:^${scrcpy}$"
|
||||
"title:^(${picture})$"
|
||||
"title:^(${discord-popout})$"
|
||||
"title:^${bitwarden}$"
|
||||
"title:^${save}$"
|
||||
"title:^${battle}$"
|
||||
"title:^${upload}$"
|
||||
];
|
||||
|
||||
opaqueWindows = builtins.map (x: "opaque, " + x) [
|
||||
"class:^${floorp}$"
|
||||
"class:^${kdenlive}$"
|
||||
"class:^(krita)$"
|
||||
"class:^${shotcut}$"
|
||||
"class:^${mpv}$"
|
||||
"class:^(Brave-browser)$"
|
||||
"class:^(Gimp-2.10)$"
|
||||
"class:^(org.kde.okular)$"
|
||||
"class:^${vlc}$"
|
||||
];
|
||||
in
|
||||
maxsizeWindows
|
||||
++ floatWindows
|
||||
++ pinWindows
|
||||
++ idleInhibit
|
||||
++ workspaceInit1
|
||||
++ workspaceInit2
|
||||
++ workspaceInit3
|
||||
++ workspaceInit4
|
||||
++ centerWindows
|
||||
++ opaqueWindows
|
3
modules/home/gui/desktop/hypr/land/config/xwayland.nix
Executable file
3
modules/home/gui/desktop/hypr/land/config/xwayland.nix
Executable file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
force_zero_scaling = true;
|
||||
}
|
54
modules/home/gui/desktop/hypr/land/default.nix
Executable file
54
modules/home/gui/desktop/hypr/land/default.nix
Executable file
|
@ -0,0 +1,54 @@
|
|||
{
|
||||
flake,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
inherit (flake.config.people) user0;
|
||||
user = config.home.username;
|
||||
|
||||
configPath = ./config;
|
||||
configImports = {
|
||||
animations = import (configPath + /animations.nix);
|
||||
bindm = import (configPath + /bindm.nix);
|
||||
binds = import (configPath + /binds.nix);
|
||||
# bindl = import (configPath + /bindl.nix);
|
||||
decoration = import (configPath + /decoration.nix);
|
||||
dwindle = import (configPath + /dwindle.nix);
|
||||
exec-once = import (configPath + /exec-once.nix) { inherit flake; };
|
||||
general = import (configPath + /general.nix) { inherit config flake; };
|
||||
input = import (configPath + /input.nix);
|
||||
misc = import (configPath + /misc.nix);
|
||||
windowrulev2 = import (configPath + /windowrulev2.nix);
|
||||
xwayland = import (configPath + /xwayland.nix);
|
||||
monitor = import (configPath + /monitor.nix);
|
||||
bind =
|
||||
let
|
||||
bindConfig =
|
||||
if user == user0 then
|
||||
import (configPath + /bind-user0.nix)
|
||||
else
|
||||
import (configPath + /bind-user1.nix);
|
||||
in
|
||||
bindConfig;
|
||||
};
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = null;
|
||||
portalPackage = null;
|
||||
xwayland.enable = true;
|
||||
systemd = {
|
||||
enable = true;
|
||||
enableXdgAutostart = true;
|
||||
extraCommands = [
|
||||
"systemctl --user stop hyprland-session.target"
|
||||
"systemctl --user start hyprland-session.target"
|
||||
];
|
||||
};
|
||||
settings = configImports;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue