GitHub

MusicBrainz Picard Installation

Quick Start

The easiest way to install Picard is from the official downloads page.

For development or building from source, follow the instructions below.

Dependencies

Required Dependencies

  • Python 3.10 or newer
  • PyQt 6.6.1 or newer
  • Mutagen 1.45 or newer
  • PyYAML 5.1 or newer
  • pygit2 1.18.2 or newer - For plugin system
  • gettext (msgfmt):
    • Windows: Download from gettext-iconv-windows and add to PATH
    • Linux: sudo apt install gettext (Ubuntu/Debian) or equivalent
    • macOS: Usually included with Xcode Command Line Tools, or brew install gettext

    Note: On macOS, Homebrew installs gettext as keg-only. If you see msgfmt errors, you must link it manually:

    brew link gettext --force
    export PATH="/opt/homebrew/opt/gettext/bin:$PATH"
  • A compiler (required for building C extensions):
    • Windows: Visual Studio Community
    • Linux: sudo apt install build-essential (Ubuntu/Debian) or equivalent
    • macOS: Xcode Command Line Tools (xcode-select --install)

Python Version-Specific Dependencies

Optional Dependencies (Recommended)

Installation Methods

Method 1: Using uv (Recommended)

Quick setup with uv:

# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh  # macOS/Linux
# powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"  # Windows
# Set up and install Picard
uv venv
source .venv/bin/activate  # macOS/Linux (.venv\Scripts\activate.bat on Windows)
uv sync  # Automatically installs all dependencies from pyproject.toml
python setup.py build && python setup.py build_ext -i
uv pip install -e .
# Run Picard
picard

For development workflow, testing, code quality tools, and more details, see CONTRIBUTING.md.

Method 2: Using pip

After installing dependencies manually:

pip3 install .  # Installs Picard but not dependencies

To start Picard:

picard

To uninstall:

pip3 uninstall picard

Method 3: Traditional pip setup

# Create virtual environment
python3 -m venv --system-site-packages .venv
source .venv/bin/activate
# Install dependencies manually
pip install -r requirements.txt -r requirements-build.txt -r requirements-dev.txt
# Build and run
python3 setup.py build          # Compiles translations and prepares build files
python3 setup.py build_ext -i   # Builds C extensions in-place for development
python3 tagger.py

Method 4: Legacy setup.py (Not Recommended)

sudo python3 setup.py install  # Installs Picard and attempts to install dependencies

Platform-Specific Notes

System Package Dependencies (Building from Source)

When building from source on Debian-based systems, you may need these system packages:

# Required for development tools and PyQt6 system libraries
apt install python3-venv python3-dev
# Optional: For discid support
apt install libdiscid0
# Optional: For multimedia player support
apt install libqt6multimedia6
# Alternative: Use system PyQt6 instead of pip/uv installation
apt install python3-pyqt6 python3-pyqt6.qtmultimedia

Note:

  • Not needed for official binary installations
  • When using uv/pip, you may still need some system libraries (like libqt6multimedia6)
  • You can use system PyQt6 packages instead of installing via pip/uv

Qt6 via pip Issues

If you get libxcb errors on startup when using Qt6 installed via pip:

sudo apt install libxcb-cursor0

Packaging

To create and upload packages:

python3 setup.py sdist
twine upload dist/*

Code Signatures

Official Picard packages are digitally signed. For packaging, use source archives from the official file server.

Verify signatures with:

gpg --verify picard-x.y.z.tar.gz.asc  # where x.y.z is the version number
Certificate Expiration Fingerprint
Windows Code Signing 2024-10-25 4d0c868847e2a5e44ae734e1279a9c7007fd6d4c
Apple Code Signing 2027-02-01 deb351206f7dc9361e1cf3d864edce98a8d3302d
MBP Developers GPG 2026-10-28 68990dd0b1edc129b856958167997e14d563da7c

Read the original on github.com ↗