29 lines
994 B
Nix
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" ];
|
|
};
|
|
};
|
|
}
|