about summary refs log tree commit diff
path: root/pkgs/profpatsch/xdg-open/config.dhall
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/profpatsch/xdg-open/config.dhall')
-rw-r--r--pkgs/profpatsch/xdg-open/config.dhall13
1 files changed, 13 insertions, 0 deletions
diff --git a/pkgs/profpatsch/xdg-open/config.dhall b/pkgs/profpatsch/xdg-open/config.dhall
index 6e5bacfe..9febd1b7 100644
--- a/pkgs/profpatsch/xdg-open/config.dhall
+++ b/pkgs/profpatsch/xdg-open/config.dhall
@@ -15,6 +15,7 @@ let UriMimeGlob = types.UriMimeGlob
 let MimeMatch = types.MimeMatch
 
 in  λ(pkgs : { package : Text, binary : Text } → Executable) →
+    λ(pkgsOnDemand : { package : Text, binary : Text } → Executable) →
     λ(special : Special) →
       let mime =
             let pkgSame =
@@ -24,6 +25,13 @@ in  λ(pkgs : { package : Text, binary : Text } → Executable) →
                       , binary = packageAndBinaryName
                       }
 
+            let pkgSameOnDemand =
+                  λ(packageAndBinaryName : Text) →
+                    pkgsOnDemand
+                      { package = packageAndBinaryName
+                      , binary = packageAndBinaryName
+                      }
+
             let wrapCommand =
                   λ(wrapper : Command) →
                   λ(cmd : Command) →
@@ -111,6 +119,10 @@ in  λ(pkgs : { package : Text, binary : Text } → Executable) →
                       special.exec-in-terminal-emulator
                         (oneArg (pkgSame "ranger"))
                   }
+                , opendocument-any =
+                  { mime = [ "application/vnd.oasis.opendocument.*" ]
+                  , cmd = oneArg (pkgSameOnDemand "libreoffice")
+                  }
                 , any =
                   { mime = [ "*" ], cmd = special.dmenu-list-binaries-and-exec }
                 }
@@ -130,6 +142,7 @@ in  λ(pkgs : { package : Text, binary : Text } → Executable) →
             , mime.image.svg
             , mime.image.any
             , mime.pdf
+            , mime.opendocument-any
             , mime.pgp-key
             , mime.directory
             , mime.any