Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Mar 2014 11:01:31 +0100
From:      Michel Talon <talon@lpthe.jussieu.fr>
To:        Matthew Seaman <matthew@freebsd.org>
Cc:        FreeBSD Questions <freebsd-questions@freebsd.org>
Subject:   Re: pkg equivalent of "pkg_info -R"
Message-ID:  <571235DE-D5E7-4BBE-97C9-C24B0555D72A@lpthe.jussieu.fr>

next in thread | raw e-mail | index | archive | help

--Apple-Mail=_82CC7596-546F-4043-BA45-648170097487
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii



> Until then, you'ld have to write a shell wrapper around pkg query to
> achieve the same effect.

Here is a small python script which seems to do the job ( please excuse =
me, my python-fu is rusty):

niobe% cat deps.py=20
#!/usr/local/bin/python


import os, sys, string

pk =3D sys.argv[1]

deps =3D []
deps1 =3D [pk]

def clean_ans(ans):
    return string.split(ans)[1:]

def add_deps1(deps1):
    global deps
    deps2 =3D []
    for pk in deps1:
        pi =3D os.popen("pkg info -r " + pk)
        deps3 =3D pi.read()
        pi.close()
        deps3 =3D clean_ans(deps3)
        deps =3D deps + deps3
        deps =3D set(deps)
        deps =3D list(deps)
        deps2  =3D deps2 + deps3
        deps2 =3D set(deps2)
        deps2 =3D list(deps2)
    return deps2

while (len(deps1)):
    deps1 =3D add_deps1(deps1)

print(deps)



Example of use

niobe% ./deps.py xf86-video-ati
['xorg-7.7', 'xorg-drivers-7.7']

Or for a big answer (and quite slow):
niobe% ./deps.py ffmpeg =20
['kdemultimedia-ffmpegthumbs-4.10.5_1', 'kbruch-4.10.5', =
'sweeper-4.10.5', 'kmplot-4.10.5', 'kdegraphics-thumbnailers-4.10.5', =
'kdeedu-4.10.5', 'polkit-kde-0.99.1', 'kscd-4.10.5', 'granatier-4.10.5', =
'kdeplasma-addons-4.10.5_1', 'kmousetool-4.10.5', 'rocs-4.10.5', =
'kdegraphics-svgpart-4.10.5', 'filelight-4.10.5', 'kcharselect-4.10.5', =
'ktimer-4.10.5', 'kiriki-4.10.5', 'kolf-4.10.5', =
'kdeaccessibility-4.10.5', 'kdegraphics-strigi-analyzer-4.10.5', =
'kcm-polkit-kde-0.0.20121008', 'kactivitymanagerd-4.10.5_3', =
'kmag-4.10.5', 'kreversi-4.10.5', 'okular-4.10.5_3', =
'libkcompactdisc-4.10.5', 'kcalc-4.10.5', 'libkipi-4.10.5', =
'libkmahjongg-4.10.5', 'libkgapi-0.4.4', 'ktouch-4.10.5', =
'kgamma-4.10.5', 'kamera-4.10.5', 'libkdegames-4.10.5', =
'libkonq-4.10.5', 'print-manager-4.10.5', 'kwallet-4.10.5', =
'bovo-4.10.5', 'kdegraphics-mobipocket-4.10.5_1', 'kapman-4.10.5', =
'kde-4.10.5_1', 'ark-4.10.5', 'analitza-4.10.5', 'kgoldrunner-4.10.5', =
'libksane-4.10.5', 'cantor-4.10.5', 'kblackbox-4.10.5', 'kgpg-4.10.5', =
'nepomuk-core-4.10.5_1', 'kaccessible-4.10.5_1', 'kmix-4.10.5', =
'kde-workspace-4.10.5_1', 'py27-pykde4-4.10.5_1', 'kanagram-4.10.5', =
'kdegraphics-4.10.5_1', 'kfloppy-4.10.5', 'kopete-4.10.5_1', =
'kstars-4.10.5', 'blinken-4.10.5', 'kdetoys-4.10.5_1', =
'ksquares-4.10.5', 'pairs-4.10.5', 'kajongg-4.10.5_1', 'krfb-4.10.5', =
'kde-baseapps-4.10.5_1', 'kgeography-4.10.5', 'kolourpaint-4.10.5', =
'kdesdk-4.10.5_1', 'libkdeedu-4.10.5', 'kdepimlibs-4.10.5_2', =
'kdeadmin-4.10.5', 'libkexiv2-4.10.5', 'kfourinline-4.10.5', =
'kbreakout-4.10.5', 'kdepim-runtime-4.10.5', 'kio-audiocd-4.10.5', =
'kshisen-4.10.5', 'kigo-4.10.5', 'ksnapshot-4.10.5', 'juk-4.10.5', =
'katomic-4.10.5', 'kpat-4.10.5', 'kjumpingcube-4.10.5', =
'kspaceduel-4.10.5', 'gwenview-4.10.5_1', 'libkcddb-4.10.5', =
'lskat-4.10.5', 'ksudoku-4.10.5', 'kdepim-4.10.5_1', 'klines-4.10.5', =
'kdegames-4.10.5_1', 'konquest-4.10.5', 'klettres-4.10.5', =
'libktorrent-1.3.1_2', 'bomber-4.10.5', 'superkaramba-4.10.5', =
'kremotecontrol-4.10.5', 'kdelibs-4.10.5_2', 'kubrick-4.10.5', =
'marble-4.10.5', 'killbots-4.10.5', 'ksnakeduel-4.10.5', =
'kblocks-4.10.5', 'dragon-player-4.10.5', 'ksirk-4.10.5', 'krdc-4.10.5', =
'kmouth-4.10.5', 'kdeartwork-4.10.5_1', 'kdewebdev-4.10.5', =
'kollision-4.10.5', 'konsole-4.10.5', 'kate-4.10.5_1', =
'kdemultimedia-4.10.5', 'kde-runtime-4.10.5_3', 'kdf-4.10.5', =
'parley-4.10.5', 'kalgebra-4.10.5', 'kde-base-artwork-4.10.5', =
'kruler-4.10.5', 'step-4.10.5_1', 'kdenetwork-4.10.5_1', =
'kturtle-4.10.5', 'knetwalk-4.10.5', 'kdeutils-4.10.5', =
'kbounce-4.10.5', 'kig-4.10.5', 'libstreamanalyzer-0.7.8_2', =
'ja-kiten-4.10.5', 'khangman-4.10.5', 'knavalbattle-4.10.5', =
'ktuberling-4.10.5', 'jovie-4.10.5_1', 'libkdcraw-4.10.5', =
'palapeli-4.10.5', 'kmahjongg-4.10.5', 'nepomuk-widgets-4.10.5', =
'kcolorchooser-4.10.5', 'kde-wallpapers-4.10.5', 'kmines-4.10.5', =
'kwordquiz-4.10.5', 'libkolab-0.4.2', 'kactivities-4.10.5_3', =
'ksaneplugin-4.10.5', 'kdiamond-4.10.5']





--

Michel Talon
talon@lpthe.jussieu.fr






--Apple-Mail=_82CC7596-546F-4043-BA45-648170097487
Content-Disposition: attachment;
	filename=smime.p7s
Content-Type: application/pkcs7-signature;
	name=smime.p7s
Content-Transfer-Encoding: base64

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

--Apple-Mail=_82CC7596-546F-4043-BA45-648170097487--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?571235DE-D5E7-4BBE-97C9-C24B0555D72A>