105 lines
2.4 KiB
Nix
105 lines
2.4 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
config,
|
|
nix-colors,
|
|
...
|
|
}: {
|
|
options = {
|
|
desktop = {
|
|
enable = lib.mkEnableOption "gui";
|
|
terminal = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = "the default terminal to use";
|
|
default = "kitty";
|
|
};
|
|
fileManager = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = "the default file_manager to use";
|
|
default = "pcmanfm";
|
|
};
|
|
browser = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = "the default browser to use";
|
|
default = "firefox";
|
|
};
|
|
launcher = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = "the default launcher to use";
|
|
default = "rofi -show drun";
|
|
};
|
|
};
|
|
};
|
|
imports = [
|
|
nix-colors.homeManagerModules.default
|
|
./firefox
|
|
./keepassxc
|
|
./kitty
|
|
./nextcloud-client
|
|
./picom
|
|
./nixGL
|
|
./theme
|
|
./awesome
|
|
./rofi
|
|
./network-manager-applet
|
|
./alacritty
|
|
./darkman
|
|
./pcmanfm
|
|
./thunar
|
|
];
|
|
config = lib.mkIf config.desktop.enable {
|
|
desktop = {
|
|
xserver.enable = lib.mkDefault true;
|
|
awesome.enable = lib.mkDefault true;
|
|
pcmanfm.enable = lib.mkDefault true;
|
|
network-manager.enable = lib.mkDefault true;
|
|
};
|
|
programs = {
|
|
keepassxc.enable = lib.mkDefault true;
|
|
firefox.enable = lib.mkDefault true;
|
|
kitty.enable = lib.mkDefault true;
|
|
};
|
|
services = {
|
|
nextcloud-client.enable = lib.mkDefault true;
|
|
udiskie = {
|
|
settings = {
|
|
enable = lib.mkDefault true;
|
|
program_options = {
|
|
udisks_version = 2;
|
|
tray = true;
|
|
};
|
|
};
|
|
};
|
|
picom.enable = lib.mkDefault true;
|
|
};
|
|
fonts.fontconfig.enable = true;
|
|
colorScheme = nix-colors.colorSchemes.catppuccin-mocha;
|
|
xdg = {
|
|
enable = lib.mkDefault true;
|
|
portal = {
|
|
enable = lib.mkDefault true;
|
|
config = {
|
|
common = {
|
|
default = [
|
|
"gtk"
|
|
];
|
|
};
|
|
awesome = {
|
|
default = [
|
|
"pantheon"
|
|
"gtk"
|
|
];
|
|
"org.freedesktop.impl.portal.Secret" = [
|
|
"gnome-keyring"
|
|
];
|
|
};
|
|
};
|
|
extraPortals = with pkgs; [
|
|
xdg-desktop-portal-gtk
|
|
];
|
|
};
|
|
userDirs.enable = true;
|
|
};
|
|
};
|
|
}
|