{ config, pkgs, lib, namespace, ... }: let hasDestopEnvironment = config.${namespace}.desktop.cosmic.enable || config.${namespace}.desktop.gnome.enable || config.${namespace}.desktop.hyprland.enable; in { programs = { nix-index-database.comma.enable = true; zsh.enable = lib.mkForce true; gnupg.agent = { enable = lib.mkDefault true; enableSSHSupport = lib.mkDefault true; }; nix-index = { enable = lib.mkDefault true; enableBashIntegration = lib.mkDefault false; enableZshIntegration = lib.mkDefault true; }; nix-ld = { enable = lib.mkDefault hasDestopEnvironment; libraries = with pkgs; [ alsa-lib at-spi2-atk atkmm bash cairo cups.lib curl dbus expat fontconfig freetype glib gtk3 icu libdrm libgbm libgcc libgdiplus libGL libpulseaudio libsecret libssh2 libunwind libuuid libva libxkbcommon mesa nss openssl pango pciutils SDL2 util-linux vulkan-loader libICE libSM libXcursor libXrandr libXi libXcomposite libXdamage libXext libXfixes # libx11 libxcb zlib ]; }; seahorse.enable = lib.mkDefault hasDestopEnvironment; }; environment = { systemPackages = with pkgs; [ attic-client dislocker uutils-coreutils-noprefix uutils-diffutils uutils-findutils coreutils nixd ]; }; }