nixos/system/home/desktop.nix

64 lines
1.7 KiB
Nix
Raw Normal View History

{ config, pkgs, ... }:
{
imports = [
./plasma/default.nix
./emacs/default.nix
./terminal/default.nix
./browser/default.nix
./services/email/default.nix
./services/calendar/default.nix
];
home = {
packages = with pkgs; [
webcord
signal-desktop
whatsapp-for-linux
x2goclient
];
file.${config.gtk.gtk2.configLocation}.force = true; # Stop clashing with KDE
};
services.syncthing.enable = true;
programs.mpv.enable = true;
gtk = {
enable = true;
gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
iconTheme = {
package = pkgs.papirus-icon-theme;
name = "Papirus";
};
};
qt = {
enable = true;
2024-10-02 08:08:55 +01:00
style.name = "breeze";
};
xdg = {
mime.enable = true;
2024-07-30 15:06:34 +01:00
mimeApps =
let
defaultApplications = import ./mimeapps/default.nix;
2024-07-30 15:06:34 +01:00
in
{
enable = true;
inherit defaultApplications;
associations.added = defaultApplications;
};
userDirs = {
enable = true;
createDirectories = true;
extraConfig = {
XDG_PROJECTS_DIR = "${config.home.homeDirectory}/Projects";
};
};
configFile = {
# Ensure GTK config is set
"gtk-3.0/gtk.css".force = true;
"gtk-3.0/settings.ini".force = true;
"gtk-4.0/gtk.css".force = true;
"gtk-4.0/settings.ini".force = true;
# Autostart some programs
"autostart/signal-desktop.desktop".source = "${pkgs.signal-desktop}/share/applications/signal-desktop.desktop";
2024-09-22 10:12:34 +01:00
"autostart/com.github.eneshecan.WhatsAppForLinux.desktop".source = "${pkgs.whatsapp-for-linux}/share/applications/com.github.eneshecan.WhatsAppForLinux.desktop";
};
};
}