64 lines
1.3 KiB
Nix
64 lines
1.3 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.custom.roles.desktop;
|
|
in
|
|
{
|
|
options.custom.roles.desktop.enable = lib.mkOption {
|
|
type = lib.types.bool;
|
|
default = false;
|
|
};
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
custom = {
|
|
programs.symlinks.enable = true;
|
|
users.vili.enable = true;
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
alacritty
|
|
vlc
|
|
flameshot
|
|
speedcrunch
|
|
];
|
|
|
|
services = {
|
|
displayManager = {
|
|
autoLogin.enable = true;
|
|
autoLogin.user = "vili";
|
|
};
|
|
xserver = {
|
|
enable = true;
|
|
displayManager = {
|
|
lightdm.enable = true;
|
|
sessionCommands = ''${pkgs.xorg.xrdb}/bin/xrdb -merge < ${
|
|
(import ../programs/embedded/xresources.conf { inherit pkgs; })
|
|
}'';
|
|
};
|
|
};
|
|
|
|
pipewire.enable = false;
|
|
pulseaudio.enable = true;
|
|
};
|
|
nixpkgs.config.pulseaudio = true;
|
|
|
|
security.polkit.enable = true;
|
|
|
|
xdg.mime.defaultApplications = {
|
|
"application/pdf" = "org.gnome.Evince.desktop";
|
|
"text/plain" = "org.xfce.mousepad.desktop";
|
|
"text/x-tex" = "org.kde.kile.desktop";
|
|
"inode/directory" = "pcmanfm.description";
|
|
};
|
|
|
|
qt = {
|
|
enable = true;
|
|
style = "adwaita-dark";
|
|
platformTheme = "gnome";
|
|
};
|
|
};
|
|
}
|