[MacPorts] #69827: got 0.98.2 and TLS library dependency woes
MacPorts
noreply at macports.org
Mon Apr 29 23:21:39 UTC 2024
#69827: got 0.98.2 and TLS library dependency woes
-----------------------+--------------------
Reporter: artkiver | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: |
-----------------------+--------------------
Comment (by artkiver):
Added another refactored Portfile.
Portfile.got0.98.2_defaultstoopensslsortaworks
Will:
install OK with %port -v install
Defaults to OpenSSL(3) but at least picks up the libretls dependency.
If LibreSSL or libressl-devel are already installed in MacPorts, it might
also work and use the libressl variant if installed with %port -v install
+libressl.
However, there are various caveats:
e.g. if just installing with no parameters and MacPorts with having
previously installed install got via %got -v install:
{{{
port -vst install
---> Computing dependencies for got..
Error: Can't install libressl because conflicting ports are active:
openssl
Error: Follow https://guide.macports.org/#project.tickets if you believe
there is a
bug.
Error: Processing of port got failed
}}}
Or, cleaning MacPorts entirely via sudo port -fp uninstall installed and
specifying %port -vst install
{{{
port -vst install
---> Computing dependencies for got.......................
The following dependencies will be installed:
bison
bison-runtime
db48
gdbm
gettext
gettext-runtime
gettext-tools-libs
gperf
libevent
libiconv
libretls
libtextstyle
m4
ncurses
openssl
openssl3
ossp-uuid
perl5.34
pkgconfig
readline
xz
zlib
Continue? [Y/n]:
---> Fetching distfiles for ncurses
---> ncurses-6.4.tar.gz does not exist in
/opt/local/var/macports/distfiles/ncurses
---> Attempting to fetch ncurses-6.4.tar.gz from
http://mirror.fcix.net/macports/distfiles/ncurses
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left
Speed
100 3527k 100 3527k 0 0 3377k 0 0:00:01 0:00:01 --:--:--
3379k
---> Verifying checksums for ncurses
---> Checksumming ncurses-6.4.tar.gz
---> Extracting ncurses
---> Extracting ncurses-6.4.tar.gz
Executing: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_ncurses/ncurses/work"
&& /usr/bin/gzip -dc
'/opt/local/var/macports/distfiles/ncurses/ncurses-6.4.tar.gz' |
/usr/bin/tar -xf -
Command failed: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_ncurses/ncurses/work"
&& /usr/bin/gzip -dc
'/opt/local/var/macports/distfiles/ncurses/ncurses-6.4.tar.gz' |
/usr/bin/tar -xf -
Killed by signal: 9
Error: Failed to extract ncurses: command execution failed
Error: See
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_ncurses/ncurses/main.log
for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe
there is a
bug.
Error: Processing of port got failed
}}}
I am still kind of tempted to submit a PR with this version, since %port
-v install and %port test both seem to function OK and I am guessing it
will pass GitHub Actions CI as a result?
Moreover, I think most MacPorts users who use libressl are probably savvy
enough to be able to work around the potential pitfalls?
Still, perhaps there is a smarter way to phrase this:
{{{
if {[catch {registry_active openssl}] && ![variant_isset libressl]} {
# openssl is installed and the libressl variant isn't manually
requested, default to openssl
default_variants +openssl
} elseif {([catch {registry_active libressl}] || [catch {registry_active
libressl-devel}]) && ![variant_isset openssl]} {
# either libressl or libressl-devel are already installed, and the
openssl variant is not explicitly requested, default to libressl
default_variants +libressl
}
}}}
Also, I do NOT for the life of me, understand why if I invoke % port -v
install +libressl on a clean MacPorts installation it has openssl and
openssl3 as dependencies?
e.g.
{{{
port -v install +libressl
---> Computing dependencies for got...................
The following dependencies will be installed:
bison
bison-runtime
db48
gdbm
gettext-runtime
libevent
libiconv
libressl
libtextstyle
m4
ncurses
openssl
openssl3
ossp-uuid
perl5.34
pkgconfig
readline
zlib
Continue? [Y/n]:
}}}
--
Ticket URL: <https://trac.macports.org/ticket/69827#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list