commit dc1fa8a4b18468440e589c685eafb266211595dc Author: JeremyRand jeremyrand@airmail.cc Date: Wed Dec 18 13:50:27 2019 +0000
Bug 30558: Optionally enable Namecoin
Namecoin will be enabled if all the following are true:
* rbm var/namecoin is set to 1 at build time * This is true for nightly on linux only * env var TOR_ENABLE_NAMECOIN=1 is set at run-time --- projects/aiohttp/build | 14 ++ projects/aiohttp/config | 11 ++ projects/aiohttp_socks/build | 14 ++ projects/aiohttp_socks/config | 11 ++ projects/aiorpcx/build | 14 ++ projects/aiorpcx/config | 11 ++ projects/async_timeout/build | 14 ++ projects/async_timeout/config | 11 ++ projects/attr/build | 14 ++ projects/attr/config | 11 ++ projects/certifi/build | 16 ++ projects/certifi/config | 13 ++ projects/certifi/roots_of_top_10_issuers.pem | 217 +++++++++++++++++++++ projects/chardet/build | 14 ++ projects/chardet/config | 11 ++ projects/dns/build | 17 ++ projects/dns/config | 11 ++ projects/ecdsa/build | 14 ++ projects/ecdsa/config | 11 ++ projects/electrum-nmc/build | 42 ++++ projects/electrum-nmc/config | 48 +++++ projects/firefox/build | 10 + projects/firefox/config | 5 + projects/firefox/namecoin-etld.patch | 25 +++ projects/firefox/namecoin-torbutton.patch | 105 ++++++++++ projects/goansicolor/config | 16 ++ projects/gobtcd/config | 32 +++ projects/gobtcd2/config | 32 +++ projects/gobtclog/config | 16 ++ projects/gobtcutil/config | 23 +++ projects/gobuildinfo/config | 31 +++ projects/goconfigurable/config | 16 ++ projects/godegoutils/config | 22 +++ projects/godexlogconfig/config | 40 ++++ projects/godns/config | 26 +++ projects/goeasyconfig/config | 35 ++++ projects/gogroupcache/config | 18 ++ projects/goisatty/config | 20 ++ projects/gokingpin/config | 23 +++ projects/gomadns/config | 40 ++++ projects/goncbtcjson/config | 20 ++ projects/goncrpcclient/config | 23 +++ projects/gopflag/config | 16 ++ projects/gopretty/config | 20 ++ projects/goservice/config | 44 +++++ projects/gosocks/config | 18 ++ projects/gosvcutils/config | 47 +++++ projects/gosystemd/config | 29 +++ projects/gotemplate/config | 16 ++ projects/gotext/config | 16 ++ projects/gotoml/config | 16 ++ projects/gounits/config | 16 ++ projects/gowebsocket/config | 16 ++ projects/goxcryptoed25519/config | 19 ++ projects/goxcryptoripemd160/config | 19 ++ projects/goxlog/config | 23 +++ projects/goxnetip/config | 24 +++ projects/goxsysunix/config | 19 ++ projects/idna/build | 14 ++ projects/idna/config | 11 ++ projects/idna_ssl/build | 14 ++ projects/idna_ssl/config | 11 ++ projects/jsonrpclib/build | 14 ++ projects/jsonrpclib/config | 11 ++ projects/multidict/build | 14 ++ projects/multidict/config | 11 ++ projects/ncdns/build | 31 +++ projects/ncdns/config | 82 ++++++++ projects/ncprop279/build | 32 +++ projects/ncprop279/config | 32 +++ projects/pyaes/build | 14 ++ projects/pyaes/config | 11 ++ projects/six/build | 14 ++ projects/six/config | 11 ++ projects/stemns/build | 25 +++ projects/stemns/config | 17 ++ projects/stemns/settings_port.py | 1 + projects/stemns/settings_services.py | 4 + .../Bundle-Data/linux/Data/Electrum-NMC/config | 6 + .../linux/Data/ncprop279/ncprop279.conf | 12 ++ projects/tor-browser/build | 25 ++- projects/tor-browser/config | 12 ++ projects/tor-browser/namecoin.patch | 83 ++++++++ projects/typing_extensions/build | 14 ++ projects/typing_extensions/config | 11 ++ projects/yarl/build | 14 ++ projects/yarl/config | 11 ++ rbm.conf | 5 + 88 files changed, 2041 insertions(+), 1 deletion(-)
diff --git a/projects/aiohttp/build b/projects/aiohttp/build new file mode 100644 index 0000000..e0f9400 --- /dev/null +++ b/projects/aiohttp/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/[% project %] +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %]/*.py ./[% project %]/ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/aiohttp/config b/projects/aiohttp/config new file mode 100644 index 0000000..79f8f64 --- /dev/null +++ b/projects/aiohttp/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 3.5.4 +git_url: https://github.com/aio-libs/aiohttp.git +git_hash: f6f647eb828fa738610d61481f11fa51e42599e9 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/aiohttp_socks/build b/projects/aiohttp_socks/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/aiohttp_socks/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/aiohttp_socks/config b/projects/aiohttp_socks/config new file mode 100644 index 0000000..3e24f2f --- /dev/null +++ b/projects/aiohttp_socks/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 0.2.2 +git_url: https://github.com/romis2012/aiohttp-socks.git +git_hash: 3252f4bdd37fb9a7360481977f800189cb3e3aca +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/aiorpcx/build b/projects/aiorpcx/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/aiorpcx/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/aiorpcx/config b/projects/aiorpcx/config new file mode 100644 index 0000000..fd8eb5a --- /dev/null +++ b/projects/aiorpcx/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 0.18.3 +git_url: https://github.com/kyuupichan/aiorpcX.git +git_hash: 4f39366e5dee3fd0a857e53f383c628807cd2715 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/async_timeout/build b/projects/async_timeout/build new file mode 100644 index 0000000..e0f9400 --- /dev/null +++ b/projects/async_timeout/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/[% project %] +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %]/*.py ./[% project %]/ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/async_timeout/config b/projects/async_timeout/config new file mode 100644 index 0000000..1e0faa7 --- /dev/null +++ b/projects/async_timeout/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 3.0.1 +git_url: https://github.com/aio-libs/async-timeout.git +git_hash: 992fd174a5282258228b74127914f4b8135bf30a +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/attr/build b/projects/attr/build new file mode 100644 index 0000000..296b5f4 --- /dev/null +++ b/projects/attr/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/[% project %] +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/src/[% project %]/*.py ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/attr/config b/projects/attr/config new file mode 100644 index 0000000..bf62203 --- /dev/null +++ b/projects/attr/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 19.1.0 +git_url: https://github.com/python-attrs/attrs.git +git_hash: 0356f0603eb5d8d4e7bae132ab80847fff4abcfc +# TODO: This Git repo uses GPG sigs; we should switch from commit hash to GPG verification. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/certifi/build b/projects/certifi/build new file mode 100644 index 0000000..7531001 --- /dev/null +++ b/projects/certifi/build @@ -0,0 +1,16 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +cp $rootdir/roots_of_top_10_issuers.pem ./[% project %]/cacert.pem + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/certifi/config b/projects/certifi/config new file mode 100644 index 0000000..cd1120d --- /dev/null +++ b/projects/certifi/config @@ -0,0 +1,13 @@ +# vim: filetype=yaml sw=2 +version: 2019.3.9 +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 + +input_files: + - project: container-image + - URL: https://files.pythonhosted.org/packages/source/c/certifi/certifi-%5B% c("version") %].tar.gz + sha256sum: b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae + # TODO: This package uses GPG sigs; we should switch from SHA256 hash to GPG verification. + - filename: roots_of_top_10_issuers.pem diff --git a/projects/certifi/roots_of_top_10_issuers.pem b/projects/certifi/roots_of_top_10_issuers.pem new file mode 100644 index 0000000..2d53dd8 --- /dev/null +++ b/projects/certifi/roots_of_top_10_issuers.pem @@ -0,0 +1,217 @@ +# This file contains the root CA's used by the top 10 HTTPS cert issuers for +# the Alexa Top 1 Million as of February 2019, according to Scott Helme's HTTPS +# issuer list and crt.sh's root CA database. Each root CA is copied verbatim +# from cacert.pem from certifi-2019.3.9. + +# Issuer: CN=DST Root CA X3 O=Digital Signature Trust Co. +# Subject: CN=DST Root CA X3 O=Digital Signature Trust Co. +# Label: "DST Root CA X3" +# Serial: 91299735575339953335919266965803778155 +# MD5 Fingerprint: 41:03:52:dc:0f:f7:50:1b:16:f0:02:8e:ba:6f:45:c5 +# SHA1 Fingerprint: da:c9:02:4f:54:d8:f6:df:94:93:5f:b1:73:26:38:ca:6a:d7:7c:13 +# SHA256 Fingerprint: 06:87:26:03:31:a7:24:03:d9:09:f1:05:e6:9b:cf:0d:32:e1:bd:24:93:ff:c6:d9:20:6d:11:bc:d6:77:07:39 +-----BEGIN CERTIFICATE----- +MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ +MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT +DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow +PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD +Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O +rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq +OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b +xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw +7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD +aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV +HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG +SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 +ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr +AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz +R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 +JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo +Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ +-----END CERTIFICATE----- + +# Issuer: CN=COMODO RSA Certification Authority O=COMODO CA Limited +# Subject: CN=COMODO RSA Certification Authority O=COMODO CA Limited +# Label: "COMODO RSA Certification Authority" +# Serial: 101909084537582093308941363524873193117 +# MD5 Fingerprint: 1b:31:b0:71:40:36:cc:14:36:91:ad:c4:3e:fd:ec:18 +# SHA1 Fingerprint: af:e5:d2:44:a8:d1:19:42:30:ff:47:9f:e2:f8:97:bb:cd:7a:8c:b4 +# SHA256 Fingerprint: 52:f0:e1:c4:e5:8e:c6:29:29:1b:60:31:7f:07:46:71:b8:5d:7e:a8:0d:5b:07:27:34:63:53:4b:32:b4:02:34 +-----BEGIN CERTIFICATE----- +MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af907YWwOGnTANBgkqhkiG9w0BAQwFADCB +hTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G +A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNV +BAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMTE5 +MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgT +EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR +Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCR +6FSS0gpWsawNJN3Fz0RndJkrN6N9I3AAcbxT38T6KhKPS38QVr2fcHK3YX/JSw8X +pz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZFGvnnLOFoIJ6dq9xkNfs/Q36nGz637CC +9BR++b7Epi9Pf5l/tfxnQ3K9DADWietrLNPtj5gcFKt+5eNu/Nio5JIk2kNrYrhV +/erBvGy2i/MOjZrkm2xpmfh4SDBF1a3hDTxFYPwyllEnvGfDyi62a+pGx8cgoLEf +Zd5ICLqkTqnyg0Y3hOvozIFIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZObT6Z ++pUX2nwzV0E8jVHtC7ZcryxjGt9XyD+86V3Em69FmeKjWiS0uqlWPc9vqv9JWL7w +qP/0uK3pN/u6uPQLOvnoQ0IeidiEyxPx2bvhiWC4jChWrBQdnArncevPDt09qZah +SL0896+1DSJMwBGB7FY79tOi4lu3sgQiUpWAk2nojkxl8ZEDLXB0AuqLZxUpaVIC +u9ffUGpVRr+goyhhf3DQw6KqLCGqR84onAZFdr+CGCe01a60y1Dma/RMhnEw6abf +Fobg2P9A3fvQQoh/ozM6LlweQRGBY84YcWsr7KaKtzFcOmpH4MN5WdYgGq/yapiq +crxXStJLnbsQ/LBMQeXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo0IwQDAdBgNVHQ4E +FgQUu69+Aj36pvE8hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB +/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAArx1UaEt65Ru2yyTUEUAJNMnMvl +wFTPoCWOAvn9sKIN9SCYPBMtrFaisNZ+EZLpLrqeLppysb0ZRGxhNaKatBYSaVqM +4dc+pBroLwP0rmEdEBsqpIt6xf4FpuHA1sj+nq6PK7o9mfjYcwlYRm6mnPTXJ9OV +2jeDchzTc+CiR5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8OoSgtZx8jb8uk2Intzna +FxiuvTwJaP+EmzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mFXLrrkguhxuhoqEwWsRqZ +CuhTLJK7oQkYdQxlqHvLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc1oBmpjIXUDgIiK +boHGhfKppC3n9KUkEEeDys30jXlYsQab5xoq2Z0B15R97QNKyvDb6KkBPvVWmcke +jkk9u+UJueBPSZI9FoJAzMxZxuY67RIuaTxslbH9qh17f4a+Hg4yRvv7E491f0yL +S0Zj/gA0QHDBw7mh3aZw4gSzQbzpgJHqZJx64SIDqZxubw5lT2yHh17zbqD5daWb +QOhTsiedSrnAdyGN/4fy3ryM7xfft0kL0fJuMAsaDk527RH89elWsn2/x20Kk4yl +0MC2Hb46TpSi125sC8KKfPog88Tk5c0NqMuRkrF8hey1FGlmDoLnzc7ILaZRfyHB +NVOFBkpdn627G190 +-----END CERTIFICATE----- + +# Issuer: CN=COMODO ECC Certification Authority O=COMODO CA Limited +# Subject: CN=COMODO ECC Certification Authority O=COMODO CA Limited +# Label: "COMODO ECC Certification Authority" +# Serial: 41578283867086692638256921589707938090 +# MD5 Fingerprint: 7c:62:ff:74:9d:31:53:5e:68:4a:d5:78:aa:1e:bf:23 +# SHA1 Fingerprint: 9f:74:4e:9f:2b:4d:ba:ec:0f:31:2c:50:b6:56:3b:8e:2d:93:c3:11 +# SHA256 Fingerprint: 17:93:92:7a:06:14:54:97:89:ad:ce:2f:8f:34:f7:f0:b6:6d:0f:3a:e3:a3:b8:4d:21:ec:15:db:ba:4f:ad:c7 +-----BEGIN CERTIFICATE----- +MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL +MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE +BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT +IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw +MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy +ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N +T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR +FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J +cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW +BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm +fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv +GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= +-----END CERTIFICATE----- + +# Issuer: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. +# Subject: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. +# Label: "Go Daddy Root Certificate Authority - G2" +# Serial: 0 +# MD5 Fingerprint: 80:3a:bc:22:c1:e6:fb:8d:9b:3b:27:4a:32:1b:9a:01 +# SHA1 Fingerprint: 47:be:ab:c9:22:ea:e8:0e:78:78:34:62:a7:9f:45:c2:54:fd:e6:8b +# SHA256 Fingerprint: 45:14:0b:32:47:eb:9c:c8:c5:b4:f0:d7:b5:30:91:f7:32:92:08:9e:6e:5a:63:e2:74:9d:d3:ac:a9:19:8e:da +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx +EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT +EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp +ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz +NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH +EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE +AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD +E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH +/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy +DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh +GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR +tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA +AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE +FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX +WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu +9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr +gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo +2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO +LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI +4uJEvlz36hz1 +-----END CERTIFICATE----- + +# Issuer: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust +# Subject: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust +# Label: "Baltimore CyberTrust Root" +# Serial: 33554617 +# MD5 Fingerprint: ac:b6:94:a5:9c:17:e0:d7:91:52:9b:b1:97:06:a6:e4 +# SHA1 Fingerprint: d4:de:20:d0:5e:66:fc:53:fe:1a:50:88:2c:78:db:28:52:ca:e4:74 +# SHA256 Fingerprint: 16:af:57:a9:f6:76:b0:ab:12:60:95:aa:5e:ba:de:f2:2a:b3:11:19:d6:44:ac:95:cd:4b:93:db:f3:f2:6a:eb +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ +RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD +VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX +DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y +ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy +VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr +mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr +IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK +mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu +XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy +dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye +jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1 +BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3 +DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92 +9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx +jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0 +Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz +ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS +R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp +-----END CERTIFICATE----- + +# Issuer: CN=Amazon Root CA 1 O=Amazon +# Subject: CN=Amazon Root CA 1 O=Amazon +# Label: "Amazon Root CA 1" +# Serial: 143266978916655856878034712317230054538369994 +# MD5 Fingerprint: 43:c6:bf:ae:ec:fe:ad:2f:18:c6:88:68:30:fc:c8:e6 +# SHA1 Fingerprint: 8d:a7:f9:65:ec:5e:fc:37:91:0f:1c:6e:59:fd:c1:cc:6a:6e:de:16 +# SHA256 Fingerprint: 8e:cd:e6:88:4f:3d:87:b1:12:5b:a3:1a:c3:fc:b1:3d:70:16:de:7f:57:cc:90:4f:e1:cb:97:c6:ae:98:19:6e +-----BEGIN CERTIFICATE----- +MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF +ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 +b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL +MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv +b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj +ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM +9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw +IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 +VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L +93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm +jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA +A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI +U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs +N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv +o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU +5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy +rqXRfboQnoZsG4q5WTP468SQvvG5 +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Global Root CA O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Global Root CA O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Global Root CA" +# Serial: 10944719598952040374951832963794454346 +# MD5 Fingerprint: 79:e4:a9:84:0d:7d:3a:96:d7:c0:4f:e2:43:4c:89:2e +# SHA1 Fingerprint: a8:98:5d:3a:65:e5:e5:c4:b2:d7:d6:6d:40:c6:dd:2f:b1:9c:54:36 +# SHA256 Fingerprint: 43:48:a0:e9:44:4c:78:cb:26:5e:05:8d:5e:89:44:b4:d8:4f:96:62:bd:26:db:25:7f:89:34:a4:43:c7:01:61 +-----BEGIN CERTIFICATE----- +MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD +QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT +MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j +b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG +9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB +CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 +nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt +43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P +T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 +gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO +BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR +TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw +DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr +hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg +06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF +PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls +YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk +CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= +-----END CERTIFICATE----- + diff --git a/projects/chardet/build b/projects/chardet/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/chardet/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/chardet/config b/projects/chardet/config new file mode 100644 index 0000000..94884fb --- /dev/null +++ b/projects/chardet/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 3.0.4 +git_url: https://github.com/chardet/chardet.git +git_hash: 9b8c5c2fb118d76c6beeab9affd01c332732a530 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/dns/build b/projects/dns/build new file mode 100644 index 0000000..c610ada --- /dev/null +++ b/projects/dns/build @@ -0,0 +1,17 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +shopt -s globstar + +unzip dnspython-[% c('version') %].zip + +mkdir -p /var/tmp/dist/[% project %] + +cd $rootdir/dnspython*/[% project %] +cp --parents **/*.py /var/tmp/dist/[% project %]/ + +cd /var/tmp/dist/ +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/dns/config b/projects/dns/config new file mode 100644 index 0000000..e18fc85 --- /dev/null +++ b/projects/dns/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 1.16.0 +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image + - URL: https://files.pythonhosted.org/packages/source/d/dnspython/dnspython-%5B% c("version") %].zip + sha256sum: 36c5e8e38d4369a08b6780b7f27d790a292b2b08eea01607865bf0936c558e01 + # TODO: This package uses GPG sigs; we should switch from SHA256 hash to GPG verification. diff --git a/projects/ecdsa/build b/projects/ecdsa/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/ecdsa/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/ecdsa/config b/projects/ecdsa/config new file mode 100644 index 0000000..e4ee567 --- /dev/null +++ b/projects/ecdsa/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 0.13.2 +git_url: https://github.com/warner/python-ecdsa.git +git_hash: bb359d32e93acc3eb4d216aff4ba0e7531599cfb +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/electrum-nmc/build b/projects/electrum-nmc/build new file mode 100644 index 0000000..8371744 --- /dev/null +++ b/projects/electrum-nmc/build @@ -0,0 +1,42 @@ +#!/bin/sh +[% c("var/set_default_env") -%] +mkdir -p /var/tmp/build/[% project %] +tar -C /var/tmp/build/[% project %] -xf [% project %]-[% c("version") %].tar.gz + +cd /var/tmp/build/[% project %]/[% project %]-* + +mkdir packages +cd packages + +[% FOREACH dep = ['aiohttp', 'aiohttp_socks', 'aiorpcx', 'async_timeout', 'attr', 'certifi', 'chardet', 'dns', 'ecdsa', 'idna', 'idna_ssl', 'jsonrpclib', 'multidict', 'pyaes', 'six', 'typing_extensions', 'yarl'] -%] + tar -C . -xf $rootdir/[% c('input_files_by_name/' _ dep) %] +[% END -%] + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a /var/tmp/build/[% project %]/[% project %]* ./Electrum-NMC + +cd ./Electrum-NMC +# Remove GUI, since it's not used in Tor Browser. +rm -r electrum_nmc/electrum/gui/ +# Remove plugins, since they're not used in Tor Browser. +rm -r electrum_nmc/electrum/plugins/*/ +# Remove wallet functionality, since it's not used in Tor Browser. +mv electrum_nmc/electrum/null_impl/null_wallet/*.py electrum_nmc/electrum/ +rm -r electrum_nmc/electrum/null_impl/ +# Remove some other files that aren't needed. We have to leave +# electrum-nmc.desktop there, because it's used in run_electrum_nmc's is_local +# detection. +rm -r .git* +rm -r .travis* +rm -r contrib/ +rm -r electrum_nmc/electrum/tests/ +rm -r pubkeys +rm -r tox.ini +cd ../ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/electrum-nmc/config b/projects/electrum-nmc/config new file mode 100644 index 0000000..57cabe5 --- /dev/null +++ b/projects/electrum-nmc/config @@ -0,0 +1,48 @@ +# vim: filetype=yaml sw=2 +filename: 'Electrum-NMC-[% c("version") %]-[% c("var/build_id") %].tar.gz' +version: 3.3.8 +git_url: https://github.com/namecoin/electrum-nmc.git +# Note: this Git hash has a couple of fixes on top of the 3.3.8 tag, which +# aren't yet in a release tag. +git_hash: 74b87da8f2ddbbf33c23cc8e63b0e1515f427d86 +# TODO: This Git repo uses GPG sigs; we should switch from commit hash to GPG verification. +var: + container: + use_container: 1 + +input_files: + - project: container-image + - project: aiohttp + name: aiohttp + - project: aiohttp_socks + name: aiohttp_socks + - project: aiorpcx + name: aiorpcx + - project: async_timeout + name: async_timeout + - project: attr + name: attr + - project: certifi + name: certifi + - project: chardet + name: chardet + - project: dns + name: dns + - project: ecdsa + name: ecdsa + - project: idna + name: idna + - project: idna_ssl + name: idna_ssl + - project: jsonrpclib + name: jsonrpclib + - project: multidict + name: multidict + - project: pyaes + name: pyaes + - project: six + name: six + - project: typing_extensions + name: typing_extensions + - project: yarl + name: yarl diff --git a/projects/firefox/build b/projects/firefox/build index 5179634..b42b301 100644 --- a/projects/firefox/build +++ b/projects/firefox/build @@ -92,11 +92,21 @@ fi export LDFLAGS="-Wl,--no-insert-timestamp" [% END -%]
+[% IF c("var/namecoin") %] + patch -p1 < $rootdir/namecoin-etld.patch +[% END -%] + [% IF ! c("var/android") %] # Place a copy of the Tor Launcher sources under browser/extensions tar -C browser/extensions -xf $rootdir/[% c('input_files_by_name/tor-launcher') %] [% END -%]
+[% IF c("var/namecoin") %] + pushd toolkit/torproject/torbutton + patch -p1 < $rootdir/namecoin-torbutton.patch + popd +[% END %] + rm -f configure rm -f js/src/configure
diff --git a/projects/firefox/config b/projects/firefox/config index c6f840b..0931a3f 100644 --- a/projects/firefox/config +++ b/projects/firefox/config @@ -182,3 +182,8 @@ input_files: - project: tba-translation name: tba-translation enable: '[% c("var/android") %]' + - filename: namecoin-torbutton.patch + enable: '[% c("var/namecoin") %]' + # TorButton patch authored by Arthur Edelstein, from https://github.com/arthuredelstein/torbutton/ branch 2.1.10-namecoin + - filename: namecoin-etld.patch + enable: '[% c("var/namecoin") %]' diff --git a/projects/firefox/namecoin-etld.patch b/projects/firefox/namecoin-etld.patch new file mode 100644 index 0000000..4a97f99 --- /dev/null +++ b/projects/firefox/namecoin-etld.patch @@ -0,0 +1,25 @@ +diff --git a/mobile/android/app/src/main/assets/publicsuffixlist b/mobile/android/app/src/main/assets/publicsuffixlist +index 7f834b1..6874b40 100644 +--- a/mobile/android/app/src/main/assets/publicsuffixlist ++++ b/mobile/android/app/src/main/assets/publicsuffixlist +@@ -3005,6 +3005,8 @@ edu.mn + gov.mn + london + fashion ++onion ++bit.onion + creditunion + vision + eurovision +diff --git a/netwerk/dns/effective_tld_names.dat b/netwerk/dns/effective_tld_names.dat +index 9dd962a..3402b20 100644 +--- a/netwerk/dns/effective_tld_names.dat ++++ b/netwerk/dns/effective_tld_names.dat +@@ -5480,6 +5480,7 @@ pro.om + + // onion : https://tools.ietf.org/html/rfc7686 + onion ++bit.onion + + // org : https://en.wikipedia.org/wiki/.org + org diff --git a/projects/firefox/namecoin-torbutton.patch b/projects/firefox/namecoin-torbutton.patch new file mode 100644 index 0000000..11cf7a1 --- /dev/null +++ b/projects/firefox/namecoin-torbutton.patch @@ -0,0 +1,105 @@ +diff --git a/chrome/content/tor-circuit-display.js b/chrome/content/tor-circuit-display.js +index 5ecbe7d..f771150 100644 +--- a/chrome/content/tor-circuit-display.js ++++ b/chrome/content/tor-circuit-display.js +@@ -49,7 +49,11 @@ let credentialsToNodeDataMap = new Map(), + knownCircuitIDs = new Map(), + // A mutable map that records the SOCKS credentials for the + // latest channels for each browser + domain. +- browserToCredentialsMap = new Map(); ++ browserToCredentialsMap = new Map(), ++ // A mutable map from stream id to .bit[.onion] domains ++ bitTargets = {}, ++ // A mutable map from .bit[.onion] domains to .onion domains. ++ bitToOnionMap = {}; + + // __trimQuotes(s)__. + // Removes quotation marks around a quoted string. +@@ -126,6 +130,28 @@ let getCircuitStatusByID = async function (aController, circuitID) { + return null; + }; + ++// __collectBitTargets(aContoller)__. ++// Watches for STREAM NEW events. When a NEW event occurs, we will see ++// the stream's target domain. If that target is a .bit domain, then ++// we want to be sure to record this so we can later record if it is ++// remapped to a .onion domain. ++let collectBitTargets = function (aController) { ++ return aController.watchEvent( ++ "STREAM", ++ streamEvent => streamEvent.StreamStatus === "NEW", ++ async (streamEvent) => { ++ logger.eclog(3, "new streamEvent:" + JSON.stringify(streamEvent)); ++ if (streamEvent && streamEvent.StreamID && streamEvent.Target) { ++ let targetDomain = streamEvent.Target.split(":")[0]; ++ if (targetDomain.endsWith(".bit") || ++ targetDomain.endsWith(".bit.onion")) { ++ bitTargets[streamEvent.StreamID] = Services.eTLD.getBaseDomainFromHost(targetDomain); ++ logger.eclog(3, "stream on .bit domain: " + targetDomain); ++ } ++ } ++ }); ++}; ++ + // __collectIsolationData(aController, updateUI)__. + // Watches for STREAM SENTCONNECT events. When a SENTCONNECT event occurs, then + // we assume isolation settings (SOCKS username+password) are now fixed for the +@@ -139,6 +165,15 @@ let collectIsolationData = function (aController, updateUI) { + "STREAM", + streamEvent => streamEvent.StreamStatus === "SENTCONNECT", + async (streamEvent) => { ++ logger.eclog(3, "sentconnect streamEvent:" + JSON.stringify(streamEvent)); ++ // Collect any stream target that might be an onion. ++ if (streamEvent && streamEvent.StreamID && streamEvent.Target) { ++ let targetDomain = streamEvent.Target.split(":")[0]; ++ if (targetDomain.endsWith(".onion")) { ++ bitToOnionMap[bitTargets[streamEvent.StreamID]] = targetDomain; ++ logger.eclog(3, "mapped " + bitTargets[streamEvent.StreamID] + " to " + targetDomain); ++ } ++ } + if (!knownCircuitIDs.get(streamEvent.CircuitID)) { + logger.eclog(3, "streamEvent.CircuitID: " + streamEvent.CircuitID); + knownCircuitIDs.set(streamEvent.CircuitID, true); +@@ -306,12 +341,14 @@ let updateCircuitDisplay = function () { + (i === 0 && nodeData[0].type !== "bridge") ? + ["span", { class: "circuit-guard-info" }, uiString("guard")] : null); + } +- if (domain.endsWith(".onion")) { ++ logger.eclog(3, "bit to onion map:" + JSON.stringify(bitToOnionMap) + ", domain: " + domain); ++ let mappedOnion = bitToOnionMap[domain]; ++ if (domain.endsWith(".onion") || mappedOnion) { + for (let i = 0; i < 3; ++i) { + li(uiString("relay")); + } + } +- li(domain); ++ li(domain, " ", mappedOnion ? ["span", { class: "circuit-ip-address" }, mappedOnion] : null); + // Hide the note about guards if we are using a bridge. + document.getElementById("circuit-guard-note-container").style.display = + (nodeData[0].type === "bridge") ? "none" : "block"; +@@ -418,6 +455,7 @@ let setupDisplay = function (ipcFile, host, port, password, enablePrefName) { + stopCollectingIsolationData = null, + stopCollectingBrowserCredentials = null, + stopEnsuringCorrectPopupDimensions = null, ++ stopCollectingBitTargets = null, + stop = function() { + syncDisplayWithSelectedTab(false); + if (myController) { +@@ -430,6 +468,9 @@ let setupDisplay = function (ipcFile, host, port, password, enablePrefName) { + if (stopEnsuringCorrectPopupDimensions) { + stopEnsuringCorrectPopupDimensions(); + } ++ if (stopCollectingBitTargets) { ++ stopCollectingBitTargets(); ++ } + myController = null; + } + }, +@@ -444,6 +485,7 @@ let setupDisplay = function (ipcFile, host, port, password, enablePrefName) { + stop(); + }); + syncDisplayWithSelectedTab(true); ++ stopCollectingBitTargets = collectBitTargets(myController); + stopCollectingIsolationData = collectIsolationData(myController, updateCircuitDisplay); + stopCollectingBrowserCredentials = collectBrowserCredentials(); + stopEnsuringCorrectPopupDimensions = ensureCorrectPopupDimensions(); diff --git a/projects/goansicolor/config b/projects/goansicolor/config new file mode 100644 index 0000000..6d1a73e --- /dev/null +++ b/projects/goansicolor/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/shiena/ansicolor.git +git_hash: a422bbe96644373c5753384a59d678f7d261ff10 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/shiena/ansicolor + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gobtcd/config b/projects/gobtcd/config new file mode 100644 index 0000000..56dcca4 --- /dev/null +++ b/projects/gobtcd/config @@ -0,0 +1,32 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/btcd.git +git_hash: 6cfad711d4ee7367b3ab9dc572097438dbca56eb +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/namecoin/btcd + go_lib_install: + - github.com/namecoin/btcd/btcjson + - github.com/namecoin/btcd/rpcclient + go_lib_deps: + - gobtclog + - gobtcutil + - gosocks + - gowebsocket + +input_files: + - project: container-image + - name: go + project: go + - name: gobtclog + project: gobtclog + - name: gobtcutil + project: gobtcutil + - name: gosocks + project: gosocks + - name: gowebsocket + project: gowebsocket diff --git a/projects/gobtcd2/config b/projects/gobtcd2/config new file mode 100644 index 0000000..5324737 --- /dev/null +++ b/projects/gobtcd2/config @@ -0,0 +1,32 @@ +# vim: filetype=yaml sw=2 + +# You're probably wondering why gobtcd2 is a thing, rather than being part of +# gobtcd. gobtcd builds the btcjson and rpcclient subpackages of btcd. +# gobtcd2 builds the btcec, chaincfg, chaincfg/chainhash, and wire subpackages +# of btcd. The former set depends on gobtcutil, which depends on the latter +# set. This is fine for the dependency management done by "go get", which +# operates on a per-package level rather than a per-repo level. Alas, since +# rbm instead operates on a per-repo level (since each project is one repo), +# splitting it up was necessary. + +version: '[% c("abbrev") %]' +git_url: '[% pc("gobtcd", "git_url") %]' +git_hash: '[% pc("gobtcd", "git_hash") %]' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/btcsuite/btcd + go_lib_install: + - github.com/btcsuite/btcd/btcec + - github.com/btcsuite/btcd/chaincfg + - github.com/btcsuite/btcd/chaincfg/chainhash + - github.com/btcsuite/btcd/wire + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gobtclog/config b/projects/gobtclog/config new file mode 100644 index 0000000..9fcb6c6 --- /dev/null +++ b/projects/gobtclog/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/btcsuite/btclog.git +git_hash: 84c8d2346e9fc8c7b947e243b9c24e6df9fd206a +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/btcsuite/btclog + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gobtcutil/config b/projects/gobtcutil/config new file mode 100644 index 0000000..63a8f90 --- /dev/null +++ b/projects/gobtcutil/config @@ -0,0 +1,23 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/btcsuite/btcutil.git +git_hash: 9e5f4b9a998d263e3ce9c56664a7816001ac8000 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/btcsuite/btcutil + go_lib_deps: + - gobtcd2 + - goxcryptoripemd160 + +input_files: + - project: container-image + - name: go + project: go + - name: gobtcd2 + project: gobtcd2 + - name: goxcryptoripemd160 + project: goxcryptoripemd160 diff --git a/projects/gobuildinfo/config b/projects/gobuildinfo/config new file mode 100644 index 0000000..5ca103c --- /dev/null +++ b/projects/gobuildinfo/config @@ -0,0 +1,31 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/hlandau/buildinfo.git +git_hash: 337a29b5499734e584d4630ce535af64c5fe7813 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/hlandau/buildinfo + go_lib_deps: + - goeasyconfig + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils + - name: goeasyconfig + project: goeasyconfig diff --git a/projects/goconfigurable/config b/projects/goconfigurable/config new file mode 100644 index 0000000..07bace5 --- /dev/null +++ b/projects/goconfigurable/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/hlandau/configurable.git +git_hash: 34642c4c8cbf56801d0e34f0e82187305983ac26 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/hlandau/configurable.v1 + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/godegoutils/config b/projects/godegoutils/config new file mode 100644 index 0000000..f4f380a --- /dev/null +++ b/projects/godegoutils/config @@ -0,0 +1,22 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/hlandau/degoutils.git +git_hash: 8fa2440b63444dad556d76366f1c3ee070c8a577 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/hlandau/degoutils + go_lib_install: + - github.com/hlandau/degoutils/net + go_lib_deps: + - goxnet + +input_files: + - project: container-image + - name: go + project: go + - name: goxnet + project: goxnet diff --git a/projects/godexlogconfig/config b/projects/godexlogconfig/config new file mode 100644 index 0000000..0dccbe2 --- /dev/null +++ b/projects/godexlogconfig/config @@ -0,0 +1,40 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/hlandau/dexlogconfig.git +git_hash: 244f29bd260884993b176cd14ef2f7631f6f3c18 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/hlandau/dexlogconfig + go_lib_deps: + - gobuildinfo + - goeasyconfig + - gosystemd + - goxlog + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils + - name: goxlog + project: goxlog + - name: goeasyconfig + project: goeasyconfig + - name: gosystemd + project: gosystemd + - name: gobuildinfo + project: gobuildinfo diff --git a/projects/godns/config b/projects/godns/config new file mode 100644 index 0000000..a005c32 --- /dev/null +++ b/projects/godns/config @@ -0,0 +1,26 @@ +version: 1.1.22 +git_url: https://github.com/miekg/dns.git +git_hash: 1e224ff5dead8366ed6fcdcb832794be42e73f0e +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/miekg/dns + go_lib_deps: + - goxcryptoed25519 + - goxnetip + - goxsysunix + +input_files: + - project: container-image + - name: go + project: go + - name: goxcryptoed25519 + project: goxcryptoed25519 + - name: goxnetip + project: goxnetip + - name: goxsysunix + project: goxsysunix diff --git a/projects/goeasyconfig/config b/projects/goeasyconfig/config new file mode 100644 index 0000000..a87283e --- /dev/null +++ b/projects/goeasyconfig/config @@ -0,0 +1,35 @@ +version: 1.0.17 +git_url: https://github.com/hlandau/easyconfig.git +git_hash: c31249162931b4963bbe6e501cccb60d23271a3f +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/hlandau/easyconfig.v1 + go_lib_deps: + - goconfigurable + - gosvcutils + - gotoml + - gopflag + - gokingpin + go_lib_install: + - gopkg.in/hlandau/easyconfig.v1 + - gopkg.in/hlandau/easyconfig.v1/cflag + +input_files: + - project: container-image + - name: go + project: go + - name: goconfigurable + project: goconfigurable + - name: gosvcutils + project: gosvcutils + - name: gotoml + project: gotoml + - name: gopflag + project: gopflag + - name: gokingpin + project: gokingpin diff --git a/projects/gogroupcache/config b/projects/gogroupcache/config new file mode 100644 index 0000000..5646737 --- /dev/null +++ b/projects/gogroupcache/config @@ -0,0 +1,18 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/golang/groupcache.git +git_hash: 611e8accdfc92c4187d399e95ce826046d4c8d73 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/golang/groupcache + go_lib_install: + - github.com/golang/groupcache/lru + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/goisatty/config b/projects/goisatty/config new file mode 100644 index 0000000..0f5fc17 --- /dev/null +++ b/projects/goisatty/config @@ -0,0 +1,20 @@ +version: 0.0.10 +git_url: https://github.com/mattn/go-isatty.git +git_hash: 88ba11cfdc67c7588b30042edf244b2875f892b6 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/mattn/go-isatty + go_lib_deps: + - goxsysunix + +input_files: + - project: container-image + - name: go + project: go + - name: goxsysunix + project: goxsysunix diff --git a/projects/gokingpin/config b/projects/gokingpin/config new file mode 100644 index 0000000..dd209f4 --- /dev/null +++ b/projects/gokingpin/config @@ -0,0 +1,23 @@ +version: 2.2.6 +git_url: https://github.com/alecthomas/kingpin.git +git_hash: 947dcec5ba9c011838740e680966fd7087a71d0d +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/alecthomas/kingpin.v2 + go_lib_deps: + - gotemplate + - gounits + +input_files: + - project: container-image + - name: go + project: go + - name: gotemplate + project: gotemplate + - name: gounits + project: gounits diff --git a/projects/gomadns/config b/projects/gomadns/config new file mode 100644 index 0000000..a53f410 --- /dev/null +++ b/projects/gomadns/config @@ -0,0 +1,40 @@ +version: 2.0.1 +git_url: https://github.com/hlandau/madns.git +git_hash: 26979b3e4b5aa3e0bd53cf0a014f9eaf43b578e3 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/hlandau/madns.v2 + go_lib_deps: + - godns + - gobuildinfo + - goxlog + go_lib_install: + - gopkg.in/hlandau/madns.v2 + - gopkg.in/hlandau/madns.v2/merr + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils + - name: godns + project: godns + - name: gobuildinfo + project: gobuildinfo + - name: goxlog + project: goxlog diff --git a/projects/goncbtcjson/config b/projects/goncbtcjson/config new file mode 100644 index 0000000..708bfc8 --- /dev/null +++ b/projects/goncbtcjson/config @@ -0,0 +1,20 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/ncbtcjson.git +git_hash: 0d2f400334751d149ca21bfd4535c9d2274f7264 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/namecoin/ncbtcjson + go_lib_deps: + - gobtcd + +input_files: + - project: container-image + - name: go + project: go + - name: gobtcd + project: gobtcd diff --git a/projects/goncrpcclient/config b/projects/goncrpcclient/config new file mode 100644 index 0000000..122700c --- /dev/null +++ b/projects/goncrpcclient/config @@ -0,0 +1,23 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/ncrpcclient.git +git_hash: 858e1a5acd8b2da56462f50323633cdf2fe80977 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/namecoin/ncrpcclient + go_lib_deps: + - gobtcd + - goncbtcjson + +input_files: + - project: container-image + - name: go + project: go + - name: gobtcd + project: gobtcd + - name: goncbtcjson + project: goncbtcjson diff --git a/projects/gopflag/config b/projects/gopflag/config new file mode 100644 index 0000000..16141cc --- /dev/null +++ b/projects/gopflag/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/ogier/pflag.git +git_hash: 45c278ab3607870051a2ea9040bb85fcb8557481 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/ogier/pflag + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gopretty/config b/projects/gopretty/config new file mode 100644 index 0000000..a2ceecf --- /dev/null +++ b/projects/gopretty/config @@ -0,0 +1,20 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/kr/pretty.git +git_hash: 71e7e49937503c662b9b636fd6b2c14b1aa818a5 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/kr/pretty + go_lib_deps: + - gotext + +input_files: + - project: container-image + - name: go + project: go + - name: gotext + project: gotext diff --git a/projects/goservice/config b/projects/goservice/config new file mode 100644 index 0000000..67eff54 --- /dev/null +++ b/projects/goservice/config @@ -0,0 +1,44 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/hlandau/service.git +git_hash: 0496f910e39ef577ba805f512f6e1b80d652c4b9 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/hlandau/service.v2 + go_lib_deps: + - gosvcutils + - goeasyconfig + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +targets: + linux-i686: + var: + arch_deps: + - libcap-dev:i386 + linux-x86_64: + var: + arch_deps: + - libcap-dev + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils + - name: gosvcutils + project: gosvcutils + - name: goeasyconfig + project: goeasyconfig diff --git a/projects/gosocks/config b/projects/gosocks/config new file mode 100644 index 0000000..1d9a5a8 --- /dev/null +++ b/projects/gosocks/config @@ -0,0 +1,18 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/btcsuite/go-socks.git +git_hash: 4720035b7bfd2a9bb130b1c184f8bbe41b6f0d0f +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/btcsuite/go-socks + go_lib_install: + - github.com/btcsuite/go-socks/socks + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gosvcutils/config b/projects/gosvcutils/config new file mode 100644 index 0000000..b941e05 --- /dev/null +++ b/projects/gosvcutils/config @@ -0,0 +1,47 @@ +version: 1.0.10 +git_url: https://github.com/hlandau/svcutils.git +git_hash: c25dac49e50cbbcbef8c81b089f56156f4067729 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: gopkg.in/hlandau/svcutils.v1 + go_lib_install: + - gopkg.in/hlandau/svcutils.v1 + - gopkg.in/hlandau/svcutils.v1/caps + - gopkg.in/hlandau/svcutils.v1/chroot + - gopkg.in/hlandau/svcutils.v1/dupfd + - gopkg.in/hlandau/svcutils.v1/exepath + - gopkg.in/hlandau/svcutils.v1/passwd + - gopkg.in/hlandau/svcutils.v1/pidfile + - gopkg.in/hlandau/svcutils.v1/setuid + - gopkg.in/hlandau/svcutils.v1/systemd + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +targets: + linux-i686: + var: + arch_deps: + - libcap-dev:i386 + linux-x86_64: + var: + arch_deps: + - libcap-dev + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils diff --git a/projects/gosystemd/config b/projects/gosystemd/config new file mode 100644 index 0000000..daa9f79 --- /dev/null +++ b/projects/gosystemd/config @@ -0,0 +1,29 @@ +version: 21 +git_url: https://github.com/coreos/go-systemd.git +git_hash: d3cd4ed1dbcf5835feba465b180436db54f20228 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/coreos/go-systemd + go_lib_install: + - github.com/coreos/go-systemd/journal + build_go_lib_pre: | + [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + + tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] + export PATH="/var/tmp/dist/binutils/bin:$PATH" + + export CGO_ENABLED=1 + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils diff --git a/projects/gotemplate/config b/projects/gotemplate/config new file mode 100644 index 0000000..62cddc9 --- /dev/null +++ b/projects/gotemplate/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/alecthomas/template.git +git_hash: fb15b899a75114aa79cc930e33c46b577cc664b1 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/alecthomas/template + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gotext/config b/projects/gotext/config new file mode 100644 index 0000000..5493329 --- /dev/null +++ b/projects/gotext/config @@ -0,0 +1,16 @@ +version: 0.1.0 +git_url: https://github.com/kr/text.git +git_hash: e2ffdb16a802fe2bb95e2e35ff34f0e53aeef34f +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/kr/text + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gotoml/config b/projects/gotoml/config new file mode 100644 index 0000000..c40c582 --- /dev/null +++ b/projects/gotoml/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/BurntSushi/toml.git +git_hash: 3012a1dbe2e4bd1391d42b32f0577cb7bbc7f005 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/BurntSushi/toml + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gounits/config b/projects/gounits/config new file mode 100644 index 0000000..8cf7395 --- /dev/null +++ b/projects/gounits/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/alecthomas/units.git +git_hash: f65c72e2690dc4b403c8bd637baf4611cd4c069b +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/alecthomas/units + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/gowebsocket/config b/projects/gowebsocket/config new file mode 100644 index 0000000..1e103d3 --- /dev/null +++ b/projects/gowebsocket/config @@ -0,0 +1,16 @@ +version: '[% c("abbrev") %]' +git_url: https://github.com/btcsuite/websocket.git +git_hash: 31079b6807923eb23992c421b114992b95131b55 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/btcsuite/websocket + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/goxcryptoed25519/config b/projects/goxcryptoed25519/config new file mode 100644 index 0000000..d065de1 --- /dev/null +++ b/projects/goxcryptoed25519/config @@ -0,0 +1,19 @@ +# vim: filetype=yaml sw=2 +version: '[% c("abbrev") %]' +git_url: '[% pc("goxcrypto", "git_url") %]' +git_hash: '[% pc("goxcrypto", "git_hash") %]' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: golang.org/x/crypto + go_lib_install: + - golang.org/x/crypto/ed25519 + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/goxcryptoripemd160/config b/projects/goxcryptoripemd160/config new file mode 100644 index 0000000..b14e71d --- /dev/null +++ b/projects/goxcryptoripemd160/config @@ -0,0 +1,19 @@ +# vim: filetype=yaml sw=2 +version: '[% c("abbrev") %]' +git_url: '[% pc("goxcrypto", "git_url") %]' +git_hash: '[% pc("goxcrypto", "git_hash") %]' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: golang.org/x/crypto + go_lib_install: + - golang.org/x/crypto/ripemd160 + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/goxlog/config b/projects/goxlog/config new file mode 100644 index 0000000..fa47d30 --- /dev/null +++ b/projects/goxlog/config @@ -0,0 +1,23 @@ +version: 1.0.0 +git_url: https://github.com/hlandau/xlog.git +git_hash: 197ef798aed28e08ed3e176e678fda81be993a31 +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: github.com/hlandau/xlog + go_lib_deps: + - goisatty + - goansicolor + +input_files: + - project: container-image + - name: go + project: go + - name: goisatty + project: goisatty + - name: goansicolor + project: goansicolor diff --git a/projects/goxnetip/config b/projects/goxnetip/config new file mode 100644 index 0000000..db1c85e --- /dev/null +++ b/projects/goxnetip/config @@ -0,0 +1,24 @@ +# vim: filetype=yaml sw=2 +version: '[% c("abbrev") %]' +git_url: '[% pc("goxnet", "git_url") %]' +git_hash: '[% pc("goxnet", "git_hash") %]' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: golang.org/x/net + go_lib_install: + - golang.org/x/net/ipv4 + - golang.org/x/net/ipv6 + go_lib_deps: + - goxsysunix + +input_files: + - project: container-image + - name: go + project: go + - name: goxsysunix + project: goxsysunix diff --git a/projects/goxsysunix/config b/projects/goxsysunix/config new file mode 100644 index 0000000..a2fe03c --- /dev/null +++ b/projects/goxsysunix/config @@ -0,0 +1,19 @@ +# vim: filetype=yaml sw=2 +version: '[% c("abbrev") %]' +git_url: '[% pc("goxsys", "git_url") %]' +git_hash: '[% pc("goxsys", "git_hash") %]' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +build: '[% c("projects/go/var/build_go_lib") %]' + +var: + container: + use_container: 1 + go_lib: golang.org/x/sys + go_lib_install: + - golang.org/x/sys/unix + +input_files: + - project: container-image + - name: go + project: go diff --git a/projects/idna/build b/projects/idna/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/idna/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/idna/config b/projects/idna/config new file mode 100644 index 0000000..c499a80 --- /dev/null +++ b/projects/idna/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 2.8 +git_url: https://github.com/kjd/idna.git +git_hash: 1cdf175e259b299be76f49c3ddc8794214f9931f +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/idna_ssl/build b/projects/idna_ssl/build new file mode 100644 index 0000000..6f65b22 --- /dev/null +++ b/projects/idna_ssl/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %].py ./[% project %].py + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/idna_ssl/config b/projects/idna_ssl/config new file mode 100644 index 0000000..7331027 --- /dev/null +++ b/projects/idna_ssl/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 1.1.0 +git_url: https://github.com/aio-libs/idna-ssl.git +git_hash: 1ab8304810f8bd9a880c0a013276cddd3c6e9551 +# TODO: This Git repo uses GPG sigs; we should switch from commit hash to GPG verification. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/jsonrpclib/build b/projects/jsonrpclib/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/jsonrpclib/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/jsonrpclib/config b/projects/jsonrpclib/config new file mode 100644 index 0000000..e5b469b --- /dev/null +++ b/projects/jsonrpclib/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 0.4.0 +git_url: https://github.com/tcalmant/jsonrpclib.git +git_hash: fe9fcf2c99973507f7055d6c9e05e155957c2549 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/multidict/build b/projects/multidict/build new file mode 100644 index 0000000..e0f9400 --- /dev/null +++ b/projects/multidict/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/[% project %] +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %]/*.py ./[% project %]/ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/multidict/config b/projects/multidict/config new file mode 100644 index 0000000..d242b08 --- /dev/null +++ b/projects/multidict/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 4.5.2 +git_url: https://github.com/aio-libs/multidict.git +git_hash: bd40998bf220820a7d636d5f02912c8d4abcac23 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/ncdns/build b/projects/ncdns/build new file mode 100644 index 0000000..5ec0bc8 --- /dev/null +++ b/projects/ncdns/build @@ -0,0 +1,31 @@ +#!/bin/bash +[% c("var/set_default_env") -%] +[% pc('go', 'var/setup', { go_tarfile => c('input_files_by_name/go') }) %] +[% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %] + +tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %] +export PATH="/var/tmp/dist/binutils/bin:$PATH" +export CGO_ENABLED=1 +distdir=/var/tmp/dist/[% project %] +mkdir -p $distdir + +[% FOREACH dep = c("var/go_lib_deps") -%] + tar -C /var/tmp/dist -xf [% c('input_files_by_name/' _ dep) %] +[% END -%] + +mkdir -p $GOPATH/src/github.com/namecoin +tar -C $GOPATH/src/github.com/namecoin -xf [% project %]-[% c('version') %].tar.gz +mv $GOPATH/src/github.com/namecoin/ncdns-[% c('version') %] $GOPATH/src/github.com/namecoin/ncdns + +TAGS="-tags no_namecoin_tls" + +[% FOREACH inst IN c("var/go_lib_install") %] + go install $TAGS -ldflags '-s' [% inst %] +[% END %] + +cd /var/tmp/dist + +[% c('tar', { + tar_src => [ 'gopath' ], + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), +}) %] diff --git a/projects/ncdns/config b/projects/ncdns/config new file mode 100644 index 0000000..0785e51 --- /dev/null +++ b/projects/ncdns/config @@ -0,0 +1,82 @@ +#version: 0.0.9 +# Using latest master branch because we need the stream isolation and +# disable_namecoin_tlsa features. Once they're in a tagged release, we'll go +# back to using a version number here. +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/ncdns.git +# Using latest master branch because we need the stream isolation and +# disable_namecoin_tlsa features. Once they're in a tagged release, we'll go +# back to using a hash that corresponds to a tag here. +git_hash: 'ca0fe5552806a4275f38468c4d3fbcb2cba1cb79' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +var: + container: + use_container: 1 + go_lib_deps: + - gogroupcache + - godegoutils + - godexlogconfig + - goncbtcjson + - goncrpcclient + - gobtcd + - gopretty + - godns + - gomadns + - goeasyconfig + - goservice + - goxnet + go_lib_install: + - github.com/namecoin/ncdns + - github.com/namecoin/ncdns/backend + - github.com/namecoin/ncdns/namecoin + - github.com/namecoin/ncdns/ncdomain + - github.com/namecoin/ncdns/ncdt + - github.com/namecoin/ncdns/rrtourl + - github.com/namecoin/ncdns/server + - github.com/namecoin/ncdns/testutil + - github.com/namecoin/ncdns/tlshook + - github.com/namecoin/ncdns/util + +targets: + linux-i686: + var: + arch_deps: + - libcap-dev:i386 + linux-x86_64: + var: + arch_deps: + - libcap-dev + +input_files: + - project: container-image + - name: go + project: go + - name: '[% c("var/compiler") %]' + project: '[% c("var/compiler") %]' + - name: binutils + project: binutils + - name: godexlogconfig + project: godexlogconfig + - name: goeasyconfig + project: goeasyconfig + - name: goservice + project: goservice + - name: gogroupcache + project: gogroupcache + - name: goncbtcjson + project: goncbtcjson + - name: goncrpcclient + project: goncrpcclient + - name: gobtcd + project: gobtcd + - name: godns + project: godns + - name: gomadns + project: gomadns + - name: gopretty + project: gopretty + - name: godegoutils + project: godegoutils + - name: goxnet + project: goxnet diff --git a/projects/ncprop279/build b/projects/ncprop279/build new file mode 100644 index 0000000..a035277 --- /dev/null +++ b/projects/ncprop279/build @@ -0,0 +1,32 @@ +#!/bin/bash +[% c("var/set_default_env") -%] +[% pc('go', 'var/setup', { go_tarfile => c('input_files_by_name/go') }) %] +export CGO_ENABLED=0 +distdir=/var/tmp/dist/[% project %] +mkdir -p $distdir + +[% FOREACH dep = c("var/go_lib_deps") -%] + tar -C /var/tmp/dist -xf [% c('input_files_by_name/' _ dep) %] +[% END -%] + +mkdir -p $GOPATH/src/github.com/namecoin +tar -C $GOPATH/src/github.com/namecoin -xf [% project %]-[% c('version') %].tar.gz +mv $GOPATH/src/github.com/namecoin/ncprop279-[% c('version') %] $GOPATH/src/github.com/namecoin/ncprop279 + +TAGS="-tags no_namecoin_tls" + +go install $TAGS -ldflags '-s' github.com/namecoin/ncprop279 + +[% IF c("var/linux-x86_64") -%] + GOPATHBIN="${GOPATH}/bin" +[% ELSE -%] + GOPATHBIN="${GOPATH}/bin/${GOOS}_${GOARCH}" +[% END -%] + +cp -a $GOPATHBIN/ncprop279 $distdir/ + +cd $distdir +[% c('tar', { + tar_src => [ '.' ], + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/ncprop279/config b/projects/ncprop279/config new file mode 100644 index 0000000..5d4ee51 --- /dev/null +++ b/projects/ncprop279/config @@ -0,0 +1,32 @@ +#version: '0.0.2' +# Using latest master branch because we need the stream isolation feature. +# Once it's in a tagged release, we'll go back to using a version number here. +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/ncprop279.git +# Using latest master branch because we need the stream isolation feature. +# Once it's in a tagged release, we'll go back to using a hash that corresponds +# to a tag here. +git_hash: '7bdd741d70258407f66aab52b24788f1acccc56b' +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz' + +var: + container: + use_container: 1 + go_lib_deps: + - godns + - goeasyconfig + - gomadns + - ncdns + +input_files: + - project: container-image + - name: go + project: go + - name: godns + project: godns + - name: goeasyconfig + project: goeasyconfig + - name: gomadns + project: gomadns + - name: ncdns + project: ncdns diff --git a/projects/pyaes/build b/projects/pyaes/build new file mode 100644 index 0000000..0747718 --- /dev/null +++ b/projects/pyaes/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %] ./[% project %] + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/pyaes/config b/projects/pyaes/config new file mode 100644 index 0000000..6fba344 --- /dev/null +++ b/projects/pyaes/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 1.6.1 +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image + - URL: https://files.pythonhosted.org/packages/source/p/pyaes/pyaes-%5B% c("version") %].tar.gz + sha256sum: 02c1b1405c38d3c370b085fb952dd8bea3fadcee6411ad99f312cc129c536d8f + # TODO: This version doesn't show up as a Git tag; where did it come from? diff --git a/projects/six/build b/projects/six/build new file mode 100644 index 0000000..6f65b22 --- /dev/null +++ b/projects/six/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %].py ./[% project %].py + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/six/config b/projects/six/config new file mode 100644 index 0000000..e0945d1 --- /dev/null +++ b/projects/six/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 1.12.0 +git_url: https://github.com/benjaminp/six.git +git_hash: d927b9e27617abca8dbf4d66cc9265ebbde261d6 +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/stemns/build b/projects/stemns/build new file mode 100644 index 0000000..3784894 --- /dev/null +++ b/projects/stemns/build @@ -0,0 +1,25 @@ +#!/bin/sh +[% c("var/set_default_env") -%] +distdir=/var/tmp/dist/StemNS +mkdir /var/tmp/build +mkdir /var/tmp/dist + +# Extract StemNS +tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.gz + +cp -a /var/tmp/build/[% project %]-[% c('version') %] ${distdir} + +# Extract Stem +tar -C /var/tmp/build -xf stem-[% c("var/stem-version") %].tar.gz + +cp -a /var/tmp/build/stem-[% c("var/stem-version") %]/stem ${distdir}/stem + +# Apply settings +cp -a settings_port.py settings_services.py ${distdir}/ + +cd /var/tmp/dist/ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/stemns/config b/projects/stemns/config new file mode 100644 index 0000000..6c83335 --- /dev/null +++ b/projects/stemns/config @@ -0,0 +1,17 @@ +# vim: filetype=yaml sw=2 +version: '[% c("abbrev") %]' +git_url: https://github.com/namecoin/StemNS.git +git_hash: '32ed59be344d6bb949faa4a2bf70ae058bfe4d21' +filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.gz' +var: + container: + use_container: 1 + stem-version: 1.7.1 + +input_files: + - project: container-image + - URL: 'https://files.pythonhosted.org/packages/source/s/stem/stem-%5B% c("var/stem-version") %].tar.gz' + sha256sum: c9eaf3116cb60c15995cbd3dec3a5cbc50e9bb6e062c4d6d42201e566f498ca2 + # TODO: This sha256sum was grabbed from PyPI and hasn't been verified. We should probably switch to using an OpenPGP sig. + - filename: settings_port.py + - filename: settings_services.py diff --git a/projects/stemns/settings_port.py b/projects/stemns/settings_port.py new file mode 100644 index 0000000..e9f290d --- /dev/null +++ b/projects/stemns/settings_port.py @@ -0,0 +1 @@ +tor_control_port = 9151 diff --git a/projects/stemns/settings_services.py b/projects/stemns/settings_services.py new file mode 100644 index 0000000..57897f0 --- /dev/null +++ b/projects/stemns/settings_services.py @@ -0,0 +1,4 @@ +_service_to_command = { + "bit.onion": ['TorBrowser/ncprop279/ncprop279', '--conf=TorBrowser/Data/ncprop279/ncprop279.conf'], + "bit": ['TorBrowser/ncprop279/ncprop279', '--conf=TorBrowser/Data/ncprop279/ncprop279.conf'], +} diff --git a/projects/tor-browser/Bundle-Data/linux/Data/Electrum-NMC/config b/projects/tor-browser/Bundle-Data/linux/Data/Electrum-NMC/config new file mode 100644 index 0000000..df1ab17 --- /dev/null +++ b/projects/tor-browser/Bundle-Data/linux/Data/Electrum-NMC/config @@ -0,0 +1,6 @@ +{ + "proxy": "socks5:127.0.0.1:9150::", + "rpcpassword": "password", + "rpcport": 8336, + "rpcuser": "user" +} \ No newline at end of file diff --git a/projects/tor-browser/Bundle-Data/linux/Data/ncprop279/ncprop279.conf b/projects/tor-browser/Bundle-Data/linux/Data/ncprop279/ncprop279.conf new file mode 100644 index 0000000..afcba1b --- /dev/null +++ b/projects/tor-browser/Bundle-Data/linux/Data/ncprop279/ncprop279.conf @@ -0,0 +1,12 @@ +[ncprop279] + +namecoinrpcaddress="127.0.0.1:8336" +namecoinrpcusername="user" +namecoinrpcpassword="password" +namecoinrpctimeout="10000" +onlyonion="true" + +[xlog] + +# Uncomment this to enable debug logging +#severity="DEBUG" diff --git a/projects/tor-browser/build b/projects/tor-browser/build index 2979658..2c72e03 100644 --- a/projects/tor-browser/build +++ b/projects/tor-browser/build @@ -61,6 +61,11 @@ tar -C "$TBDIR[% IF c("var/osx") %]/Contents/Resources[% END %]" -xf [% c('input cat > ${TB_STAGE_DIR}/Browser/start-tor-browser << 'RBM_TB_EOF' [% INCLUDE 'RelativeLink/start-tor-browser' -%] RBM_TB_EOF + [% IF c("var/namecoin") %] + pushd ${TB_STAGE_DIR}/Browser/ + patch -p1 < $rootdir/namecoin.patch + popd + [% END %] chmod +x ${TB_STAGE_DIR}/Browser/start-tor-browser # Make sure we get the desired scrollbar behavior with Gtk3, see bug 27546. GTK_SETTINGS_DIR=${TB_STAGE_DIR}/Browser/.config/gtk-3.0 @@ -70,6 +75,17 @@ RBM_TB_EOF
tar -C ${TB_STAGE_DIR} -xf [% c('input_files_by_name/firefox') %]/tor-browser.tar.gz tar -C "$TBDIR[% IF ! c("var/osx") %]/TorBrowser[% END %]" -xf [% c('input_files_by_name/tor') %]/tor.tar.gz +[% IF c("var/namecoin") %] + # Extract Electrum-NMC + tar -C "$TBDIR/TorBrowser" -xf [% c('input_files_by_name/electrum-nmc') %] + + # Extract ncprop279 + mkdir "$TBDIR/TorBrowser/ncprop279" + tar -C "$TBDIR/TorBrowser/ncprop279" -xf [% c('input_files_by_name/ncprop279') %] + + # Extract StemNS + tar -C "$TBDIR/TorBrowser" -xf [% c('input_files_by_name/stemns') %] +[% END %]
[% IF c("var/linux"); SET bundledata_osname = 'linux'; @@ -105,7 +121,14 @@ tar -C "$TBDIR[% IF ! c("var/osx") %]/TorBrowser[% END %]" -xf [% c('input_files
mkdir -p "$TBDIR/$DOCSPATH" cp -a Bundle-Data/Docs/* "$TBDIR/$DOCSPATH" -tar -C Bundle-Data/[% bundledata_osname %] -c . | tar -C "$TBDIR[% IF ! c("var/osx") %]/TorBrowser[% END %]" -x +[% IF c("var/namecoin") %] + EXCLUDE_ELECTRUM="" + EXCLUDE_NCPROP279="" +[% ELSE %] + EXCLUDE_ELECTRUM="--exclude=*Electrum-NMC*" + EXCLUDE_NCPROP279="--exclude=*ncprop279*" +[% END %] +tar -C Bundle-Data/[% bundledata_osname %] "${EXCLUDE_ELECTRUM}" "${EXCLUDE_NCPROP279}" -c . | tar -C "$TBDIR[% IF ! c("var/osx") %]/TorBrowser[% END %]" -x
cat Bundle-Data/PTConfigs/[% bundledata_osname %]/torrc-defaults-appendix >> "$TBDIR/$TORCONFIGPATH/torrc-defaults" [% IF ! c("var/snowflake") %] diff --git a/projects/tor-browser/config b/projects/tor-browser/config index 819ebad..85d8bff 100644 --- a/projects/tor-browser/config +++ b/projects/tor-browser/config @@ -14,6 +14,7 @@ var: - unzip - bzip2 - xz-utils + - patch
targets: linux-i686: @@ -104,3 +105,14 @@ input_files: name: apktool sha256sum: a0f116e8916d6f21160e1559847bb8b8c32ee71900f321cafeadbe37b87ebcc1 enable: '[% c("var/android") %]' + - name: electrum-nmc + project: electrum-nmc + enable: '[% c("var/namecoin") %]' + - name: ncprop279 + project: ncprop279 + enable: '[% c("var/namecoin") %]' + - name: stemns + project: stemns + enable: '[% c("var/namecoin") %]' + - filename: namecoin.patch + enable: '[% c("var/namecoin") %]' diff --git a/projects/tor-browser/namecoin.patch b/projects/tor-browser/namecoin.patch new file mode 100644 index 0000000..f0c2cd0 --- /dev/null +++ b/projects/tor-browser/namecoin.patch @@ -0,0 +1,83 @@ +diff -ru RelativeLink/start-tor-browser RelativeLinkNamecoin/start-tor-browser +--- RelativeLink/start-tor-browser 2019-11-03 06:56:36.062938844 +0000 ++++ RelativeLinkNamecoin/start-tor-browser 2019-12-13 12:00:58.000000000 +0000 +@@ -169,6 +169,11 @@ + detach=0 + fi + ++# We can't detach and enable Namecoin at the same time.. ++if [ "$TOR_ENABLE_NAMECOIN" = 1 -a "$detach" -eq 1 ]; then ++ detach=0 ++fi ++ + if [ "$show_output" -eq 0 ]; then + # If the user hasn't requested 'debug mode' or --help, close stdout and stderr, + # to keep Firefox and the stuff loaded by/for it (including the +@@ -352,6 +357,55 @@ + # + # The --class parameter was added to fix bug 11102. + ++# The Namecoin support in this script is a placeholder proof-of-concept only. ++# In the real world this would be moved to Tor Launcher. ++terminate_namecoin () { ++ echo "Terminating Namecoin..." ++ kill ${ELECTRUM_NMC_PID} ++ kill -s SIGKILL ${STEM_NS_PID} ++ echo "Terminated Namecoin." ++} ++if [ "${TOR_ENABLE_NAMECOIN}" = 1 ]; then ++ python3 -c 'import sys; exit(0) if sys.version_info[:2] >= (3, 6) else exit(1)' ++ if [ "$?" -ne 0 ]; then ++ complain "Namecoin requires at least Python 3.6." ++ exit 1 ++ fi ++ ++ if [ "$show_usage" -eq 1 ]; then ++ # No help exists for Namecoin ++ TOR_ENABLE_NAMECOIN=0 ++ elif [ "$detach" -eq 1 ] ; then ++ # No support yet for detached Namecoin ++ TOR_ENABLE_NAMECOIN=0 ++ elif [ "$log_output" -eq 1 -a "$show_output" -eq 1 ]; then ++ # No support yet for logging Namecoin ++ TOR_ENABLE_NAMECOIN=0 ++ elif [ "$show_output" -eq 1 ]; then ++ # Launch Namecoin in verbose mode ++ echo "Launching Namecoin..." ++ trap terminate_namecoin SIGINT SIGTERM ++ grep --quiet "__LeaveStreamsUnattached 1" TorBrowser/Data/Tor/torrc-defaults || echo "__LeaveStreamsUnattached 1" >> TorBrowser/Data/Tor/torrc-defaults ++ TorBrowser/Electrum-NMC/run_electrum_nmc daemon -v --dir "TorBrowser/Data/Electrum-NMC/" & ++ ELECTRUM_NMC_PID=$! ++ python3 TorBrowser/StemNS/poc.py & ++ STEM_NS_PID=$! ++ echo "Launched Namecoin." ++ else ++ # Launch Namecoin ++ trap terminate_namecoin SIGINT SIGTERM ++ grep --quiet "__LeaveStreamsUnattached 1" TorBrowser/Data/Tor/torrc-defaults || echo "__LeaveStreamsUnattached 1" >> TorBrowser/Data/Tor/torrc-defaults ++ TorBrowser/Electrum-NMC/run_electrum_nmc daemon --dir "TorBrowser/Data/Electrum-NMC/" & ++ ELECTRUM_NMC_PID=$! ++ python3 TorBrowser/StemNS/poc.py & ++ STEM_NS_PID=$! ++ fi ++fi ++ ++if [ "${TOR_ENABLE_NAMECOIN}" != 1 ]; then ++ perl -i -p -e 's/__LeaveStreamsUnattached 1\n//' TorBrowser/Data/Tor/torrc-defaults ++fi ++ + if [ "$show_usage" -eq 1 ]; then + # Display Firefox help, then our help + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \ +@@ -373,4 +427,10 @@ + -profile TorBrowser/Data/Browser/profile.default "${@}" > "$logfile" 2>&1 </dev/null + fi + +-exit $? ++FIREFOX_EXIT_CODE=$? ++ ++if [ "${TOR_ENABLE_NAMECOIN}" = 1 ]; then ++ terminate_namecoin ++fi ++ ++exit ${FIREFOX_EXIT_CODE} diff --git a/projects/typing_extensions/build b/projects/typing_extensions/build new file mode 100644 index 0000000..2628ad1 --- /dev/null +++ b/projects/typing_extensions/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/ +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %]/src_py3/[% project %].py ./[% project %].py + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/typing_extensions/config b/projects/typing_extensions/config new file mode 100644 index 0000000..4926d82 --- /dev/null +++ b/projects/typing_extensions/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 3.7.4 +git_url: https://github.com/python/typing.git +git_hash: baf63c5924a2b9695175df5d47ced40596024b78 +# TODO: This Git repo uses GPG sigs; we should switch from commit hash to GPG verification. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/projects/yarl/build b/projects/yarl/build new file mode 100644 index 0000000..e0f9400 --- /dev/null +++ b/projects/yarl/build @@ -0,0 +1,14 @@ +#!/bin/bash +[% c("var/set_default_env") -%] + +tar xvf [% project %]-[% c('version') %].tar.gz + +mkdir -p /var/tmp/dist/[% project %] +cd /var/tmp/dist/ + +cp -a $rootdir/[% project %]*/[% project %]/*.py ./[% project %]/ + +[% c('tar', { + tar_src => '.', + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/yarl/config b/projects/yarl/config new file mode 100644 index 0000000..506bec1 --- /dev/null +++ b/projects/yarl/config @@ -0,0 +1,11 @@ +# vim: filetype=yaml sw=2 +version: 1.3.0 +git_url: https://github.com/aio-libs/yarl.git +git_hash: 619cc2203b8888fb9ad552c4a3da6f8b31d1fbac +# TODO: This Git repo doesn't use GPG sigs. We should pester them about that. +filename: "[% project %]-[% c('version') %]-[% c('var/build_id') %].tar.gz" +var: + container: + use_container: 1 +input_files: + - project: container-image diff --git a/rbm.conf b/rbm.conf index 0fe7acb..31f60bb 100644 --- a/rbm.conf +++ b/rbm.conf @@ -233,6 +233,7 @@ targets: android_min_api_x86: 16 android_min_api_x86_64: 21 snowflake: 0 + namecoin: 0 CC: '$ANDROID_NDK_HOME/[% c("var/toolchain_arch") %]/bin/clang' CXX: '$ANDROID_NDK_HOME/[% c("var/toolchain_arch") %]/bin/clang++' container: @@ -275,6 +276,8 @@ targets: # We only build snowflake on the alpha and nightly # channels for now. snowflake: '[% c("var/alpha") || c("var/nightly") %]' + # Only build Namecoin for linux on nightly + namecoin: '[% c("var/nightly") %]' container: suite: wheezy arch: amd64 @@ -327,6 +330,7 @@ targets: # We only build snowflake on the alpha and nightly # channels for now. snowflake: '[% c("var/alpha") || c("var/nightly") %]' + namecoin: 0 deps: - build-essential - python @@ -355,6 +359,7 @@ targets: # We only build snowflake on the alpha and nightly # channels for now. snowflake: '[% c("var/alpha") || c("var/nightly") %]' + namecoin: 0 deps: - build-essential - python