Nicotine+: A graphical client for the SoulSeek peer-to-peer system

Overview

Nicotine+

Nicotine+ is a graphical client for the Soulseek peer-to-peer file sharing network.

Nicotine+ aims to be a pleasant, Free and Open Source (FOSS) alternative to the official Soulseek client, providing additional functionality while keeping current with the Soulseek protocol.

Check out the screenshots and source code.

Download Nicotine+

The current stable version of Nicotine+ is 3.0.2, released on March 1, 2021. See the release notes.

GNU/Linux, *BSD

If you have no need to modify the Nicotine+ source, you are strongly recommended to use precompiled packages for your distribution/operating system. This will save you time.

Ubuntu PPA/Debian (Stable)

To use stable packages on Ubuntu and Debian, run the following:

sudo apt install software-properties-common
sudo add-apt-repository ppa:nicotine-team/stable
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6CEB6050A30E5769
sudo apt update
sudo apt install nicotine

Ubuntu PPA/Debian (Unstable)

The project builds daily unstable snapshots in a separate unstable PPA. To use it, run the following:

sudo apt install software-properties-common
sudo add-apt-repository ppa:nicotine-team/unstable
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6CEB6050A30E5769
sudo apt update
sudo apt install nicotine

Arch Linux/Manjaro/Parabola (Stable)

Nicotine+ is available in the community repository of Arch Linux, Manjaro and Parabola. To install, run the following:

sudo pacman -S nicotine+

Void Linux (Stable)

To install Nicotine+ on Void Linux, run the following:

sudo xbps-install -S nicotine+

Fedora (Stable)

To install Nicotine+ on Fedora, run the following:

sudo dnf install nicotine+

Guix (Stable)

To install Nicotine+ on Guix, run the following:

guix install nicotine+

Other Distributions

If Nicotine+ isn't packaged for your distribution/operating system yet, there are other recommended ways of installing Nicotine+.

pip (Stable)

Nicotine+ can be installed using pip. Ensure the dependencies are installed, and run the following:

pip3 install nicotine-plus

Flathub (Stable)

If your distribution supports Flatpak, you can install Nicotine+ from Flathub.

Download Nicotine+ on Flathub

Windows

Stable

Stable Windows installers for Nicotine+ are available to download. Installing Nicotine+ requires administrator privileges.

If you don't want to, or you aren't able to install Nicotine+ on your system, portable packages are also available. These can be run from your home directory.

Unstable

Unstable Windows packages are generated after every commit to the master branch, and should only be used for testing. You need to be signed into a GitHub account to download the packages.

macOS

Stable (Catalina/10.15 and newer)

A stable macOS installer for Nicotine+ is available on macOS version 10.15 (Catalina) and newer.

Stable (Mojave/10.14)

On macOS version 10.14 (Mojave), the recommended approach is to install Nicotine+ using Homebrew.

Once Homebrew is set up, run the following:

brew install nicotine-plus

Unstable (Catalina/10.15 or newer)

Unstable macOS installers are generated after every commit to the master branch, and should only be used for testing. You need to be signed into a GitHub account to download the installers.

Building from git (Unstable)

For more experienced users and developers who want to test the latest and greatest changes in Nicotine+, building from git is described in RUNFROMGIT.md. Also read the next section about getting involved.

Getting Involved

Please come and join us in the #nicotine+ channel on Freenode!

If you'd like to contribute, you have a couple of options to get started:

  • If you'd like to translate Nicotine+ into another language it has not been already, see TRANSLATIONS.md.
  • If you find a problem or have a feature request you can
  • If you're packaging Nicotine+ for a distribution or operating system, see DEPENDENCIES.md for a list of dependencies.
  • Code contributors, developers and maintainers should read DEVELOPING.md for important information about various aspects of Nicotine+ development. Developers are also encouraged to join the Launchpad Team or subscribe to the mailing list so that they are automatically notified of failed commits.
  • For (unofficial) documentation of the Soulseek protocol, see SLSKPROTOCOL.md
  • For a current list of things to do, see the issue tracker.
  • For a list of contributors to Nicotine+ and its predecessors, see AUTHORS.md.

Where did the name Nicotine come from?

I was in a geeky mood and was browsing http://www.bash.org's QDB.
I stumbled across this quote:

<etc> so tempting to release a product called 'nicotine' and wait for the patches.
<etc> then i would have a reason to only apply one patch a day. otherwise, i'm going against medical advise.

So I thought what the hell and bluntly stole etc's idea.

Hyriand, founder of the Nicotine project

Legal and Privacy

  • By using Nicotine+, you agree to abide by the Soulseek rules and terms of service, as long as you are using the official Soulseek server.
  • While Nicotine+ does not collect any user data, the official Soulseek server or a user-configured third-party server may potentially do so.

License

Nicotine+ is released under the terms of the GNU Public License v3 or later.

