Soulseek


Soulseek is a peer-to-peer file-sharing network and application. The term Soulseek might refer to one of the two networks, or one of the three official user client interfaces. Soulseek is used mostly to exchange music, although users are able to share a variety of files. Soulseek was created by Nir Arbel, an Israeli programmer from Safed.
Two independent networks have made up Soulseek since 2006, both run by the same management. The older and now the less used one is accessed by Soulseek client 156; the newer network and one with greatest usage is accessed by Soulseek client 157 or SoulseekQt. There are reportedly five times more users on the network accessed by clients 157/Qt than 156 as of August 2011.
New developments are solely on the SoulseekQt client interface. Work on Client 157 stopped in 2008. SoulseekQt has somewhat different functionality compared to the 157 client interface.

Key features

Content

As a peer to peer file sharing program, the accessible content is determined by the users of the Soulseek client, and what files they choose to share. The network has historically had a diverse mix of music, including underground and independent artists, unreleased music, such as demos and mixtapes, bootlegs, live tracks, and live DJ sets, but releases from major and independent labels can also be found.

Central server

Soulseek depends on a pair of central servers. One server supports the original client and network Version 156, with the other supporting the newer network. While these central servers are key to coordinating searches and hosting chat rooms, they do not actually play a part in the transfer of files between users, which takes place directly between the users concerned..

Searching

Users can search for items; the results returned being a list of files whose names match the search term used. Searches may be explicit or may use wildcards/patterns or terms to be excluded. For example, searching for blue suede -shoes will return a list of files whose names containing the strings blue and suede, but files containing the string shoes in their names will be excluded.
A feature specific to the Soulseek search engine is the inclusion of the folder names and file paths in the search list. This allows users to search by folder name. For example, typing in experimental will return all the files that are contained in folders having that name, providing quick access to bands and albums in a determined musical genre.
The list of search results shows details, such as the full name and path of the file, its size, the user who is hosting the file, together with that users' average transfer rate, and in the case of mp3 files, brief details about the encoded track itself, such as bit rate, length, etc. The resulting search list may then be sorted in a variety of ways and individual files chosen for download.
The Soulseek protocol search algorithms are not published, as those algorithms run on the server.

Single source (one-to-one) downloads

Soulseek does not support multi-source downloading or "swarming" like other post-Napster clients, and must fetch a requested file from a single source.

Banning

All Soulseek clients contain a ban feature whereby selected users may be banned from requesting files. This is in response to users who might be free-riding or who might be causing a nuisance for other reasons, such as a personal argument through the chat facilities or just taking up a user's bandwidth by downloading too many files, or simply on the whim of the banning user. Banning can be a contentious subject, and was the subject of much discussion in the user forums particularly in the early days. Users with download privileges can still be banned.

Album downloads

While Soulseek, like other P2P clients, allows a user to download individual files from another by selecting each one from a list of search results, a Download Containing Folder option simplifies the downloading of entire albums. For example, a user who wishes to facilitate the distribution of an entire album may place all tracks relating to the album together in a folder on the host PC, and the entire contents of that folder can then be downloaded automatically one after the other using this one command.

File transfer monitoring

The Soulseek client features two file transfer monitoring windows where the progress of files being uploaded and downloaded can be monitored and controlled.

User profiles

Users may complete a profile which contains basic free-form text information together with a list of things they like, a list of things they dislike, and optionally an image file. These items may then be viewed by other users when selecting the username from a list of members in a chat room or a list of files returned by a search.
The list of items a user likes may also be used to obtain global rankings for that item in the Soulseek community or to obtain recommendations from other users who have the same items in their list of things they like.

Wishlists

The Soulseek 156, 157 and Qt clients provide a "wishlist" feature which functions like a stored search. Search terms are input as entries in a wishlist and each wishlist entry is then periodically executed as a search automatically by the client software, returning results as appropriate.

Privileges

While the Soulseek software is free, a donation scheme exists to support the programming effort and cost of maintaining the servers. In return for donations, users are granted the privilege of being able to jump ahead of non-donating users in a queue when downloading files.

Support forums and blog

Like numerous other software titles, Soulseek has a set of forums where users may seek help on a variety of topics, such as technical aspects of using the software. Separate forums now support clients 156 and 157, and Qt. The first blog was created in the latter part of 2003.

Financing

Soulseek is entirely financed by donations, with no advertising or user fees. Nir Arbel writes, as of July 1, 2008:

Copyright issues

