On my laptop, I try to keep things fairly up-to-date: I perform source
updates daily on stable/10, and then update the installed ports (using
portmaster); I keep a local private mirror of the FreeBSD SVN repo
(which I update automagically overnight) locally on the laptop.

Back on 20 Nov, one of the ports that was updated was security/gnupg --
updating that port from gnupg-2.0 to -2.1.  I then discovered
(empirically) that gnupg-2.1 would not decrypt some rather important
information that I had stored, though at the time, I didn't know what
caused this (and I wasn't expecting such a silent POLA-contravening
change merely from a revision number bump).

After a bit of flailing about (on my part), I found that:

        portmaster -o security/gnupg20 gnupg-2.1\*

(thus forcing a reversion to gnupg-2.0) resolved the problem in a way
that preserved my access to the information in question.


This morning, one of the ports for which an update was attempted was
emulators/pipelight:

===>>> The following actions will be taken if you choose to proceed:
...
        Upgrade pipelight-0.2.7.3_5 to pipelight-0.2.7.3_6
        Install security/gnupg


Now, I plead "guilty as charged" to failing to note the stated intent to
try to "Install security/gnupg".  (That attempt failed, by the way:

...
===>  Installing for gnupg-2.1.0_1
===>   Registering installation for gnupg-2.1.0_1 as automatic
Installing gnupg-2.1.0_1...
pkg-static: gnupg-2.1.0_1 conflicts with gnupg20-2.0.26_2 (installs files into 
the same place).  Problematic file: /usr/local/bin/gpg-agent
....

But that's not the focus of this note.)

Apparently "gpg2 is a BUILD_DEPENDS for emulators/pipelight:

# Created by: Kris Moore <kmo...@freebsd.org>
# $FreeBSD: head/emulators/pipelight/Makefile 374755 2014-12-15 17:00:22Z 
kmoore $

PORTNAME=       pipelight
DISTVERSION=    0.2.7.3
PORTREVISION=   6
CATEGORIES=     emulators
...
BUILD_DEPENDS=  ${LOCALBASE}/bin/gpg2:${PORTSDIR}/security/gnupg \
                ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash
LIB_DEPENDS=    libxml2.so:${PORTSDIR}/textproc/libxml2
....


And I have "gpg2" available:

g1-253(11.0-C)[19] ls -lToi `which gpg2`
16133409 -r-xr-xr-x  1 root  wheel  - 652956 Nov 22 05:00:32 2014 
/usr/local/bin/gpg2


But I have it from security/gnupg20:

g1-253(11.0-C)[23] pkg-static which `which gpg2`
pkg-static: Warning: Major OS version upgrade detected.  Running "pkg-static 
install -f pkg" recommended
/usr/local/bin/gpg2 was installed by package gnupg20-2.0.26_2


Is there, perhaps, a way to construct the BUILD_DEPENDS for pipelight
so that it can use gpg2 from ... well, wherever it was installed
from, and revert to bringing in a new port only if gpg2 isn't
already available?

[PS: Don't let the above-quoted whines about "Major OS version
upgrade detected..." distract you: I had attempted the emulators/pipelight
update under stable/10, as described above.  At the time of this
writing, I had flipped the laptop to boot from a different slice,
where I am performing my daily update of head.]

Peace,
david
-- 
David H. Wolfskill                              da...@catwhisker.org
Actions have consequences ... as do inactions.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.

Attachment: pgpos53apNtj0.pgp
Description: PGP signature

Reply via email to