# Electrum Purple - Lightweight BitcoinPurple Wallet > **Unofficial fork** of [Electrum](https://github.com/spesmilo/electrum) with support for the [BitcoinPurple](https://bitcoinpurple.org) network. ``` Licence: MIT Licence Fork author: Davide Grilli Original author: Thomas Voegtlin Language: Python (>= 3.10) Upstream: https://github.com/spesmilo/electrum ``` --- ## About this fork This project is an **unofficial, independent fork** of Electrum, maintained by **Davide Grilli**. It adds first-class support for the **BitcoinPurple (BTCP)** network — a Bitcoin fork with 1-minute blocks and a 120-block difficulty retarget window — while keeping full compatibility with the original Electrum codebase and all upstream bug fixes. This fork is **not affiliated with, endorsed by, or supported by** the original Electrum project or its developers. For the official Bitcoin wallet, use [electrum.org](https://electrum.org/). ### What is different from upstream Electrum - `--bitcoinpurple` and `--bitcoinpurple_testnet` launch flags - BitcoinPurple chain parameters (1-min blocks, 120-block retarget, adjusted PoW limits) - Lightning Network timeouts scaled for 1-minute block times - Branding and packaging renamed to `electrum-purple` / `Electrum Purple` Everything else — wallet format, Lightning support, hardware wallets, plugins — is identical to upstream Electrum. ### Licence and credits This software is released under the **MIT Licence**, the same licence as the original Electrum. All original copyright notices are preserved as required by the licence. Original copyright: © 2011-2024 Thomas Voegtlin and The Electrum developers. Fork additions: © 2024-2026 Davide Grilli. --- ## Getting started _(If you've come here looking to simply run Electrum, [you may download it here](https://electrum.org/#download).)_ Electrum itself is pure Python, and so are most of the required dependencies, but not everything. The following sections describe how to run from source, but here is a TL;DR: ``` $ sudo apt-get install libsecp256k1-dev $ ELECTRUM_ECC_DONT_COMPILE=1 python3 -m pip install --user ".[gui,crypto]" ``` ### Not pure-python dependencies #### Qt GUI If you want to use the Qt interface, install the Qt dependencies: ``` $ sudo apt-get install python3-pyqt6 ``` #### libsecp256k1 For elliptic curve operations, [libsecp256k1](https://github.com/bitcoin-core/secp256k1) is a required dependency. If you "pip install" Electrum, by default libsecp will get compiled locally, as part of the `electrum-ecc` dependency. This can be opted-out of, by setting the `ELECTRUM_ECC_DONT_COMPILE=1` environment variable. For the compilation to work, besides a C compiler, you need at least: ``` $ sudo apt-get install automake libtool ``` If you opt out of the compilation, you need to provide libsecp in another way, e.g.: ``` $ sudo apt-get install libsecp256k1-dev ``` #### cryptography Due to the need for fast symmetric ciphers, [cryptography](https://github.com/pyca/cryptography) is required. Install from your package manager (or from pip): ``` $ sudo apt-get install python3-cryptography ``` #### hardware-wallet support If you would like hardware wallet support, [see this](https://github.com/spesmilo/electrum-docs/blob/master/hardware-linux.rst). ### Running from tar.gz If you downloaded the official package (tar.gz), you can run Electrum from its root directory without installing it on your system; all the pure python dependencies are included in the 'packages' directory. To run Electrum from its root directory, just do: ``` $ ./run_electrum ``` You can also install Electrum on your system, by running this command: ``` $ sudo apt-get install python3-setuptools python3-pip $ python3 -m pip install --user . ``` This will download and install the Python dependencies used by Electrum instead of using the 'packages' directory. It will also place an executable named `electrum` in `~/.local/bin`, so make sure that is on your `PATH` variable. ### Development version (git clone) _(For OS-specific instructions, see [here for Windows](contrib/build-wine/README_windows.md), and [for macOS](contrib/osx/README_macos.md))_ Check out the code from GitHub: ``` $ git clone https://github.com/spesmilo/electrum.git $ cd electrum $ git submodule update --init ``` Run install (this should install dependencies): ``` $ python3 -m pip install --user -e . ``` Create translations (optional): ``` $ sudo apt-get install gettext $ ./contrib/locale/build_locale.sh electrum/locale/locale electrum/locale/locale ``` Finally, to start Electrum: ``` $ ./run_electrum ``` ### Run tests Run unit tests with `pytest`: ``` $ pytest tests -v ``` (can be parallelized with `-n auto` option, using [`pytest-xdist`](https://github.com/pytest-dev/pytest-xdist) plugin) To run a single file, specify it directly like this: ``` $ pytest tests/test_bitcoin.py -v ``` ## Creating Binaries - [Linux (tarball)](contrib/build-linux/sdist/README.md) - [Linux (AppImage)](contrib/build-linux/appimage/README.md) - [macOS](contrib/osx/README.md) - [Windows](contrib/build-wine/README.md) - [Android](contrib/android/Readme.md) ## Contributing Bug reports, testing, and pull requests for BitcoinPurple-specific features are welcome. For issues unrelated to BitcoinPurple support (core wallet, Lightning, hardware wallets), please check the [upstream Electrum project](https://github.com/spesmilo/electrum) first — fixes merged upstream can be rebased into this fork. --- *Electrum Purple is an independent fork and is not affiliated with the Electrum project.* *Original Electrum translations are maintained on [Crowdin](https://crowdin.com/project/electrum).*