Comments
  • Converting to Python3 (First steps)

    Converting to Python3 (First steps)

    See https://github.com/Nicotine-Plus/nicotine-plus/issues/99

    This porting to Python3 turns out to be quite a big deal, and I promised I'd open a PR as soon as I see some progress, so here goes. I requested a merge to the develop branch, which may or may not be the right branch. Major problems when porting to Python3:

    • pygtk, which was based on Gtk2, is not available under Python3, so the UI needs to be ported to Gtk3.
    • Handling of bytes has changed between Python 2 and 3 and is much stricter now.

    I ported to the point that the UI shows up, looks correct to me, and the client logs in to server.slsknet.org. I'm opening the PR now, in this incomplete state, to get some feedback. Of course, commits are also welcome. If anyone wants to contribute code, maybe ping me first so we can avoid duplicating efforts.

    bug 
    opened by lene 63
  • Peer messages causing socket error

    Peer messages causing socket error

    Nicotine+ version: 1.4.3 unstable Operating System/Distribution: Kubuntu 20.04 (Focal)

    Description: After doing a few searches, I get a lot of peer messages showing up in the log window, followed by "Major Socket Error: Networking terminated! [Errno 24] Too many open files". The peer messages are a variety of types (1028, 3333, 1541, 260, 1797, 14592, 10752), and are coming from a number of different users.

    Expected Behavior: I don't think I should be seeing these peer messages popping up, and shouldn't be getting the socket error.

    Steps to reproduce:

    1. Open Nicotine+ and connect to the network.
    2. Search for a few different artists (this time, I searched for Led Zeppelin, Heart, and U2).
    3. After a few minutes, you should see the messages in the log window.

    Additional context: Screenshot

    bug 
    opened by zalloy 48
  • Show transfers in Kbs instead of MB/s?

    Show transfers in Kbs instead of MB/s?

    Hello is it possible to show the trasnfers in Kbs? insead of MB/s? i.e https://files.catbox.moe/08slu8.png thanks! maybe you can add it as a feature in the future so we can pick in the settings :)

    enhancement 
    opened by magnog0 46
  • OS error: [Errno 13] Permission denied: '/Users/USER

    OS error: [Errno 13] Permission denied: '/Users/USER

    Nicotine+ version: 3.3.0.dev1 • GTK 4.6.2 Operating System/Distribution: MacOS Monterey - 12.3.1 (21E258)

    Describe the bug

    Local files and folders can't be accessed. Log: OS error: [Errno 13] Permission denied: '/Users/USER

    Expected behavior

    Local files can be accessed

    Steps to reproduce the bug

    Download Nicotine+ and use it.

    Additional context

    probably linked to restricted file permissions required by the OS. I granted full disk access to Nicotine+ in the privacy and security preferences pane. This did not help...

    opened by dosch 38
  • Add an option to avoid a single user returning 1000+ results instead of 50 (limit results per user, exclude users from a search, include only results from one country...)

    Add an option to avoid a single user returning 1000+ results instead of 50 (limit results per user, exclude users from a search, include only results from one country...)

    Nicotine+ version: 3.2.2 • GTK 3.24.33 Operating System/Distribution: Windows 10 Enterprise 2016 LTSB

    Describe the bug

    There seems to be a search result limit of 25000 that you can't change. That can be an issue on itself, but let's move to the actual bug. The thing is, when you search for a word that returns many thousands of results (potentially many more than the 25000 limit by default, such as "01") the system somehow detects this (probably because in this case, every single user sharing files has some file which includes "01" in the file name) and plain stops your search at about 5000 results shown.

    Expected behavior

    If the search result limit is not going to be extended beyond 25000, I would suggest to at least allow these kind of massive searches to reach the limit of 25000 instead of stopping showing results after 5000.

    Steps to reproduce the bug

    Simply search for "01" and observe the low number of results returned and how fast they seem to appear, which seems to indicate the program suddenly "gets scared" and stops by default.

    You can also try to run the same massive search only on the room "Nicotine" and observe how the number of results is roughly the same, which makes it very unlikely that these are the only results.

    Additional context

    Screenshots, logs, stacktraces or relevant information. (N/A)

    enhancement 
    opened by MasterSuggester 34
  • Windows Bug: Preferences popup window is slow to open on occasion

    Windows Bug: Preferences popup window is slow to open on occasion

    Nicotine+ version: 2.3.0.dev1 Operating System/Distribution: Windows 10 20H2

    Describe the bug

    For unclear reasons, the preferences popup is slow to open on occasion, sometimes taking ~4 or more seconds to open. Though I have no shares added on the Linux version, that version never seems to experience this slowdown (and generally seems more responsive). Perhaps other parts of the UI on Windows are affected too, however I haven't noticed it switching from tab to tab, only when opening the preferences, and in fact, sometimes when displaying the popup that shows on clicking the X to quit.

    When it's working, it only takes about 150–500ms (usually closer to 500ms) to draw and display the popup. On Linux (VM), it looks instant.

    Expected behavior

    Opening the preferences window and other popups should be more responsive on Windows.

    bug 
    opened by redactedscribe 34
  • Port to python3

    Port to python3

    Will nicotine+ be ported to python3?

    I see very little activity in the repository in the past months and would just like to highlight, that python2 is soon EOL. This means, that many Linux distributions will drop all python2 based software shortly thereafter from their repositories.

    If no port is attempted: Are there alternatives?

    opened by dvzrv 34
  • Hot keys

    Hot keys

    There is a great lack of standard manipulations such as Ctrl-Z in the fill line to reverse the input history. This needs to be implemented globally. Ctrl-C to copy the selected element (copying the path should remain in the context menu.). The update mentioned this feature, but I still haven't seen it. The implementation can be copied from the official client, there everything is fine with it, here it is not enough. That is, I chose an element, whether it is a file or a directory, when clicked, the name of the element itself is copied for the convenience of further search. This function is needed globally*.

    Nicotine+ version 3.0.1 FreeBSD 12.2 amd64

    enhancement 
    opened by 82d 33
  • Ability to scroll when you push the mouse to the rightmost edge of the screen (last pixel).

    Ability to scroll when you push the mouse to the rightmost edge of the screen (last pixel).

    Right now, there is probably one or few pixels and you can't drag scrollbar when you go to the screen edge. Scrollbar drag area should be extended right to the last rightmost pixel on screen, it would much more usable.

    I'm using Linux version and maybe such thing does interfere with desktop manager (I'm using KDE), but I doubt it's impossible.

    enhancement 
    opened by trancephorm 32
  • Error launching Nicotine+

    Error launching Nicotine+

    Hey, first thanks for this wonderful software! I thought I was dreaming when I switched from SoulseekQt to Nicotine+ :D

    Nicotine started to fail at launch. I don't know why it started to act like this, because it was working on the same setup a few days ago. I tried rm -r .local/share/nicotine/ .config/nicotine/ but it doesn't help.

    Nicotine+ Version: 3.2.6 GTK Version: 3.24.34 Python Version: 3.10.8 (main, Oct 11 2022, 11:35:05) [GCC 11.3.0] OS: NixOS 22.11 Display: sway 1.7 (wayland)

    Type: <class 'BrokenPipeError'>
    Value: [Errno 32] Broken pipe
    Traceback:   File "/nix/store/ax1br9c00lm3xjqmfwrm9inqr8xdhyb5-nicotine-plus-3.2.6/lib/python3.10/site-packages/pynicotine/gtkgui/application.py", line 110, in on_activate
        self.core.start(ui_callback=self.frame, network_callback=self.network_callback)
      File "/nix/store/ax1br9c00lm3xjqmfwrm9inqr8xdhyb5-nicotine-plus-3.2.6/lib/python3.10/site-packages/pynicotine/pynicotine.py", line 132, in start
        self.shares = Shares(self, config, self.queue, self.network_callback, ui_callback)
      File "/nix/store/ax1br9c00lm3xjqmfwrm9inqr8xdhyb5-nicotine-plus-3.2.6/lib/python3.10/site-packages/pynicotine/shares.py", line 510, in __init__
        self.init_shares()
      File "/nix/store/ax1br9c00lm3xjqmfwrm9inqr8xdhyb5-nicotine-plus-3.2.6/lib/python3.10/site-packages/pynicotine/shares.py", line 519, in init_shares
        self.rescan_shares(init=True, rescan=rescan_startup)
      File "/nix/store/ax1br9c00lm3xjqmfwrm9inqr8xdhyb5-nicotine-plus-3.2.6/lib/python3.10/site-packages/pynicotine/shares.py", line 830, in rescan_shares
        scanner.start()
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/process.py", line 121, in start
        self._popen = self._Popen(self)
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/context.py", line 224, in _Popen
        return _default_context.get_context().Process._Popen(process_obj)
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/context.py", line 288, in _Popen
        return Popen(process_obj)
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/popen_spawn_posix.py", line 32, in __init__
        super().__init__(process_obj)
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/popen_fork.py", line 16, in __init__
        util._flush_std_streams()
      File "/nix/store/zdba9frlxj2ba8ca095win3nphsiiqhb-python3-3.10.8/lib/python3.10/multiprocessing/util.py", line 435, in _flush_std_streams
        sys.stdout.flush()
    
    bug 
    opened by aopom 31
  • 3.2.4 performs worse on Windows than previous stable version (3.2.2)

    3.2.4 performs worse on Windows than previous stable version (3.2.2)

    Nicotine+ version: 3.2.4 Operating System/Distribution: Windows 11

    Describe the bug

    v3.2.2 was not a slow as the stable version currently is. It's noticeable when scrolling search results, or the Uploads/Downloads lists. Browsing someone's shares (the left side's list) seems normal, but maybe the right side is affected too. It's about 3 FPS when scrolling a list of search results, and the list doesn't even need to be large: I have one search term that's showing 3 users each with 10-14 files shown, and even this list is 3 FPS. In fact, it looks like it might be related when there are active transfers as performance increases a bit, maybe to 5-8 FPS, when there aren't any active.

    Other than sluggish scrolling, the UI is slower to respond at times, sometimes hanging and even turning white (not responding) for a moment before Nicotine+ catches up. For example, the worst hang I've experienced was just now as I clicked the hamburger menu > Help > About Nicotine+ and it hung for like 30 seconds for no apparent reason. Doing the same action immediately after had no hang at all. There are small hangs too, like switching from tab to tab can either be basically instant, or delayed by a second. I don't know what's changed but I feel like the program's taken a step back in performance, at least on Windows and/or on my system.

    Something that I know is an issue on my system is that the hard drive that I download to has some errors and can be slow to respond, but it hasn't gotten any worse and I noticed the performance degradation immediately upon upgrading from v3.2.2. It's taken me until now to report this because I wasn't sure if I was imagining things, but after numerous hangs, I'm fairly certain it wasn't like this before.

    Anyone else notice that scrolling lists in v3.2.4 is slow, or that the program can respond slowly when interacting with the UI in some way?

    Expected behavior

    As good as or better performance than v3.2.2.

    bug 
    opened by redactedscribe 31
  • I have gtk3 but I get

    I have gtk3 but I get "Cannot find GTK 3, please install it."

    Nicotine+ version: Nicotine+ 3.2.8

    Operating System/Distribution: NAME="openSUSE Leap" VERSION="15.4"

    Describe the bug

    $ rpm -qa | grep libgtk
    libgtkmm-3_0-1-3.24.5-150400.1.10.x86_64
    libgtk-2_0-0-2.24.33-150400.2.11.x86_64
    libgtk-4-1-4.6.0-150400.3.3.1.x86_64
    libgtk-3-0-3.24.34-150400.3.3.1.x86_64
    
    $ ~/.local/bin/nicotine 
    [2023-01-08 16:38:16] Cannot find GTK 3, please install it.
    
    opened by tari3x 2
  • critical error

    critical error

    Nicotine+ Version: 3.2.8 GTK Version: 3.24.36 Python Version: 3.10.9 (main, Dec 19 2022, 17:35:49) [GCC 12.2.0]

    Type: <class 'FileNotFoundError'> Value: [Errno 2] Arquivo ou diretório inexistente: b'/usr/lib/python3.10/site-packages/pynicotine/gtkgui/ui/popovers/roomlist.ui' Traceback: File "/usr/lib/python3.10/site-packages/pynicotine/gtkgui/application.py", line 109, in on_activate self.frame = NicotineFrame(self.instance, self.core, self.tray_icon, self.start_hidden, self.ci_mode) File "/usr/lib/python3.10/site-packages/pynicotine/gtkgui/frame.py", line 277, in init self.chatrooms = ChatRooms(self, core) File "/usr/lib/python3.10/site-packages/pynicotine/gtkgui/chatrooms.py", line 84, in init self.roomlist = RoomList(frame, core) File "/usr/lib/python3.10/site-packages/pynicotine/gtkgui/popovers/roomlist.py", line 37, in init UserInterface.init(self, "ui/popovers/roomlist.ui") File "/usr/lib/python3.10/site-packages/pynicotine/gtkgui/widgets/ui.py", line 39, in init with open(encode_path(os.path.join(GTK_GUI_DIR, filename)), encoding="utf-8") as file_handle:

    opened by asmitir 4
  • macOS: jumpy window with straight corners and unresizable

    macOS: jumpy window with straight corners and unresizable

    Nicotine+ version: 3.3.0.dev4 Operating System/Distribution: macOS 12.1

    Describe the bug

    After fresh install, attempt to move the window around the screen had three consequences:

    • the window makes an initial jump before moving as expected
    • its rounded corners disappear and are replace with straight ones
    • bringing the cursor to the window borders/corners doesn't trigger the resize function/cursor anymore

    Expected behavior

    • no jump, smooth dragging
    • rounded corners
    • resizable window

    Steps to reproduce the bug

    • install and open
    • drag the window around

    Additional context

    Screen recording via a WT link: https://we.tl/t-rwwp8yVplH

    bug 
    opened by rpmindroid 8
  • Add sortable audio properties/quality column

    Add sortable audio properties/quality column

    Describe the solution you'd like

    The bitrate column isn't very useful for lossless audio files, but it can be sorted to show higher quality files first.

    SoulseekQt has an Attributes column that shows bit depth and sample rate for lossless files, and bitrate for lossy files. Unfortunately, the column isn't sortable.

    I want the best of both worlds, where the bitrate is always used as the internal sort value, but the value shown in the GUI is similar to SoulseekQt. This allows us to keep displaying high quality files first.

    Additional context

    enhancement 
    opened by mathiascode 2
  • networkfilter.py: support explicit ip addresses and handle offline users

    networkfilter.py: support explicit ip addresses and handle offline users

    This PR includes what is needed to support the user filtering related CLI core_commands being developed in #2281

    • Added: Support for adding IP addresses directly into the IP Ban/Ignore filters, without needing to know a username
    • Added: Try to establish a username, if known, whilst adding a IP ban/ignore filter in the Preferences or /ignoreip command
    • Changed: Prefer locally stored core.user_addresses where possible to avoid unnecessary excessive GetPeerAddress() calls
    • Fixed: Several issues that made it impossible to reliably ban/ignore more than one offline user at a time
    • Fixed: Prevent duplicate username lookups for improved performance when getting and setting cached ban/ignore states
    • Fixed: Don't replace a valid filter with zero 0.0.0.0 IP address or "" empty username data if the user is offline
    • Fixed: Don't try to close zero 0.0.0.0 IP connections when adding an IP-ban for an offline user, or closing Preferences dialog
    • Fixed: Avoid core error when attempting to close newly added banned IP address containing * wildcard characters
    opened by slook 0
Releases(3.2.8)
  • 3.2.8(Jan 6, 2023)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Corrections

    • Improved file scanning performance on systems other than Windows
    • Fixed a regression where uploads through the legacy file transfer system failed in some cases
    • Fixed an issue where finished zero-byte file downloads displayed a "Connection timeout" error
    • Fixed an issue where Nicotine+ did not reconnect to the server on connection failure in some cases
    • Fixed a rare crash when scanning shares
    • Windows: Fixed a crash when sending Nicotine+ to the background from the quit confirmation dialog
    • Windows: Fixed an issue that prevented viewing own personal user info page

    Issues closed on GitHub

    • Automatically reconnect to a server after connection failure (#2168)
    • Nicotine+ v3.2.7 crashes when sent to background (Windows 10) (#2276)
    • Error launching Nicotine+ (#2282)
    • UPnP: Critical error when network interface not available (#2289)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.16 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.99 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.98 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.79 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(25.34 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(26.17 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.7(Dec 1, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Corrections

    • Fixed a crash when selecting a user picture
    • Fixed a crash when removing private chat logs
    • Fixed an issue where the main window could become unresponsive when showing it from the tray icon
    • Minor fixes related to UPnP compatibility with certain routers
    • Reduce the number of connection timeouts when searching for popular files
    • Windows: Fixed a possible crash when showing notification bubbles
    • Android (Termux): Fixed a crash when starting Nicotine+ in headless mode

    Issues closed on GitHub

    • Notification string too long (ValueError crash) on Windows (#2233)
    • Private chat, Delete chat log... >> Value: 'PrivateChats' object has no attribute 'history' (#2247)
    • Flatpak: uploading a profile picture crashes the application (#2250)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.14 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.98 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.90 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.70 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(25.27 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(26.10 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.6(Oct 21, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Changes

    • Added F6 shortcut to move keyboard focus to the headerbar/toolbar
    • Added an option to clear all uploads with a "User logged off" status
    • Removed AppIndicator dependency in favor of custom tray icon implementation

    Corrections

    • IMPORTANT: Fixed a regression where uploads to slskd users were stuck at "Transferring"
    • IMPORTANT: Fixed an issue where private messages from offline users were ignored
    • IMPORTANT: Fixed an issue where certain uploads were incorrectly marked as "Cancelled"
    • IMPORTANT - OpenBSD: Fixed a regression where incoming peer connections did not work
    • Fixed a crash when uploading large files on a 32-bit system
    • Fixed an issue where redundant protocol messages could be sent to the server indefinitely
    • Fixed an issue where UPnP did not work on MikroTik routers
    • Fixed an issue where the progress bar would get stuck if a share browse request ended abruptly
    • Windows: Fixed an issue where network drives could not be shared
    • Flatpak: Fixed an issue where the GUI was not translated to the system language

    Issues closed on GitHub

    • Clear Finished also clears uploads/downloads with "User logged off" status (#2081)
    • Scanning taking many hours (#2173)
    • Users can't connect to me after upgrade to 3.2.5 (transfers don't work) on OpenBSD (#2175)
    • Some bugs in Nicotine+ v. 3.2.5 (#2184)
    • Search Files: Keyboard shortcut to focus search bar (#2186)
    • Offline messages not popping up in tabs (#2189)
    • Samba Share hosted by Linux, mounted on Windows Failing (#2190)
    • Can't exit Room tabs when internet connection is off (#2192)
    • The flatpak version of Nicotine+ is using the wrong language (#2194)
    • Uploads partly broken (#2197)
    • Error code 725: OnlyPermanentLeasesSupported (#2200)
    • Critical error (#2215)
    • OverflowError (#2216)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.11 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.98 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.83 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.64 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(25.13 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(25.95 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.5(Aug 31, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Corrections

    • Fixed an issue where user settings would reset after an operating system crash or power outage
    • Fixed an issue where certain uploads were stuck in "Queued" or "Transferring" status
    • Fixed an issue where files did not download to custom folders
    • Fixed a performance regression when loading downloads/uploads on startup
    • Fixed an issue where Nicotine+ connected to the server before UPnP port forwarding completed
    • Fixed a rare crash related to peer connections
    • Fixed a crash when an invalid debug log folder was set
    • Windows: Fixed a regression in scrolling and text rendering performance

    Issues closed on GitHub

    • Settings are reset to application defaults when a system crash occurs (#2147)
    • Critical Error (#2148)
    • 3.2.4 performs worse on Windows than previous stable version (3.2.2) (#2150)
    • Left unattended just crashed on win 11 beta slow ring (#2151)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.08 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.62 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.72 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.53 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(24.95 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(25.78 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.4(Aug 7, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Corrections

    • Fixed a regression where shared folders could not be added using the Preferences dialog
    • Fixed a performance regression when updating file transfer lists
    • Fixed a potential crash when displaying the estimated time of a very large download

    Issues closed on GitHub

    • File sharing error (#2142)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.06 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.51 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.65 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.44 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(24.87 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(25.69 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.3(Aug 5, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Changes

    • Optimized performance when many shared files and file transfers are present
    • Implemented mouse wheel scrolling on tabs to change the active page
    • Search results from ignored users are no longer shown
    • Added total file size and duration of selected files to the File Properties dialog
    • Added text-to-speech toggle buttons for individual private chats when TTS is enabled
    • Usability improvements to several main window components and dialogs
    • Reddit and Test Replier plugins are no longer included by default, moved to examplars on GitHub
    • Various translation updates (thanks to our many contributors on Weblate)

    Corrections

    • IMPORTANT: Fixed a CPU hogging issue when thousands of file transfers were present
    • Fixed issues where downloads failed if the path or file name was very long (thank you @AtticFinder65536)
    • Fixed an issue where folder downloads did not always save subfolders into the correct location
    • Fixed an issue where the estimated total time remaining for folder transfers was incorrect
    • Fixed an issue where clearing all file transfers did not remove transfers completely
    • Fixed a rare crash when downloading files onto certain (latin-1) filesystems
    • Fixed a discrepancy between the upload speed reported in outgoing search results compared to user info
    • Fixed an issue where dark mode was used when light mode was enabled on some systems
    • Unmaximized size of the main window is now remembered after the window is maximized
    • Reduced memory usage after closing search tabs with many results
    • Flatpak: network folders can now be shared
    • Various minor bug fixes

    Issues closed on GitHub

    • Forcibly re-queue uploads that stop due to an error such as "Can't connect" (#1563)
    • Support paths longer than 260 characters on Windows (#1728)
    • UnicodeEncodeError when downloading file (#1980)
    • Nicotine+ always on dark mode regardless of my settings (#1983)
    • High CPU Usage pegs a single core (#1998)
    • Weird behavior when I download a whole folder with multiple subdirectories (#2004)
    • Don't freeze/crash without xdg-open (#2005)
    • Unicode encode error (#2015)
    • Russian translation updated (#2016)
    • Time Left for folder and user same as for currently active file (#2018)
    • Time Left column regression (#2020)
    • Clear ALL downloads, Clear ALL uploads not working (#2023)
    • User note saves when pressing Cancel (#2036)
    • Please show completed transfer speeds in the upload tab. (#2082)
    • Column headings overlapping in the downloads tab (#2090)
    • Sort similar users by interest (#2096)
    • Change the cursor to a finger when it's over links (#2101)
    • [3.2.3.rc2] Critical error (UI window with bug report) (#2116)
    • Lists of shared files not human-readable (#2118)
    • [3.2.3.rc2] Exception thrown when highlighting several uploads & selecting "Clear" (#2124)
    Source code(tar.gz)
    Source code(zip)
    debian-package.zip(3.05 MB)
    debian-package.zip.sha256(84 bytes)
    macos-installer.zip(24.51 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.64 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.44 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(24.86 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(25.69 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.2(Mar 19, 2022)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Changes

    • Show file size in bytes in addition to factorized size in the File Properties dialog
    • Disallow setting listening ports below 1024, which is in the operating system privileged range
    • /exit /quit and /q commands respect the 'When closing Nicotine+' preference
    • Prevent visual lag in chats by displaying new messages in the GUI before writing them into the log file
    • Simplify the Public room feed layout and mention the actual room name in text-to-speech messages
    • Check whole words for username mentions in chat rooms to avoid raising notifications for subwords

    Corrections

    • IMPORTANT: Prevent random upload timeouts of large files if the remote user has a slow or limited download speed
    • Incomplete downloads are restarted if the file contents change on the uploader's end
    • Fixed a regression where users could not be added to private rooms
    • Fixed a regression where certain uploads could fail with a 'Cannot connect' status
    • Fixed an issue which prevented uploads slots from opening while a privileged transfer was in progress
    • Fixed a race condition where previously queued uploads were wrongly denied during rescan on startup
    • Fixed a rare issue where a download could restart endlessly if the file is unreadable on the uploader's end
    • Fixed a rare crash when loading stored downloads that contain erroneous filename data
    • Fixed broken folder structure when downloading folders containing multiple levels of subfolders
    • Fixed a crash loop if a text-to-speech message with an invalid syntax is set
    • Fixed an issue where ban messages could not be sent to a user with a banned IP address
    • Fixed an issue where folder names could not be copied with the Ctrl+C shortcut
    • Fixed a rare crash when changing the color of tab labels
    • Fixed the behaviour of auto-away messages which are now sent as often as required and displayed locally
    • Fixed an issue that prevented automatic column width sizing when double clicking column separators
    • Fixed the sort order of the Time Elapsed and Time Remaining columns in the Downloads and Uploads views

    Issues closed on GitHub

    • Chat mentions with 1 character username (#1790)
    • Sort order time elapsed is off for uploads over an hour (#1795)
    • Just crashed on windows insider 11 slow ring (#1875)
    • Translations Bug when Autoconnect is off (#1884)
    • Crash (Gtk tab color) (#1889)
    • Auto Size Column Does Not Fit Username, Folder or Filename (#1901)
    • Transfers Cancelling Randomly (#1911)
    • Nicotine+ doesn't open: Value: 'int' object has no attribute 'split' error (#1917)
    • Upload Slots Not Opening (#1933)
    • Departure during the copy action Nicotine+ 3.3.0.dev1 (#1938)
    • Note editing no longer opens by double-clicking? 3.3.0.dev1 (#1939)
    • Nicotine+ does not preserve the folder structure when downloading (#1940)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(29.03 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(24.71 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(25.46 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(24.03 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(24.80 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.1(Feb 10, 2022)

    WINDOWS USERS: The installer format has changed since Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Changes

    • Optimized overall performance and stability related to Soulseek server and peer connections
    • Optimized performance and improve robustness of the round robin queue system (thank you @toofar)
    • Optimized scrolling performance and avoid FPS drops when scrolling large lists containing country flags
    • Optimized parent row expansions when adding new search results and transfers into tree views
    • Optimized loading performance of downloads/uploads history and avoid unnecessary saving of transfer lists
    • Optimized loading performance and reduce memory usage of open chat tabs
    • Optimized connection initialization performance when uploading to certain users
    • Changed the chat log filename replacement character from - to _ in room names containing an illegal character
    • Changed display of items in the Uploads transfer list to virtual folder paths instead of local folder paths
    • Added display of local folder paths for local items in the File Properties dialog
    • Added direct folder and file browsing with slsk:// URLs in the Browse Shares text entry
    • Added new Ukrainian translation (thank you @uniss2209)
    • Lots of updates to the translations (thanks to our many contributors on Weblate)

    Corrections

    • CRITICAL: Fixed a crash vulnerability when receiving a download request with a malformed file path (affects version 3.0.3 and later)
    • IMPORTANT: Fixed an issue where uploads could become stuck in the transfer queue forever
    • IMPORTANT: Fixed an issue where language translations were not automatically applied on Windows and macOS
    • Fixed a regression where pausing a download doesn't actually pause it if translations are used
    • Fixed an issue where downloads failed to start if the temporary incomplete filename is more than 255 characters
    • Fixed an issue where paused downloads started downloading in a random order when resumed
    • Fixed a regression where the bandwidth status indicator failed to update if the transfers tab was inactive
    • Fixed broken scrollbar when changing active page in the Preferences dialog
    • Fixed labels of UI elements in the Russian translation (thank you @SnIPeRSnIPeR)

    Issues closed on GitHub

    • After using Clear on an uploaded item, it gets removed, but then returns (#1745)
    • Direct Connection Fails (#1748)
    • I cannot see my profile info and picture like I am able to on other user's profiles (#1751)
    • All file paths are reversed (e.g. /home/foo/Downloads -> /Downloads/foo/home/) (#1759)
    • Logs mention "privileged" users not "prioritized" users (#1764)
    • Add an option to print full paths relatively to their share (#1775)
    • Can't connect to soulseek network - specified ports unusable (Windows 11) (#1778)
    • Windows 11: [3.1.1] Just crashed on Win 11 insider ring (#1777)
    • [3.2.0.dev1] Unknown config option 'show_private_results' (#1779)
    • [3.2.1.dev1] Crash on adding user to buddy list (#1792)
    • Windows/macOS: Can't change language in app (#1796)
    • [3.2.1.dev1] Occasional crash (#1798)
    • [3.2.1.dev1] Country_Code related Critical Error since update to Mint 20.3 (#1806)
    • Increase network speed update time (#1817)
    • [3.2.1.dev1] GTK 4: Closing private chat tab can crash Nicotine+ (#1821
    • When a filename is 255 characters long (#1825)
    • Excessive memory usage when browsing large shares (#1826)
    • Windows: Couldn't write to log file "/mu/.log" (#1828)
    • Windows: "String too long" crash on notification popup (#1829)
    • Windows: Spaces at the end of directories are trimmed when creating (#1835)
    • Connect to remote host? (#1839)
    • Error message appeard while trying to exit the client (#1850)
    • [3.2.1.rc2] Crash when resuming transfers (#1853)
    • Way to handle lots of small files on your upload queue (#1865)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(29.11 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(24.66 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(25.42 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(23.97 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(24.74 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.2.0(Dec 18, 2021)

    WINDOWS USERS: The installer format has changed in Nicotine+ 3.2.0. If you are upgrading from Nicotine+ 3.1.1 or earlier, please uninstall Nicotine+ first (this will not remove your existing settings).

    Changes

    • Performance improvements across the entire application, including file searching, transfers, user shares and chats
    • Accessibility improvements to various components, including result filters, browse shares, wishlist and chat rooms
    • Several new keyboard shortcuts for easier navigation, a list of shortcuts can be viewed by pressing the F1 key
    • User interface improvements, including several clean-ups related to core client functions and preferences
    • Added an emoji picker in chat text entry
    • Added an option to disable search history
    • Increased the number of search history items from 15 to 200
    • Double-clicking a folder in search results now downloads the folder
    • Moved main tab visibility settings to "User Interface" category in preferences dialog
    • Moved log category options to right-click menu in log history pane
    • The 'When closing Nicotine+' preference now also applies when pressing Ctrl+Q
    • Improved terminology used for various client functions, including clearer output of the status bar and log history
    • Removed a few outdated and obsolete preferences
    • Removed the option to automatically share completed downloads, convert to standard shared folder
    • The Leech Detector plugin now sends the polite message after a leecher's first download has finished
    • New and improved translations for many languages
    • Lowered Python version requirement to 3.5 for Debian Stretch LTS based distros

    Corrections

    • Several stability improvements related to file scanning
    • Fixed issues where UPnP did not work with certain routers
    • Fixed an issue where the password could not be changed while logged out
    • Fixed an issue where inaccurate bitrates and durations were reported for certain files after scanning shares
    • Fixed a critical error when hiding the "Chat Rooms" tab
    • Fixed an issue where column header menus did not work in older GTK versions
    • Fixed an issue where column widths would not be remembered if multiple tabs were open
    • Fixed critical errors when quitting Nicotine+ in certain cases
    • Fixed a critical error when receiving invalid search results
    • Fixed an issue where uploads could not be manually resumed after a connection error
    • Fixed an issue where certain special characters were not removed from search terms
    • Fixed an issue where taskbar notifications were not cleared in older GTK versions
    • Fixed an issue where transfer statistics did not update properly
    • Fixed an issue where the tray icon did not appear in LXDE
    • Fixed an issue where tab notification highlights were removed too early
    • Fixed an issue where fetching data from Last.fm was unsuccessful in certain cases
    • Fixed an issue where the scrollbar could not be dragged from the edge of the window in the Breeze theme
    • Fixed an issue where the preferences dialog was too large on small screen resolutions
    • Network interface binding can now be used on systems with Linux <5.7 kernel
    • Debian: the stable PPA is compatible with Debian again
    • macOS: fixed an issue where the main window did not render in macOS Monterey
    • Windows: improved compatibility with Windows 11
    • Windows: reduced the number of false antivirus positives

    Issues closed on GitHub

    • It's possible to open more than one instance of Nicotine+ (#1418)
    • Nicotine+ database needs recovery (#1467)
    • Feature request: Option to not remember search history (#1468)
    • Double-click on search result to start download (#1469)
    • Consider bumping listen socket backlog length (#1471)
    • Generate releases hashes? (#1473)
    • Mac Intel El Capitan 10.11.6 (#1474)
    • Raspbian support (#1476)
    • The Nicotine+ project's title summary contains superfluous text about the function of the client (#1481)
    • Catch-22 regarding password (#1483)
    • Pressing Ctrl+? does not open the Keyboard Shortcuts window as expected (#1484)
    • Tabs cannot be navigated without using mouse (accessibility) (#1485)
    • It reads "(privileged)" in the size column of an upload transfer, but I've not privileged anybody, why? (#1487)
    • Is Python version of >=3.6 really needed as a Build-Depends parameter? (#1488)
    • Implement Ctrl-C text copying for selected elements in treeview (#1490)
    • GtkTreeView column header context menus are out-of-context on MX Linux Continuum 18.3 (#1492)
    • Search Scope button pop-up menu items positioned above top of screen (Linux) (#1495)
    • Filter bar layout issues (Result Filters) (#1497)
    • Text Entry should validate and execute upon input when focus moves away (Result Filters) (#1498)
    • Text Entry should respond to a zero-length string created by any keypress event to force clear the filter (Result Filters) (#1499)
    • Fix missing Alt+R accelerator for Result Filter bar show/hide button in Search Files (#1500)
    • Redundent Find pop-up TextBox in Search Files TreeView widget hinders Ctrl+F so it needs to be disabled (#1501)
    • Primary Tab Bar fails to surrender focus after second mouse-click (Main Window) (#1502)
    • Put the options for Tab Label Colors into the Tab section (Preferences) (#1505)
    • Scrap the redundant 'Clear All Colors' button from User Interface catagory (Preferences) (#1506)
    • General captions of General sections generally conflict with General category name, in general (Preferences) (#1507)
    • Dialog box drawn larger than small screen size makes OK and Apply buttons invisible (Preferences) (#1508)
    • Remove Alt+F accelerator from Clear Finished button in Downloads and Uploads (Transfers) (#1510)
    • Set default focus to the Username text entry box if there are no secondary tabs (User Browse, Info, Private Chat) (#1511)
    • Chat view context-menu Copy has no function when nothing is selected (Chat) (#1512)
    • Ctrl+F should open Find bar while chat text entry box has focus (Chat) (#1513)
    • Alt+M for Send _Message conflicts with native _Mode menu in User Info (#1515)
    • Alt+S for Free _Slot conflicts with native _Shares menu in Search Files (Filters) (#1516)
    • Ability to scroll when you push the mouse to the rightmost edge of the screen (last pixel). (#1517)
    • Swapping between gdbm/semidbm causes Serious [Errno 20] corrupted database error unhandled (#1519)
    • Edit debug error string: "Shared files database index seems to be corrupted, rescan your shares" (add 'index') (#1520)
    • Add entry to local debug log to identify Nicotine+ version and exact Python version being used at runtime (#1521)
    • Show Similar Users button disappears off window edge due to widget alignment issues (Interests tab) (#1523)
    • Nicotine crashes upon quitting (#1525)
    • Plugin System Expansion (#1542)
    • Notification badge cleared too early (#1543)
    • Feature Request: Upload tab when someone uploads from you (#1544)
    • Gtk 3 Bug: MacOS gtk_widget gdk_window (#1545)
    • Search issue (#1547)
    • Bug: 3.2.0 dev Arch Linux Error loading plugin libhunspell and libaspell (#1548)
    • Arch Linux GTK 4.4.0 crashes upon quitting if double login (#1552)
    • Arch Linux GTK 4.4.0 Allocation width too small needs at least 31x25 (#1553)
    • Moving mouse over the dragging-point of a column/frame doesnt change the mouse pointer (#1561)
    • [3.2.0.dev1] Always crash on leave Public room feed tab close (Chat Rooms) (#1562)
    • Uploads with special characters in path cancelled (#1564)
    • UPnP doesn't work (#1566)
    • Crash Report on Windows 10: 'Box' object has no attribute 'add_action' (#1569)
    • Critical Error that I'm getting after updating (#1572)
    • Still Critical Error (#1573)
    • lastfm: Could not get recent track from audioscrobbler (#1574)
    • Critical error after closing search tab (#1575)
    • UPnP stopped working with current unstable build (#1580)
    • Trigger Browse Files once when online for Buddy List (#1583)
    • Wishlist (#1591)
    • Remove - hyphen (#1592)
    • Failed to execute script nictoine win 10 (#1597)
    • Wishlist quick search (#1599)
    • Wishlist hot key (#1600)
    • Filters button (#1601)
    • Pressing enter in the wishlist when the line is empty (#1603)
    • Keeps telling me my database is corrupt (#1620)
    • I do not know if it's bug or not (#1623)
    • Serious error occurred while rescanning shares (#1625)
    • No idea, that's what I saw, when I came back (#1626)
    • Wrong password results in lockdown (#1627)
    • Cannot find gdbm or semidm on openbsd (#1631)
    • Critical Error on Launch (#1633)
    • Pop up about translated languages (#1635)
    • Nicotine+ has encountered a critical error (#1636)
    • Logs reporting 0 folders found after rescan (#1642)
    • Crashed on expanding folder (#1643)
    • Remove wish not possible when search contains parens (#1652)
    • Critical Error (#1654)
    • Leech Detector not working??!! (#1656)
    • Nicotine+ not working with latest MacOS Monteray (#1660)
    • [3.2.0.dev1] Critical error on popover context menu when disconnected (#1662)
    • Nicotine Critical Error Operation not permitted (#1663)
    • [3.2.0.dev1] Nicotine+ x64 fails to launch with "Failed to execute script nicotine" error (#1665)
    • Nicotine+ has encountered a critical error (#1666)
    • Critical Error "Value: 'Box' object has no attribute 'add_action'" (#1670)
    • Bug with user status (#1680)
    • Critical Error: Value: 'NoneType' object has no attribute 'get_hilite_image' (#1682)
    • Having several issues getting all my files to share, or share correctly (#1686)
    • Crash on Ctrl+W in Search tab (#1692)
    • Move to Tray on Exit (#1694)
    • OSError on Manjaro Linux (#1703)
    • Conform to Windows window-arrangement hotkeys (#1704)
    • Cannot Use App or See App Window (MacOS Monterey) (#1709)
    • Crash report on "About Nicotine+" (#1715)
    • 3.2.0.rc2 64-bit portable won't launch (Windows) (#1724)
    • Clicking in a result filter field scrolls the results list to the top (#1732)
    • Result filter fields cause results list to require an extra click (#1733)
    • UI hangs for seconds at a time in the Search Files view (#1734)
    • Scrolling on a Preferences field changes the field's value (#1735)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(29.74 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(25.70 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(26.45 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(25.07 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(25.83 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.1.1(Aug 2, 2021)

    Changes

    • Downloads denied with 'Too many files' or 'Too many megabytes' are now re-queued every 12 minutes
    • Leech detector plugin opens private chat user tabs by default when sending complaints

    Corrections

    • IMPORTANT: Fixed an issue where recently queued files were uploaded before older files (LIFO queue behavior)
    • Fixed a crash when attempting to search files in joined rooms
    • Queue positions are now properly updated for queued uploads
    • Certain special characters needed to receive proper search results are no longer removed from search terms
    • Fixed an issue where decimals were truncated before being saved (e.g. in the 'Anti SHOUT' plugin)
    • Fixed an issue where an incorrect user tab was opened when issuing the /msg command

    Issues closed on GitHub

    • non US locale float type variables in plugins cannot be filled (#1462)
    • Files uploaded in a random order (#1463)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.30 MB)
    macos-installer.zip.sha256(85 bytes)
    windows-i686-installer.zip(23.83 MB)
    windows-i686-installer.zip.sha256(92 bytes)
    windows-i686-package.zip(24.11 MB)
    windows-i686-package.zip.sha256(90 bytes)
    windows-x86_64-installer.zip(23.36 MB)
    windows-x86_64-installer.zip.sha256(94 bytes)
    windows-x86_64-package.zip(23.64 MB)
    windows-x86_64-package.zip.sha256(92 bytes)
  • 3.1.0(Jul 23, 2021)

    Changes

    • Added alternative transfer speed limits for downloads and uploads, toggleable with a quick access button in the status bar
    • Added an option to save downloads to subfolders based on the uploader's username
    • Added a dropdown menu in file transfer views to clear various types of file transfers from the list
    • Added an option to disable reverse file paths in search results and file transfer views
    • Added an option to show private/locked search results and shared files from SoulseekQt clients
    • Added an option to only allow trusted buddies to access buddy shares
    • Added a context menu item in file transfer views to browse folders of file transfers, similar to search results
    • Added checkboxes to 'Shares' preferences to easily specify whether a shared folder should be buddy-only or not
    • Added a menu item to quickly toggle dark mode/theme, available under Menu -> View -> Prefer Dark Mode
    • Added debug logging categories for downloads, uploads and chats
    • Improved GUI accessibility for blind users using screen readers
    • Finished downloads are no longer cleared on disconnect/exit
    • Finished uploads are now restored on startup, unless previously cleared
    • Spam filter plugin now filters phrases in chat rooms in addition to private chats
    • Command aliases can now run chat commands, e.g. '/alias hello /away' will create a '/hello' command that runs '/away'
    • Unified preferences related to the GUI, such as colors, icons and tabs, under a single 'User Interface' page
    • A single preference now controls the maximum number of visible search results, instead of two separate preferences
    • Added a basic 'headless' mode to run Nicotine+ without a GUI, available through the --headless command line flag
    • Added the ability to start multiple instances of Nicotine+ when a custom config file is specified with the --config command line flag
    • Added the option to specify a custom user data folder location (used for storing e.g. the list of shared files) with the --user-data command line flag
    • Added plugin notifications for started/finished transfers
    • Various deprecations related to plugins, listed in pluginsystem.py and logged on startup
    • Various performance improvements
    • macOS: minor UX improvements to better align with macOS conventions
    • GNU/Linux and macOS: added an option to enforce a specific network interface, useful for virtual private networks (VPN)
    • Removed 'direct private message' toggle, since the official Soulseek clients do not understand such messages
    • Removed option to rotate tab labels, due to various issues with its implementation
    • Removed support for Ubuntu 16.04 and Python 3.5

    Corrections

    • Fixed an issue where file transfers did not reach maximum speeds on slow connections
    • Fixed an issue where incorrect upload speeds were sent to the server
    • Fixed an issue where failed downloads were marked as finished in cases where the download folder is not accessible
    • Fixed an issue where double-clicking treeview column headers activated the first row
    • Fixed an issue where the 'unread tabs' menu caused a crash if tabs were closed
    • Fixed an issue where adding finished downloads to shared files could result in a crash
    • Fixed an issue where searching a user's share could result in a crash after a refresh
    • Fixed a crash when attempting to show file properties for a user/folder row
    • Fixed various UPnP port forwarding issues with certain routers
    • Added a workaround for cases where Soulseek NS clients send incorrect file sizes for large files
    • Various GUI-related changes and improvements to reduce the number of inconsistencies
    • macOS: keyboard shortcuts now use the Command key instead of Ctrl
    • Windows: improvements to notifications to prevent duplicate tray icons
    • Windows: fixed an issue where closed windows would appear in window peek
    • Windows: fixed an issue where minimized windows were not displayed when restoring Nicotine+ from tray

    Issues closed on GitHub

    • Is there a way to exclude a file/directory from a share? + Some feedback (#924)
    • Feature Request: Improve folder folding behavior + Add Collapse/Expand All (#981)
    • Suggestion: Room wall improvements (#985)
    • Practical: change share from public to buddy and vice versa. (#991)
    • Version 3.0.1 and 3.0.2's Nicotine+.exe detected as a virus by Malwarebytes (#1012)
    • Quicker access to speed throttling? (#1031)
    • Copy/Paste keyboard shortcuts broken on Mac (#1342)
    • Don't automatically clear downloads/uploads on quit (#1343)
    • Notifications tray icons aren't removed automatically (#1354)
    • Download to a *username* / subfolder (#1355)
    • Drop official support for Ubuntu 16.04 (#1360)
    • Headless support (#1362)
    • Support for macOS High Sierra (#1366)
    • Prevent Downloads from Displaying in the Debug Logging Window (#1371)
    • Malware detection (#1373)
    • Minimized window app won't show up when called from the system tray (#1374)
    • Change close button position on macOS (#1376)
    • Change menu action on macOS (#1377)
    • Limit Buddy Shares to Trusted Buddies (#1382)
    • Critical errors (#1383)
    • Option to disable popup (#1386)
    • Prevent notification balloon crashes on 32-bit Windows (#1393)
    • ", line 127 (#1395)
    • Auto-Size Columns Opens File in Player (#1396)
    • Window Preview Shows Preferences Window (#1397)
    • Crash report (#1398)
    • Windows Defender / Trojan:Win32/Zpevdo.B ...False Positive? (#1401)
    • Nicotine+ encountered a critical error and needs to exit (#1402)
    • Middle-clicking user/share/room does not close it anymore (#1404)
    • problem with access to some users. (#1405)
    • Critical Error on master (#1406)
    • Config error: can't decode 'searches' section 'group_searches' value (#1407)
    • Transfer lists are cleared upon disconnection (#1409)
    • Wishlists aren't being searched (#1410)
    • Every downloaded file remains as "INCOMPLETE[number]Filename" (#1411)
    • Exclamation point in the chat tab bar i have not seen before (#1413)
    • Tried unpacking zip, scanner shows Gen:Variant.Bulz.495404 (#1414)
    • Crash on getting File Properties at user or directory entry level in Download tab (#1415)
    • in Download tab, the Queue Position column is empty (#1416)
    • Windows Defender quarantined nicotine+ because of "Trojan:Win32/Zpevdo.B" (#1417)
    • Tabs go out off the screen where there are many, they should use several lines instead. (#1420)
    • Search main tab: wish tabs always extra. (#1422)
    • Can't click anything when in fullscreen (#1423)
    • 'GeoIP' object has no attribute 'get_all' (#1426)
    • Finished Downloads Autoclearing (#1427)
    • 'NetworkFrame' object has no attribute 'InterfaceRow' (#1430)
    • Browse Folder via Downloads tab (#1432)
    • Leech detector logs not showing up (#1433)
    • Crash when adding to buddy list from User info tab (#1434)
    • How to access option to close only window (keep sharing files)? (#1435)
    • error (#1436)
    • DownloadQueuedNotification on end of downloaded file (#1438)
    • Shift + Mouse wheel a fall (#1440)
    • Convert organization URL to lowercase (#1441)
    • random crash? (#1442)
    • Crash when closing private Chat tab (#1445)
    • Critical error upon attempted chat (#1446)
    • Incorrectly reported upload speed (#1449)
    • UPnP does not work on this network (Windows) (#1453)
    • select ValueError: too many file descriptors in select() (Windows) (#1456)
    • UPnP not working (#1457)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.29 MB)
    windows-i686-installer.zip(23.83 MB)
    windows-i686-package.zip(24.11 MB)
    windows-x86_64-installer.zip(23.36 MB)
    windows-x86_64-package.zip(23.63 MB)
  • 3.0.6(Apr 30, 2021)

    Changes

    • The message sent to users attempting to access geo-blocked content can now be customized

    Corrections

    • Fixed a few critical errors related to uploads and file selections
    • Chat search commands and the /ctcpversion command now work properly
    • Fixed Python 3.5 compatibility
    • Windows: fixed an issue where duplicate notification icons would appear in the tray

    Issues closed on GitHub

    • Geoblock Options (#1028)
    • Notifications tray icons aren't removed automatically (#1354)
    • critical error (#1356)
    • Frequent crashes in 3.0.5 (#1357)
    • Unable to search chat room (#1359)
    • Critical error (#1361)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.94 MB)
    windows-i686-installer.zip(24.39 MB)
    windows-i686-package.zip(24.67 MB)
    windows-x86_64-installer.zip(23.93 MB)
    windows-x86_64-package.zip(24.20 MB)
  • 3.0.5(Apr 24, 2021)

    Changes

    • Replaced previous country flag icons with clearer ones
    • Improved performance when selecting a large number of transfers
    • Queue positions and failed downloads are now checked every three minutes instead of every minute, to reduce stress on the uploading user
    • Performance improvements for long buddy lists
    • Added a dropdown menu button in tab bars for unread notifications

    Corrections

    • Custom media player and file manager commands no longer reset after a restart
    • Fixed an issue where scanning of shared files malfunctioned if the UI didn't load in time
    • Fixed a critical error when a new room was joined while country flags were disabled
    • Fixed a critical error when attempting to add wishlist items while disconnected from the server
    • Fixed a critical error when attempting to use the /rescan chat command
    • Fixed a rare case where Nicotine+ could crash on startup
    • 'Send to Player' for files downloaded to a custom folder no longer fails
    • Private room operators are once again able to add users to the room
    • When browsing your own shares, viewing recently shared downloads no longer requires a restart
    • Attempting to download files of disconnected users now displays the 'User logged off' status immediately
    • Column widths of the currently selected user browse tab are now saved
    • Unified chat completion behavior of chat rooms and private chats
    • UI customizations are once again applied to the preferences dialog
    • Corrected the behavior of 'Abort User's Uploads' button in the uploads view
    • Text-To-Speech messages no longer overlap each other
    • Minor behavioral corrections related to file transfers

    Issues closed on GitHub

    • Download Folder function doesn't work from search when uploader is offline (#511)
    • nicotine crash, (#1040)
    • Crash on startup (#1041)
    • Replace usage of Gtk.Menu with Gio.Menu (#1045)
    • critical error when exit user browse tab (#1192)
    • Version 3.0.4 flagged by Windows Defender (#1329)
    • critical error crash (#1333)
    • File Manager and Media Player events are buggy (#1335)
    • Filtering on file type causes crash (#1337)
    • The shared folders are not shared anymore (#1338)
    • Pausing a download (#1339)
    • copy search team Bug (#1348)
    • Can't save files.db: [Errno 13] (#1352)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.94 MB)
    windows-i686-installer.zip(24.21 MB)
    windows-i686-package.zip(24.49 MB)
    windows-x86_64-installer.zip(23.75 MB)
    windows-x86_64-package.zip(24.02 MB)
  • 3.0.4(Apr 7, 2021)

    Corrections

    • Invalid file names no longer break scanning of shared folders
    • Configuration changes are now saved if Nicotine+ is terminated (SIGTERM)
    • Fixed a case where the upload status displayed 'User logged off' after the user reconnected
    • Action buttons in the file properties dialog now stick to the bottom as intended
    • Windows: Nicotine+ no longer crashes on startup when translations are used

    Issues closed on GitHub

    • Critical UnicodeDecodeError on startup: 'utf-8' codec can't decode byte 0x92 in position 12: invalid start byte (#1038)
    • You have no privileges left. They are not necessary, but allow your downloads to be queued ahead of non-privileged users. [Question] (#1039)
    • line 642 (#1042)
    • 'utf-8' codec can't encode characters(surrogates not allowed) (#1043)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(23.18 MB)
    windows-i686-installer.zip(24.52 MB)
    windows-i686-package.zip(24.80 MB)
    windows-x86_64-installer.zip(24.06 MB)
    windows-x86_64-package.zip(24.34 MB)
  • 3.0.3(Mar 31, 2021)

    Changes

    • Refactored download queuing to use the same system as the official client
    • Improved reliability and performance of the upload queue
    • Added a popup that appears whenever a critial error occurs in the program

    Corrections

    • Nicotine+ now starts properly when invalid download filters are detected
    • The configuration file no longer resets when running out of disk space
    • Improved reliability of downloading folders containing special characters from certain clients
    • Keyboard shortcuts are now functional on non-Latin keyboard layouts
    • Upload bandwidth limits are no longer incorrectly applied when upload slots limits are enabled
    • Reaching a specified upload speed limit no longer interferes with max bandwidth/upload slot limits
    • Illegal file path characters are now replaced before downloading a file, to prevent issues with FAT/NTFS drives on Unix-based systems
    • Directly searching a user's files now functions properly
    • In predefined search filters, the state of the 'Free Slots' filter is now saved properly
    • If user browse/info tabs were closed, they no longer reopen when loading new information
    • Fixed a few behavioral issues related to chat notifications
    • Fixed issues related to incorrect user statuses being displayed in some cases
    • The correct status color is now displayed for usernames in past private chat messages
    • Leaving the public room is possible once again
    • Avoid unnecessary network traffic related to number of shared folders and files
    • Reduced memory usage on Windows and macOS

    Issues closed on GitHub

    • Version 3.0.1 and 3.0.2's Nicotine+.exe detected as a virus by Malwarebytes (#1012)
    • Username Wrong Color in Chat (#1013)
    • free slot setup (#1014)
    • 'invalid operation on closed shelf' while rescaning shares (#1016)
    • Complete file remains in Incomplete Downloads folder (#1019)
    • User's shared file list cannot be saved to disk, due to a mismatch in the number of arguments on function call. (#1024)
    • Deprecated messages related to privileges? (#1025)
    • line 716 (#1026)
    • line 707 (#1029)
    • line 666, (#1030)
    • Problems with new interface in 3.0 (#1033)
    • line 642 (#1037)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(23.18 MB)
    windows-i686-installer.zip(24.52 MB)
    windows-i686-package.zip(24.80 MB)
    windows-x86_64-installer.zip(24.05 MB)
    windows-x86_64-package.zip(24.33 MB)
  • 3.0.2(Feb 28, 2021)

    Corrections

    • Fixed a regression where users could not be added to the buddy list
    • Fixed an issue where file extension info could appear incorrectly in the transfer list
    • Fixed an issue where root directories were not shared properly

    Issues closed on GitHub

    • Cannot Add Users to Buddy List (#1011)

    Revision on March 2, 2021:

    • Replaced the previous Windows packages to reduce the number of false malware detections
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.41 MB)
    windows-i686-installer.zip(24.43 MB)
    windows-i686-package.zip(24.72 MB)
    windows-x86_64-installer.zip(19.93 MB)
    windows-x86_64-package.zip(20.12 MB)
  • 3.0.1(Feb 27, 2021)

    Changes

    • Improved UI performance when loading many search results
    • Main menu can now be opened using the F10 key
    • The list of keyboard shortcuts can now be opened using Ctrl+?
    • Away status is now remembered between sessions

    Corrections

    • Fixed several issues causing the status of an upload to be stuck if the user logged out
    • Fixed a few chat room commands that did not work previously
    • Fixed an issue where country flags were missing for some users that rejoined a room
    • Several improvements and bug fixes to the plugin system
    • Flatpak: added support for MPRIS in the Now Playing-feature
    • Windows: fixed an issue where root directories could not be shared
    • macOS: fixed an issue where Nicotine+ would crash on startup on some systems

    Issues closed on GitHub

    • New installation in Big Sur. Doesn't scan shared folders. (#899)
    • Download speed after restart (#918)
    • Pluginsystem related issues, views and ideas [Updated] (#990)
    • [Windows] Certifi not installed (#996)
    • Enable CTCP-like private message responses (client version) Bool (#998)
    • Sharing a whole hard disk drive content doesn't work (#999)
    • CTCP_VERSION broke (#1001)
    • v3.0 not starting on macos big sur 11.2.1 (#1002)
    • Make opening of Window's file manager (File Explorer) more generic (#1004)
    • missing python req in setup.py (#1006)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.41 MB)
    windows-i686-installer.zip(24.43 MB)
    windows-i686-package.zip(24.72 MB)
    windows-x86_64-installer.zip(19.93 MB)
    windows-x86_64-package.zip(20.12 MB)
  • 3.0.0(Feb 11, 2021)

    Changes

    • Introduced a new design utilizing header bars (to use the old design, uncheck Menu -> View -> Use Header Bar)
    • Improved UI responsiveness when scanning shares
    • Improved UI performance when multiple tabs are open
    • Added transfer statitics dialog
    • Added help window for keyboard shortcuts
    • Added an option to set a global font
    • Added support for text completion when typing in the search entry
    • Added a "Browse Folder" option for search results
    • Search results can now be filtered by file type
    • Added an option to clear search and filter history
    • Columns can now be reordered by dragging them to the desired location
    • Context menus for tabs now include an option to close all tabs
    • Added context menu items for viewing and deleting logs (chatrooms, private chat, log pane)
    • Added a keyboard shortcut to close tabs (Ctrl+W / Alt+F4)
    • Context menus can now be opened by long-pressing on a touch screen
    • Context menus can now be opened with the keyboard (Menu Key / Shift+F10)
    • The number of selected files is now visible in context menus
    • Added an option to copy the file path of a selected file using Ctrl+C
    • Added file properties dialog for user browse
    • Improved the default color scheme
    • Several other minor improvements

    Corrections

    • Fixed an issue where upload speed limits were not applied on startup
    • Fixed an issue where UPnP portforwarding did not succeed with certain routers
    • Fixed an issue where enabling the geographical paranoia option would prevent search results from being delivered to others
    • Fixed issues where certain uploads would be stuck in a "Cancelled" state
    • Fixed a Windows-specific issue where the config file did not always save
    • Fixed an macOS-specific issue where opening a folder did not work
    • Fixed an issue where custom commands registered in plugins did not work
    • Several other minor corrections

    Issues closed on GitHub

    • Nicotine will not login to server (#904)
    • File not shared ! (#905)
    • Backup of the slide position in the user browse tab (#908)
    • Save share list to disk => user tab (#909)
    • Double-clicking on shares (#917)
    • Fix viewing of shared files (#919)
    • WinError 3, "the system cannot find the path specified" (#920)
    • Replace usage of GtkComboBox with GtkComboBoxText (#921)
    • nicotine-plus.org certificate expired (#922)
    • Cyrillic characters don't display correctly in chat rooms (Unicode issue?) (#925)
    • Log windows scroll back to begin after any new entry. (#926)
    • Config resetting when quitting and opening again (#934)
    • nicotine.po (#936)
    • Bug: Browsing your own shares with "Share only to buddies" enabled isn't possible via User browse (#940)
    • Bug: Displayed shared files count in Chat rooms / User info inconsistent (#941)
    • Feature Request: Clear filters button (#944)
    • Feature Request: Allow regular expressions in Country field of Search Filters (#946)
    • Config Bug: WinError 32 + WinError 2: Can't rename config file, error & The system cannot find the file specified (#949)
    • Feature Request: Clear Search Result Filter History (#950)
    • Feature Request: A method to quit via Tray Icon (#951)
    • Windows Bug: Can't bring Nicotine+ to the foreground if one of its popup windows are open (#953)
    • Windows Bug: Preferences popup window is slow to open on occasion (#954)
    • Now Playing (#957)
    • Filtering by "10m" gives files >=10MiB, but filtering "10MiB" gives files >=9.54MiB (#961)
    • Setting Plugin /commands (#962)
    • Feature Request: Search Wishlist: Change "Select All" Button to "Clear All" (#963)
    • Feature Request: Indication that a search tab was opened automatically by the wishlist (#964)
    • Feature Request: Option to choose the search result filter's tab bar position (#965)
    • Bug: Clearing all active filters requires double-Enter for next filter attempt (#966)
    • MacOS 11.1 Open folder fails (#970)
    • MacOS 11.1, open folder opens the wrong directory (#971)
    • MacOS 11.1, wrong flag in buddy list (#972)
    • New bundled UPnP is not working (#973)
    • Replace GtkFileChooserButton with a custom button widget (#975)
    • Windows: Toggle show / minimize app on taskbar icon click (#976)
    • Feature Request: Enable tooltips for long strings that are cut off by another column (#977)
    • What is causing the log "Filtered out inexact or incorrect search result ... from user X"? (#979)
    • Bug: Private chat tabs closed/discarded without manually doing so (#983)
    • Bug: Unable to reliably close search tabs via middle mouse button click (#984)
    • Feature Request: Log Viewer / Context menu items to browse logs in system text editor (#986)
    • Failure to report buddy shares (#988)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.40 MB)
    windows-i686-installer.zip(24.50 MB)
    windows-i686-package.zip(24.79 MB)
    windows-x86_64-installer.zip(20.20 MB)
    windows-x86_64-package.zip(20.39 MB)
  • 2.2.1(Dec 14, 2020)

    Changes

    • Fixed an issue where the file scanner wouldn't scan a folder completely if a hidden subfolder was detected
    • Fixed an issue where invalid audio metadata in shared files could cause stability issues while running Nicotine+
    • Fixed a crash when trying to start Nicotine+ on a non-English Windows system
    • Fixed an issue where a "File not shared" status was sent when attempting to upload certain files
    • Geo block feature is functional again
    • Translations for the menu bar now show up in the UI again

    Issues closed on GitHub

    • No icons in FreeBSD (#889)
    • GeoBlock Not Blocking (#891)
    • Nicotine v2.2.0 immediately crashes on startup on Windows 10 v19042.630 (#893)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(26.91 MB)
    windows-i686-installer.zip(29.86 MB)
    windows-i686-package.zip(30.30 MB)
    windows-x86_64-installer.zip(25.62 MB)
    windows-x86_64-package.zip(26.54 MB)
  • 2.2.0(Dec 4, 2020)

    Changes

    • Modernized the default icon theme and several parts of the UI
    • Searching for file names containing special characters returns more search results than previously
    • Reduced the number of connectivity issues when transferring files from and to other users
    • Downloading folders recursively works properly again
    • Updated keyboard shortcuts, since the old ones conflicted with accelerator keys
    • Tray icons are properly detected in more cases
    • User browse and user info tabs now open immediately when requesting info for users
    • Show info message if user shares can't be loaded
    • Minor performance improvements when uploading a lot of files
    • Slightly improved startup times
    • Improved UI responsiveness when browsing your own shares
    • Added option to minimize Nicotine+ to tray on startup
    • Added "Now Playing Search" plugin for searching files based on data from songs playing in your media player
    • Added "Now Playing Sender" plugin for automatically sending names of songs playing to select chat rooms
    • Builtin plugins load properly on Windows again
    • Modified config backup behavior to not back up the config if "Cancel" is pressed in the file chooser
    • Shares lists saved in older versions of Nicotine+ can now be loaded again
    • Peer-to-peer (direct) private messaging works properly again
    • Fixed a crash when checking for stuck downloads (regression in Nicotine+ 2.1.2)
    • General usability improvements to macOS builds
    • Removed option to stop responding to search requests for certain time periods
    • Removed dbus-python, libnotify, miniupnpc, pytaglib and xdg-utils dependencies, as functionality is now handled by Nicotine+
    • Multiple under-the-hood code improvements and code style changes, as well as smaller bug fixes

    Issues closed on GitHub

    • Brew OSX Install (#58)
    • a separate program for database scanning (#443)
    • Failed to map the external WAN port: Invalid Args (#597)
    • After requesting user info put that user's info tab on top. (#651)
    • Feature request: share and/or cache message connections to remote clients (#663)
    • Search Now playing (#664)
    • Compile pytaglib for Python 2 or 3? - Error Trying To Run 2.1.1 (#726)
    • Follow X Session Management Protocol (#729)
    • sometimes, nicotine eats all memory (#750)
    • provided extentions doesn't load (#761)
    • Enabled plugins are no more activated at startup (#762)
    • Plugin properties aren't editable (#763)
    • some users aren't browsable (#766)
    • tray icon problem (#767)
    • Connection issue (#768)
    • Uploads Cancelled (#784)
    • Download recursive (#790)
    • not sure if this is a bug or something else (#791)
    • Can't scan any songs (#798)
    • Search problem? (#822)
    • windows unstable build can't rebuild shares (#829)
    • Nicotine 2.1.2 fails to launch in FreeBSD due to missing pytaglib (#843)
    • Download Recursive (#844)
    • Option to start application hidden when tray icon enabled (#864)
    • Missing application icon from window list (#879)
    • Python 3.8 Crashes (#882)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(26.92 MB)
    windows-i686-installer.zip(29.77 MB)
    windows-i686-package.zip(30.21 MB)
    windows-x86_64-installer.zip(25.71 MB)
    windows-x86_64-package.zip(26.64 MB)
  • 2.1.2(Oct 12, 2020)

    Version 2.1.2 (12 October 2020)

    Changes

    • Contents of a shared folder are now properly sent to other users
    • Improved performance and memory usage when scanning shares
    • Large memory usage reductions when many rooms and private chats are open
    • Sharing downloaded files now works properly
    • Private messages sent while the user was offline are shown separately from new messages
    • Added transfer speeds and shortcuts to downloads/uploads in the tray
    • Multiple under-the-hood code improvements and code style changes

    Issues closed on GitHub

    • Improve code style/consistency (#377)
    • debian packages (#530)
    • running from source - missing reqs (#531)
    • SIGABRT when scanning corrupt/empty FLAC file (#730)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(26.88 MB)
    windows-i686-installer.zip(30.21 MB)
    windows-i686-package.zip(30.55 MB)
    windows-x86_64-installer.zip(25.74 MB)
    windows-x86_64-package.zip(26.00 MB)
  • 2.1.1(Sep 27, 2020)

    Version 2.1.1 (26 September 2020)

    Changes

    • Improved speed limit calculations for file transfers
    • Added option to enable dark mode theme
    • Added option to copy a previous search term when right-clicking a search tab
    • Replaced text search dialog with search bar
    • If mutiple file transfers are in progress, the UI now updates properly
    • Auto-joining the public chat room now works properly
    • Copying text with Ctrl-C now works properly again
    • Added option to log debug messages to file
    • Several minor bug fixes

    Issues closed on GitHub

    • Please put whole search string after/before "results: x/y" (#383)
    • replace log search function with search/filter thingybob, send logs to logfile. (#387)
    • Transfer connection initiation following an unallowed (queued) transfer response (#653)
    • Minor issues to fix for 2.1.1 (#659)
    • Windows 10 dark theme support (#661)
    • Wrap filters into one line (#669)
    • Public room cannot be auto-joined (#672)
    Source code(tar.gz)
    Source code(zip)
    macos-installer.zip(22.19 MB)
    macos-package.zip(22.63 MB)
    nicotine-2.1.1.tar.gz(2.10 MB)
    windows-i686-installer.zip(30.16 MB)
    windows-i686-package.zip(30.50 MB)
    windows-x86_64-installer.zip(25.70 MB)
    windows-x86_64-package.zip(25.95 MB)
  • 2.1.0(Sep 12, 2020)

    Version 2.1.0 (12 September 2020)

    Changes

    • Major performance improvements when rescanning shared files and sending user browse responses to others
    • Several performance and stability improvements related to connections and file transfers
    • Several Windows fixes regarding memory leaks, unresponsiveness and issues when starting Nicotine+
    • Reduced memory usage while rescanning shared files
    • Consistent startup times no matter the number of shared files. On large file shares, this cuts down startup times from tens of seconds to 1-2 seconds, depending on your hardware.
    • Numbers are now appended to the file names of duplicate downloads
    • Your personal upload speed is no longer reported as 0 B/s
    • In folder/user grouping mode, selecting a user or folder now allows you to retry/cancel all downloads under them
    • Added quick-access checkbox for enabling/disabling private room invitations
    • Replaced ticker banner with room wall, which displays individual messages from room users
    • "Send to player"-feature is functional again
    • Queue position of downloads is now asked automatically
    • The wishlist feature now works as intended, sending one search at a time instead of three. Wishlist items can also be renamed.
    • Improved notification settings
    • Improved readability in search results and transfer views
    • Several other UI fixes and improvements
    • A rare issue where all tabs were hidden on startup has been fixed
    • Using non-Latin characters in the Windows client now works properly again
    • The Windows installer size was reduced from ~40 MB to ~25 MB
    • The Windows installer now removes old Nicotine+ system files before updating installations
    • Removed support for detachable tabs due to low usage and bugs
    • Replaced Mutagen with pytaglib for audio file metadata scanning due to performance issues

    Issues closed on GitHub

    • Brew OSX Install (#58)
    • Flatpak build (#102)
    • Fix remaining GTK warnings (#290)
    • right click user implicitly selects all files downloading from that user. (#308)
    • two cds saved in the same folder (#313)
    • Fatal error detected" when trying to run Nicotine on Windows 10 (#413)
    • RAM usage (#416)
    • if no close button on tabs it's not possible to close User search file notebook (#428)
    • Question; what diff between scanning and rebuilding share ? (#430)
    • notify sharelist is empty (#434)
    • double click is received on selection despite being performed on blank space (#437)
    • align columns text to left, right or center (#438)
    • url catching stop to work since update of 2 days ago (#457)
    • Font worrie > (#458)
    • progress bar stuck at 100% (#454)
    • Question : how to auto-join a room ? (#464)
    • Every you can right click a user, but not in the chat, there it's left click. (#466)
    • Tree view expand/collapse is not respected on new transfer (#473)
    • application content is not diplayed properly with tabs set to side (#474)
    • Completed downloads are re-Queued (#477)
    • search tab "close thistab" missing if 3 tabs are open (#481)
    • close button in About Nicotine+ doesn't work (#485)
    • Wishlist has issues with chinese characters (#498)
    • Wishlist - Ability to rename wishlist searches (#499)
    • Certain searches don't stop even after closing the tab, restarting the program, and/or disconnecting and reconnecting to Soulseek (#520)
    • stacktrace: struct.error: required argument is not an integer (#527)
    • something goes wrong .... (#529)
    • Warning: unknown object type 'bool' in message 'pynicotine.slskmessages.FileSearchResult' (#535)
    • regression on open files on OpenBSD (#536)
    • Chat messages went nowhere and I got this trace. (#545)
    • filter out unspecific searches (#551)
    • Mouse cursor does not indicate draggable borders (#552)
    • Network share issue (#559)
    • possibly worrie with upload stuck in connecting state if folder uploaded (#564)
    • Let user choose for International flag (#569)
    • Search -> Right Click -> Download folder(s) does nothing (#574)
    • Some weird characters prevents download of file (#578)
    • some margin lines are missing (possible qt/gtk issue) (#593)
    • arrows are missing from the tree view collapse/expand (#594)
    • Nicotine Freezes With Too Many Transfers (#609)
    Source code(tar.gz)
    Source code(zip)
    Nicotine+-2.1.0-i686.exe(30.56 MB)
    Nicotine+-2.1.0-x86_64.exe(26.03 MB)
    nicotine-2.1.0.tar.gz(2.03 MB)
  • 2.0.1(Jul 16, 2020)

  • 2.0.0(Jul 14, 2020)

    Version 2.0.0 (14 July 2020)

    Changes

    • Ported from Python 2 to Python 3
    • Ported from GTK2 to GTK3 (PyGTK to PyGObject)
    • Support for HiDPI displays
    • Search results and transfers can now be grouped by folder
    • Support for transfers larger than 2 GB in size
    • Transfers and search results now support drag-select
    • Performance improvements in downloads, uploads and search views
    • Special characters (e.g. -, ') are now removed from search terms by default, to receive more search results. This behavior can be toggled in Settings -> Misc -> Searches.
    • Excluding search results by placing a - sign in front of a word now works properly
    • Search filters now check the directory path
    • Column widths are now remembered between sessions
    • Added option to open previous tab on startup
    • Added option to hide buddy list
    • Custom messages can now be sent to leechers in Settings -> Misc -> Plugins -> Leech detector
    • Plugins are now bundled with Nicotine+ installations by default
    • Nicotine+ now follows the XDG Base Directory Specification
    • Replaced deprecated dependencies with maintained ones
    • Added unit and DEP-8 continuous integration testing
    • Minor UI cleanups
    • General code cleanups, removed dead code
    • Replaced non-free sound effects

    Bugs closed on GitHub

    • Columns Position Not Being Maintained (#8)
    • Add "Group by folder" option to search results (#17)
    • Downloads tab hanging when adding a lot of files (#34)
    • NTFS support on linux (#49)
    • Show network drives when adding a shared directory. (#52)
    • send to player does not work. (#53)
    • CPU usage spikes and remains high after period of usage (#54)
    • Segfault When Getting User Info (#57)
    • Segmentation fault on Ubuntu Gnome 17.04 (#60)
    • filenames with ? in them get stuck on uploads list (#61)
    • Nicotine+ Windows 8.1 (64-bit) mutagen attempts to handle non-video files (#62)
    • Nicotine+ 1.4.1, windows 8.1 (64-bit) errors when using UPNP (#63)
    • Nicotine+ 1.4.1, windows 8.1 (64-bit) Spurious error messages (#64)
    • Nicotine + 1.4.1, windows 8.1 (64-bit) buttons not working (#65)
    • Downloads directory is not shared (#66)
    • Can't share directories (#68)
    • Question: Is Development Dead? (#73)
    • select ValueError: filedescriptor out of range in select() (#77)
    • blurry tray icon in kde plasma (#81)
    • Problems sharing files (#83)
    • Choosing "Download containing folder(s)" from search results does nothing (#84)
    • Uploads not working (#85)
    • UI very condensed on high-dpi linux. (#88)
    • Wishlist returns empty results for foreign characters (#89)
    • New Commits - Is Development Back? (#90)
    • Filter doesn't include directory path (#91)
    • XDG Base Directory Support (#94)
    • Port to python3 (#99)
    • Nicotine+ 1.4.2, Debian 9 (64-bit) Downloading file size >2GB appears as negative numbers, files near 4GB download 0 byte. (#100)
    • Nicotine+ 1.4.1 don't handle invalid characters in Windows (#101)
    • Random crash on Raspbian (#103)
    • Bitrate not shown for most music in search results (#104)
    • Nicotine+ 1.4.2, Debian 9 (64 bit) : Can't get shared files + current downloads disappeared : since the last but one update, from branch master (#107)
    • Website is badly out of date (#109)
    • images seem to be integrated from the launch directory if they have special names (#113)
    • Not working on Ubuntu 20.04 Focal Fossa (#115)
    • Please update Nicotine to work on the latest Ubuntu (20.04) (#123)
    • Compiled 'Master Branch' - Nicotine is Black Blank Screen? (#140)
    • Question: 1.4.3 - Columns Hiding? (#143)
    • info user correct extra typo (#144)
    • select user transfert does not select anything (#145)
    • clicking hyperlinks does not open browser (#146)
    • left click does not work on users nickname in rooms (#147)
    • Interest tab : text zone too small (#148)
    • request : adding file chooser preview widget in info user picture setting (#149)
    • menu separator does not follow gtk+ rules (#151)
    • 1.4.3 Linux - Hidding Tabs - Always Opens Now Under Buddy List (#154)
    • strace shows weird file access syscalls (#155)
    • (world) flags missing at startup / and buddy list (#161)
    • setup.py: DistutilsFileError (#164)
    • warnings causes by userlist resizing columns (#165)
    • Question: No more charsets selection ? (#180)
    • my gtk3 theme gives checkbuttons looks bigger (#181)
    • Question - Bug? - Log Window Issue (#186)
    • wait a minute, only spellchecker is missing ? (#190)
    • userlist for myself does not display files number (#192)
    • AttributeError in changecolour(): PrivateChat object has no attribute 'tag_log' (#194)
    • Add support for >2GB downloads (#201)
    • IndexError at start on Debian Buster (#202)
    • Speed up program startup times (#215)
    • custom tray icons not respected (#239)
    • Request: Modes Tab Placement? (#242)
    • text in log aera in chat rooms lag to display from entry (#253)
    • /now playing does not work after nic+ restart (#255)
    • add grouping by path (#269)
    • on kde LMB on tray icon brings menu, not app (#270)
    • lower on an int? (#278)
    • right-clicking file that user 2 downloads points to user 1 (#297)
    • Private Chat tab does not get notified on receiving a message (#299)
    • RMB doesn't select what's underneath it (#300)
    • unable to download to created folder (#301)
    • status never reach 100% becasue of filtered files (#302)
    • twice downloaded same folder, aborted duplicate files, remove aborted does not remove (#305)
    • downloading folder from user browse doesn't work (#311)
    • cannot connect (#312)
    • In download page, pressing Delete key removes 2 files instead of 1 (#314)
    • invalid path (#318)
    • Distrib message type 93 unknown (#322)
    • Connection issues after search (#329)
    • Window decorator close button doesn't work (#330)
    • Question: group by folders vs group by users (#335)
    • #312 continued, cannot connect (#336)
    • Can't find anything from Wu-tang (#343)
    • download stuck in a weird way (#344)
    • Peer messages causing socket error (#346)
    • expand/collapse all missing in upload tab (#354)
    • AttributeError: 'Uploads' object has no attribute 'transfers' (#360)
    • remove filtered files when autoremoving (#374)
    • wishlist searches should notify on finding a result, not on attempting to find something (#380)
    • Search log window case insensitive. (#384)
    • Gentoo upnp errors, failed to map the external wan port. (#385)
    Source code(tar.gz)
    Source code(zip)
    Nicotine+-2.0.0.exe(39.77 MB)
    nicotine-2.0.0.tar.gz(1.92 MB)
Pytorch implementation of "Peer Loss Functions: Learning from Noisy Labels without Knowing Noise Rates"

Peer Loss functions This repository is the (Multi-Class & Deep Learning) Pytorch implementation of "Peer Loss Functions: Learning from Noisy Labels wi

Kushal Shingote 1 Feb 8, 2022
Block fingerprinting for the beacon chain, for client identification & client diversity metrics

blockprint This is a repository for discussion and development of tools for Ethereum block fingerprinting. The primary aim is to measure beacon chain

Sigma Prime 49 Dec 8, 2022
Iris-client - Python client for DFIR-IRIS

Python client dfir_iris_client offers a Python interface to communicate with IRI

DFIR-IRIS 11 Dec 22, 2022
Script that creates graphical representations of Julia an Mandelbrot sets.

Julia and Mandelbrot Picture Maker This simple functions create simple plots of the Julia and Mandelbrot sets. The Julia set require the important par

Juan Riera Gomez 1 Jan 10, 2022
A free and powerful system for awareness and research of the American judicial system.

CourtListener Started in 2009, CourtListener.com is the main initiative of Free Law Project. The goal of CourtListener.com is to provide high quality

Free Law Project 332 Dec 25, 2022
Waydroid is a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.

Waydroid is a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.

WayDroid 4.7k Jan 8, 2023
System Design Assignments as part of Arpit's System Design Masterclass

System Design Assignments The repository contains a set of problem statements around Software Architecture and System Design as conducted by Arpit's S

Relog 1.1k Jan 9, 2023
A curses based mpd client with basic functionality and album art.

Miniplayer A curses based mpd client with basic functionality and album art. After installation, the player can be opened from the terminal with minip

Tristan Ferrua 102 Dec 24, 2022
BlackMamba is a multi client C2/post exploitation framework

BlackMamba is a multi client C2/post exploitation framework with some spyware features. Powered by Python 3.8.6 and QT Framework.

Gustavo 873 Dec 29, 2022
A lightweight and unlocked launcher for Lunar Client made in Python.

LCLPy LCL's Python Port of Lunar Client Lite. Releases: https://github.com/Aetopia/LCLPy/releases Build Install PyInstaller. pip install PyInstaller

null 21 Aug 3, 2022
Appointment Tracker that allows user to input client information and update if needed.

Appointment-Tracker Appointment Tracker allows an assigned admin to input client information regarding their appointment and their appointment time. T

IS Coding @ KSU 1 Nov 30, 2021
Python client SDK designed to simplify integrations by automating key generation and certificate enrollment using Venafi machine identity services.

This open source project is community-supported. To report a problem or share an idea, use Issues; and if you have a suggestion for fixing the issue,

Venafi, Inc. 13 Sep 27, 2022
GCP Scripts and API Client Toolss

GCP Scripts and API Client Toolss Script Authentication The scripts and CLI assume GCP Application Default Credentials are set. Credentials can be set

null 3 Feb 21, 2022
A Python 3 client for the beanstalkd work queue

Greenstalk Greenstalk is a small and unopinionated Python client library for communicating with the beanstalkd work queue. The API provided mostly map

Justin Mayhew 67 Dec 8, 2022
Python Commodore BBS multi-client

python-cbm-bbs-petscii Python Commodore BBS multi-client This is intended for commodore 64, c128 and most commodore compatible machines (as the new Co

null 7 Sep 16, 2022
Python client library for the Databento API

Databento Python Library The Databento Python client library provides access to the Databento API for both live and historical data, from applications

Databento, Inc. 35 Dec 24, 2022
A fast Python in-process signal/event dispatching system.

Blinker Blinker provides a fast dispatching system that allows any number of interested parties to subscribe to events, or "signals". Signal receivers

jason kirtland 1.4k Dec 31, 2022
A simple but flexible plugin system for Python.

PluginBase PluginBase is a module for Python that enables the development of flexible plugin systems in Python. Step 1: from pluginbase import PluginB

Armin Ronacher 1k Dec 16, 2022
Python based scripts for obtaining system information from Linux.

sysinfo Python based scripts for obtaining system information from Linux. Python2 and Python3 compatible Output in JSON format Simple scripts and exte

Petr Vavrin 70 Dec 20, 2022