nixcfg/homeManagerModules/desktopEnv/hypr/default.nix

69 lines
1.9 KiB
Nix
Raw Normal View History

2024-03-28 19:52:15 -04:00
{ pkgs, lib, config, ... }: {
imports = [ ./hypridle ./hyprlock ./hyprpaper ./hyprshade ./theme.nix ];
2024-03-28 19:52:15 -04:00
options = {
desktopEnv.hyprland.enable =
lib.mkEnableOption "Enables hyprland with extra apps.";
};
config = lib.mkIf config.desktopEnv.hyprland.enable {
# Hypr* modules, plguins, and tools.
desktopEnv.hyprland.hypridle.enable = lib.mkDefault true;
desktopEnv.hyprland.hyprlock.enable = lib.mkDefault true;
desktopEnv.hyprland.hyprpaper.enable = lib.mkDefault true;
desktopEnv.hyprland.hyprshade.enable = lib.mkDefault true;
desktopEnv.hyprland.gtk-qt.enable = lib.mkDefault true;
2024-03-28 19:52:15 -04:00
# Basic apps needed to run a hyprland desktop.
guiApps.waybar.enable = lib.mkDefault true;
guiApps.mako.enable = lib.mkDefault true;
guiApps.fuzzel.enable = lib.mkDefault true;
2024-03-29 23:27:08 -04:00
guiApps.wlogout.enable = lib.mkDefault true;
2024-03-28 19:52:15 -04:00
guiApps.alacritty.enable = lib.mkDefault true;
2024-03-30 21:29:24 -04:00
guiApps.firefox.enable = lib.mkDefault true;
2024-03-28 19:52:15 -04:00
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
brightnessctl
evince
hyprcursor
hyprland-protocols
hyprnome
hyprshot
playerctl
2024-03-28 19:52:15 -04:00
xfce.exo
xfce.ristretto
xfce.thunar
xfce.thunar-archive-plugin
xfce.thunar-media-tags-plugin
xfce.thunar-volman
xfce.tumbler
xfce.xfce4-settings
xfce.xfce4-taskmanager
xfce.xfconf
];
2024-03-29 22:23:49 -04:00
services.cliphist.enable = true;
2024-03-28 19:52:15 -04:00
wayland.windowManager.hyprland = {
enable = true;
extraConfig = builtins.readFile ./hyprland.conf;
};
xdg.configFile."xfce4/helpers.rc".text = ''
TerminalEmulator=alacritty
FileManager=thunar
WebBrowser=firefox
'';
xdg.portal = {
enable = true;
configPackages = [ pkgs.xdg-desktop-portal-hyprland ];
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
};
2024-03-28 19:52:15 -04:00
};
}