Re: signal-cli not working anymore (help porting)

From: Andrea Venturoli <ml_at_netfence.it>
Date: Tue, 12 Dec 2023 13:29:54 UTC
On 12/9/23 12:27, Andrea Venturoli wrote:

> Has anyone tried working on updating it?
> If so, what are the problems blocking such an update?

Well, no one answered, so I'm giving it a try in my spare time.

I started upgrading net-im/libsignal-client, but I already came to a 
showstopper (probably because I know close to nothing about rust :( ).

I've followed the Porters' Handbook on the make makesum/make 
cargo-crates/make makesum instructions.

However, the port build fails with:
>      Running `/usr/ports/net-im/libsignal-client/work/target/release/build/boring-sys-0dffa970497cad40/build-script-build`
> [boring-sys 2.1.0] cargo:rerun-if-env-changed=BORING_BSSL_PATH
> [boring-sys 2.1.0] cargo:warning=fetching boringssl git submodule
> [boring-sys 2.1.0] error: pathspec 'deps/boringssl' did not match any file(s) known to git
> [boring-sys 2.1.0] thread 'main' panicked at 'failed to fetch submodule - consider running `git submodule update --init --recursive deps/boringssl` yourself', /usr/ports/net-im/libsignal-client/work/boring-3809a7e1ca2f60a9495620da514f8432f148cde7/boring-sys/build.rs:447:17
> [boring-sys 2.1.0] stack backtrace:
> [boring-sys 2.1.0]    0: std::panicking::begin_panic
> [boring-sys 2.1.0]    1: build_script_build::main::{{closure}}
> [boring-sys 2.1.0]    2: core::result::Result<T,E>::unwrap_or_else
> [boring-sys 2.1.0]    3: build_script_build::main
> [boring-sys 2.1.0]    4: core::ops::function::FnOnce::call_once
> [boring-sys 2.1.0] note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
> The following warnings were emitted during compilation:
> 
> warning: fetching boringssl git submodule
> 
> error: failed to run custom build command for `boring-sys v2.1.0 (/usr/ports/net-im/libsignal-client/work/boring-3809a7e1ca2f60a9495620da514f8432f148cde7/boring-sys)`
> note: To improve backtraces for build dependencies, set the CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.
> 
> Caused by:
>   process didn't exit successfully: `/usr/ports/net-im/libsignal-client/work/target/release/build/boring-sys-0dffa970497cad40/build-script-build` (exit status: 101)
>   --- stdout
>   cargo:rerun-if-env-changed=BORING_BSSL_PATH
>   cargo:warning=fetching boringssl git submodule
> 
>   --- stderr
>   error: pathspec 'deps/boringssl' did not match any file(s) known to git
>   thread 'main' panicked at 'failed to fetch submodule - consider running `git submodule update --init --recursive deps/boringssl` yourself', /usr/ports/net-im/libsignal-client/work/boring-3809a7e1ca2f60a9495620da514f8432f148cde7/boring-sys/build.rs:447:17
>   stack backtrace:
>      0: std::panicking::begin_panic
>      1: build_script_build::main::{{closure}}
>      2: core::result::Result<T,E>::unwrap_or_else
>      3: build_script_build::main
>      4: core::ops::function::FnOnce::call_once
>   note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
> *** Error code 101
> 
> Stop.


I guess this is because of the following in Cargo.toml:
> # Use our fork of curve25519-dalek for zkgroup support.
> curve25519-dalek = { git = 'https://github.com/signalapp/curve25519-dalek', tag = 'signal-curve25519-4.0.0' }
> boring = { git = 'https://github.com/signalapp/boring', branch = 'libsignal' }


I tried playing with CARGO_USE_GITHUB=yes & Co., but I got up to nothing.


Any hint is appreciated.

  bye & Thanks
	av.