hyprland: moved hyprland plugins and extras into modules

This commit is contained in:
Aly Raffauf 2024-03-30 13:58:07 -04:00
parent 2e81fafd61
commit 1e192d9f11
13 changed files with 90 additions and 21 deletions

View file

@ -1,5 +1,12 @@
{ pkgs, lib, config, ... }: { { pkgs, lib, config, ... }: {
imports = [
./hypridle
./hyprlock
./hyprpaper
./hyprshade
];
options = { options = {
desktopEnv.hyprland.enable = desktopEnv.hyprland.enable =
lib.mkEnableOption "Enables hyprland with extra apps."; lib.mkEnableOption "Enables hyprland with extra apps.";
@ -7,6 +14,12 @@
config = lib.mkIf config.desktopEnv.hyprland.enable { 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;
# Basic apps needed to run a hyprland desktop. # Basic apps needed to run a hyprland desktop.
guiApps.waybar.enable = lib.mkDefault true; guiApps.waybar.enable = lib.mkDefault true;
guiApps.mako.enable = lib.mkDefault true; guiApps.mako.enable = lib.mkDefault true;
@ -19,12 +32,8 @@
brightnessctl brightnessctl
evince evince
hyprcursor hyprcursor
hypridle
hyprland-protocols hyprland-protocols
hyprlock
hyprnome hyprnome
hyprpaper
hyprshade
hyprshot hyprshot
playerctl playerctl
pyprland pyprland
@ -50,23 +59,6 @@
extraConfig = builtins.readFile ./hyprland.conf; extraConfig = builtins.readFile ./hyprland.conf;
}; };
xdg.configFile."hypr/hypridle.conf".source = ./hypridle.conf;
xdg.configFile."hypr/hyprlock.conf".source = ./hyprlock.conf;
xdg.configFile."hypr/hyprpaper.conf".source = ./hyprpaper.conf;
xdg.configFile."hypr/wallpapers/greenCity.jpg".source =
./wallpapers/greenCity.jpg;
xdg.configFile."hypr/wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg".source =
./wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg;
xdg.configFile."hypr/wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg".source =
./wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg;
xdg.configFile."hypr/shaders/blue-light-filter.glsl".source =
./blue-light-filter.glsl;
xdg.configFile."hypr/hyprshade.toml".source = ./hyprshade.toml;
xdg.configFile."xfce4/helpers.rc".text = '' xdg.configFile."xfce4/helpers.rc".text = ''
TerminalEmulator=alacritty TerminalEmulator=alacritty
FileManager=thunar FileManager=thunar

View file

@ -0,0 +1,17 @@
{ pkgs, lib, config, ... }: {
options = {
desktopEnv.hyprland.hypridle.enable =
lib.mkEnableOption "Enables hypridle.";
};
config = lib.mkIf config.desktopEnv.hyprland.hypridle.enable {
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
hypridle
];
xdg.configFile."hypr/hypridle.conf".source = ./hypridle.conf;
};
}

View file

@ -0,0 +1,17 @@
{ pkgs, lib, config, ... }: {
options = {
desktopEnv.hyprland.hyprlock.enable =
lib.mkEnableOption "Enables hyprlock.";
};
config = lib.mkIf config.desktopEnv.hyprland.hyprlock.enable {
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
hyprlock
];
xdg.configFile."hypr/hyprlock.conf".source = ./hyprlock.conf;
};
}

View file

@ -0,0 +1,24 @@
{ pkgs, lib, config, ... }: {
options = {
desktopEnv.hyprland.hyprpaper.enable =
lib.mkEnableOption "Enables hyprpaper and assorted wallpapers.";
};
config = lib.mkIf config.desktopEnv.hyprland.hyprpaper.enable {
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
hyprpaper
];
xdg.configFile."hypr/hyprpaper.conf".source = ./hyprpaper.conf;
xdg.configFile."hypr/wallpapers/greenCity.jpg".source =
./wallpapers/greenCity.jpg;
xdg.configFile."hypr/wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg".source =
./wallpapers/jr-korpa-9XngoIpxcEo-unsplash.jpg;
xdg.configFile."hypr/wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg".source =
./wallpapers/salty-justice-NOMebOREvtc-unsplash.jpg;
};
}

View file

Before

Width:  |  Height:  |  Size: 4.1 MiB

After

Width:  |  Height:  |  Size: 4.1 MiB

View file

@ -0,0 +1,19 @@
{ pkgs, lib, config, ... }: {
options = {
desktopEnv.hyprland.hyprshade.enable =
lib.mkEnableOption "Enables hyprshade with blue light filter.";
};
config = lib.mkIf config.desktopEnv.hyprland.hyprshade.enable {
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
hyprshade
];
xdg.configFile."hypr/shaders/blue-light-filter.glsl".source =
./blue-light-filter.glsl;
xdg.configFile."hypr/hyprshade.toml".source = ./hyprshade.toml;
};
}