Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Oct 2015 17:26:03 +0100
From:      Miroslav Lachman <000.fbsd@quip.cz>
To:        Bryan Drewery <bdrewery@FreeBSD.org>
Cc:        "freebsd-ports@FreeBSD.org" <freebsd-ports@FreeBSD.org>
Subject:   Re: FreeBSD Port: ports-mgmt/poudriere - unneeded dependencies for options command
Message-ID:  <5632489B.3080301@quip.cz>
In-Reply-To: <56324348.1000109@FreeBSD.org>
References:  <56321ECD.2020303@quip.cz> <56323AC7.8010301@FreeBSD.org> <56324230.1060901@quip.cz> <56324348.1000109@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Bryan Drewery wrote on 10/29/2015 17:03:
> On 10/29/15 8:58 AM, Miroslav Lachman wrote:
>> Bryan Drewery wrote on 10/29/2015 16:27:
>>> On 10/29/15 6:27 AM, Miroslav Lachman wrote:
>>>> I usually use poudriere for larger set of packages (about 500) so this
>>>> problem was hidden to me but now I needed just minimal set with 2
>>>> packages.
>>>> `poudriere options` gives me 26 options dialogs for things which are not
>>>> dependencies and for wrong versions.
>>>> It gives me options for Git, bzr and more strange - for perl5-5.16 even
>>>> if I have perl5=5.20 set as default version in make.conf
>>>
>>> It's likely due to things like perl.conf and php.conf leaking in from
>>> the host. The options command isn't jailed so it sees these things. It's
>>> a known issue at least.
>>
>> OK, this can explain perl5-5.16 issue, because I have this in host's
>> make.conf
>>
>> DEFAULT_VERSIONS= perl=5.16 mysql=5.5m php=55 python=2.7 apache=2.4
>>
>> ## https://wiki.freebsd.org/Ports/Options/OptionsNG
>> ## OptionsNG sets DOCS, EXAMPLES and NLS as default - we do not need them
>> OPTIONS_UNSET= X11 GUI CUPS DOCS EXAMPLES NLS
>>
>> But what about other silly dependecies like Git, Bzr, Subversion - it
>> seems unrelated to me.
>>
>
> I've only just realized this but it is probably due to '.if exists()'
> checks in Ports. There's so much logic in /usr/ports/Mk that I am not
> sure what other 'perl.conf'-like things there are besides the php one.
> There may be others as well.
>
> As for the perl one, I thought a hack went into Poudriere or ports to
> avoid it.

I did a quick upgrade of all packages in host system and now I got 
perl5-5.20 dialog which is right.

Packages in host

# pkg info -E \*
ca_root_nss-3.20
ccze-0.2.1_4
curl-7.44.0
dialog4ports-0.1.5_2
dmidecode-2.12
expiretable-0.6_1
freetype2-2.6_1
ifstat-1.1_5
iftop-1.0.p4
iperf-2.0.5
ipmitool-1.8.14_1
ipsec-tools-0.8.2_1
jbigkit-2.1_1
jpeg-turbo-1.4.1
libgd-2.1.0_6,1
mariadb55-client-5.5.44
mariadb55-server-5.5.44
mrtg-2.17.4_6,1
nginx-1.8.0_3,2
p5-IO-Socket-INET6-2.72_1
p5-SNMP_Session-1.13_3
p5-Socket6-0.25_2
pcre-8.37_4
perl5-5.20.3_8
pftop-0.7_4
pkg-1.6.1
pkg_rmleaves-20140222
png-1.6.18
portmaster-3.17.8
poudriere-3.1.8
pstree-2.39
rsync-3.1.1_3
screen-4.3.1_2
smartmontools-6.4_1
svnup-1.07_1
tableutil-0.6
tiff-4.0.4
vim-lite-7.4.884
whowatch-1.4_1

But still some unwanted dependencies which are not installed on host:

# poudriere options -s -z eprofi -p default -f 
/usr/local/etc/poudriere.d/pkglists/eprofi | awk '$0 ~ /options are 
available for .*:/ { print $NF }'
py27-pip-7.0.3:
py27-pip-7.0.3:
python27-2.7.10:
libffi-3.2.1:
gmake-4.1_2:
tcl86-8.6.4:
py27-pytest-2.7.1:
py27-mock-1.0.1_1:
py27-virtualenv-13.1.0:
sqlite3-3.8.11.1_1:
git-2.5.3_1:
curl-7.44.0:
perl5-5.20.3_8:
ca_root_nss-3.20:
p5-IO-Socket-SSL-2.016:
p5-Net-SSLeay-1.72:
p5-Test-NoWarnings-1.04_2:
p5-Authen-SASL-2.16_1:
apr-1.5.2.1.5.4:
subversion-1.8.14_2:
serf-1.3.8:
m4-1.4.17_1,1:
bzr-2.6.0:
gettext-tools-0.19.5.1:
py27-virtualenv-13.1.0:
py27-virtualenv-13.1.0:
python27-2.7.10:
libffi-3.2.1:
gmake-4.1_2:
tcl86-8.6.4:
py27-pytest-2.7.1:
py27-mock-1.0.1_1:
python27-2.7.10:
libffi-3.2.1:
gmake-4.1_2:
tcl86-8.6.4:

>> If it is known unfixable problem, shouldn't it be documentet i manpage
>> BUGS section?
>
> We have a lot of known bugs.
>
> I think we just need to fix the 'options' subcommand to do the right
> thing though. It's been a constant surprise for people, myself included.
> I'm tagging it for the next release.

Yes, the main problem is when somebody get options dialog for Perl 5.16, 
change something from default and then get Perl 5.20 built with ports 
default options, because there is no options file for Perl 5.20.

...I can live with it if I know about it - then I can create this 
options file manually. :)

Thank you again for your response.

Miroslav Lachman




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5632489B.3080301>