sbtenv / sbtenv

Groom your sbt environment.
MIT License
58 stars 24 forks source link

GPG verification during sbtenv install is not working ('No public key') #74

Open ewoutvonk opened 3 years ago

ewoutvonk commented 3 years ago
$ sbtenv install sbt-1.3.0
Installing 1.3.0:
Downloading 1.3.0 archives...
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
Checking GPG signature...
gpg: Signature made Wed Sep  4 08:02:22 2019 CEST
gpg:                using RSA key 2EE0EA64E40A89B84B2DF73499E82A75642AC823
gpg: Can't check signature: No public key
$ cd 1.3.0
$ ls -la
total 101632
drwxr-xr-x  4 *****  staff       128 Jan  5 16:02 .
drwxr-xr-x  4 *****  staff       128 Jan  5 16:02 ..
-rw-r--r--  1 *****  staff  51621435 Jan  5 16:02 sbt-1.3.0.tgz
-rw-r--r--  1 *****  staff       833 Jan  5 16:02 sbt-1.3.0.tgz.asc
$ gpg --verify --keyserver hkp://keyserver.ubuntu.com:80 sbt-1.3.0.tgz.asc sbt-1.3.0.tgz
gpg: Signature made Wed Sep  4 08:02:22 2019 CEST
gpg:                using RSA key 2EE0EA64E40A89B84B2DF73499E82A75642AC823
gpg: Can't check signature: No public key

This happens with gpg 1.4.23 and gpg 2.2.26 on macos Catalina. Seems the public key cannot be found for some reason. Because of this, sbt does not get installed.

This:

$ gpg --keyserver keyserver.ubuntu.com --recv-keys 0x2ee0ea64e40a89b84b2df73499e82a75642ac823
gpg: key 99E82A75642AC823: public key "sbt build tool <scalasbt@gmail.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1
$ gpg1 --verify --keyserver hkp://keyserver.ubuntu.com:80 sbt-1.3.0.tgz.asc sbt-1.3.0.tgz
gpg: Signature made Wed Sep  4 08:02:22 2019 CEST using RSA key ID 642AC823
gpg: Can't check signature: public key not found
$ gpg --verify --keyserver hkp://keyserver.ubuntu.com:80 sbt-1.3.0.tgz.asc sbt-1.3.0.tgz
gpg: Signature made Wed Sep  4 08:02:22 2019 CEST
gpg:                using RSA key 2EE0EA64E40A89B84B2DF73499E82A75642AC823
gpg: Good signature from "sbt build tool <scalasbt@gmail.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2EE0 EA64 E40A 89B8 4B2D  F734 99E8 2A75 642A C823

sort of fixes my issue if I use gpg2 (not with gpg1), sbt 1.3.0 gets installed. However, it does mention this WARNING:

$ sbtenv install sbt-1.3.0
Installing 1.3.0:
Downloading 1.3.0 archives...
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
############################################################################################################################################################################################################ 100.0%
Checking GPG signature...
gpg: Signature made Wed Sep  4 08:02:22 2019 CEST
gpg:                using RSA key 2EE0EA64E40A89B84B2DF73499E82A75642AC823
gpg: Good signature from "sbt build tool <scalasbt@gmail.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2EE0 EA64 E40A 89B8 4B2D  F734 99E8 2A75 642A C823
Extracting files...
1.3.0 installed.

I installed sbtenv using git clone:

$ git log -1
commit 413f03704e3511e63d97372e7e6ca72adff21152 (HEAD -> master, origin/master, origin/HEAD)
Merge: eed26b7 200adb3
Author: Matsuki, Hidenori <mazgi@users.noreply.github.com>
Date:   Mon Dec 7 01:01:16 2020 +0900

    Merge pull request #73 from JojiKoike/master

    Add 1.4.0, 1.4.1, 1.4.2, 1.4.3 and 1.4.4 suport

$ git fetch origin
$ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
DarrenBishop commented 3 years ago

I always have this issue whenever I am setting up a new Mac (i.e. every new contract); not sure why keys are not looked up in known key-servers, but as you've also suggested, adding the key fixes it.

gpg --keyserver hkp://keyserver.ubuntu.com:80 --receive-keys 99E82A75642AC823

Note this key (fingerprint) maybe old.

Is the suggestion to update/install the key during the sbtenv install process? Would this be maintained with patch updates?

rsenna commented 5 months ago

This is still an issue for me. I'm on Fedora 40, not macOS though. Installed sbtenv using homebrew for linux.