Files
nixos-config/home/common/programs/desktop/default.nix
T
Miguel Palhas 39e6276c7d Session overhaul: dev tooling, cleanup, theming, fixes
Tooling:
- nh + nvd/nom/statix/deadnix/comma (new programs/nix.nix); GC via nh clean
- zoxide (cd), atuin, just, lazydocker, dust, duf, difftastic (git dft)

Structure:
- rename desktop -> konishi; homeConfigurations -> "user@host" for nh autodetect

Removals (heavy/unused):
- android-studio, unity/.NET/omnisharp/vscode, kicad, zoom, calibre,
  google-fonts, nerd-dictation

Screen recording:
- kooha + vokoscreen-ng + `webcam` corner-cam command/window-rule

Fixes:
- WEBKIT_DISABLE_DMABUF_RENDERER moved to common (electron/tauri on intel)
- kitty pinned to Catppuccin-Mocha; darkman no longer toggles kitty/claude
- claude theme dark + statusline locale fix
- ssh: migrate to settings API + multiplexing/keepalive/AddKeysToAgent;
  gpg-agent enableSshSupport
- silence hyprland configType / gtk4 / xdg userDirs deprecations

Flake hygiene:
- follows=nixpkgs for foundry/hardware/rose-pine/zen/spicetify (10->5 nixpkgs)
- zoxide _ZO_DOCTOR=0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 18:17:25 +01:00

116 lines
2.5 KiB
Nix

{
config,
lib,
pkgs,
...
}:
{
imports = [
./darkman.nix
./spicetify.nix
];
home = {
packages = with pkgs; [
# various
google-chrome
thunar
obsidian
mpv
# screen recording — evaluating these
obs-studio
kooha # simple Wayland-native screen+audio recorder
vokoscreen-ng # GUI recorder with webcam overlay
gimp
font-manager
imv
pavucontrol
zathura
libsForQt5.qt5ct
kdePackages.qt6ct
nwg-look
xournalpp
jq
ffmpeg
unzip
# remote desktop
remmina
# networking
networkmanagerapplet
mtr
dnsutils
# communication
slack
ferdium
signal-desktop
# dev tools
yaak
bun
# themes
tela-icon-theme
];
pointerCursor = {
package = pkgs.numix-cursor-theme;
name = "Numix-Cursor-Light";
};
};
gtk = {
enable = true;
theme = {
name = "Orchis-Dark-Compact";
package = pkgs.orchis-theme;
};
# Keep applying the gtk3 theme to gtk4 too (new default is null).
gtk4.theme = config.gtk.theme;
iconTheme = {
name = "Tela black";
package = pkgs.tela-icon-theme;
};
cursorTheme = {
name = "Numix-Cursor-Light";
package = pkgs.numix-cursor-theme;
};
};
xdg.configFile = {
# zathura: include noctalia-generated theme
"zathura/zathurarc".text = ''
include noctaliarc
'';
# gtk: include noctalia-generated css (mkForce to override gtk module)
"gtk-3.0/gtk.css".text = lib.mkForce ''
@import url("noctalia.css");
'';
"gtk-4.0/gtk.css".text = lib.mkForce ''
@import url("noctalia.css");
'';
# qt: use noctalia color scheme. Applied via QT_QPA_PLATFORMTHEME=qt6ct,
# set in the Hyprland env block (and imported into the dbus activation
# environment so the xdph screen-share picker inherits it too).
# custom_palette=true is required for qt5ct/qt6ct to actually apply the
# color scheme; Fusion is used because it fully honors a custom palette
# (Breeze/native styles partly ignore it).
"qt5ct/qt5ct.conf".text = ''
[Appearance]
style=Fusion
custom_palette=true
color_scheme_path=${config.home.homeDirectory}/.config/qt5ct/colors/noctalia.conf
'';
"qt6ct/qt6ct.conf".text = ''
[Appearance]
style=Fusion
custom_palette=true
color_scheme_path=${config.home.homeDirectory}/.config/qt6ct/colors/noctalia.conf
'';
};
}