Documentation Index Fetch the complete documentation index at: https://mintlify.com/nicotine-plus/nicotine-plus/llms.txt
Use this file to discover all available pages before exploring further.
The config module handles reading, writing, and managing application configuration.
Config Class
Manages configuration information with file persistence.
Attributes
Path to the configuration file
Path to the application data folder
Two-level dictionary containing all configuration values. First-level keys are section names, second-level keys are parameter names.
Default configuration values
Methods
get_user_folders()
@ staticmethod
def get_user_folders ()
Returns a tuple of (config_folder_path, data_folder_path).
Path to configuration folder
Example: Get User Folders
from pynicotine.config import Config
config_folder, data_folder = Config.get_user_folders()
print ( f "Config: { config_folder } " )
print ( f "Data: { data_folder } " )
load_config()
def load_config ( self , isolated_mode = False )
Loads configuration from file and applies defaults.
Whether to run in isolated mode
need_config()
Checks if username or password are missing from configuration.
True if configuration is incomplete
write_configuration()
def write_configuration ( self )
Writes current configuration to file with automatic backup.
Configuration is automatically backed up before writing. Legacy options are removed during the write process.
write_config_backup()
def write_config_backup ( self , file_path )
Creates a compressed backup of the configuration file.
Destination path for backup file (will append .tar.bz2 if not present)
Example: Backup Configuration
from pynicotine.config import config
config.write_config_backup( "/path/to/backup" )
Configuration Sections
Server Section
Server connection and authentication settings.
config.sections[ "server" ][ "server" ] # (hostname, port) tuple
config.sections[ "server" ][ "login" ] # Username
config.sections[ "server" ][ "passw" ] # Password
config.sections[ "server" ][ "portrange" ] # (min_port, max_port) tuple
Show Server Configuration Options
Server address as (hostname, port)
Username for server authentication
Password for server authentication
Listening port range as (min, max)
Automatically connect on startup
Transfers Section
File transfer and sharing settings.
config.sections[ "transfers" ][ "downloaddir" ] # Download directory
config.sections[ "transfers" ][ "shared" ] # List of shared folders
config.sections[ "transfers" ][ "uploadslots" ] # Number of upload slots
Show Transfer Configuration Options
Default download directory
Directory for incomplete downloads
List of (virtual_name, folder_path) tuples for public shares
List of buddy-only shares
Upload speed limit in KB/s
Download speed limit in KB/s
Searches Section
Search-related settings.
config.sections[ "searches" ][ "maxresults" ] # Maximum search results
config.sections[ "searches" ][ "history" ] # Search history
Example: Access Configuration
from pynicotine.config import config
# Load configuration
config.load_config()
# Read values
username = config.sections[ "server" ][ "login" ]
download_dir = config.sections[ "transfers" ][ "downloaddir" ]
# Modify values
config.sections[ "transfers" ][ "uploadslots" ] = 3
# Save changes
config.write_configuration()
Global Instance
from pynicotine.config import config
A global config instance is available for import.