36 lines
958 B
Nix
36 lines
958 B
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
user,
|
|
inputs,
|
|
flakeRoot,
|
|
...
|
|
}:
|
|
let
|
|
hyprlandConf = builtins.readFile (flakeRoot + "/assets/hyprland/conf/hyprland.conf");
|
|
userConfig = import (flakeRoot + "/assets/flake/users/henrov.nix");
|
|
in
|
|
{
|
|
# Nix settings to use Hyprland's cache for packages
|
|
nix.settings = {
|
|
substituters = [ "https://hyprland.cachix.org" ];
|
|
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
|
};
|
|
|
|
# Install Hyprland and enable it as the window manager
|
|
environment.systemPackages = with pkgs; [ hyprland ];
|
|
programs.hyprland = {
|
|
enable = true;
|
|
xwayland.enable = true;
|
|
};
|
|
|
|
# Hyprland-specific Home Manager configurations
|
|
home-manager.users.${user.username} = {
|
|
home.stateVersion = userConfig.stateVersion;
|
|
home.username = userConfig.username;
|
|
home.homeDirectory = userConfig.homeDirectory;
|
|
xdg.configFile."hypr/hyprland.conf".text = hyprlandConf;
|
|
};
|
|
}
|