Follow symlinks

Hello,

I request that Local follows symlinks (similar to aliases). It is a simple feature but can really go a long way in terms of development.

Example use case:

  • I host the majority of my projects on Flywheel, with the exception of one’s requiring modifications to the core structure, certain root files etc. Because of these modifications, I would be unable to work on the site locally. My idea would be to set up a site on Local with a symlink within the theme that points to another set up, so I can run the site on Flywheel - rather than having another took like Ampps, Docker etc. running.
  • Symlinks can also be useful for many other things!

Thank you

Hey Elliott,

Thanks for the feedback!

Due to technical limitations and security concerns, VirtualBox can’t follow symlinks out of linked volumes.

Luckily, there’s an official add-on that lets you remap the volumes for existing Local sites. With this, you can point all sites to one themes folder like you were wanting to do with symlinks :slight_smile:

See https://github.com/getflywheel/local-addon-volumes

2 Likes

@clay I think there’s an update to the local-addon-volumes plugin to fix a display issue.

1 Like

@clay, thanks for getting back to me.

I’ve installed the add-on and set up the following:

Host Source:
/Users/username/sites/project-name/app/public/wp-content/themes

Container Destination:
/Users/username/desktop/themes

I then remapped my volumes, although I don’t see any effect.

Thanks

Your destination needs to point inside the Docker container. As such it should look like the following:

/app/public/wp-content/themes

Is this still an issue in 5.x+? I have a symlink (I’ve tried using both relative and full) for wp-content/ and when I export it it only exports the root files and folder names, but all folders are empty:

CleanShot 2021-08-15 at 16.56.41

This wasn’t ever an issue for Local 5.x+ or later. Only an issue with virtualization.

I think this feature request could definitely be refined since a lot has changed in Local and there’s a few different behaviors depending on the workflow you are using.

In terms of a workflow of exporting a site to a zip file, I think Local does follow the symlinks. Here’s how I tested this workflow:

  1. Background info: I often keep my git repos in a ~/src folder
  2. Create new site in Local
  3. Open site shell, scaffold new plugin
  4. Move plugin to ~/src folder
  5. Create symlink
  6. Export site from Local
  7. View contents of zip

The terminal commands for steps 3-5 look like:

cd wp-content/plugins
wp scaffold plugin super-secret
mv super-secret ~/src/
ln -s ~/src/super-secret ./

And here’s a screenshot of me comparing the site folder with the contents of the zip archive:

As a test, I also tried symlinking the wp-content folder.

@aubreypwd – you mention that the folders are empty – is there anything special about that ~/Repos folder? For example, is that folder on a different partition, or maybe it has some special permissions associated with it?