diff --git a/home/common/optional/desktop/common/default.nix b/home/common/optional/desktop/common/default.nix index 79ccb19..4c135e9 100644 --- a/home/common/optional/desktop/common/default.nix +++ b/home/common/optional/desktop/common/default.nix @@ -30,5 +30,6 @@ pkgs.gimp pkgs.gajim pkgs.vlc + pkgs.xarchiver ]; } diff --git a/home/common/optional/desktop/common/xdg/default.nix b/home/common/optional/desktop/common/xdg/default.nix index b393ffa..7c5bb83 100644 --- a/home/common/optional/desktop/common/xdg/default.nix +++ b/home/common/optional/desktop/common/xdg/default.nix @@ -1,5 +1,9 @@ -{pkgs, config, lib, ...}: { - +{ + pkgs, + config, + lib, + ... +}: { xdg.desktopEntries = { firefox = { name = "Firefox"; @@ -40,19 +44,124 @@ # Forces creation of mimeapps.list if hm link has been overwritten by another application # https://discourse.nixos.org/t/home-manager-and-the-mimeapps-list-file-on-plasma-kde-desktops/37694 - xdg.configFile."mimeapps.list" = lib.mkIf config.xdg.mimeApps.enable { force = true; }; + xdg.configFile."mimeapps.list" = lib.mkIf config.xdg.mimeApps.enable {force = true;}; xdg.mimeApps = { enable = lib.mkDefault true; defaultApplications = { - # pdf + # application "application/pdf" = "zathura-wrapper.desktop"; + "application/msexcel" = "calc.desktop"; + "application/mspowerpoint" = "impress.desktop"; + "application/msword" = "writer.desktop"; + "application/ogg" = "Mpv-wrapper.desktop"; + "application/postscript" = "gimp.desktop"; + "application/rdf+xml" = "firefox.desktop"; + "application/rss+xml" = "firefox.desktop"; + "application/rtf" = "writer.desktop"; + "application/vnd.lotus-wordpro" = "writer.desktop"; + "application/vnd.ms-excel" = "calc.desktop"; + "application/vnd.ms-excel.sheet.binary.macroenabled.12" = "calc.desktop"; + "application/vnd.ms-excel.sheet.macroenabled.12" = "calc.desktop"; + "application/vnd.ms-excel.template.macroenabled.12" = "calc.desktop"; + "application/vnd.ms-powerpoint" = "impress.desktop"; + "application/vnd.ms-powerpoint.presentation.macroenabled.12" = "impress.desktop"; + "application/vnd.ms-powerpoint.template.macroenabled.12" = "impress.desktop"; + "application/vnd.ms-word" = "writer.desktop"; + "application/vnd.ms-word.document.macroenabled.12" = "writer.desktop"; + "application/vnd.ms-word.template.macroenabled.12" = "writer.desktop"; + "application/vnd.oasis.opendocument.formula" = "math.desktop"; + "application/vnd.oasis.opendocument.graphics" = "draw.desktop"; + "application/vnd.oasis.opendocument.graphics-flat-xml" = "draw.desktop"; + "application/vnd.oasis.opendocument.graphics-template" = "draw.desktop"; + "application/vnd.oasis.opendocument.presentation" = "impress.desktop"; + "application/vnd.oasis.opendocument.presentation-flat-xml" = "impress.desktop"; + "application/vnd.oasis.opendocument.presentation-template" = "impress.desktop"; + "application/vnd.oasis.opendocument.spreadsheet" = "calc.desktop"; + "application/vnd.oasis.opendocument.spreadsheet-flat-xml" = "calc.desktop"; + "application/vnd.oasis.opendocument.spreadsheet-template" = "calc.desktop"; + "application/vnd.oasis.opendocument.text" = "writer.desktop"; + "application/vnd.oasis.opendocument.text-flat-xml" = "writer.desktop"; + "application/vnd.oasis.opendocument.text-master" = "writer.desktop"; + "application/vnd.oasis.opendocument.text-template" = "writer.desktop"; + "application/vnd.oasis.opendocument.text-web" = "writer.desktop"; + "application/vnd.openofficeorg.extension" = "base.desktop"; + "application/vnd.openxmlformats-officedocument.presentationml.presentation" = "impress.desktop"; + "application/vnd.openxmlformats-officedocument.presentationml.slide" = "impress.desktop"; + "application/vnd.openxmlformats-officedocument.presentationml.slideshow" = "impress.desktop"; + "application/vnd.openxmlformats-officedocument.presentationml.template" = "impress.desktop"; + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" = "calc.desktop"; + "application/vnd.openxmlformats-officedocument.spreadsheetml.template" = "calc.desktop"; + "application/vnd.openxmlformats-officedocument.wordprocessingml.document" = "writer.desktop"; + "application/vnd.openxmlformats-officedocument.wordprocessingml.template" = "writer.desktop"; + "application/vnd.rn-realmedia" = "Mpv-wrapper.desktop"; + "application/vnd.sun.xml.calc" = "calc.desktop"; + "application/vnd.sun.xml.calc.template" = "calc.desktop"; + "application/vnd.sun.xml.draw" = "draw.desktop"; + "application/vnd.sun.xml.draw.template" = "draw.desktop"; + "application/vnd.sun.xml.impress" = "impress.desktop"; + "application/vnd.sun.xml.impress.template" = "impress.desktop"; + "application/vnd.sun.xml.math" = "math.desktop"; + "application/vnd.sun.xml.writer" = "writer.desktop"; + "application/vnd.sun.xml.writer.global" = "writer.desktop"; + "application/vnd.sun.xml.writer.template" = "writer.desktop"; + "application/vnd.visio" = "draw.desktop"; + "application/vnd.wordperfect" = "writer.desktop"; + "application/wordperfect" = "writer.desktop"; + "application/x-7z-compressed" = "xarchiver.desktop"; + "application/x-arj" = "xarchiver.desktop"; + "application/x-bzip" = "xarchiver.desktop"; + "application/x-bzip-compressed-tar" = "xarchiver.desktop"; + "application/x-bzip2" = "xarchiver.desktop"; + "application/x-bzip2-compressed-tar" = "xarchiver.desktop"; + "application/x-compressed-tar" = "xarchiver.desktop"; + "application/x-dbf" = "calc.desktop"; + "application/x-doc" = "writer.desktop"; + "application/x-extension-mp4" = "Mpv-wrapper.desktop"; + "application/x-flac" = "Mpv-wrapper.desktop"; + "application/x-gzip" = "xarchiver.desktop"; + "application/x-hwp" = "writer.desktop"; + "application/x-lzma" = "xarchiver.desktop"; + "application/x-lzma-compressed-tar" = "xarchiver.desktop"; + "application/x-ogg" = "Mpv-wrapper.desktop"; + "application/x-rar" = "xarchiver.desktop"; + "application/x-rar-compressed" = "xarchiver.desktop"; + "application/x-shockwave-flash" = "Mpv-wrapper.desktop"; + "application/x-tar" = "xarchiver.desktop"; + "application/x-zip" = "xarchiver.desktop"; + "application/x-zip-compressed" = "xarchiver.desktop"; + "application/xhtml+xml" = "firefox.desktop"; + "application/xml" = "firefox.desktop"; + "application/xspf+xml" = "Mpv-wrapper.desktop"; + "application/zip" = "xarchiver.desktop"; + + "application/x-cd-image" = "Mpv-wrapper.desktop"; + "application/x-gnumeric" = "calc.desktop"; + "application/x-matroska" = "Mpv-wrapper.desktop"; + "application/x-ole-storage" = "calc.desktop"; + "application/epub+zip" = "FBReader.desktop"; + "application/json" = "Nvim-wrapper.desktop"; # directory "inode/directory" = "thunar-wrapper.desktop"; # text "text/html" = "firefox.desktop"; - "text/plain" = "nvim-wrapper.desktop"; + "text/plain" = "Nvim-wrapper.desktop"; + "text/markdown" = "Nvim-wrapper.desktop"; + "text/tab-separated-values" = "Nvim-wrapper.desktop"; + "text/x-csrc" = "Nvim-wrapper.desktop"; + "text/x-log" = "Nvim-wrapper.desktop"; + "text/x-python" = "Nvim-wrapper.desktop"; + "text/x-python3" = "Nvim-wrapper.desktop"; + "text/x-retext-rst" = "Nvim-wrapper.desktop"; + "text/x-rst" = "Nvim-wrapper.desktop"; + "text/x-ssa" = "Nvim-wrapper.desktop"; + "text/x-tmplayer" = "Nvim-wrapper.desktop"; + "text/csv" = "calc.desktop"; + "text/rtf" = "writer.desktop"; + "text/spreadsheet" = "calc.desktop"; + "text/x-apt-sources-list" = "software-properties-gtk.desktop"; + "text/xml" = "Nvim-wrapper.desktop"; # images "image/jpeg" = "nsxiv-wrapper.desktop"; @@ -64,14 +173,103 @@ "image/bmp" = "nsxiv-wrapper.desktop"; "image/webp" = "nsxiv-wrapper.desktop"; + "image/x-portable-anymap" = "inkscape.desktop"; + "image/x-portable-bitmap" = "inkscape.desktop"; + "image/x-xcf" = "gimp.desktop"; + + "image/g3fax" = "gimp.desktop"; + "image/jp2" = "gimp.desktop"; + "image/jpeg2000" = "gimp.desktop"; + "image/jpx" = "gimp.desktop"; + "image/svg+xml" = "gimp.desktop"; + "image/vnd.rn-realpix" = "Mpv-wrapper.desktop"; + "image/x-compressed-xcf" = "gimp.desktop"; + "image/x-fits" = "gimp.desktop"; + "image/x-gimp-gbr" = "gimp.desktop"; + "image/x-gimp-gih" = "gimp.desktop"; + "image/x-gimp-pat" = "gimp.desktop"; + "image/x-icon" = "gimp.desktop"; + "image/x-pcx" = "gimp.desktop"; + "image/x-pixmap" = "ristretto.desktop"; + "image/x-portable-graymap" = "gimp.desktop"; + "image/x-portable-pixmap" = "gimp.desktop"; + "image/x-psd" = "gimp.desktop"; + "image/x-psp" = "gimp.desktop"; + "image/x-sgi" = "gimp.desktop"; + "image/x-tga" = "gimp.desktop"; + "image/x-wmf" = "gimp.desktop"; + "image/x-xbitmap" = "gimp.desktop"; + "image/x-xcursor" = "gimp.desktop"; + "image/x-xpixmap" = "gimp.desktop"; + "image/x-xwindowdump" = "gimp.desktop"; + # video "video/mp4" = "mpv-wrapper.desktop"; "video/mpeg" = "mpv-wrapper.desktop"; + "video/mp2t" = "Mpv-wrapper.desktop"; + "video/ogg" = "Mpv-wrapper.desktop"; + "video/quicktime" = "Mpv-wrapper.desktop"; + "video/webm" = "Mpv-wrapper.desktop"; + "video/x-matroska" = "Mpv-wrapper.desktop"; + "video/x-msvideo" = "Mpv-wrapper.desktop"; + "video/dv" = "Mpv-wrapper.desktop"; + "video/mp4v-es" = "Mpv-wrapper.desktop"; + "video/msvideo" = "Mpv-wrapper.desktop"; + "video/vnd.rn-realvideo" = "Mpv-wrapper.desktop"; + "video/x-anim" = "Mpv-wrapper.desktop"; + "video/x-avi" = "Mpv-wrapper.desktop"; + "video/x-flc" = "Mpv-wrapper.desktop"; + "video/x-fli" = "Mpv-wrapper.desktop"; + "video/x-flv" = "Mpv-wrapper.desktop"; + "video/x-mpeg" = "Mpv-wrapper.desktop"; + "video/x-ms-asf" = "Mpv-wrapper.desktop"; + "video/x-ms-wmv" = "Mpv-wrapper.desktop"; + "video/x-nsv" = "Mpv-wrapper.desktop"; + "video/x-ogm+ogg" = "Mpv-wrapper.desktop"; + # Web "x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop"; + + # audio + "audio/flac" = "Mpv-wrapper.desktop"; + "audio/mpeg" = "Mpv-wrapper.desktop"; + "audio/x-wav" = "Mpv-wrapper.desktop"; + "audio/amr" = "Mpv-wrapper.desktop"; + "audio/amr-wb" = "Mpv-wrapper.desktop"; + "audio/mp4" = "Mpv-wrapper.desktop"; + "audio/vnd.rn-realaudio" = "Mpv-wrapper.desktop"; + "audio/webm" = "Mpv-wrapper.desktop"; + "audio/x-flac" = "Mpv-wrapper.desktop"; + "audio/x-m4a" = "Mpv-wrapper.desktop"; + "audio/x-matroska" = "Mpv-wrapper.desktop"; + "audio/x-mp3" = "Mpv-wrapper.desktop"; + "audio/x-mpeg" = "Mpv-wrapper.desktop"; + "audio/x-mpegurl" = "Mpv-wrapper.desktop"; + "audio/x-ms-asf" = "Mpv-wrapper.desktop"; + "audio/x-ms-asx" = "Mpv-wrapper.desktop"; + "audio/x-ms-wax" = "Mpv-wrapper.desktop"; + "audio/x-pn-aiff" = "Mpv-wrapper.desktop"; + "audio/x-pn-au" = "Mpv-wrapper.desktop"; + "audio/x-pn-realaudio" = "Mpv-wrapper.desktop"; + "audio/x-pn-realaudio-plugin" = "Mpv-wrapper.desktop"; + "audio/x-pn-wav" = "Mpv-wrapper.desktop"; + "audio/x-pn-windows-acm" = "Mpv-wrapper.desktop"; + "audio/x-real-audio" = "Mpv-wrapper.desktop"; + "audio/x-scpls" = "Mpv-wrapper.desktop"; + "audio/x-vorbis+ogg" = "Mpv-wrapper.desktop"; + + # misc + "message/rfc822" = "firefox.desktop"; + "misc/ultravox" = "Mpv-wrapper.desktop"; + "multipart/x-zip" = "xarchiver.desktop"; + "x-content/audio-player" = "Mpv-wrapper.desktop"; + "x-content/video-dvd" = "Mpv-wrapper.desktop"; + "x-scheme-handler/chrome" = "firefox.desktop"; + "x-scheme-handler/ftp" = "firefox.desktop"; + "x-scheme-handler/steam" = "steam.desktop"; }; }; }