Issue #26 wontfix

LOVE Doesn't Love Symbolic Links

Luiji Maryo
created an issue

So, I downloaded PASSION and PASSION-DEMOS from Kikito's GitHub repositories. As supposed to copying PASSION three times, I created symbolic links in each game to the PASSION Git checkout. This should have theoretically worked, however:

LOVE doesn't love symbolic links.

LOVE doesn't seem to be able to follow symbolic links, leading to the problem that LOVE says that passion/init.lua doesn't exist, even though there is a symbolic link to it.

This problem would probably effect all Unix-based operating systems, including Linux, Mac OS X, and the BSDs.

Comments (10)

  1. Robin Wellner

    Problem is, AFAIK, Windows doesn't do symbolic links. Any game using them is therefore not portable.

    Anyhow, I think PhysFS is/holds the reason for that.

  2. Luiji Maryo reporter

    It's not for portability, it's for development. The zip utility on Unixes will automatically remove symbolic links and replace them with the actual files.

  3. textmode

    A while back I was having problems with playing audio, before I realized that Love doesn't follow Symbolic Links. I asked in channel and it was explained (by bartbes?) that it was a deliberate nod to security.

    Basically, anything to stop love from accessing things outside of its designated directories. I'm not sure if I agree with that policy, but its not a bug per se.

  4. Luiji Maryo reporter
    • changed status to new

    A deliberate nod to security...lame. Sorry, but if security destroys functionality, then it's not good. The same goes with microkernels, they are a bit less secure, but they are a lot cooler (my one and only nod to Mac OS X).

    It would be nice if there were some option to disable this functionality, such as a "--symlink" function or something. It's not like this actually add enough security that I'd think it would override functionality. Plus, it's already been specified that the goals of LOVE aren't for security, but for functionality. Remember that topic where I asked for a super-secure LOVE that wouldn't let games access files outside of their designated access directories etc.? It was turned down because they didn't want to limit games. No symlinks limits functionality.

  5. Marek Kubica

    So, If I wrote a pull request for an override switch, this could get added?

    Or a different idea: wouldn't it be ok to just allow symlinks inside a game folder referencing things that are inside the folder? That would already be helpful for me.

  6. Marek Kubica

    It doesn't have to, it is just useful for development on Unix systems. And NTFS has some kind of symlink support but no idea how to create these with Lua.

  7. Log in to comment