Page MenuHomeFreeBSD

Updated Ports: net-im/libsignal, net-im/signal-cli, net-im/signald, net-im/zkgroup
Needs ReviewPublic

Authored by sec.research.2005_gmail.com on Mar 28 2022, 6:11 PM.
Tags
Referenced Files
Unknown Object (File)
Tue, Apr 30, 11:05 AM
Unknown Object (File)
Mon, Apr 29, 4:47 AM
Unknown Object (File)
Thu, Apr 11, 6:14 PM
Unknown Object (File)
Mar 18 2024, 6:07 AM
Unknown Object (File)
Dec 23 2023, 9:54 AM
Unknown Object (File)
Nov 27 2023, 1:20 AM
Unknown Object (File)
Nov 26 2023, 3:28 PM
Unknown Object (File)
Nov 23 2023, 5:06 AM

Details

Reviewers
koobs
0mp
grembo
Group Reviewers
rust
Summary

Updated all Signal Messenger related ports - libsignal, signal-cli, signald, and zkgroup to their respective latest version.

Some notes

  • libsignal and zkgroup are Rust packages, and signal-cli and signald are Java.
  • libsignal-client has been renamed upsteream to libsignal, so I renamed the port to match upstream naming.
  • signal-cli now needs JDK 17+, and signald still needs JDK 11 (JDK 16+ not supported)
  • Both signal-cli and signald now depend on sqlite JDBC driver.
    • The port version of sqlite JDBC driver is very old and cannot be used.
    • For now I have just kept the jar that gets bundled as part of the build and not replaced it with the port version. This jar includes the FreeBSD native library for sqlite. The native library is extracted at runtime to $TMPDIR which defaults to /tmp.
    • However, this is problematic when /tmp is mounted with noexec, in which case the following works.
mkdir -p $HOME/TMP
env _JAVA_OPTIONS=-Djava.io.tmpdir=$HOME/TMP
/usr/local/bin/signal-cli 
#OR
/usr/local/bin/signald

I was wondering if there is a better way to manage this. Or will a simple pkg message will suffice.

Test Plan

I have tested these ports on my local machine (AMD64, FreeBSD 13.0-RELEASE-p10). I would be happy to follow a more rigorous test plan if provided directions. I am fairly new to FreeBSD porting, so would appreciate any direction.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 44932
Build 41820: arc lint + arc unit

Event Timeline

sec.research.2005_gmail.com retitled this revision from Updated Ports: net-im/libsignal, net-im/signal-cli, net-im/signald to Updated Ports: net-im/libsignal, net-im/signal-cli, net-im/signald, net-im/zkgroup.Mar 28 2022, 6:53 PM
sec.research.2005_gmail.com edited the summary of this revision. (Show Details)
sec.research.2005_gmail.com edited the test plan for this revision. (Show Details)
tcberner added inline comments.
net-im/signal-cli/Makefile
19

RUN_DEPENDS on net-im/libsignal should not be necessary due to the LIB_DEPENDS

net-im/signald/Makefile
136–137

^ don't comment, remove -- unless there is a reason for it to stick around, but then add a comment on why :)

net-im/zkgroup/Makefile
4

^ PORTREVISION can be removed as DISTVERSION increases

sec.research.2005_gmail.com marked 3 inline comments as done.
sec.research.2005_gmail.com edited the test plan for this revision. (Show Details)

All comments addressed as per the review.

Hey, thanks a lot for the submission and I'm really sorry, I've not got a notification by email.

I cannot test the patch at the moment, but there seems to be a growing interest in the community: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267407. Perhaps you could coordinate some testing with other folks.

pkg-message would be sufficient. In the future, however, we could create a shell script wrapper for signal-cli, which sets appropriate variables (e.g., tries /tmp first, then /var/tmp, and finally $HOME/.cache/).