Soulseek claims to be against copyright violation and that the purpose of their service is to promote unsigned artists.
This is a quote from their homepage:
Soulseek was taken to court in 2008 by two French music industry groups. The groups alleged that Soulseek is designed to permit unauthorized access to copyrighted works.

History

The original Soulseek user base around 2000 was composed mostly of members of the IDM mailing list, and most of the music first found on Soulseek was underground electronic music or music created by the users themselves. Aided by Soulseek users, the developer Nir Arbel released new versions of the client very frequently, in response to user requests for new features or bug fixes.
There is no known published usage data. Soulseek got a boost in 2002 when the site Audiogalaxy was closed down. Nir Arbel stated in an interview published December 26, 2003 that there were, at that time, over a million registered usernames and that 80,000–100,000 users log on during peak hours. The increase in Soulseek users after the shutdown of Audiogalaxy was plainly evident from a before-and-after comparison of chat room populations. Before the shutdown of its competitor, Soulseek's most-joined chat rooms averaged 50 or so people. After the shutdown, the population of these chat rooms increased to 100 or more.
Soulseek is more of a community than a simple file sharing client. In Soulseek, users can connect with other users with similar music tastes to share files and to chat. Users even have the ability to create their own chat rooms and invite other users with similar tastes to discuss their favorite music. Many musicians from the electronic scene are themselves too part of this Soulseek community. Around 2004, Soulseek users from all the world met in Augsburg, Germany. Every year since then, that meeting still takes place at a digital arts festival called Lab30 in Augsburg, Germany, organized by longtime Soulseek user Manfred Genther and other Augsburg locals. This festival focuses on showcasing digital musicians, digital artists, and netlabels from all over the world. Many Soulseek artists have performed at the festival, and a large number of them have performed live for the very first time there. Lab30 has steadily grown in size since the first event and continues to be a meeting place for the musicians and users of Soulseek. Attendees usually come from all over Europe and the United States. Lab30 is a well known event in Augsburg and widely supported and cherished by the Augsburg music and art scene.

Soulseek Records

Many of the original Soulseek users are also music producers, and Soulseek Records was formed in 2002.

Versions

The first release was 139, which ran for about 12 months from 2002–03. Following a change in servers, a new version was released to coincide with this event. Whilst the main interface has largely remained unchanged since its inception, additional features such as the chat room 'ticker' were introduced into the 156 version.
Version 156 first appeared in 2005. A second 'test' version of the server, version 157, was set up shortly afterwards, which became the primary client in 2008.
Since July 6, 2008, there have been two versions of the Soulseek client, with entirely different users, user groups, and files. The older version, v.156 is progressively being wound down, but still operates as of August 2011, albeit with few users. Users are not obligated to upgrade, and new users may still inadvertently download the 156 client.
The 157 "test" network has been around since 2005, to circumvent poor search capability on the 156 client. The v.157 test 12c was released in November 2007. All recent versions have several bugs which can hang or cause the system to stop searching or downloading.
The client SoulseekQT Public Build 1 was released in 04/19/2011.
For the older clients no official client was developed for non-Windows operating systems, but a number of unofficial third-party clients existed at the time. Development of third-party clients was discouraged, as coding errors or explicit circumvention of network rules in third-party clients had, at times, a drastic negative impact on the Soulseek network.

Alternative Clients

Nicotine+ is an actively maintained fork of the now defunct Nicotine client. Nicotine+ runs under GNU/Linux and Windows. It is currently maintained by a team of volunteers with its source hosted on GitHub. It uses Gtk+ 3, Python 3, and supports UPnP. Stable and unstable packages are available for Ubuntu. Nicotine+ is also available as a Flatpak, as of release version 2.0.0
Nicotine+'s defunct predecessor Nicotine also ran on all Unix-based systems, such as Mac OS X, and on Microsoft Windows. It is in turn based on the original PySoulSeek project. It may still be available from some package distributors on GNU/Linux-based systems.
PySoulSeek was a Soulseek client written in Python that runs under Linux/FreeBSD/Solaris and other Unix-based operating systems. PySoulSeek runs under Mac OS X but with some difficulty.
GoSeek is a Soulseek client for Android devices. It will not run on Android Nougat or newer versions.
MewSeek was originally iSlsk, a Soulseek client for iPod Touch and iPhone clients running jailbroken versions of iOS. MewSeek no longer supports Soulseek.
Clients for Mac OS X included Soulseex and iSoul. iSoul was based on an earlier client called Solarseek.