> There is the same command function wise on Debian Linux. Alias or not makes no difference.
It does. It's the difference between being available system wide, or just available in Bash and similar.
If it were a shell script or even a symlink to `xdg-utils` then it would be available to Murex and I would have spotted it during Murex development.
> There is nothing "specific" to my shell environment. Having the `open` alias available the default. I would need to change things manually to diverge form this default. That would be "specific to my shell environment", not the other way around.
If it is an alias then it is specific to your shell environment. By that I don't mean you created the alias. I mean the shell that you forked into a PTY. There are a thousand different ways you can spawn a shell and not pick up defaults like these. For example I've seen IDEs often fail with their integrated shells.
But it's also specific to supporting shells. Which a symlink (for example) wouldn't be.
> On Linux it's usually a symlink as there are other implementations then the one in `xdg-utils`, and there have been also other programs with that name in the past.
Right, you said "alias" multiple times earlier. Symlinks and aliases are not the same thing.
> Historically `open` comes form NextStep, so actually Apple copied it.
Apple didn't copy NextStep, they bought it and ported/rebranded a lot it's tech. Also I wasn't claiming Apple invented the concept of "open". I was saying I suspect Debian got the idea from macOS.
---
For what it's worth "open" doesn't exist on my Ubuntu servers either. And it was added to Debian only 2 years ago. Murex has been around for nearly a decade. So I can hardly be blamed for adding a builtin with the same name as something that hasn't yet been added to Linux.
---
Anyway, this is all moot because there are easy workarounds for the naming conflict and it's pretty easy for me to add behaviour to the `open` builtin to call `xdg-open` (or whatever) if `open` is a TTY (ie you're not piping the output of `open`). In fact I already check this and call https://www.murex.rocks/docs/commands/openagent.html so i can just add a "if no agent is defined fallback to exec open" type condition. Then everyone is happy.
Maybe. But I just don't know why this discussion started in the first place. There is a `open` command on likely almost every desktop Linux box. So it's not Mac specific (which was my sole point in my first comment in this thread).
> Right, you said "alias" multiple times earlier. Symlinks and aliases are not the same thing.
You're technically correct. My fault!
I've called it alias as it's a symlink coming form the Debian alternatives facility. The alternatives mechanisms manages system wide command "aliases"… I should have been more exact in this point.
> I was saying I suspect Debian got the idea from macOS.
I have no prove but I doubt that. There were other tools on Linux called `open` before MacOS X came along as far as I know. The whole thing seems to be rooted in BSD (where NextStep got it's Unix parts form).
> For what it's worth "open" doesn't exist on my Ubuntu servers either.
Makes perfect sense. It's a desktop tool.
> And it was added to Debian only 2 years ago.
I don't think so. I had `xdg-utils` and it's `open` command installed for many years. It's at least 17 years old:
https://cgit.freedesktop.org/xdg/xdg-utils/refs/tags
> Anyway, this is all moot because there are easy workarounds for the naming conflict
I agree. The Debian alternatives system was made exactly to handle this kind of name conflicts around commands. So there's no big issue, indeed!
I'm running Debian Testing so I had this command in fact since many years. Didn't know that it's actually quite "new".
Now I can understand how it could happen that Murex created a command name conflict. External tools don't test against Debian Testing most of the time…
There is the same command function wise on Debian Linux. Alias or not makes no difference.
Debian Linux is the base of almost all Desktop Linux boxes out there. (There are of course niche distris, but the overwhelming majority is Debian based; I count Ubuntu as Debian based.)
There is nothing "specific" to my shell environment. Having the `open` alias available the default. I would need to change things manually to diverge form this default. That would be "specific to my shell environment", not the other way around.
Historically `open` comes form NextStep, so actually Apple copied it.
On Linux it's usually a symlink as there are other implementations then the one in `xdg-utils`, and there have been also other programs with that name in the past.