Last time I used symlinks on Windows, the built-in photo viewer was crashing on them.
By the time I learned how to create symlinks I’m Windows, I didn’t need it.
Windows can do symlinks now? Watch out, they’re slowly catching up.
This is like seeing those php jokes in programming humor communities. Because they’re clearly made by someone who is well over a decade out of date with their information.
For reference symbolic links were properly introduced in Vista(2006), but junction points were available before that.
MS Windows and PHP… yeah I can see the resemblance. They’re both crufty old tools that are obsolete for more than a decade but still widely used and talked about.
So are you, it seems…
I used symlinks with windows in like… 2007?
You used to need admin or something like that. It’s only since about 2017 that they are available to normal users by default.
It seems to have been a win 7 innovation. Personally I gave up on it after XP.
Think I first used a Symlink in about 1998.
Pretty sure NT had the capability, though even the docs then advised against them.
though even the docs then advised against them.
Why wouldn’t they want users using them?
Hard and soft links have existed on NTFS for decades at this point
This seems to be about junctions not shortcuts (which are at a higher level of abstraction)
“Create Shortcut on Desktop”
Heh. Yes they’re similar, but on the technical side different in a very important way. It has to do with opening a file from inside another program. If you select a shortcut, the program with treat or as a separate file, so most of the time the action will fail. A link, though, you should end up with the program opening the target of the link. In other words, a shortcut is a file that points at a different file, where a symlink involves she filesystem trickery to accomplish almost the same thing.
That’s a horrible, just terrible explanation, though - but I’m pretty sure this is the gist of it.
Or giving in. Symlinks are a lazy hacky mistake. The original Unix authors knew it and tried to fix it in Plan9, but I guess now we’re stuck with that mistake forever. Even WASI supports symlinks.
What would have been a better solution?
The Plan 9 solution looks better to me. At the very least if you keep them then paths should be resolved lexically. I think most people are under the false impression that they are resolved lexically (i.e.
foo/bar/../baz
andfoo/baz
are the same).But IMO it’s better just to not have them and use another solution where you might have used them.
Sorry, I didn’t follow any of that… What is the plan 9 solution? I searched, but didn’t see anything obvious
Basically it uses bind mounts instead. See this page for details.
I haven’t actually used (since Plan 9 is dead) and I doubt it covers every use case for symlinks (e.g. this wouldn’t let you commit them to a git repo), but I really think the benefits of symlinks not existing at all would far outweigh the effort of having to think of alternative solutions.
Sadly we don’t get to live in that alternative history now… :-/
That problem seems tiny relative to the convenience that symlinks offer…
Not having them.
It doesn’t matter if a bunch of crusty compsci academics think something is bad if it just works™ in real life
And I am saying this as an academic. I’ve seen my colleagues write lots of papers that faded like a fart in a fan factory while Unix is still chewing ass and kicking gum 1970s style
The objections to symlinks are not academic. They have real world flaws.