Files
nixos/modules/desktop/hypr.nix
T
2026-10-02 02:06:46 +02:00

122 lines
3.0 KiB
Nix

{ lib, pkgs, ... }:
#----------------------------------------Autostart----------------------------------------
# hl.on("hyprland.start", function()
# -- plugins
# hl.exec_cmd("hyprpm reload")
#
# -- run kanshi for output placement (also starts up bg and waybar)
# hl.exec_cmd("kanshi")
#
# -- notification manager
# hl.exec_cmd("dunst")
#
# -- start a terminal in the scratchpad
# hl.exec_cmd("kitty --class scratchme -d ~/Documents/diary")
#
# -- run flameshot daemon
# hl.exec_cmd("nohup flameshot")
#
# -- cursor theme
# hl.exec_cmd("hyprctl setcursor Catppuccin-Macchiato-Dark-Cursors 24")
#
# -- opencloud
# hl.exec_cmd("opencloud")
#
# -- openrgb
# hl.exec_cmd("type openrgb &> /dev/null && openrgb --noautoconnect -p aroace.orp > /dev/null")
# end)
#
let
hyprLib = import ../../lib/hypr.nix { inherit lib; };
mainMod = "SUPER";
in
{
imports = [
(import ./hypr-bindings.nix { inherit hyprLib mainMod; })
./hypr-input.nix
./hypr-look-and-feel.nix
(import ./hypr-passthrough.nix { inherit hyprLib mainMod; })
(import ./hypr-plugins.nix { inherit hyprLib mainMod lib pkgs; })
./hypr-rules.nix
(import ./hypr-shutdown.nix { inherit hyprLib mainMod; })
(import ./hypr-workspaces.nix { inherit hyprLib mainMod; })
./hypr-xf86.nix
./hyprapps.nix
];
_module.args.hyprLib = hyprLib;
programs.hyprland = {
enable = true;
withUWSM = true;
};
programs.uwsm = {
enable = true;
waylandCompositors = {
hyprland = {
prettyName = "Hyprland";
comment = "Hyprland compositor managed by UWSM";
binPath = "/run/current-system/sw/bin/Hyprland";
};
};
};
home-manager.users."djai".home.file.".config/hypr/scripts".source = ./scripts;
home-manager.users."djai".home.file.".config/hypr/shaders".source = ./shaders;
home-manager.users."djai".wayland.windowManager.hyprland = {
enable = true;
configType = "lua";
plugins = with pkgs; [
hyprlandPlugins.hypr-darkwindow
];
portalPackage = null;
settings = {
config = {
general = {
gaps_in = 5;
gaps_out = 1;
border_size = 2;
col = {
active_border = { colors = [
(lib.generators.mkLuaInline "colors.blue")
(lib.generators.mkLuaInline "colors.mauve")
]; angle = 45; };
inactive_border = (lib.generators.mkLuaInline "colors.mantle");
};
layout = "dwindle";
};
dwindle = {
preserve_split = true;
special_scale_factor = 0.7;
};
misc = {
enable_anr_dialog = false;
enable_swallow = false;
disable_hyprland_logo = true;
animate_manual_resizes = true;
animate_mouse_windowdragging = false;
mouse_move_focuses_monitor = true;
focus_on_activate = false;
};
ecosystem = {
no_update_news = true;
no_donation_nag = true;
};
};
};
};
}