You are here

Soulseek

19 posts / 0 new
Last post
Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
Soulseek

Program: Soulseek

License: Freeware

Description: Soulseek® is a unique ad-free, spyware free, and just plain free file sharing application.

One of the things that makes Soulseek® unique is our community and community-related features. Based on peer-to-peer technology, virtual rooms allow you to meet people with the same interests, share information, and chat freely using real-time messages in public or private.

Soulseek®, with its built-in people matching system, is a great way to make new friends and expand your mind!

Website: http://slsknet.org/

There was an old version of the launcher in the forums here, but it is no longer hosted and needs to be updated to work correctly. I have a copy of the old launcher if anybody would like to take a look at it. It leaves a folder behind in %ProgramData%. It was also hastily thrown together and could probably have been much better.

usbtastic
Offline
Last seen: 10 years 10 months ago
Joined: 2009-03-16 06:34
Not open-source

I dont think Soulseek is GNU\GPL. It is freeware.

http://en.wikipedia.org/wiki/Soulseek

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
You're Right

You're right, I just forgot to change that line when I copied from another post. I fixed it in the original post

Noaven
Offline
Last seen: 11 years 3 weeks ago
Joined: 2009-10-29 07:13
+1 for soulseek ... is

+1 for soulseek ... is excellent!!

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
I downloaded your launcher

I downloaded your launcher (is this the same one that was posted in the original topic?) but I can't extract the setup file as per your instructions in help.html. I tried both the server & client versions with 7-Zip and Universal Extractor. Am I missing something? Smile

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
Are you sure you tried to

Are you sure you tried to extract it with 7-zip? I just downloaded it from here and it extracted just fine with 7-zip. There are only 3 files inside the setup.

slsk.exe
Readme.txt
message.wav

It should work just fine.

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
slsk.exe won't run here

slsk.exe won't run here without being installed though...

"SoulSeek's installation is corrupt or missing. Please reinstall SoulSeek."

What am I doing wrong?

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
So you extracted the files

So you extracted the files from the installer, but the portable launcher won't run?

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
I didn't try the launcher, I

I didn't try the launcher, I just ran it standalone. Do I need the launcher?

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
I had a look at this...

All the paths in the registry are in hex so updating *drives* will be difficult/impossible. Maybe I could read from reg, convert to string, write to ini, replace in file, read from ini, convert to hex, write to reg, I don't know (you get the idea!). Even if I could do that, I will run into the next hurdle.

I can convert each *path* to hex and put it straight into the registry no problem but Soulseek won't recognise it without further formatting which I can't figure out.

