105 lines
3.1 KiB
Nix
105 lines
3.1 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.xyno.presets.gui;
|
|
in
|
|
{
|
|
options.xyno.presets.gui.enable = lib.mkEnableOption "enables xynos gui config";
|
|
options.xyno.presets.gui.terminalEmulator = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = "alacritty";
|
|
};
|
|
config = lib.mkIf cfg.enable {
|
|
xyno.desktop.niri.enable = true;
|
|
xyno.desktop.audio.enable = lib.mkDefault true;
|
|
xyno.desktop.mate-polkit.enable = true;
|
|
xyno.hardware.kmonad.enable = true;
|
|
# wayland on electron
|
|
environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
|
services.displayManager.defaultSession = "niri";
|
|
# gdm
|
|
services.xserver.displayManager.gdm.enable = true;
|
|
services.xserver.enable = true;
|
|
services.xserver.displayManager.gdm.wayland = true;
|
|
# ssh agent
|
|
programs.ssh.startAgent = true;
|
|
|
|
qt = {
|
|
enable = true;
|
|
style = "breeze";
|
|
platformTheme = "kde";
|
|
};
|
|
|
|
# setup printing
|
|
services.avahi = {
|
|
enable = true;
|
|
nssmdns4 = true;
|
|
nssmdns6 = true;
|
|
openFirewall = true;
|
|
};
|
|
services.printing.enable = true;
|
|
|
|
# enable the gnome shit
|
|
services.gnome.gnome-keyring.enable = true;
|
|
services.gnome.gnome-online-accounts.enable = true;
|
|
services.gnome.core-utilities.enable = true;
|
|
services.gnome.sushi.enable = true;
|
|
services.gnome.gnome-settings-daemon.enable = true;
|
|
services.gvfs.enable = true;
|
|
|
|
xdg.terminal-exec = {
|
|
enable = true;
|
|
settings.default = [ "foot.desktop" ];
|
|
};
|
|
|
|
environment.sessionVariables.GTK_USE_PORTAL = "1";
|
|
|
|
home-manager.users.${config.xyno.system.user.name} =
|
|
{ pkgs, ... }:
|
|
{
|
|
xdg.mimeApps = {
|
|
enable = true;
|
|
defaultApplications = {
|
|
"x-scheme-handler/mailto" = [ "aerc.desktop" ];
|
|
"inode/directory" = [ "org.gnome.Nautilus.desktop" ];
|
|
"application/x-gnome-saved-search" = [ "org.gnome.Nautilus.desktop" ];
|
|
"x-scheme-handler/http" = "userapp-Zen-D2P132.desktop";
|
|
"x-scheme-handler/https" = "userapp-Zen-D2P132.desktop";
|
|
"x-scheme-handler/chrome" = "userapp-Zen-D2P132.desktop";
|
|
"text/html" = "userapp-Zen-D2P132.desktop";
|
|
"application/x-extension-htm" = "userapp-Zen-D2P132.desktop";
|
|
"application/x-extension-html" = "userapp-Zen-D2P132.desktop";
|
|
"application/x-extension-shtml" = "userapp-Zen-D2P132.desktop";
|
|
"application/xhtml+xml" = "userapp-Zen-D2P132.desktop";
|
|
"application/x-extension-xhtml" = "userapp-Zen-D2P132.desktop";
|
|
"application/x-extension-xht" = "userapp-Zen-D2P132.desktop";
|
|
"application/pdf" = "org.gnome.Evince.desktop";
|
|
|
|
};
|
|
};
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
kdePackages.breeze-gtk
|
|
kdePackages.breeze.qt5
|
|
kdePackages.breeze
|
|
kdePackages.breeze-icons
|
|
];
|
|
|
|
# fonts
|
|
fonts.packages = with pkgs; [
|
|
nerdfonts
|
|
cantarell-fonts
|
|
dejavu_fonts
|
|
source-code-pro # Default monospace font in 3.32
|
|
source-sans
|
|
b612
|
|
|
|
];
|
|
|
|
};
|
|
}
|