Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mailto links don't work #3590

Open
brosasaki opened this issue Feb 2, 2025 · 1 comment
Open

mailto links don't work #3590

brosasaki opened this issue Feb 2, 2025 · 1 comment
Labels
feature Feature requests. good-first-issue Marks a good issue for first-time contributors.

Comments

@brosasaki
Copy link

Describe the bug
Links with addresses starting with mailto: don't open in the mail client; instead nyxt attempts to open them and fails. This is an issue, as many places where mailto links are used (e.g. mailing list web interfaces) include parameters that otherwise can't be set in the UI of many email clients (e.g. "In-Reply-To" headers.)
Precise recipe to reproduce the issue
Enter the command xdg-open mailto:[email protected]. If properly configured, your mail client should open. Now, launch nyxt and click this link. Nyxt will fail to launch your mail client.

For website-specific issues:
Can you reproduce this issue with Epiphany / GNOME Web (https://wiki.gnome.org/Apps/Web)? N/A

Information

  • OS name+version: Guix 070c073
  • Graphics card and driver: AMD Radeon 7900XTX, radv Mesa 24.3.2
  • Desktop environment / Window manager name+version: Hyprland 0.47.0
  • Installation method (Flatpak, Guix, package manager, build from source): Guix (channel aadcg cb6faa5, aadcg-nyxt)
  • Output of nyxt --system-information:
Nyxt version: 3.12.0
Renderer: GI-GTK
Operating system kernel: Linux 6.12.11
Lisp implementation: SBCL 2.4.10 (Dynamic space size: 3221225472)
Features: (:NYXT-GI-GTK :NYXT-GTK :NYXT-GI-GTK :NYXT-GTK :NYXT-3.12 :NYXT-3 :NYXT-3.12.0
 :CLIPBOARD-CONTENT-METHOD :SWANK :SLYNK :PLUMP-UTF-32 :PARENSCRIPT :NSYMBOLS
 :FSET-EXT-STRINGS :SBCL+SAFE-STANDARD-READTABLE :NAMED-READTABLES :GLOBAL-VARS
 :CL-FAD :LPARALLEL :21BIT-CHARS :CUSTOM-HASH-TABLE-NATIVE :CL-PPCRE-UNICODE
 :CL-UNICODE :CL-JSON-DOUBLE-FLOAT-IS-SUBSUMED
 :CL-JSON-SINGLE-FLOAT-IS-SUBSUMED :CHUNGA :FLEXI-STREAMS :CL-PPCRE :WEBKIT2
 :WEBKIT-2.44.1 :WEBKIT-2.44 :WEBKIT-2 :WEBKIT2-CORS-ALLOWLIST
 :WEBKIT2-PASTE-PLAINTEXT :WEBKIT2-TRACKING :WEBKIT2-MUTE :WEBKIT2-EMOJI
 :WEBKIT2-MEDIA :WEBKIT2-SANDBOXING :GTK-3-22 :GTK-3-20 :GTK-3-18 :GTK-3-16
 :GTK-3-14 :GTK-3-12 :GTK-3-10 :GTK-3-8 :GTK-3-6 :GTK-3-4 :GTK :GDK-3-22
 :GDK-3-20 :GDK-3-18 :GDK-3-16 :GDK-3-14 :GDK-3-12 :GDK-3-10 :GDK-3-8 :GDK-3-6
 :GDK-3-4 :CAIRO-1-10 :CAIRO-1-12 :GDK-PIXBUF :CLOSER-MOP :GLIB-2-30 :GLIB-2-32
 :GLIB-2-34 :GLIB-2-36 :GLIB-2-38 :GLIB-2-40 :GLIB-2-42 :GLIB-2-44 :GLIB-2-46
 :GLIB-2-48 :GLIB-2-50 :GLIB-2-52 :GLIB-2-54 :GLIB-2-56 :GLIB-2-58 :GLIB
 :BORDEAUX-THREADS :LPARALLEL.WITH-CLTL2 :LPARALLEL.WITH-CAS
 :LPARALLEL.WITH-STEALING-SCHEDULER :SPLIT-SEQUENCE
 CFFI-FEATURES:FLAT-NAMESPACE CFFI-FEATURES:X86-64 CFFI-FEATURES:UNIX :CFFI
 CFFI-SYS::FLAT-NAMESPACE ALEXANDRIA::SEQUENCE-EMPTYP :FAST-IO-SV :FAST-IO
 :CL-JSON-CLOS :CL-JSON :SBCL-USES-SB-ROTATE-BYTE CHIPZ-SYSTEM:GRAY-STREAMS
 :THREAD-SUPPORT :ASDF3.3 :ASDF3.2 :ASDF3.1 :ASDF3 :ASDF2 :ASDF :OS-UNIX
 :NON-BASE-CHARS-EXIST-P :ASDF-UNICODE :ARENA-ALLOCATOR :X86-64 :GENCGC :64-BIT
 :ANSI-CL :COMMON-LISP :ELF :IEEE-FLOATING-POINT :LINUX :LITTLE-ENDIAN
 :PACKAGE-LOCAL-NICKNAMES :SB-CORE-COMPRESSION :SB-LDB :SB-PACKAGE-LOCKS
 :SB-THREAD :SB-UNICODE :SBCL :UNIX)

ASDF version: 3.3.7
ASDF registries: (NYXT-SOURCE-REGISTRY ENVIRONMENT-SOURCE-REGISTRY)
Critical dependencies: (/tmp/guix-build-aadcg-nyxt-3.12.0.drv-0/source/_build/cl-cffi-gtk/gtk/cl-cffi-gtk.asd
 /tmp/guix-build-aadcg-nyxt-3.12.0.drv-0/source/_build/cl-gobject-introspection/cl-gobject-introspection.asd
 /tmp/guix-build-aadcg-nyxt-3.12.0.drv-0/source/_build/cl-webkit/webkit2/cl-webkit2.asd)

Guix version: 

Output when started from a shell

~ 🮲🮳 nyxt
Nyxt version 3.12.0
<INFO> [00:10:16] Source location: #P"/gnu/store/hd7mgl09glflizslbvjn5qffgdjbi349-aadcg-nyxt-3.12.0/share/nyxt/"
<INFO> [00:10:16] Loading Lisp file #P"/home/wong/.config/nyxt/auto-config.3.lisp".
<INFO> [00:10:16] Loading Lisp file #P"/home/wong/.config/nyxt/config.lisp".
<INFO> [00:10:16] Listening to socket: #P"/run/user/1000/nyxt/nyxt.socket"

(process:2): Gtk-WARNING **: 05:10:16.286: Locale not supported by C library.
        Using the fallback 'C' locale.

(WebKitWebProcess:2): Gdk-WARNING **: 05:10:16.290: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface ?org.freedesktop.portal.Settings? on object at path /org/freedesktop/portal/desktop
<INFO> [00:10:16] Loading #P"/home/wong/.local/share/nyxt/history/default.lisp".

(process:2): Gtk-WARNING **: 05:10:16.807: Locale not supported by C library.
        Using the fallback 'C' locale.

(WebKitWebProcess:2): Gdk-WARNING **: 05:10:16.810: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface ?org.freedesktop.portal.Settings? on object at path /org/freedesktop/portal/desktop
<INFO> [00:10:16] Loading #P"/home/wong/.local/share/nyxt/auto-rules.lisp".
<INFO> [00:10:16] Loading #P"/home/wong/.local/share/nyxt/hostlist-stevenblack.txt".
<INFO> [00:10:16] Restoring 5 buffers from history.

(process:2): Gtk-WARNING **: 05:10:17.566: Locale not supported by C library.
        Using the fallback 'C' locale.

(WebKitWebProcess:2): Gdk-WARNING **: 05:10:17.569: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface ?org.freedesktop.portal.Settings? on object at path /org/freedesktop/portal/desktop
<INFO> [00:10:17] Loading "https://github.com/atlas-engineer/nyxt/issues/new?template=bug_report.md".

(process:2): Gtk-WARNING **: 05:10:17.712: Locale not supported by C library.
        Using the fallback 'C' locale.

(WebKitWebProcess:2): Gdk-WARNING **: 05:10:17.715: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface ?org.freedesktop.portal.Settings? on object at path /org/freedesktop/portal/desktop
<INFO> [00:10:19] Finished loading "https://github.com/atlas-engineer/nyxt/issues/new?template=bug_report.md".

** (nyxt:12190): WARNING **: 00:10:36.761: WebKitWebView returned by WebKitWebView::create signal was not created with the related WebKitWebView

(process:2): Gtk-WARNING **: 05:10:36.792: Locale not supported by C library.
        Using the fallback 'C' locale.

(WebKitWebProcess:2): Gdk-WARNING **: 05:10:36.795: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface ?org.freedesktop.portal.Settings? on object at path /org/freedesktop/portal/desktop
<INFO> [00:10:36] Failed to load URL mailto:[email protected] in buffer 6005.
<INFO> [00:10:36] Loading "mailto:[email protected]".
<INFO> [00:10:36] Loading "mailto:[email protected]".
<INFO> [00:10:36] Finished loading "mailto:[email protected]".
<INFO> [00:10:36] Finished loading "mailto:[email protected]".
<INFO> [00:10:40] Loading "https://github.com/atlas-engineer/nyxt/issues/new?template=bug_report.md".
<INFO> [00:10:41] Finished loading "https://github.com/atlas-engineer/nyxt/issues/new?template=bug_report.md".
<INFO> [00:10:41] Deleting socket #P"/run/user/1000/nyxt/nyxt.socket".
@aadcg
Copy link
Member

aadcg commented Feb 3, 2025

That seems easy to fix. Just see how the javascript scheme is handled in buffer-load. Patches welcome.

@aadcg aadcg added good-first-issue Marks a good issue for first-time contributors. feature Feature requests. labels Feb 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Feature requests. good-first-issue Marks a good issue for first-time contributors.
Development

No branches or pull requests

2 participants