[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [Git][tpo/applications/tor-browser-build][main] 4 commits: Bug 41361: Reproducible conjure builds



Title: GitLab

Richard Pospesel pushed to branch main at The Tor Project / Applications / tor-browser-build

Commits:

  • 144d70db
    by Cecylia Bocovich at 2023-01-31T20:56:23+00:00
    Bug 41361: Reproducible conjure builds
    
    Add a conjure project and go dependencies to reproducibly build the
    conjure client on all platforms.
    
  • 76c3558e
    by Cecylia Bocovich at 2023-01-31T20:56:23+00:00
    Bug 41361: Add conjure line to torrc-defaults
    
    Add the ClientTransportPlugin line for conjure to the torrc-defaults for
    desktop all platforms.
    
  • c3c4bd9f
    by Cecylia Bocovich at 2023-01-31T20:56:23+00:00
    Bug 41361: Add conjure to tor-expert-bundle
    
  • d5a12bf8
    by Cecylia Bocovich at 2023-01-31T20:56:23+00:00
    Bug 41361: Move conjure README to the docs dir
    

18 changed files:

Changes:

  • projects/browser/Bundle-Data/PTConfigs/linux/torrc-defaults-appendix
    ... ... @@ -6,3 +6,6 @@ ClientTransportPlugin snowflake exec ./TorBrowser/Tor/PluggableTransports/snowfl
    6 6
     
    
    7 7
     ## webtunnel configuration
    
    8 8
     ClientTransportPlugin webtunnel exec ./TorBrowser/Tor/PluggableTransports/webtunnel-client
    
    9
    +
    
    10
    +## conjure configuration
    
    11
    +ClientTransportPlugin conjure exec ./TorBrowser/Tor/PluggableTransports/conjure-client -registerURL https://registration.refraction.network/api

  • projects/browser/Bundle-Data/PTConfigs/mac/torrc-defaults-appendix
    ... ... @@ -6,3 +6,6 @@ ClientTransportPlugin snowflake exec PluggableTransports/snowflake-client
    6 6
     
    
    7 7
     ## webtunnel configuration
    
    8 8
     ClientTransportPlugin webtunnel exec PluggableTransports/webtunnel-client
    
    9
    +
    
    10
    +## conjure configuration
    
    11
    +ClientTransportPlugin conjure exec PluggableTransports/conjure-client -registerURL https://registration.refraction.network/api

  • projects/browser/Bundle-Data/PTConfigs/windows/torrc-defaults-appendix
    ... ... @@ -6,3 +6,6 @@ ClientTransportPlugin snowflake exec TorBrowser\Tor\PluggableTransports\snowflak
    6 6
     
    
    7 7
     ## webtunnel configuration
    
    8 8
     ClientTransportPlugin webtunnel exec TorBrowser\Tor\PluggableTransports\webtunnel-client.exe
    
    9
    +
    
    10
    +## conjure configuration
    
    11
    +ClientTransportPlugin conjure exec TorBrowser\Tor\PluggableTransports\conjure-client.exe -registerURL https://registration.refraction.network/api

  • projects/browser/build
    ... ... @@ -100,13 +100,14 @@ mv [% c('input_files_by_name/noscript') %] "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b
    100 100
         rm -f aarch64/tor/pluggable_transports/bridges_list.*.txt aarch64/tor/pluggable_transports/pt_config.json
    
    101 101
       [% END -%]
    
    102 102
     
    
    103
    -  # Snowflake's README is a documentation shipped in tor-expert-bundle
    
    103
    +  # Move READMEs from tor-expert-bundle to the doc dir
    
    104 104
       mkdir -p "$TBDIR/$DOCSPATH/snowflake" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/snowflake"[% END %]
    
    105
    -  mv_tbdir tor/pluggable_transports/README.SNOWFLAKE.md "$DOCSPATH/snowflake/README.md"
    
    106
    -
    
    107
    -  # WebTunnel's README is a documentation shipped in tor-expert-bundle
    
    105
    +  
    
    108 106
       mkdir -p "$TBDIR/$DOCSPATH/webtunnel" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/webtunnel"[% END %]
    
    107
    +  mkdir -p "$TBDIR/$DOCSPATH/conjure" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/conjure"[% END %]
    
    108
    +  mv_tbdir tor/pluggable_transports/README.SNOWFLAKE.md "$DOCSPATH/snowflake/README.md"
    
    109 109
       mv_tbdir tor/pluggable_transports/README.WEBTUNNEL.md "$DOCSPATH/webtunnel/README.md"
    
    110
    +  mv_tbdir tor/pluggable_transports/README.CONJURE.md "$DOCSPATH/conjure/README.md"
    
    110 111
     
    
    111 112
       # Move the PTs to where TB expects them
    
    112 113
       mkdir -p "$TBDIR/$TORBINPATH" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$TORBINPATH"[% END %]
    

  • projects/bsbuffer/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/sergeyfrolov/bsbuffer
    
    4
    +git_hash: 94e85abb850729a5f54f383e8175e62931d04748
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/sergeyfrolov/bsbuffer
    
    13
    +
    
    14
    +input_files:
    
    15
    +  - project: container-image
    
    16
    +  - name: go
    
    17
    +    project: go

  • projects/conjure/build
    1
    +#!/bin/bash
    
    2
    +[% c("var/set_default_env") -%]
    
    3
    +[% pc('go', 'var/setup', { go_tarfile => c('input_files_by_name/go') }) %]
    
    4
    +distdir=/var/tmp/dist/[% project %]
    
    5
    +mkdir -p $distdir
    
    6
    +
    
    7
    +[% IF c("var/android") -%]
    
    8
    +  [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %]
    
    9
    +  # We need to explicitly set CGO_ENABLED with Go 1.13.x as the Android build
    
    10
    +  # breaks otherwise.
    
    11
    +  export CGO_ENABLED=1
    
    12
    +[% END -%]
    
    13
    +
    
    14
    +tar -C /var/tmp/dist -xf [% c('input_files_by_name/goptlib') %]
    
    15
    +tar -C /var/tmp/dist -xf [% c('input_files_by_name/snowflake-lib') %]
    
    16
    +tar -C /var/tmp/dist -xf [% c('input_files_by_name/gotapdance') %]
    
    17
    +
    
    18
    +mkdir -p /var/tmp/build
    
    19
    +tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.gz
    
    20
    +cd /var/tmp/build/[% project %]-[% c('version') %]
    
    21
    +
    
    22
    +mkdir -p "$GOPATH/src/gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/conjure.git"
    
    23
    +
    
    24
    +# Fix gopath location of versioned dependencies
    
    25
    +ln -sf "$GOPATH/src/git.torproject.org/pluggable-transports/snowflake.git" "$GOPATH/src/git.torproject.org/pluggable-transports/snowflake.git/v2"
    
    26
    +
    
    27
    +cd client
    
    28
    +go build -ldflags '-s'
    
    29
    +cp -a client[% IF c("var/windows") %].exe[% END %] $distdir/conjure-client[% IF c("var/windows") %].exe[% END %]
    
    30
    +
    
    31
    +cd ..
    
    32
    +cp -a README.md $distdir/README.CONJURE.md
    
    33
    +
    
    34
    +cd $distdir
    
    35
    +[% c('tar', {
    
    36
    +        tar_src => [ '.' ],
    
    37
    +        tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'),
    
    38
    +    }) %]

  • projects/conjure/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/conjure.git
    
    4
    +git_hash: b7d485734c3ab09ef3da818abb4b39ec27ef3a73
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +input_files:
    
    10
    +  - project: container-image
    
    11
    +  - name: go
    
    12
    +    project: go
    
    13
    +  - name: goptlib
    
    14
    +    project: goptlib
    
    15
    +  - name: gotapdance
    
    16
    +    project: gotapdance
    
    17
    +  - name: snowflake-lib
    
    18
    +    project: snowflake-lib
    
    19
    +  - name: '[% c("var/compiler") %]'
    
    20
    +    project: '[% c("var/compiler") %]'
    
    21
    +    enable: '[% c("var/android") %]'

  • projects/go-cmp/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/google/go-cmp
    
    4
    +git_hash: 8fa37b4dd109f12e42b131e485268768f18bcbf8 #v0.5.5
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/google/go-cmp
    
    13
    +  go_lib_deps:
    
    14
    +    - goxxerrors
    
    15
    +  build_go_lib_pre: |
    
    16
    +    cd "cmp"
    
    17
    +
    
    18
    +input_files:
    
    19
    +  - project: container-image
    
    20
    +  - name: go
    
    21
    +    project: go
    
    22
    +  - name: goxxerrors
    
    23
    +    project: goxxerrors

  • projects/goprotobuf/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/golang/protobuf
    
    4
    +git_hash: ae97035608a719c7a1c1c41bed0ae0744bdb0c6f #v1.5.2
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/golang/protobuf
    
    13
    +  go_lib_install:
    
    14
    +    - github.com/golang/protobuf/proto
    
    15
    +  go_lib_deps:
    
    16
    +    - protobuf
    
    17
    +
    
    18
    +input_files:
    
    19
    +  - project: container-image
    
    20
    +  - name: go
    
    21
    +    project: go
    
    22
    +  - name: protobuf
    
    23
    +    project: protobuf

  • projects/gotapdance/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/refraction-networking/gotapdance
    
    4
    +git_hash: 14162bd2967839d5d873645881f4a4761fb7bb48 #v1.3.0
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/refraction-networking/gotapdance
    
    13
    +  go_lib_deps:
    
    14
    +    - bsbuffer
    
    15
    +    - goprotobuf
    
    16
    +    - goptlib
    
    17
    +    - goxcrypto
    
    18
    +    - goxnet
    
    19
    +    - logrus
    
    20
    +    - obfs4-lib
    
    21
    +    - refraction-utls
    
    22
    +    - weightedrand
    
    23
    +  go_lib_install:
    
    24
    +    - github.com/refraction-networking/gotapdance/tapdance
    
    25
    +
    
    26
    +input_files:
    
    27
    +  - project: container-image
    
    28
    +  - name: go
    
    29
    +    project: go
    
    30
    +  - name: bsbuffer
    
    31
    +    project: bsbuffer
    
    32
    +  - name: goprotobuf
    
    33
    +    project: goprotobuf
    
    34
    +  - name: goptlib
    
    35
    +    project: goptlib
    
    36
    +  - name: goxcrypto
    
    37
    +    project: goxcrypto
    
    38
    +  - name: goxnet
    
    39
    +    project: goxnet
    
    40
    +  - name: logrus
    
    41
    +    project: logrus
    
    42
    +  - name: obfs4-lib
    
    43
    +    project: obfs4-lib
    
    44
    +  - name: refraction-utls
    
    45
    +    project: refraction-utls
    
    46
    +  - name: weightedrand
    
    47
    +    project: weightedrand

  • projects/logrus/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/sirupsen/logrus
    
    4
    +git_hash: bdc0db8ead3853c56b7cd1ac2ba4e11b47d7da6b #v1.8.1
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/sirupsen/logrus
    
    13
    +  go_lib_deps:
    
    14
    +    - goxcrypto
    
    15
    +    - goxsys
    
    16
    +
    
    17
    +input_files:
    
    18
    +  - project: container-image
    
    19
    +  - name: go
    
    20
    +    project: go
    
    21
    +  - name: goxcrypto
    
    22
    +    project: goxcrypto
    
    23
    +  - name: goxsys
    
    24
    +    project: goxsys

  • projects/obfs4-lib/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://gitlab.com/yawning/obfs4.git
    
    4
    +git_hash: 77af0cba934d73c4baeb709560bcfc9a9fbc661c
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: gitlab.com/yawning/obfs4.git
    
    13
    +  go_lib_deps:
    
    14
    +    - edwards25519
    
    15
    +    - edwards25519-extra
    
    16
    +    - goptlib
    
    17
    +    - goxcrypto
    
    18
    +    - goxnet
    
    19
    +    - siphash
    
    20
    +  go_lib_install:
    
    21
    +    - gitlab.com/yawning/obfs4.git/common/ntor
    
    22
    +    - gitlab.com/yawning/obfs4.git/transports/obfs4
    
    23
    +
    
    24
    +input_files:
    
    25
    +  - project: container-image
    
    26
    +  - name: go
    
    27
    +    project: go
    
    28
    +  - name: edwards25519
    
    29
    +    project: edwards25519
    
    30
    +  - name: edwards25519-extra
    
    31
    +    project: edwards25519-extra
    
    32
    +  - name: goptlib
    
    33
    +    project: goptlib
    
    34
    +  - name: goxcrypto
    
    35
    +    project: goxcrypto
    
    36
    +  - name: goxnet
    
    37
    +    project: goxnet
    
    38
    +  - name: siphash
    
    39
    +    project: siphash

  • projects/protobuf/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/protocolbuffers/protobuf-go
    
    4
    +git_hash: f2d1f6cbe10b90d22296ea09a7217081c2798009 #v1.26.0
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: google.golang.org/protobuf
    
    13
    +  go_lib_install:
    
    14
    +    - google.golang.org/protobuf/cmd/protoc-gen-go/internal_gengo
    
    15
    +    - google.golang.org/protobuf/compiler/protogen
    
    16
    +    - google.golang.org/protobuf/reflect/protodesc
    
    17
    +    - google.golang.org/protobuf/proto
    
    18
    +    - google.golang.org/protobuf/encoding/protojson
    
    19
    +
    
    20
    +input_files:
    
    21
    +  - project: container-image
    
    22
    +  - name: go
    
    23
    +    project: go

  • projects/snowflake-lib/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://git.torproject.org/pluggable-transports/snowflake.git
    
    4
    +git_hash: 01ae5b56e8399d29aa18605dc9add913d84dc553
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: git.torproject.org/pluggable-transports/snowflake.git
    
    13
    +  go_lib_install:
    
    14
    +    - git.torproject.org/pluggable-transports/snowflake.git/common/safelog
    
    15
    +
    
    16
    +input_files:
    
    17
    +  - project: container-image
    
    18
    +  - name: go
    
    19
    +    project: go

  • projects/tor-expert-bundle/build
    ... ... @@ -12,6 +12,7 @@ mkdir pluggable_transports && cd pluggable_transports
    12 12
     tar -xkf $rootdir/[% c('input_files_by_name/obfs4') %]
    
    13 13
     tar -xkf $rootdir/[% c('input_files_by_name/snowflake') %]
    
    14 14
     tar -xkf $rootdir/[% c('input_files_by_name/webtunnel') %]
    
    15
    +tar -xkf $rootdir/[% c('input_files_by_name/conjure') %]
    
    15 16
     
    
    16 17
     # copy in bridge lines for each pluggable transport
    
    17 18
     mv $rootdir/bridges_list.obfs4.txt .
    

  • projects/tor-expert-bundle/config
    ... ... @@ -20,6 +20,8 @@ input_files:
    20 20
         project: snowflake
    
    21 21
       - project: webtunnel
    
    22 22
         name: webtunnel
    
    23
    +  - name: conjure
    
    24
    +    project: conjure    
    
    23 25
       - filename: pt_config.json
    
    24 26
       - filename: bridges_list.obfs4.txt
    
    25 27
       - filename: bridges_list.meek-azure.txt
    

  • projects/tor-expert-bundle/pt_config.json
    ... ... @@ -3,7 +3,8 @@
    3 3
       "pluggableTransports" : {
    
    4 4
         "obfs4proxy" : "ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit exec ${pt_path}obfs4proxy${pt_extension}",
    
    5 5
         "snowflake" : "ClientTransportPlugin snowflake exec ${pt_path}snowflake-client${pt_extension}",
    
    6
    -    "webtunnel" : "ClientTransportPlugin webtunnel exec ${pt_path}webtunnel-client${pt_extension}"
    
    6
    +    "webtunnel" : "ClientTransportPlugin webtunnel exec ${pt_path}webtunnel-client${pt_extension}",
    
    7
    +    "conjure" : "ClientTransportPlugin conjure exec ${pt_path}conjure-client${pt_extension} -registerURL https://registration.refraction.network/api"
    
    7 8
       },
    
    8 9
       "bridges" : {
    
    9 10
         "meek-azure" : [
    

  • projects/weightedrand/config
    1
    +# vim: filetype=yaml sw=2
    
    2
    +version: '[% c("abbrev") %]'
    
    3
    +git_url: https://github.com/mroth/weightedrand
    
    4
    +git_hash: 0d642756f17d052e03f6ca68ee9264022f7d26af #v0.4.1
    
    5
    +filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
    
    6
    +container:
    
    7
    +  use_container: 1
    
    8
    +
    
    9
    +build: '[% c("projects/go/var/build_go_lib") %]'
    
    10
    +
    
    11
    +var:
    
    12
    +  go_lib: github.com/mroth/weightedrand
    
    13
    +
    
    14
    +input_files:
    
    15
    +  - project: container-image
    
    16
    +  - name: go
    
    17
    +    project: go

  • _______________________________________________
    tor-commits mailing list
    tor-commits@xxxxxxxxxxxxxxxxxxxx
    https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits