boxdot / gurk-rs

Signal Messenger client for terminal
GNU Affero General Public License v3.0
458 stars 33 forks source link

curve25519-dalek requirement issue preventing install on MacOS #169

Closed phil-bell closed 2 years ago

phil-bell commented 2 years ago

When running

cargo install --git https://github.com/boxdot/gurk-rs --tag v0.2.4 gurk

or

cargo install --git https://github.com/boxdot/gurk-rs gurk

the following error is returned

    Updating git repository `https://github.com/boxdot/gurk-rs`
  Installing gurk v0.2.4 (https://github.com/boxdot/gurk-rs?tag=v0.2.4#9ae89bc2)
    Updating crates.io index
    Updating git repository `https://github.com/whisperfish/presage.git`
    Updating git repository `https://github.com/whisperfish/libsignal-service-rs`
    Updating git repository `https://github.com/signalapp/libsignal-client`
    Updating git repository `https://github.com/signalapp/zkgroup`
    Updating git repository `https://github.com/signalapp/curve25519-dalek.git`
    Updating git repository `https://github.com/signalapp/poksho.git`
error: failed to compile `gurk v0.2.4 (https://github.com/boxdot/gurk-rs?tag=v0.2.4#9ae89bc2)`, intermediate artifacts can be found at `/var/folders/4w/_p_sb8_s5g1gw8vkw2z6khjm0000gn/T/cargo-installFcRJzB`

Caused by:
  failed to select a version for the requirement `curve25519-dalek = "^2.0.0"`
  candidate versions found which didn't match: 3.2.1
  location searched: Git repository https://github.com/signalapp/curve25519-dalek.git?branch=lizard2
  required by package `zkgroup v0.7.3 (https://github.com/signalapp/zkgroup?tag=v0.7.3#197c382e)`
      ... which satisfies git dependency `zkgroup` of package `libsignal-service v0.1.0 (https://github.com/whisperfish/libsignal-service-rs?rev=efd4ea86f57520d99141bb9c1c4b38a2ac646d6a#efd4ea86)`
      ... which satisfies git dependency `libsignal-service` of package `presage v0.2.0 (https://github.com/whisperfish/presage.git?rev=8fcfb65#8fcfb651)`
      ... which satisfies git dependency `presage` of package `gurk v0.2.4 (/Users/philipbell/.cargo/git/checkouts/gurk-rs-7cf8dc9d9ee78b42/9ae89bc)`

I'm not particularly familiar with Rust but looks to be a dependency issue relating to curve25519-dalek. I don't think it's because of an existing install of curve25519-dalek because this is a fresh install of cargo/rust and cargo install --list returns that I don't have anything installed.

Am I missing something obvious?

boxdot commented 2 years ago

Could you please add --locked to the cargo install invocation? That is,

cargo install --git https://github.com/boxdot/gurk-rs gurk --locked
phil-bell commented 2 years ago

that did the trick, thank you 🙏