54 lines
1.3 KiB
Nix
54 lines
1.3 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
inputs,
|
|
...
|
|
}:
|
|
let
|
|
hyprPkgs = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system};
|
|
in
|
|
{
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
package = hyprPkgs.hyprland;
|
|
portalPackage = hyprPkgs.xdg-desktop-portal-hyprland;
|
|
xwayland.enable = true;
|
|
configType = "lua";
|
|
systemd = {
|
|
enable = true;
|
|
variables = [ "--all" ];
|
|
};
|
|
|
|
extraConfig = ''
|
|
local hypr_config = os.getenv("XDG_CONFIG_HOME") or "${config.xdg.configHome}"
|
|
package.path = hypr_config .. "/hypr/?.lua;"
|
|
.. hypr_config .. "/hypr/?/init.lua;"
|
|
.. package.path
|
|
|
|
require("conf.variables")
|
|
require("conf.binding")
|
|
require("conf.env")
|
|
require("conf.input")
|
|
require("conf.others")
|
|
require("conf.monitor")
|
|
require("conf.startup")
|
|
require("conf.style")
|
|
require("conf.windowrules")
|
|
require("conf.workspace")
|
|
'';
|
|
};
|
|
|
|
services.hyprpolkitagent.enable = true;
|
|
|
|
home.packages = with pkgs; [
|
|
hyprpaper
|
|
hyprlock
|
|
wl-clipboard
|
|
grim
|
|
slurp
|
|
];
|
|
|
|
# Force le symlink hors-store, sans passer par dotfiles_apps
|
|
home.file.".config/hypr/conf".source =
|
|
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-config/dotfiles/hypr/conf";
|
|
}
|