Soulseek makes it possible to disable writing the configuration to the registry and use (binary) config files instead. Unfortunately, these are stored in "AllUsers\AppData" so admin would be required as I can't see any way to redirect them. I can replace all drive letters in these files so it's all PAF compatible but no path replacement is possible (similar problem to EAC, the files look good but Soulseek won't recognise them and they are corrupt on exit. No crashes though!)

Even using the config files, the recent file list is still in the registry but I can wipe it before launch if the drive letter has changed (better to lose it than for it to point to files that aren't there anymore?). I haven't tested this though as I am yet to be able to download a file! I presume this is because I'm still a Soulseek 'n00b' (!) rather than any fault of the app Smile Always stuck in the queue...

I can add an admin check that closes the app rather than messing up the configuration by trying (and failing) to move things but launching anyway. I'm not sure how much of a problem requiring admin is here, especially with the firewall, which needs admin? OK, so you could log in as admin, add Soulseek to the fiewall, log out, log in as user etc. but this would break with a drive letter change (and would be major hassle!). I could add an "auto-add-to/remove-from-firewall" INI option (off by default) which handles the drive letter and cleans up. But again, requires admin.

It also leaves three files in "user\Local Settings\Temporary Internet Files", one of which contains your login data! I'm not sure if it's possible for a launcher to clean these up so it will leave traces. Unless I can get the 'Web' tab disabled by default but I'm guessing that's all part of the login process so I doubt it. Perhaps this is the real drawback? I'll have another look at it though.

Shall I continue? It would take about five minutes to get what I've got up to scratch so if you want it as it is, with these minor (?) issues, no problem.

Sorry for the long post, perhaps I'm making it more difficult than it should be, but I just wanted to be thorough. Perhaps you have any more helpful info?

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
I'll try to get some answers

Thanks for the long post, you've actually described things really well, hopefully I can help a bit. I'm going to post in the SoulSeek forums to see if I can get some answers.

Since it looks like it's going to require some admin privileges, I think a check and run as admin would be the best way to go. I don't think the auto-add the firewall exception would hurt anything, but if you do that you should probably remove it from the exception list on exit.

As for the settings, I would default to cfg files since it seems like they're a bit easier to work with. I'll post over at the SoulSeek forums to see if I can figure out why/what the formatting issue is. As far as I can tell there are only 2 files that would need drive letter updates: save.cfg and shared.cfg. I'll see if I can figure out how they're formatted.

As for the paths: I've tested this on Win7 and all the cfg files are left in %ProgramData%\Soulseek. I'm not sure if this is the same as %AppData%, but it's probably worth noting. I found the 3 files you were talking about in Temporary Internet Files. I don't know if these can be deleted/backed up either. I was looking through the html file and I was able to find the username, but not the password so I don't know how that's stored. I think all that is for is the web tab that you mentioned which should be safe to disable as far as I can tell if it's even possible. It looks like the login info is saved in the login.cfg file.

I'll post in the SoulSeek forums to see if I can get some answers to some of these issues, but I wouldn't hold my breath.

As for your issues with being stuck in a queue, when you search for files you can see how many other people are trying to download stuff from that user in the "In queue" column. These files usually show up in grey and you're going to have to wait to download them. Files that show up in black don't have anybody in the queue and you should be able to download from them right away.

EDIT: I just started a forum topic over at the Soulseek forums, feel free to add any information you thing would be helpful.

I was also able to figure out that the cfg files are also written in hex so there could be some issues there. I'm waiting to hear back about the specific format.

EDIT 2: I also found Nicotine Plus which looks like an open source client that uses the Soulseek network. I've never used it so I have no idea if it would be any better or if it even works. I'll try it out later tonight and let you know how it goes.

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
a check and run as admin

a check and run as admin would be the best way to go

I have it check the user account and then quit (gracefully) if not admin. Can I 'run as admin' on a user account? I admit I haven't really checked this out generally.

auto-add the firewall exception would hurt anything, but if you do that you should probably remove it from the exception list on exit

That's what happens. I've used it on a number of things (REAPER, ezQuake) and it works great, give it a try.

save.cfg and shared.cfg. I'll see if I can figure out how they're formatted

Yeah, it's just the two. There's no problem replacing the drive letters in the files. it's just that they have to be moved to an 'admin only' area.
If you run Soulseek, go into the registry, right-click and look (modify) you'll see that there are other characters in there besides the paths. I'm a bit lost looking at them, to be honest. Suffice to say that just a direct import into the registry (as hex) doesn't produce the same result (and doesn't work) but we *are* able to do it in the files.

%ProgramData%\Soulseek. I'm not sure if this is the same as %AppData%

Yeah, same thing, no worries. $APPDATA in NSIS.

web tab that you mentioned which should be safe to disable

If I run Soulseek and disable it, on the next run it's back so I don't think it's possible. There's the NSIS variable $INTERNET_CACHE but I haven't fully investigated yet. I'll let you know if I can get at them.

Files that show up in black don't have anybody in the queue and you should be able to download from them right away

I found the Soulseek Guide for the Dummies over on the site which I thought was good, so I knew about the colours/queue. I'm guessing Elvis really has left the building...

EDIT: OK, saw your topic. I'll keep an eye on it.

EDIT2: Just re-read your topic over at the Soulseek forums. We have to update either the registry *or* the files. If we use the HKCU registry then the files aren't created (so don't need to be moved to AllUsers\AppData) so I guess that is preferable. What the admin requirements are beyond this, I'm not so sure yet (except for the firewall, which may decide it). Just wanted to clarify.

Corrected my Elvis quote LOL

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
Both Registry and CFG

I don't really know how this would work, but I think the launcher would have to backup both the registry and the cfg files. I think the registry is preferable too, but I think you're going to have somebody somewhere who checks the box to not use the registry. So ultimately I think that both the registry and the cfg files will need to be accounted for unless the option to disable the registry is somehow inaccessible.

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
Hmm...

