Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Oct 2014 10:55:11 +0100
From:      Arthur Chance <freebsd@qeng-ho.org>
To:        Matthias Apitz <guru@unixarea.de>
Cc:        freebsd-pkg@freebsd.org
Subject:   Re: pkg query a package for packages it depends on
Message-ID:  <543509FF.8090804@qeng-ho.org>
In-Reply-To: <20141008092235.GB2106@unixarea.DDR.dd>
References:  <20141008080314.GA1937@unixarea.DDR.dd> <5434F334.9090204@qeng-ho.org> <20141008092235.GB2106@unixarea.DDR.dd>

next in thread | previous in thread | raw e-mail | index | archive | help
On 08/10/2014 10:22, Matthias Apitz wrote:
> El día Wednesday, October 08, 2014 a las 09:17:56AM +0100, Arthur Chance escribió:
>
>> On 08/10/2014 09:03, Matthias Apitz wrote:
>>> I'm using a local repo (created by poudriere on some other host) and
>>> pkg(8) to install the ports on my netbook.
>>>
>>> # pkg -v
>>> 1.4.0.pre-alpha7
>>>
>>> I have not found in its man page how to query a given package for the
>>> packages it depends on. Have I overlooked something?
>>
>> The various pkg-* man pages? man pkg only gives details of the pkg
>> command itself, man pkg-xxx gives details of the xxx subcommand.
>
> Thanks! I really overlooked the other man pages. Sorry.

It seems to be easily done, I've noticed others who've also been unaware 
of the pkg-xxx pages. Maybe the pkg man page needs a note early on, 
currently the other pages are only mentioned in the SEE ALSO section 
near the end.

> The background of my question is, that the port print/muttprint does
> not pull-in enough packages it depends on, and for that reason does not
> work.
>
> If one does
>
> # pkg_info -r muttprint-0.72d_7
>
> on an older system, you will get the attached list.
>
> Now a query only shows:
>
> # pkg info -d muttprint
> muttprint-0.72d_8:
>          psutils-1.17_4
>          faces-1.7.7_9
>          ImageMagick-6.8.9.4_1,1
>          p5-TimeDate-2.30_1,1
>          p5-Text-Iconv-1.7_1
>
> Any ideas why poudriere does not generate more dependencies?

[Old pkg dependency list snipped.]

If you look at /usr/ports/print/muttprint/Makefile you'll see

RUN_DEPENDS=    psnup:${PORTSDIR}/print/psutils \
                 uncompface:${PORTSDIR}/mail/faces \
                 convert:${PORTSDIR}/graphics/ImageMagick \
                 p5-TimeDate>=0:${PORTSDIR}/devel/p5-TimeDate \
                 p5-Text-Iconv>=0:${PORTSDIR}/converters/p5-Text-Iconv

so the pkg info report is correct. However, a bit lower is

OPTIONS_DEFINE= CUPS DOCS
CUPS_RUN_DEPENDS=       cupstestppd:${PORTSDIR}/print/cups-base \
                         espgs:${PORTSDIR}/print/cups-pstoraster


which might be what pulls in the extra packages if the CUPS option is 
enabled. When you switched to using poudriere, did you ensure you'd set 
up the options for poudriere to be the same as you were using beforehand?

If you did, and CUPS is set for the port, I'm wondering if the bit that 
reads

.if ${PORT_OPTIONS:MCUPS}
PRINT_COMMAND=CUPS
.else
PRINT_COMMAND=lpr -P$$PRINTER
.endif

should actually read

.if ${PORT_OPTIONS:MCUPS}
PRINT_COMMAND=CUPS
RUN_DEPENDS+= ${CUPS_RUN_DEPENDS}
.else
PRINT_COMMAND=lpr -P$$PRINTER
.endif

but I'm not that familiar with the ports building make setup. There 
seems to be no mention of CUPS_RUN_DEPENDS in /usr/ports/Mk/*.mk, so it 
may be an oversight in the Makefile.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?543509FF.8090804>