On 14/11/2025 11:11, Patrick Cardona wrote:
For opening local files you need the appropriate NSTypes specification
The issue seems more related on the way URLs are handled within GNUstep.
No problem with an html local file.

I read Riccardo's email as talking about gworkspace.

Opening links in other apps is a totally different thing to app wrappers opening files.

In the case of Chromium (see bash script below) the use of 'xdg-open' produces 
the same issue  from a link clicked in GNUMail, it never happens if you use 
xdg-open in the Terminal.

e.g.:
- execute this in a Shell:
        xdg-open https://example.com
It will open the requested URL in a new tab. No issue.

  - Now, try to click on the link below directly from this message read within 
GNUMail:
        https://example.com

It will produce the issue, with the same app wrapper of Chromium (opening one blank tab, 
complaining  about "no service..." to handle URL... and finally a second tab 
with the requested URL).

Opening external links is a completely different mechanism ... it starts off by trying to ask a running GNUstep application to open the URL.

As far as I know, the only fallback if there is no GNUstep app, is to operate via the 'services' mechanism (though there is no reason that gnustep-gui could not add other fallback methods for opening URLs) using the OpenURL service. So for that you must set up a filter service which provides 'OpenURL' (and register it using the make_services tool).

The documentation for filters is part of the NSPasteboard class documentation. To use a shell script as a filter, the filter would be set up to use NSUnixStdio as the filtering mechanism, and would receive the URL on its standard input.



Reply via email to