[BTC-dev] Reference Implementation Offline Build Script Announcement [V99999]
Shane Kinney
modsix at gmail.com
Tue Aug 30 23:22:58 UTC 2016
URL: <http://therealbitcoin.org/ml/btc-dev/attachments/20160830/attachment.txt?sha1=d87b5452ccbad564c166edfb19fe597aad087799>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
This message is to announce a new, offline, build script for The Bitcoin
Reference Implementation.
Attached are two files (with their corresponding signatures):
build-bitcoind-offline-V99999.sh
81fc52d3e7d4b92f8a02935e42d0f932480320d47dbc20bea8b3c2930da782598338e31125d2cfd0f3c24a74d33f6d42d8784b84956705511f208728a52c6342
and
OFFLINE_BUILD_HOWTO.txt
cc99cf4d1c467a512d41cfd6db3ce024b5799b59eaf948952552e6c85552a416755fea0f7f5a9c9103e40e78f233cd99014d855af25c6acfb999de716cab957c
===========================================================================
First and foremost, this offline build script is different then the original
build script you may have seen or used before. Be aware of this. This is also
why the versioning number starts at 99999. In implementation, they may look
similar; however, they are two different scripts.
The idea is to empower users to create a completely offline build; where no
dependencies are remotely fetched, and no internet connection required. All of
the build dependencies are placed on the local file system prior to script
execution.
To achieve this, please follow the steps in the attached OFFLINE_BUILD_HOWTO.txt
guide. It will inform you of the required directory structure that must be in
place, and the necessary artifacts along with their required placement in the
file system.
Before you embark on this build process, please take the time to read the HOWTO
document at least once to get an idea of the process involved.
The HOWTO document leaves out certain procedures on purpose, as these are left
up to the user to decide. i.e. There are not prepared `curl` or `wget`
statements; the URLs to the required artifacts are included, as well as the
expected file name for these artifacts. It is meant for ~you~, the user, to
determine the most trust worthy source and manner in which you retrieve these
required artifacts.
Enjoy,
mod6
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (FreeBSD)
iQIcBAEBCgAGBQJXxhCJAAoJEHIXBai3Hq2vxt0QAJuXnB4QynaHNsGgE8beazUB
1D00GbiQOO8h5gEdCEq9jkwJ054o5xqiFKaTSQQXaZ66FZ5pdR9pBUuikPSZNA3s
WRlM/T/21hfCZ3MnCU5JlwXk8i5MxCDKMc+a2AeLuhqY60xKVaLmMT4CJXk3JPlB
/Ye6BuIU1lA5ozdv0sxAL9cuB/X2aMx59OYYuNG3gSZZGatrzfdTaEpTUL93lvF2
5LwRgf/d/fMfrFYj4VnzNlqV+L/w3Qq9N9WSd+JWDrnKXnYVXnFJYvZt4Fuyq/39
pYo4CO7zeKjP0/gE9dy1DG6DstJe5a4WwvZ85ldDiYu49ytj3MSp7LKpO1Vn/zn8
2SJ4ulDADRxqiGix45Q/xVgkkCnteXi3NztykQj1Cr8sDyqxW506aQWiOoQmBOCF
V6gQRzsU+SM0ok50J0QFsYJTiPrvfp8W0YpZjvMEn1eLF5AH5wCL+JooQqHE1wad
RnN/lJM1obi8IenfbsmvEMCz6oYwKge41z4ylzSad6xdanh/FgJUyeu6ici1aE+x
o5Mv8PO6M0f0BAYbOE/naGtsTwIelt4Cw4AD03fR4nfl9tT1CuIHWy24hUVr5uYH
LAvKVQCAKhbk9x1gpt0NN4Id1v+B+cQonLxm8n8OIFIRZuJ/qMs1uDevJt5T3O8M
53olmBVdbSitEwwJJ1+p
=dL8R
-----END PGP SIGNATURE-----
-------------- next part --------------
Name: OFFLINE_BUILD_HOWTO.txt
URL: <http://therealbitcoin.org/ml/btc-dev/attachments/20160830/OFFLINE_BUILD_HOWTO.txt?sha1=d7a0106cca19305ae56b75d8a7c98a9ee961746d>
..::[ The Bitcoin Foundation: Offline Build Howto ]::..
[ Author: mod6 ]
[ Date: 2016.08.21 ]
0x00]: You will need:
A 64-bit linux (ubuntu, debian, or gentoo) environment.
With generally included binaries:
bash, base64, cat, chmod, cp, echo, mkdir, mv, patch, sed, sha512sum, tar
And third party binaries:
gnupg
0x01]: Create a build directory.
cd ~
mkdir trb
cd trb
0x02]: In the build directory (~/trb), setup for V.
Create directories: .wot, patches, and .seals:
mkdir .wot
mkdir patches
mkdir .seals
[ Get the following PGP public keys: ]
[ ]
[ asciilifeform 0x17215D118B7239507FAFED98B98228A001ABFFC7 ]
[ ben_vulpes 0x4F7907942CA8B89B01E25A762AFA1A9FD2D031DA ]
[ mircea_popescu 0x6160E1CAC8A3C52966FD76998A736F0E2FB7B452 ]
[ mod6 0x027A8D7C0FB8A16643720F40721705A8B71EADAF ]
[ trinque 0xFC66C0C5D98C42A1D4A98B6B42F9985AFAB953C4 ]
[ ]
[ If you like you make query deedbot (on irc.freenode.net) and get the keys. ]
[ It will hand back a wotpaste URL containing the key which you can save. ]
[ /msg deedbot $key asciilifeform ]
[ /msg deedbot $key ben_vulpes ]
[ /msg deedbot $key mircea_popescu ]
[ /msg deedbot $key mod6 ]
[ /msg deedbot $key trinque ]
[ ]
[ Name these PGP public key files (respectively) as follows: ]
[ asciilifeform.asc ]
[ ben_vulpes.asc ]
[ mircea_popescu.asc ]
[ mod6.asc ]
[ trinque.asc ]
Import the following three keys into GnuPG (gpg):
gpg --import mod6.asc
gpg --import asciilifeform.asc
gpg --import trinque.asc
Place all five keys (asciilifeform.asc, ben_vulpes.asc, mircea_popescu.asc,
mod6.asc, and trinque.asc) into the .wot directory:
cp asciilifeform.asc ben_vulpes.asc mircea_popescu.asc mod6.asc trinque.asc .wot
-----------------------------------------------------------------------------
Get the Vpatches from thebitcoin.foundation:
http://thebitcoin.foundation/v/patches/
These are, currently:
genesis.vpatch
rm_rf_upnp.vpatch
bitcoin-v0_5_3-db_config.6.vpatch
bitcoin-v0_5_3_1-static_makefile_v002.8.vpatch
bitcoin-v0_5_3_1-rev_bump.7.vpatch
bitcoin-asciilifeform.4-goodbye-win32.vpatch
bitcoin-asciilifeform.3-turdmeister-alert-snip.vpatch
bitcoin-asciilifeform.2-https_snipsnip.vpatch
bitcoin-asciilifeform.1.vpatch
mod6_fix_dumpblock_params.vpatch
asciilifeform_zap_showmyip_crud.vpatch
asciilifeform_zap_hardcoded_seeds.vpatch
asciilifeform_ver_now_5_4_and_irc_is_gone_and_now_must_give_ip.vpatch
asciilifeform_tx-orphanage_amputation.vpatch
asciilifeform_orphanage_thermonuke.vpatch
asciilifeform_maxint_locks_corrected.vpatch
asciilifeform_lets_lose_testnet.vpatch
asciilifeform-kills-integer-retardation.vpatch
asciilifeform_dns_thermonyukyoolar_kleansing.vpatch
asciilifeform_dnsseed_snipsnip.vpatch
asciilifeform_and_now_we_have_eatblock.vpatch
asciilifeform_and_now_we_have_block_dumper_corrected.vpatch
asciilifeform_add_verifyall_option.vpatch
mod6_der_high_low_s.vpatch
programmable-versionstring.vpatch
malleus_mikehearnificarum.vpatch
Place the Vpatches into the `patches' directory:
mv *.vpatch patches
-----------------------------------------------------------------------------
Get the Vpatch Seals from thebitcoin.foundation:
http://thebitcoin.foundation/v/seals/
These are, currently:
rm_rf_upnp.vpatch.mod6.sig
mod6_fix_dumpblock_params.vpatch.mod6.sig
bitcoin-v0_5_3-db_config.6.vpatch.mod6.sig
bitcoin-v0_5_3_1-static_makefile_v002.8.vpatch.mod6.sig
bitcoin-v0_5_3_1-rev_bump.7.vpatch.mod6.sig
bitcoin-asciilifeform.4-goodbye-win32.vpatch.mod6.sig
bitcoin-asciilifeform.3-turdmeister-alert-snip.vpatch.mod6.sig
bitcoin-asciilifeform.2-https_snipsnip.vpatch.mod6.sig
bitcoin-asciilifeform.1.vpatch.mod6.sig
asciilifeform_zap_showmyip_crud.vpatch.mod6.sig
asciilifeform_zap_hardcoded_seeds.vpatch.mod6.sig
asciilifeform_ver_now_5_4_and_irc_is_gone_and_now_must_give_ip.vpatch.mod6.sig
asciilifeform_tx-orphanage_amputation.vpatch.mod6.sig
asciilifeform_orphanage_thermonuke.vpatch.mod6.sig
asciilifeform_maxint_locks_corrected.vpatch.mod6.sig
asciilifeform_lets_lose_testnet.vpatch.mod6.sig
asciilifeform-kills-integer-retardation.vpatch.mod6.sig
asciilifeform_dns_thermonyukyoolar_kleansing.vpatch.mod6.sig
asciilifeform_dnsseed_snipsnip.vpatch.mod6.sig
asciilifeform_and_now_we_have_eatblock.vpatch.mod6.sig
asciilifeform_and_now_we_have_block_dumper_corrected.vpatch.mod6.sig
asciilifeform_add_verifyall_option.vpatch.mod6.sig
rm_rf_upnp.vpatch.asciilifeform.sig
mod6_fix_dumpblock_params.vpatch.asciilifeform.sig
genesis.vpatch.trinque.sig
genesis.vpatch.mod6.sig
genesis.vpatch.mircea_popescu.sig
genesis.vpatch.asciilifeform.sig
bitcoin-v0_5_3-db_config.6.vpatch.asciilifeform.sig
bitcoin-v0_5_3_1-static_makefile_v002.8.vpatch.asciilifeform.sig
bitcoin-v0_5_3_1-rev_bump.7.vpatch.asciilifeform.sig
bitcoin-asciilifeform.4-goodbye-win32.vpatch.asciilifeform.sig
bitcoin-asciilifeform.3-turdmeister-alert-snip.vpatch.asciilifeform.sig
bitcoin-asciilifeform.2-https_snipsnip.vpatch.asciilifeform.sig
bitcoin-asciilifeform.1.vpatch.asciilifeform.sig
asciilifeform_zap_showmyip_crud.vpatch.asciilifeform.sig
asciilifeform_zap_hardcoded_seeds.vpatch.asciilifeform.sig
asciilifeform_ver_now_5_4_and_irc_is_gone_and_now_must_give_ip.vpatch.asciilifeform.sig
asciilifeform_tx-orphanage_amputation.vpatch.asciilifeform.sig
asciilifeform_orphanage_thermonuke.vpatch.asciilifeform.sig
asciilifeform_maxint_locks_corrected.vpatch.asciilifeform.sig
asciilifeform_lets_lose_testnet.vpatch.asciilifeform.sig
asciilifeform-kills-integer-retardation.vpatch.asciilifeform.sig
asciilifeform_dns_thermonyukyoolar_kleansing.vpatch.asciilifeform.sig
asciilifeform_dnsseed_snipsnip.vpatch.asciilifeform.sig
asciilifeform_and_now_we_have_eatblock.vpatch.asciilifeform.sig
asciilifeform_and_now_we_have_block_dumper_corrected.vpatch.asciilifeform.sig
asciilifeform_add_verifyall_option.vpatch.asciilifeform.sig
mod6_der_high_low_s.vpatch.mod6.sig
programmable-versionstring.vpatch.mod6.sig
malleus_mikehearnificarum.vpatch.mod6.sig
Place the seals into the `.seals' directory:
mv *.sig .seals
0x03]: Place all dependency artifacts in the build directory
You will need the following artifacts:
http://deedbot.org/deed-422651-1.txt (save as ``boost_1_52_0.tar.bz2.asc'')
http://deedbot.org/deed-422651-2.txt (save as ``buildroot-2015.05.tar.gz.asc'')
http://deedbot.org/deed-422651-3.txt (save as ``db-4.8.30.tar.gz.asc'')
http://deedbot.org/deed-422651-4.txt (save as ``openssl-1.0.1g.tar.gz.asc'')
http://deedbot.org/deed-427443-1.txt (save as ``binutils-2.24.tar.bz2.asc'')
http://deedbot.org/deed-427443-2.txt (save as ``busybox-1.23.2.tar.bz2.asc'')
http://deedbot.org/deed-427443-3.txt (save as ``expat-2.1.0.tar.gz.asc'')
http://deedbot.org/deed-427443-4.txt (save as ``fakeroot_1.18.4.orig.tar.bz2.asc'')
http://deedbot.org/deed-427443-5.txt (save as ``gcc-4.9.2.tar.bz2.asc'')
http://deedbot.org/deed-427443-6.txt (save as ``gdb-7.8.2.tar.xz.asc'')
http://deedbot.org/deed-427443-7.txt (save as ``gmp-6.0.0a.tar.xz.asc'')
http://deedbot.org/deed-427443-8.txt (save as ``linux-3.18.14.tar.xz.asc'')
http://deedbot.org/deed-427443-9.txt (save as ``m4-1.4.17.tar.xz.asc'')
http://deedbot.org/deed-427443-10.txt (save as ``mpc-1.0.3.tar.gz.asc'')
http://deedbot.org/deed-427443-11.txt (save as ``mpfr-3.1.2.tar.xz.asc'')
http://deedbot.org/deed-427443-12.txt (save as ``musl-1.1.8.tar.gz.asc'')
http://deedbot.org/deed-427443-13.txt (save as ``ncurses-5.9.tar.gz.asc'')
http://deedbot.org/deed-427443-14.txt (save as ``pkgconf-0.8.9.tar.bz2.asc'')
http://thebitcoin.foundation/v/V-20160220.tar.gz (save as ``V-20160220.tar.gz'')
http://thebitcoin.foundation/v/V-20160220.tar.gz.mod6.sig (save as ``V-20160220.tar.gz.mod6.sig'')
http://therealbitcoin.org/ml/btc-dev/attachments/20150727/rotor_4c86b82236ebc4926a6ace8fb8310f37b948c8f1.tar.gz (save as ``rotor.tar.gz'')
http://therealbitcoin.org/ml/btc-dev/attachments/20150727/rotor_b5a9f18591eff649d632065fc53ba5bc0c23d9ab.tar.gz.sig (save as ``rotor.tar.gz.sig'')
http://therealbitcoin.org/ml/btc-dev/attachments/20150808/rotor-db-configure-fix_a955ba9174ccb17790dc9d7c1e2a61794a1c803d.patch (save as ``rotor-db-configure-fix.patch'')
http://therealbitcoin.org/ml/btc-dev/attachments/20150808/rotor-db-configure-fix_22fa8bc88ce65d4b3dcf58ffd7611586d96aba15.patch.sig (save as ``rotor-db-configure-fix.patch.sig'')
0x04]: Get the build offline build script
Get build-bitcoind-offline-V99999.sh and place it in the build
directory (~/trb):
http://deedbot.org/build-bitcoind-offline-V99999.sh
Check that the offline build script has the correct hash:
sha512sum build-bitcoind-offline-V99999.sh
Should result in the following hash:
81fc52d3e7d4b92f8a02935e42d0f932480320d47dbc20bea8b3c2930da782598338e31125d2cfd0f3c24a74d33f6d42d8784b84956705511f208728a52c6342
0x05]: Execute the build
chmod +x build-bitcoind-offline-V99999.sh
./build-bitcoind-offline-V99999.sh
0x06]: When the build is successfully complete
When the build script is complete, a statically linked `bitcoind` will be
available in: ~/trb/rotor/TEST2/bitcoin/src/bitcoind
0x07]: If something goes wrong...
This offline build script creates a lot of artifact archives from the deeds
placed in the build directory (~/trb), a simple 'clean' will restore the
user back to the state before execution of the script.
To clean:
./build-bitcoind-offline-V99999.sh clean
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OFFLINE_BUILD_HOWTO.txt.mod6.sig
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://therealbitcoin.org/ml/btc-dev/attachments/20160830/OFFLINE_BUILD_HOWTO.txt.mod6.sig?sha1=21f8384d7fc2a8562a3a69d6b75b91fa7e29c65d>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: build-bitcoind-offline-V99999.sh
Type: application/x-sh
Size: 16942 bytes
Desc: not available
URL: <http://therealbitcoin.org/ml/btc-dev/attachments/20160830/build-bitcoind-offline-V99999.sh?sha1=7359ecbbed43e0166ed5aa5b86ee29029885cb39>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: build-bitcoind-offline-V99999.sh.mod6.sig
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://therealbitcoin.org/ml/btc-dev/attachments/20160830/build-bitcoind-offline-V99999.sh.mod6.sig?sha1=1d4947cc73538bbee033d968f55e4aa619bb8e38>
More information about the BTC-dev
mailing list