53 lines
1.2 KiB
Nix
53 lines
1.2 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
lib.mkIf config.u.has.graphical {
|
|
xdg.mimeApps.enable = true;
|
|
xdg.mimeApps.defaultApplications = let
|
|
image = "nsxiv-rifle.desktop";
|
|
browser = "librewolf.desktop";
|
|
text = "nvim.desktop";
|
|
media = "mpv.desktop";
|
|
in {
|
|
"image/jpeg" = image;
|
|
"image/png" = image;
|
|
"image/gif" = image;
|
|
"image/webp" = image;
|
|
"image/avif" = image;
|
|
|
|
"audio/mpeg" = media;
|
|
"audio/ogg" = media;
|
|
"audio/vorbis" = media;
|
|
"audio/x-vorbis+ogg" = media;
|
|
"audio/flac" = media;
|
|
|
|
"video/mp4" = media;
|
|
"video/mpeg" = media;
|
|
"video/x-matroska" = media;
|
|
|
|
"text/plain" = text;
|
|
"application/xml" = text;
|
|
"text/html" = text;
|
|
|
|
"inode/directory" = "org.kde.dolphin.desktop";
|
|
};
|
|
xdg.portal = {
|
|
enable = true;
|
|
configPackages = [pkgs.kdePackages.xdg-desktop-portal-kde];
|
|
extraPortals = [pkgs.kdePackages.xdg-desktop-portal-kde];
|
|
config.common.default = "kde";
|
|
};
|
|
home.file = let
|
|
ln = config.u.lib.lnh;
|
|
in {
|
|
".local/home/.cache".source = ln ".cache";
|
|
".local/home/.config".source = ln ".config";
|
|
".local/home/.local".source = ln ".local";
|
|
".local/home/Desktop".source = ln "Desktop";
|
|
".local/home/Downloads".source = ln "Downloads";
|
|
};
|
|
}
|