From 5503426a6b8343c04e348ce0669af17c93291dc1 Mon Sep 17 00:00:00 2001 From: Timo Wilken Date: Sat, 4 Mar 2023 19:15:21 +0100 Subject: Declare XDG file type associations --- tw/home/files/emacsclient.desktop | 22 ++++++++++++++++++ tw/home/files/mimeapps.list | 47 +++++++++++++++++++++++++++++++++++++++ tw/home/lap.scm | 5 ++++- 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 tw/home/files/emacsclient.desktop create mode 100644 tw/home/files/mimeapps.list diff --git a/tw/home/files/emacsclient.desktop b/tw/home/files/emacsclient.desktop new file mode 100644 index 00000000..5e68ffef --- /dev/null +++ b/tw/home/files/emacsclient.desktop @@ -0,0 +1,22 @@ +[Desktop Entry] +Name=Emacs (Client) +GenericName=Text Editor +Comment=Edit text +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=emacsclient --alternate-editor= --create-frame %F +Icon=emacs +Type=Application +Terminal=false +Categories=Development;TextEditor; +StartupNotify=true +StartupWMClass=Emacs +Keywords=emacsclient; +Actions=new-window;new-instance; + +[Desktop Action new-window] +Name=New Window +Exec=emacsclient --alternate-editor= --create-frame %F + +[Desktop Action new-instance] +Name=New Instance +Exec=emacs %F diff --git a/tw/home/files/mimeapps.list b/tw/home/files/mimeapps.list new file mode 100644 index 00000000..28be5b72 --- /dev/null +++ b/tw/home/files/mimeapps.list @@ -0,0 +1,47 @@ +[Default Applications] +x-scheme-handler/http=icecat.desktop +x-scheme-handler/https=icecat.desktop +x-scheme-handler/chrome=icecat.desktop +text/html=icecat.desktop +application/x-extension-htm=icecat.desktop +application/x-extension-html=icecat.desktop +application/x-extension-shtml=icecat.desktop +application/xhtml+xml=icecat.desktop +application/x-extension-xhtml=icecat.desktop +application/x-extension-xht=icecat.desktop +application/octet-stream=emacsclient.desktop +text/plain=emacsclient.desktop +text/english=emacsclient.desktop +text/x-makefile=emacsclient.desktop +text/x-c++hdr=emacsclient.desktop +text/x-c++src=emacsclient.desktop +text/x-chdr=emacsclient.desktop +text/x-java=emacsclient.desktop +text/x-moc=emacsclient.desktop +text/x-pascal=emacsclient.desktop +text/x-tcl=emacsclient.desktop +text/x-tex=emacsclient.desktop +text/x-c=emacsclient.desktop +text/x-c++=emacsclient.desktop +application/x-shellscript=emacsclient.desktop +image/bmp=imv.desktop +image/gif=imv.desktop +image/jpeg=imv.desktop +image/jpg=imv.desktop +image/pjpeg=imv.desktop +image/png=imv.desktop +image/tiff=imv.desktop +image/x-bmp=imv.desktop +image/x-pcx=imv.desktop +image/x-png=imv.desktop +image/x-portable-anymap=imv.desktop +image/x-portable-bitmap=imv.desktop +image/x-portable-graymap=imv.desktop +image/x-portable-pixmap=imv.desktop +image/x-tga=imv.desktop +image/x-xbitmap=imv.desktop +image/heif=imv.desktop +x-scheme-handler/about=icecat.desktop +x-scheme-handler/unknown=icecat.desktop + +[Added Associations] diff --git a/tw/home/lap.scm b/tw/home/lap.scm index 78515793..2e8a629f 100644 --- a/tw/home/lap.scm +++ b/tw/home/lap.scm @@ -300,6 +300,7 @@ ,(combined-text-file "kitty.conf" (local-file "files/kitty.conf") catppuccin-kitty)) + ("mimeapps.list" ,(local-file "files/mimeapps.list")) ("polybar/config.ini" ,(local-file "files/polybar.ini")) ("polybar/catppuccin.ini" ,catppuccin-polybar) ("rofi/config.rasi" ,(local-file "files/rofi.rasi")) @@ -343,7 +344,9 @@ ;; With #:recursive? #t, Guix keeps the files' permission bits, i.e. makes them executable. (".local/bin/sessionmenu" ,(local-file "files/sessionmenu" #:recursive? #t)) (".local/bin/passmenu" ,(local-file "files/passmenu" #:recursive? #t)) - (".local/bin/volume" ,(local-file "files/volume" #:recursive? #t)))) + (".local/bin/volume" ,(local-file "files/volume" #:recursive? #t)) + (".local/share/applications/emacsclient.desktop" + ,(local-file "files/emacsclient.desktop")))) (append (gnupg-services #:gui-pinentry? #t) common-services emacs-services pim-services))))) -- cgit v1.2.3