You're right, of course.

Let's see if anybody responds to your request. If it turns out that the registry really can't be updated then you could just have a note similar to "don't enable file associations/whatever" as in others apps. Like "don't enable writing the config to the registry!!"

Or maybe the launcher could just completely wipe the registry file and then re-write only the bits we need on every run? Ruthless Smile

Just thinking out loud there.

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
Seconds out, round two

I worked on this again and, in the absence of any more info, I did the following -

  • Launcher is admin only and will quit if run as guest or user.
  • I can't write the paths to the 'save' or 'shared' folder on first run (because of the config file format) so you'll have to browse to them initially. "Data\save" and "Data\shared" are created but you can use any folder on your disk (and delete these later if you don't use them).
  • Soulseek will add/remove itself from the Windows firewall (INI option, off by default).
  • Configuration is saved to the files rather than the registry. You can still enable the registry in the options but, if you do, all changes are lost as the next run will use the files again (and stay portable).
  • If the drive letter changes, all paths are updated (except for the MRU in the registry, which is wiped).
  • I can clear the IE Temporary Internet Files and History (bit of a fudge!) but it's the *entire* cache, not just Soulseek's minor contributions so I made it another INI option (again, off by default).

To be honest, if this was for my own personal use, I would be OK with all that but let me know what you think.

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
This sounds great, I think

This sounds great, I think you got it pretty much where it needs to be.

  • I understand that this is admin only, it there a way you can prompt to run as admin? If not, I think maybe there should be a dialog box that pops up that you have to click to acknowledge why it won't run.
  • Are the 'save' and 'shared' folders drive independent or path independent?
  • Nice, this is a sweet feature.
  • Is the registry backed up? What I mean is if you enable the registry and then close SoulseekPortable, will the local installs registry settings be overwritten?
  • I assume this is the same as the 'save' and 'shared' folders?
  • I understand that Soulseek will write to the internet files and history, but I took a look at the files that are written no personal information (other than the username) is written. I think you could probably be safe leaving them there and just deleting the 1 file containing the username (I'm not sure, but I think it has a static file name).

I really appreciate you taking the time to do this. I'm totally fine using it as is if you feel like posting it or simply sending the link if you don't want to post it.

prapper
Offline
Last seen: 3 years 9 months ago
Developer
Joined: 2008-01-24 17:01
Almost there

but to answer your questions -

  • I can't get this to run on a limited account at all (using the config files) so if guest or user is detected I have it show a notification box then exit.
  • Not sure what you mean about the folders. I can only change the drive letters, not the full paths, in the config files so it's standard PA.c behaviour. I guess this is 'drive independent' only?
  • Yep, firewall feature is handy!
  • Yes, local registry settings (and local config files) aren't touched, they're backed up & restored as normal. I'm just removing any config info from the regfile before it's merged prior to (every) launch (forcing Soulseek to use the files).
  • Again, slightly confused here (probably my fault as I think I mixed up 'drive' and 'path' in my previous post). The 'save' and 'shared' folders will follow the drive no problem but, as the MRU is always stored in the registry (and I can't update the hex), I'm wiping it rather than have it point to incorrect locations *only* if the drive letter changes.
  • I can't access the files in the cache so deleting just one, even with a fixed filename, isn't possible (AFAIK). I confess, it's not the launcher cleaning this up (hence the 'fudge') and you may well laugh (or possibly cringe) when you see it, although it works great! Again, it's an option that's off by default so you don't have to go there if you don't want to Smile (Did I say it was working great? LOL).

No problem doing this, I hope it's all OK! I'll post it soon & you can give it a try.

Devo
Offline
Last seen: 1 year 3 weeks ago
Joined: 2007-09-04 14:55
Thanks for taking the time to do this

Thanks for answering my questions. Everything sounds great. I'm looking forward to testing it out and seeing your 'fudged' cleanup.

portable.me
Offline
Last seen: 12 years 4 months ago
Joined: 2008-09-26 14:22
sadly the prog doesn't save

sadly the prog doesn't save any configuration changes within soulseeks options nor does it save username/password, friends list and files started to download (in case of albums for example) where only a part was loaded yet.

Log in or register to post comments