nix-dotfiles/modules/software/system/loupe.nix
2026-06-09 21:32:32 -07:00

29 lines
994 B
Nix

{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.modules.software.system.loupe;
in {
options.modules.software.system.loupe = {
enable = mkEnableOption "Enable loupe, a versatile image viewer";
};
config = mkIf cfg.enable {
hm.home.packages = with pkgs; [ loupe ];
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/MIME_types/Common_types
hm.xdg.mimeApps.defaultApplications = {
"image/apng" = [ "org.gnome.Loupe.desktop" ];
"image/avif" = [ "org.gnome.Loupe.desktop" ];
"image/bmp" = [ "org.gnome.Loupe.desktop" ];
"image/gif" = [ "org.gnome.Loupe.desktop" ];
"image/jpeg" = [ "org.gnome.Loupe.desktop" ];
"image/png" = [ "org.gnome.Loupe.desktop" ];
"image/svg+xml" = [ "org.gnome.Loupe.desktop" ];
"image/tiff" = [ "org.gnome.Loupe.desktop" ];
"image/webp" = [ "org.gnome.Loupe.desktop" ];
# ts too niche to be a Common Type
"image/jxl" = [ "org.gnome.Loupe.desktop" ];
};
};
}