### Start JoinMarket GUI on macOS Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Launches the JoinMarket Qt graphical interface. Ensure all previous installation steps, including GUI dependency installation, have been completed. ```bash cd scripts python joinmarket-qt.py ``` -------------------------------- ### Install Joinmarket-clientserver Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.0.md Use this script to install or upgrade Joinmarket-clientserver. Accepts Python2 with the -p python2 flag; Python3 is the default and recommended. ```bash ./install.sh ``` ```bash ./install.sh -p python2 ``` ```bash ./install.sh -? ``` -------------------------------- ### Clone JoinMarket and Setup Virtual Environment on Linux Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Clones the JoinMarket repository and sets up a Python virtual environment named 'jmvenv'. Activating this environment is crucial before installing Python packages. ```bash git clone https://github.com/Joinmarket-Org/joinmarket-clientserver.git cd joinmarket-clientserver python3 -m venv jmvenv source jmvenv/bin/activate ``` -------------------------------- ### Install JoinMarket with Services Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Use this command to install JoinMarket with support for services. Replace 'services' with 'gui' if you intend to use the Joinmarket-Qt graphical interface. ```bash pip install joinmarket[services] ``` -------------------------------- ### Install Joinmarket with Python 2 Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.5.1.md To install Joinmarket using Python 2, use the command './install.sh -p python2'. The default installation option is now Python 3. ```bash ./install.sh -p python2 ``` -------------------------------- ### Install XDG Desktop Entry for JoinMarketQt Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.3.1.md Installs the XDG desktop entry for JoinMarketQt, improving integration with desktop environments. ```git cfc4869 Install XDG desktop entry for JoinMarketQt ``` -------------------------------- ### Install Joinmarket with Python 3 Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.5.0.md Use this flag to install Joinmarket using Python 3. The default is still Python 2. ```bash ./install.sh -p python3 ``` -------------------------------- ### Clone JoinMarket and Setup Virtual Environment on macOS Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Clones the JoinMarket repository and creates a Python virtual environment named 'jmvenv'. Activation is required before proceeding with package installations. ```bash git clone https://github.com/Joinmarket-Org/joinmarket-clientserver cd joinmarket-clientserver python3 -m venv jmvenv source jmvenv/bin/activate ``` -------------------------------- ### Install GUI Dependencies for Joinmarket-Qt Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/README.md Install the necessary packages to run the Joinmarket-Qt GUI from the command line. Ensure the `jmvenv` virtual environment is activated before running these commands. ```bash pip install .[gui] ``` -------------------------------- ### Install JoinMarket Daemon Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs the JoinMarket daemon. This command is used for setting up the daemon to run separately from other JoinMarket processes. ```bash python setupall.py --daemon ``` -------------------------------- ### Show install.sh help message Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.5.1.md Run the install.sh script with the -? argument to display its help message, which outlines optional flags for installation. ```bash ./install.sh -? ``` -------------------------------- ### Run Wallet Tool Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/README.md Example of running a JoinMarket script, specifically the wallet-tool.py, after activating the environment. ```bash python wallet-tool.py ``` -------------------------------- ### Install JoinMarket with Services on Linux Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs JoinMarket along with its service dependencies using pip. This command must be run within the activated virtual environment. ```bash pip install .[services] ``` -------------------------------- ### Install macOS Development Tools Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs automake, libtool, and libsodium using Homebrew on macOS. These are prerequisites for building secp256k1 and other components. ```bash brew install automake libtool libsodium ``` -------------------------------- ### Install JoinMarket Script Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/README.md This script installs JoinMarket on Linux and macOS. It requires Python 3.8+ and may prompt for a sudo password. Ensure Homebrew and Apple's Command Line Tools are installed on macOS. ```bash ./install.sh ``` -------------------------------- ### Install Tor Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/tor.md Installs the Tor package on Ubuntu-based systems. Ensure Tor is installed before configuring it. ```bash sudo apt install tor ``` -------------------------------- ### Start Tor Service Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/tor.md Starts the Tor service. This should be done after configuring Tor and adding your user to the appropriate group. ```bash sudo service tor start ``` -------------------------------- ### Install JoinMarket Client for Daemon Mode Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs the local packages required for running command-line scripts when the daemon is running separately. This ensures client scripts can communicate with the daemon. ```bash python setupall.py --client-bitcoin ``` -------------------------------- ### New Joinmarket IRC Configuration Format (Example Server) Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/config-irc-update.md This snippet illustrates the new format for configuring another IRC server, 'exampleserver', in its own dedicated section. ```ini [MESSAGING:exampleserver] host = another.irc.server.example.com channel = joinmarket-pit port = 12345 usessl = false socks5 = false socks5_host = localhost socks5_port = 9050 ``` -------------------------------- ### Install JoinMarket Client Only Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs only the client code without JoinMarket's bitcoin dependencies. This is used for specific plugins like the Electrum plugin. ```bash python setupall.py --client-only ``` -------------------------------- ### Run Joinmarket Daemon Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/scripts/README.md Start the Joinmarket daemon with optional port and TLS settings. TLS requires 'key.pem' and 'cert.pem' in an '/ssl' subdirectory. ```bash python joinmarketd.py [port number] [1/0] ``` -------------------------------- ### Install Linux Dependencies Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs essential packages for JoinMarket client and server on Debian-based Linux systems. Includes development tools, Python packaging, and cryptographic libraries. ```bash sudo apt-get install python3-dev python3-pip python3-venv git build-essential automake pkg-config libtool libffi-dev libssl-dev ``` -------------------------------- ### Install JoinMarket for Development Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs JoinMarket in development mode, creating .egg-link files that point to the local code. This allows immediate effect of code changes without reinstallation. ```bash python setupall.py --develop ``` -------------------------------- ### Check Target Directories for XDG Desktop Entry Install Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.3.1.md Checks for target directories before installing the XDG desktop entry. ```git 110a6ee Check for target directories for XDG desktop entry install ``` -------------------------------- ### Add Usage Guide for Fidelity Bond Wallets Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.3.1.md This commit adds a usage guide for fidelity bond wallets. ```git 14f086b Add usage guide for fidelity bond wallets ``` -------------------------------- ### jmwalletd.py Server Startup Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/JSON-RPC-API-using-jmwalletd.md Instructions on how to start the Joinmarket wallet daemon server, which provides the JSON-RPC API. It details the default data directory, SSL certificate requirements, and the command to launch the server. ```APIDOC ## Server Startup To start the Joinmarket wallet daemon server, ensure you have created an SSL certificate and stored it in `/ssl/{key,cert}.pem`. The `datadir` defaults to `~/.joinmarket` or `.` in testing. Navigate to the `scripts/` directory and run: ```bash (jmvenv) $python jmwalletd.py ``` This will start the RPC server over `https://` on port 28183 and a websocket server over `wss://` on port 28283 by default. ``` -------------------------------- ### Activate JoinMarket Environment Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/README.md After installation, activate the Python virtual environment for JoinMarket. This command should be run from the directory where install.sh was executed. ```bash source jmvenv/bin/activate ``` -------------------------------- ### Build and Install secp256k1 on macOS Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Clones, configures, builds, and installs the secp256k1 library on macOS. Note the specific configuration flags for macOS compatibility. ```bash git clone https://github.com/bitcoin-core/secp256k1 cd secp256k1 git checkout v0.5.0 ./autogen.sh ./configure --enable-module-recovery --disable-jni --enable-experimental --enable-module-ecdh --enable-benchmark=no make make check sudo make install cd .. rm -rf secp256k1 ``` -------------------------------- ### Update Ubuntu Software Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md After installing Ubuntu via the Microsoft Store, run this command to update all installed software within the WSL environment. ```bash sudo apt update && sudo apt upgrade -y ``` -------------------------------- ### Install macOS Command Line Tools Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs the necessary command-line developer tools on macOS, which are required for compiling software like secp256k1. ```bash xcode-select --install ``` -------------------------------- ### Build and Install libsodium on Linux Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Compiles and installs the libsodium cryptographic library from source on Linux. This is a prerequisite if the system package is not available. ```bash git clone https://github.com/jedisct1/libsodium.git cd libsodium git checkout tags/1.0.18 ./autogen.sh ./configure make check sudo make install cd .. ``` -------------------------------- ### Example RPC Cookie File Path Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Illustrates the full path to the rpc_cookie_file when the username is 'Alice' on a Windows system using WSL. ```ini rpc_cookie_file = /mnt/c/Users/Alice/AppData/Roaming/Bitcoin/.cookie ``` -------------------------------- ### Running Sendpayment with Specific Parameters Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/TESTING.md Example command to run the sendpayment script with specified parameters, including the number of recipients, a wallet seed, and the datadir for configuration. ```bash (jmvenv)$ python sendpayment.py -N2 -m1 5c88acf2546bd7b083b9cfb2e0af7f2d --datadir=. 30000000 2Address ``` -------------------------------- ### Start SNICKER Server Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/SNICKER.md Run the SNICKER server script. This command starts an ephemeral onion service for testing purposes. The onion hostname will be displayed upon successful startup. ```bash (jmvenv) waxwing@here~/testjminstall/joinmarket-clientserver/scripts/snicker$ python snicker-server.py User data location: Attempting to start onion service on port: 80 ... Your hidden service is available: xpkqk2cy2h2ay5iecwcod5ka36nxj2tsiyczk2w5c6o7h5g57w3xg4id.onion ``` -------------------------------- ### Start Joinmarket Wallet Daemon Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/JSON-RPC-API-using-jmwalletd.md Starts the jmwalletd.py server. By default, it serves the RPC over HTTPS on port 28183 and a secure websocket server on port 28283. Ensure an SSL certificate is present in the datadir. ```bash (jmvenv) $python jmwalletd.py ``` -------------------------------- ### Example Wallet Addresses and Balances Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/fidelity-bonds.md These lines show example hierarchical deterministic (HD) wallet paths, their corresponding Bitcoin addresses, and balances. The 'BURN' address indicates a historical fidelity bond entry. ```plaintext m/49'/1'/0'/0/6 2NEuG23BQESuZTqSDtab9zYsd1Jb4KfMULB 0.00000000 new m/49'/1'/0'/0/7 2N6NGJRX6KYQWtYWK8iHFuJNpZRs8NbUAC9 0.00000000 new Balance: 0.00000000 internal addresses m/49'/1'/0'/1 Balance: 0.00000000 internal addresses m/49'/1'/0'/2 tpubDEJGorVywRb6T34X7ZAEz9hQYn6CCEhrcFa8kA2mqNau2DvoggZP2QTtXRe8t9NSfMkx3ye8QDzqCE9gEqso6fw5ALk5xycWLFwTRLSqSUV Balance: 0.00000000 internal addresses m/49'/1'/0'/3 tpubDEJGorVywRb6V5em9Q7LFJ9eLEAEZmZxUdDmkknrKNUs7vKcCWPKwP8YPjuxFCCXk2F1wJnubNbmgbtWed5yiE3D1qxzLonVuXT6QEZPaof m/49'/1'/0'/3/0 BURN-7631c805d8ad9239677b8d7530353fda3fec07ca 0.11999800 656bb4538f14f2cc874043915907b6c9c46a807ef9818bde771d07630d54b0f7 [NO MERKLE PROOF] Balance: 0.11999800 Balance for mixdepth 0: 0.11999800 ``` -------------------------------- ### Get Help for add-utxo.py Script Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/SOURCING-COMMITMENTS.md View the help message for the add-utxo.py script to understand its various functionalities for managing external utxos. ```bash python add-utxo.py --help ``` -------------------------------- ### Build and Install secp256k1 for Python on Linux Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Builds and installs the secp256k1 elliptic curve cryptography library, required by python-bitcointx. Ensure the virtual environment is activated and JM_ROOT is set correctly. ```bash mkdir -p deps cd deps git clone https://github.com/bitcoin-core/secp256k1.git cd secp256k1 git checkout v0.5.0 ./autogen.sh ./configure --prefix JM_ROOT --enable-module-recovery --enable-experimental --enable-module-ecdh --enable-benchmark=no make make check make install cd ../.. ``` -------------------------------- ### Perform a CoinJoin Transaction Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/USAGE.md This example demonstrates a CoinJoin transaction, specifying the number of counterparties, mixing depth, amount, and destination address. The amount can be specified in BTC or satoshis. ```bash (jmvenv)$ python sendpayment.py -N 5 -m 1 wallet.jmdat 100000000 mprGzBA9rQk82Ly41TsmpQGa8UPpZb2w8c ``` -------------------------------- ### Run JoinMarket Daemon Separately Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Starts the JoinMarket daemon as a standalone process. This is useful for running command-line scripts or integrating with other wallet plugins. ```bash cd scripts; python joinmarketd.py ``` -------------------------------- ### Signet Directory Nodes Configuration Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/onion-message-channels.md Example configuration snippet for setting directory nodes specifically for the Signet testing network. This ensures your bot connects to the correct nodes for testing purposes. ```ini directory_nodes = rr6f6qtleiiwic45bby4zwmiwjrj3jsbmcvutwpqxjziaydjydkk5sehw4v665jad.onion:5222,k74oyetjqgcamsyhlym2vgbjtvhcrbxr4iowd4nv4zk5sehw4v665jad.onion:5222 ``` -------------------------------- ### Install Homebrew on macOS Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Installs the Homebrew package manager on macOS, used to easily install other development tools and libraries. ```bash /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` -------------------------------- ### Adapt install.sh to Qt with python3 Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.5.1.md Adapts the install.sh script to work correctly with Qt when using Python 3. ```bash 0d1981e adapt install.sh to Qt with python3 ``` -------------------------------- ### Running Joinmarket-Qt with Regtest Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/TESTING.md Command to launch Joinmarket-Qt in regtest mode, which will prompt for a wallet seed if a new wallet is being loaded. ```bash (jmvenv)$ python joinmarket-qt.py --datadir=. ``` -------------------------------- ### Running a Directory Node with start-dn.py Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/onion-message-channels.md Use the `start-dn.py` script to run a JoinMarket directory node. This script can be placed in the `joinmarket-clientserver/scripts` directory. It requires a message argument and an optional data directory. The script forces the `no-blockchain` argument, eliminating the need for a running Bitcoin node or wallet. ```bash python start-dn.py "Greetings from Directory Node" --datadir=/your/chosen/datadir ``` -------------------------------- ### Build and Run Wallet-Tool with Docker Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/INSTALL.md Builds a Docker image for JoinMarket and then runs the wallet-tool.py script within a container. This is useful for testing or using JoinMarket in a containerized environment. ```bash docker build -t joinmarket-test ./ docker run --rm -it joinmarket-test bash -c "cd scripts && python3 wallet-tool.py --help" ``` -------------------------------- ### Run Tumbler Script with Help Option Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/tumblerguide.md This command shows how to run the tumbler script from the command line and view its available options. Ensure you are in the correct virtual environment. ```bash (jmvenv)a@~/joinmarket-clientserver/scripts$ python tumbler.py --help ``` -------------------------------- ### Send Payment with Joinmarket (Schedule Approach) Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/scripts/README.md Utilize the schedule approach for sending payments by referencing a schedule file. This method allows for more complex payment arrangements, including internal payments and fractional amounts. ```bash python sendpayment.py -S sample-schedule-for-testnet wallet.jmdat ``` -------------------------------- ### SNICKER Receiver Script Output Example Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/SNICKER.md Example log output from the SNICKER receiver script, showing RPC calls, wallet interactions, and network listening information. ```log User data location: . 2020-12-16 11:43:03,779 [DEBUG] rpc: getblockchaininfo [] 2020-12-16 11:43:03,781 [DEBUG] rpc: getnewaddress [] Enter passphrase to decrypt wallet: 2020-12-16 11:43:07,501 [DEBUG] rpc: listaddressgroupings [] 2020-12-16 11:43:07,562 [DEBUG] Fast sync in progress. Got this many used addresses: 3 2020-12-16 11:43:08,075 [DEBUG] rpc: listunspent [0] 2020-12-16 11:43:08,216 [DEBUG] bitcoind sync_unspent took 0.14214825630187988sec 2020-12-16 11:43:08,280 [WARNING] Cannot listen on port 27183, trying next port 2020-12-16 11:43:08,281 [WARNING] Cannot listen on port 27184, trying next port 2020-12-16 11:43:08,281 [WARNING] Cannot listen on port 27185, trying next port 2020-12-16 11:43:08,281 [INFO] Listening on port 27186 2020-12-16 11:43:08,282 [INFO] (SNICKER) Listening on port 26186 2020-12-16 11:43:08,282 [INFO] Starting transaction monitor in walletservice 2020-12-16 11:43:08,339 [INFO] Starting SNICKER polling loop 2020-12-16 11:43:22,676 [DEBUG] rpc: sendrawtransaction ["020000000001028ffa6a6f0184ed8123993273ecbb4af82d1b1c0963c815fec4e92525eaba56b30000000000ffffffffa5015509e0e241ef25ee7ccc1936295c908e572cb222105e16c197d66f0599640000000000ffffffff03e4ba8c0100000000160014190ec76b7843f47bc367b65119b98c32074536255dfd5e0a00000000160014d38fa4a6ac8db7495e5e2b5d219dccd412dd9baee4ba8c01000000001600147b4676f859b993257bc8d5880650fcab470db8a1024830450221008480d553177a020f58ca0e45b9e20aa027305a279a3de1014f55ff22909b89b1022054e848285ee60c169b5de19bb4d3637b606ff14bc4cca4506ad05a42fff6af400121029a82a00f05d023f188dfd1db82ef8ec136b0500bbd33bb1f65930c5b74e3199802463043021f01d3f4567c32fc0c5c0cd33db233a3c74100a36940d743b72042b55e60b89d022073ab203ad0fee389f2a2c9e62197244cea95b07ae78a5516ca9f866a8e348d2c01210245d8623c4b06505dffd21bdd314a84b73afe2b9d49a93fe89397b48a85b718bd00000000"] 2020-12-16 11:43:22,678 [INFO] Successfully broadcast SNICKER coinjoin: 33ec857df09030140391529295412434cced8191626024f937426b7859a21947 2020-12-16 11:43:23,359 [INFO] Removed utxos= b356baea2525e9c4fe15c863091c1b2df84abbec7332992381ed84016f6afa8f:0 - path: m/84'/1'/4'/0/0, address: bcrt1qwxcf47avvgzxyu39cy8n4r22qaynvn7mc359ap, value: 26000000 2020-12-16 11:43:23,360 [INFO] Added utxos= 33ec857df09030140391529295412434cced8191626024f937426b7859a21947:0 - path: imported/1/0, address: bcrt1qry8vw6mcg068hsm8keg3nwvvxgr52d3923gg45, value: 26000100 ``` -------------------------------- ### Add Wrapper Shell Script for JoinMarketQt Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.3.1.md A wrapper shell script has been added for JoinMarketQt. ```git e536eb1 Add wrapper shell script for JoinMarketQt ``` -------------------------------- ### Example Tumbler Schedule Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/tumblerguide.md This is an example schedule for the JoinMarket tumbler, detailing parameters like mixdepth, amount, counterparty count, destination type, and transaction values. It is used to configure a complex mixing operation. ```text 4,0,9,INTERNAL,0.22,16,0 2,0,9,INTERNAL,1.25,16,0 0,0.1287547602736554,9,INTERNAL,0.34,16,0 0,0.33777065308789445,9,INTERNAL,0.12,16,0 0,0.2416658618765749,9,INTERNAL,0.05,16,0 0,0,9,INTERNAL,0.23,16,0 1,0.4248409290648639,9,INTERNAL,0.01,16,0 1,0.33866158339454555,9,INTERNAL,0.02,4,0 1,0.010807366510609207,9,INTERNAL,0.13,16,0 1,0,9,INTERNAL,0.11,16,0 2,0.04086022411519208,9,INTERNAL,0.82,16,0 2,0.20924362829352816,9,INTERNAL,0.03,16,0 2,0.03518603894933314,9,INTERNAL,0.05,16,0 2,0,9,INTERNAL,0.16,16,0 3,0.13973910506875786,9,INTERNAL,0.38,4,0 3,0.21418596171826687,9,INTERNAL,0.24,16,0 3,0.3792667736100306,9,INTERNAL,0.08,16,0 3,0,9,INTERNAL,0.07,16,0 4,0.23084503924196553,9,INTERNAL,0.02,16,0 4,0.3566850751084202,9,INTERNAL,0.07,16,0 4,0.06412832650536227,9,INTERNAL,0.09,16,0 4,0,9,mzzAYbtPpANxpNVGCVBAhZYzrxyZtoix7i,0.04,16,0 0,0.3794032390530363,9,INTERNAL,0.02,16,0 0,0.10756327418131051,9,INTERNAL,0.93,16,0 0,0.40107055434802497,9,INTERNAL,0.07,16,0 0,0,9,mifCWfmygxKhsP3qM3HZi3ZjBEJu7m39h8,0.11,16,0 1,0.05776628660005234,9,INTERNAL,0.93,16,0 1,0.1936955942281181,9,INTERNAL,0.66,16,0 1,0.13956928336353558,9,INTERNAL,0.14,16,0 1,0,9,bcrt1qcnv26w889eum5sekz5h8we45rxnr4sj5k08phv,0.58,16,0 2,0,9,mnTn9KVQQT9zy9R4E2ZGzWPK4EfcEcV9Y5,0.52,16,0 ``` -------------------------------- ### Send Payment with Joinmarket (Legacy Syntax) Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/scripts/README.md Use this syntax for sending payments with Joinmarket, similar to the existing repository. It requires specifying the number of markets, amount, wallet file, and destination address. ```bash python sendpayment.py -N 3 -m 1 -P wallet.jmdat 50000000
``` -------------------------------- ### Basic Bitcoin Configuration for Testing Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/TESTING.md A minimal bitcoin.conf file is required for running Joinmarket tests in regtest mode. Ensure the rpcuser, rpcpassword, and fallbackfee are set. ```ini rpcuser=bitcoinrpc rpcpassword=123456abcdef fallbackfee=0.0002 ``` -------------------------------- ### Commit: Tumbler sweep coinjoins Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.0.md This commit adds sweep coinjoins to the start of the tumbler schedule to enhance privacy. ```commit 35f23eb Add sweep coinjoins to start of tumbler schedule ``` -------------------------------- ### Generate Joinmarket Wallet Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/PAYJOIN.md Run this command to generate a Joinmarket wallet configuration. It may initially error if RPC is not configured. ```bash python wallet-tool.py generate ``` -------------------------------- ### Run Yield Generator Script Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/YIELDGENERATOR.md Example of how to run the `yg-privacyenhanced.py` script with your wallet file. This script is recommended for beginners. ```bash (jmvenv)$ python yg-privacyenhanced.py yournewwallet.jmdat ``` -------------------------------- ### Configure Bitcoin Core RPC Settings for Joinmarket Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/USAGE.md Set these parameters in your joinmarket.cfg file to connect to your Bitcoin Core node. Ensure the username and password match your bitcoin.conf. ```ini [BLOCKCHAIN] rpc_user = yourusername-as-in-bitcoin.conf rpc_password = yourpassword-as-in-bitcoin.conf rpc_host = localhost rpc_port = 8332 ``` -------------------------------- ### Show OpenWallet Dialog Upon Launching JoinMarketQT Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.9.2.md This commit ensures an OpenWallet dialog is shown upon launching JoinMarketQT. This improves the initial user experience for Qt users. ```git 1dd1679 ``` -------------------------------- ### Proposal Server Response Source: https://github.com/joinmarket-org/joinmarket-clientserver/blob/master/docs/SNICKER.md This is an example of a response from a proposals server, indicating that one proposal was accepted. The server address is a .onion URL. ```log Response from server: http://xpkqk2cy2h2ay5iecwcod5ka36nxj2tsiyczk2w5c6o7h5g57w3xg4id.onion was: 1 proposals-accepted ```