diff -r 956d340b23d8 -r a844e4f15b4e mailcap.nix --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mailcap.nix Wed May 27 23:35:43 2020 +0200 @@ -0,0 +1,63 @@ +{ pkgs, ... }: + +let + + entries = [ + (mkItem "${pkgs.libreoffice}/bin/soffice" [ + "application/vnd.sun.xml.writer" + "application/vnd.sun.xml.writer.global" + "application/vnd.stardivision.writer" + "application/vnd.stardivision.writer-global" + "application/x-starwriter" + "application/vnd.sun.xml.writer.template" + "application/vnd.sun.xml.calc" + "application/vnd.stardivision.calc" + "application/x-starcalc" + "application/vnd.sun.xml.calc.template" + "application/excel" + "application/msexcel" + "application/vnd.ms-excel" + "application/x-msexcel" + "application/vnd.sun.xml.impress" + "application/vnd.stardivision.impress" + "application/vnd.stardivision.impress-packed" + "application/x-starimpress" + "application/vnd.sun.xml.impress.template" + "application/powerpoint" + "application/mspowerpoint" + "application/vnd.ms-powerpoint" + "application/x-mspowerpoint" + "application/vnd.sun.xml.draw" + "application/vnd.stardivision.draw" + "application/x-stardraw" + "application/vnd.sun.xml.draw.template" + "application/vnd.sun.xml.math" + "application/vnd.stardivision.math" + "application/x-starmath" + ]) + (mkItem "less" [ + "application/x-sh" + "text/*" + ]) + (mkItem "${pkgs.mupdf}/bin/mupdf-x11" [ "application/pdf" ]) + (mkItem "${pkgs.feh}/bin/feh" [ "image/*" ]) + (mkItem "${pkgs.antiword}/bin/antiword" [ + "application/msword" + "application/octet-stream" + ]) + (mkItem "${pkgs.lynx}/bin/lynx -dump -force-html" [ "text/html" ]) + + ]; + + mkItem = p: t: { + prg = p; types = t; + }; + + mkPrg = { prg, types }: + builtins.concatStringsSep "\n" (map (v: "${v};${prg} %s") types); + +in { + home.file.".mailcap".text = '' + ${builtins.concatStringsSep "\n" (map mkPrg entries)} + ''; +}