main
1{lib, ...}: {
2 den.aspects.desktop.env.utils = {user, ...}: {
3 nixos = {pkgs, ...}: {
4 environment.systemPackages = with pkgs; [
5 pkgs.wl-clipboard-rs
6
7 nautilus
8
9 # Thumbnail
10 # Image
11 gdk-pixbuf
12 libheif
13 webp-pixbuf-loader
14 # Video
15 ffmpeg-headless
16 ffmpegthumbnailer
17 ];
18
19 programs.nautilus-open-any-terminal =
20 lib.optionalAttrs
21 (lib.hasAttrByPath ["desktop" "terminal" "default"] user.system.settings)
22 {
23 enable = true;
24 terminal = user.system.settings.desktop.terminal.default;
25 };
26
27 services.tumbler.enable = true; # Thumbnail support
28 };
29
30 homeManager = {pkgs, ...}: {
31 home.packages = with pkgs; [
32 loupe # Image viewer
33 ];
34
35 xdg.mimeApps.defaultApplications = {
36 "image/*" = "org.gnome.Loupe.desktop";
37 "image/jpeg" = "org.gnome.Loupe.desktop";
38 "image/png" = "org.gnome.Loupe.desktop";
39 "image/gif" = "org.gnome.Loupe.desktop";
40 "image/bmp" = "org.gnome.Loupe.desktop";
41 "image/svg+xml" = "org.gnome.Loupe.desktop";
42 "image/webp" = "org.gnome.Loupe.desktop";
43 "image/avif" = "org.gnome.Loupe.desktop";
44 };
45
46 xdg.configFile."mimeapps.list".force = true;
47 xdg.mimeApps.enable = true;
48 };
49 };
50}