Skip to content

Instantly share code, notes, and snippets.

@patricklodder
Last active November 8, 2021 06:30
Show Gist options
  • Save patricklodder/88d6c4e3406db840963f85d95ceb44fe to your computer and use it in GitHub Desktop.
Save patricklodder/88d6c4e3406db840963f85d95ceb44fe to your computer and use it in GitHub Desktop.
Build a dogecoin build with custom repo/tag
sudo apt update
sudo apt install -y ruby git build-essential apt-transport-https ca-certificates \
curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io apt-cacher-ng
sudo apt upgrade -y
sudo systemctl enable apt-cacher-ng.service
sudo systemctl start apt-cacher-ng.service
sudo usermod -aG docker ubuntu
sudo systemctl enable docker
sudo systemctl start docker
# logout
export USE_DOCKER=1
export MEM_TO_USE=14000 # YOUR MEMORY
export PROC_TO_USE=4 # YOUR # CORES
export URL=https://github.com/patricklodder/dogecoin.git # REPO THAT HOSTS TAG
export COMMIT=1.14.4-stage-rc3 # TAG, WITHOUT "v" prefix
git clone https://github.com/patricklodder/gitian-builder.git
git clone $URL
pushd dogecoin
git checkout v${COMMIT}
popd
pushd gitian-builder
git checkout remove_trusty_esm
./bin/make-base-vm --docker --arch amd64 --suite trusty
mkdir -p inputs
wget -P inputs https://bitcoincore.org/cfields/osslsigncode-Backports-to-1.7.1.patch
wget -P inputs https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/osslsigncode/1.7.1-1/osslsigncode_1.7.1.orig.tar.gz
wget -P inputs https://bitcoincore.org/depends-sources/sdks/MacOSX10.11.sdk.tar.gz
make -C ../dogecoin/depends download SOURCES_PATH=`pwd`/cache/common
mkdir -p ../builds/v${COMMIT}
./bin/gbuild -m ${MEM_TO_USE} -j ${PROC_TO_USE} --commit dogecoin=v${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-linux.yml
mv build/out/dogecoin-*.tar.gz build/out/src/dogecoin-*.tar.gz ../builds/v${COMMIT}/
./bin/gbuild -m ${MEM_TO_USE} -j ${PROC_TO_USE} --commit dogecoin=v${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-win.yml
mv build/out/dogecoin-*.zip build/out/src/dogecoin-*.tar.gz ../builds/v${COMMIT}/
./bin/gbuild -m ${MEM_TO_USE} -j ${PROC_TO_USE} --commit dogecoin=v${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-osx.yml
mv build/out/dogecoin-*.tar.gz build/out/dogecoin-*.dmg ../builds/v${COMMIT}/
popd
pushd builds/v${COMMIT}
sha256sum *
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment