README.md (1548B)
1 Source tarballs 2 =============== 3 4 ✓ _This file should be reproducible, meaning you should be able to generate 5 distributables that match the official releases._ 6 7 This assumes an Ubuntu (x86_64) host, but it should not be too hard to adapt to another 8 similar system. The docker commands should be executed in the project's root 9 folder. 10 11 1. Install Docker 12 13 ``` 14 $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 15 $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" 16 $ sudo apt-get update 17 $ sudo apt-get install -y docker-ce 18 ``` 19 20 2. Build image 21 22 ``` 23 $ sudo docker build -t electrum-sdist-builder-img contrib/build-linux/sdist 24 ``` 25 26 3. Build source tarballs 27 28 It's recommended to build from a fresh clone 29 (but you can skip this if reproducibility is not necessary). 30 31 ``` 32 $ FRESH_CLONE=contrib/build-linux/sdist/fresh_clone && \ 33 sudo rm -rf $FRESH_CLONE && \ 34 umask 0022 && \ 35 mkdir -p $FRESH_CLONE && \ 36 cd $FRESH_CLONE && \ 37 git clone https://github.com/spesmilo/electrum.git && \ 38 cd electrum 39 ``` 40 41 And then build from this directory: 42 ``` 43 $ git checkout $REV 44 $ sudo docker run -it \ 45 --name electrum-sdist-builder-cont \ 46 -v $PWD:/opt/electrum \ 47 --rm \ 48 --workdir /opt/electrum/contrib/build-linux/sdist \ 49 electrum-sdist-builder-img \ 50 ./build.sh 51 ``` 52 4. The generated distributables are in `./dist`.