Files
Nomarchy/modules/nixos/file-manager.nix

37 lines
1.5 KiB
Nix

# GUI file manager — Thunar (lightweight GTK, Stylix-themed) plus the
# backend services a standalone compositor needs for it to work fully:
# gvfs (trash/mount/network), tumbler (thumbnails), udisks2 (removable
# media — also what yazi's mount plugin drives). The keyboard-driven TUI
# flagship is yazi (modules/home/yazi.nix); this is the point-and-click
# half and the XDG handler for "open folder" / "show in files".
{ config, lib, pkgs, ... }:
let
cfg = config.nomarchy.system;
in
{
config = lib.mkIf cfg.fileManager.enable {
programs.thunar = {
enable = lib.mkDefault true;
plugins = with pkgs; [
thunar-archive-plugin # create/extract archives from the context menu
thunar-volman # auto-manage removable drives/media
thunar-media-tags-plugin # rename/inspect audio by tags
];
};
services.gvfs.enable = lib.mkDefault true; # trash, mounts, network shares
services.tumbler.enable = lib.mkDefault true; # thumbnail generation
services.udisks2.enable = lib.mkDefault true; # mount/unmount removable media
environment.systemPackages = with pkgs; [
file-roller # GUI archive manager (backend for thunar-archive-plugin)
ffmpegthumbnailer # video thumbnails (Thunar + yazi)
libgsf # ODF thumbnails
poppler-utils # PDF thumbnails / pdftoppm (yazi PDF preview too)
xfce4-exo # "Open Terminal Here" and default-app associations
shared-mime-info # MIME database
];
};
}