flake/nixos/gui-pkgs.nix
2024-11-22 09:11:26 -05:00

55 lines
1.5 KiB
Nix

{ pkgs, inputs, system, lib, ... }:
let
kdePackages = with pkgs.kdePackages; [ plasma-browser-integration ];
packages = with pkgs; [
bitwarden-desktop
onlyoffice-bin
krita
ytmdesktop
ktailctl
wl-clipboard
# we install xdg-desktop-portal-gtk so GTK theming works in KDE Plasma
xdg-desktop-portal-gtk
libnotify
];
flakePackages = with inputs; [ zen-browser.packages.${system}.specific ];
in {
environment.systemPackages =
lib.lists.unique (kdePackages ++ packages ++ flakePackages);
# Enable the X11 windowing system.
# You can leave this disabled if you're only using the Wayland session.
services.xserver.enable = false;
# Enable the SDDM Display Manager and enable its Wayland support.
services.displayManager.sddm = {
enable = true;
wayland.enable = true;
};
# Enable the KDE Plasma Desktop Environment.
services.desktopManager.plasma6.enable = true;
programs.partition-manager.enable = true;
fonts.packages = with pkgs; [
corefonts
(nerdfonts.override { fonts = [ "FiraCode" ]; })
];
# Systemd user services
# See https://wiki.nixos.org/wiki/Systemd/User_Services for more information
systemd.user.services = {
ktailctl = {
enable = true;
after = [ "network.target" ];
wantedBy = [ "default.target" ];
description =
"A GUI to monitor and manage Tailscale on your Linux desktop, built using KDE Frameworks and Kirigami2.";
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ktailctl}/bin/ktailctl";
};
};
};
}