meta: Begin making hyprland module customizable

This is a part of simplifying the hyprland module to simply "desktop".
This commit is contained in:
Donovan Glover 2024-04-04 05:34:30 -04:00
parent 3da9c62869
commit 9ee08ca7eb
No known key found for this signature in database
GPG Key ID: EA7408A77AE1BE65

View File

@ -1,82 +1,92 @@
{ pkgs, ... }:
{ pkgs, config, lib, ... }:
let
inherit (lib) mkEnableOption mkIf;
cfg = config.modules.desktop;
in
{
programs.hyprland.enable = true;
options.modules.desktop = {
};
i18n.inputMethod = {
enabled = "fcitx5";
config = {
programs.hyprland.enable = true;
fcitx5 = {
addons = with pkgs; [ fcitx5-mozc ];
waylandFrontend = true;
i18n.inputMethod = {
enabled = "fcitx5";
fcitx5 = {
addons = with pkgs; [ fcitx5-mozc ];
waylandFrontend = true;
};
};
};
services.udisks2 = {
enable = true;
mountOnMedia = true;
};
services.xserver = {
enable = true;
excludePackages = [ pkgs.xterm ];
};
services.pipewire = {
enable = true;
alsa = {
services.udisks2 = {
enable = true;
support32Bit = true;
mountOnMedia = true;
};
pulse.enable = true;
};
environment.systemPackages = with pkgs; [
pulseaudio
];
services.greetd = {
enable = true;
restart = false;
settings = {
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd Hyprland";
user = "greeter";
};
initial_session = {
command = "${pkgs.hyprland}/bin/Hyprland";
user = "user";
};
services.xserver = {
enable = true;
excludePackages = [ pkgs.xterm ];
};
};
fonts = {
enableDefaultPackages = false;
services.pipewire = {
enable = true;
packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji
maple-mono
font-awesome
nerdfonts
kanji-stroke-order-font
liberation_ttf
alsa = {
enable = true;
support32Bit = true;
};
pulse.enable = true;
};
environment.systemPackages = with pkgs; [
pulseaudio
];
fontconfig = {
defaultFonts = {
serif = [ "Noto Serif CJK JP" "Noto Serif" ];
sansSerif = [ "Noto Sans CJK JP" "Noto Sans" ];
monospace = [ "Noto Sans Mono CJK JP" "Noto Sans Mono" ];
};
services.greetd = {
enable = true;
restart = false;
allowBitmaps = false;
settings = {
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd Hyprland";
user = "greeter";
};
initial_session = {
command = "${pkgs.hyprland}/bin/Hyprland";
user = "user";
};
};
};
fonts = {
enableDefaultPackages = false;
packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji
maple-mono
font-awesome
nerdfonts
kanji-stroke-order-font
liberation_ttf
];
fontconfig = {
defaultFonts = {
serif = [ "Noto Serif CJK JP" "Noto Serif" ];
sansSerif = [ "Noto Sans CJK JP" "Noto Sans" ];
monospace = [ "Noto Sans Mono CJK JP" "Noto Sans Mono" ];
};
allowBitmaps = false;
};
};
};
}