Unshare subfolders

rteixeiralopes's picture

Hello, there!

I've shared all my Music folder with all users. There are a few subfolders I cannot share, though. I have a lot of stuff, so it would take days to share the subfolders one by one. An easier and much simpler solution would be to be able to add an exception to those few subfolders I can't/ don't want to share. Any one knows if it's possible?

I would really love to share my whole llibrary, which is vast, very organized and exhaustive, so I would appreciate any help.

Thanks a lot.

Rodrigo

Excluding shared folders is not a SoulseekQt option, you can always just move the folders you don't want to share somewhere else.

rteixeiralopes's picture

What a shame. Thanks a lot!

There's a workaround. You still have to separate your folders, but you can make them behave as if they're where you want.

Soulseek's indexer doesn't follow folder links, so in my file system, I have some folders that are shared, and then where the subfolder that I want to be unshared or userlist-only would be, there's a folder link pointing to the actual folder which lives outside of the shared folder tree. When I'm navigating the filesystem, it's as if the folder is in both places at once, but the Soulseek users browsing the main shared tree don't see it.

There are different kinds of folder links: symbolic links, shell links, shortcuts, and directory junctions. They all behave slightly differently and there are pros and cons to each one.

Symbolic links are available on NTFS-formatted drives in Windows Vista and up. There's no GUI for creating them; you have to use the command line. The command is mklink /d fakefolder realfolder (replace fakefolder and realfolder with the actual folder paths, obviously). Symbolic links are treated by the OS as if the target folder is where the link is. The downside is that my audio player (foobar2000)'s library scanner follows the link, so files get listed twice. Symbolic links can use absolute or relative paths for the target, and also support UNC paths.

An alternative to symbolic links are shell links, which are available on Windows 98 and up. These are real folders with special hidden contents that make them act the same as symbolic links in Windows Explorer only. They look like empty folders everywhere else, including in SoulseekQt. As with symbolic links, there's no GUI for creating them, but you can use Winbolic Link (freeware) to create them.

Shortcuts are .lnk files that point to folders or files; if you open them, Explorer opens the target, but in folder trees, they only show up as files, even if they're pointing to folders. You can create shortcuts from within Explorer, as you probably already know. They work on all versions of Windows. Current versions of Soulseek don't show scan .lnk files (thanks again for implementing that, Nir!), so I use these for file links and for folder links that are just for me and my LAN.

The last type of folder link is a Directory Junction, a.k.a. NTFS junction point ... It's like a symbolic link, available on NTFS only, Win2K and up, no relative or UNC paths supported. They are created with mklink, Winbolic Link, or Sysinternals' junction. They have some risks associated with them, as explained on the Winbolic Link site, so I avoid them.

On Mac OS X, your choice is aliases (which are like shortcuts but smarter), or symbolic links, but I don't know anything about how they behave in Soulseek, since I'm on Win7.