diff options
author | lioux <lioux@FreeBSD.org> | 2006-04-08 02:18:07 +0800 |
---|---|---|
committer | lioux <lioux@FreeBSD.org> | 2006-04-08 02:18:07 +0800 |
commit | f89f6a9b06bbf3039ae30b3c9d82e30ad6b69b1c (patch) | |
tree | 61f86d73cc273b9852d56a1b7162e54474114ff1 /audio | |
parent | 8893686c400a1bde40a42e9a408cad0de1cf3ff3 (diff) | |
download | freebsd-ports-gnome-f89f6a9b06bbf3039ae30b3c9d82e30ad6b69b1c.tar.gz freebsd-ports-gnome-f89f6a9b06bbf3039ae30b3c9d82e30ad6b69b1c.tar.zst freebsd-ports-gnome-f89f6a9b06bbf3039ae30b3c9d82e30ad6b69b1c.zip |
New port picard version 0.6.0: Next generation MusicBrainzTagger
Diffstat (limited to 'audio')
-rw-r--r-- | audio/Makefile | 1 | ||||
-rw-r--r-- | audio/picard/Makefile | 96 | ||||
-rw-r--r-- | audio/picard/distinfo | 3 | ||||
-rw-r--r-- | audio/picard/files/__init__.py | 37 | ||||
-rw-r--r-- | audio/picard/files/extra-psyco-patch-tagger.py | 16 | ||||
-rw-r--r-- | audio/picard/files/setup.py | 40 | ||||
-rw-r--r-- | audio/picard/pkg-descr | 15 | ||||
-rw-r--r-- | audio/picard/pkg-plist | 157 |
8 files changed, 365 insertions, 0 deletions
diff --git a/audio/Makefile b/audio/Makefile index 6c2d680463be..ff11ffdcc4e1 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -395,6 +395,7 @@ SUBDIR += pd SUBDIR += penguinsap SUBDIR += phatbeat + SUBDIR += picard SUBDIR += pimp3 SUBDIR += play SUBDIR += playgsf diff --git a/audio/picard/Makefile b/audio/picard/Makefile new file mode 100644 index 000000000000..215a470d6ecf --- /dev/null +++ b/audio/picard/Makefile @@ -0,0 +1,96 @@ +# New ports collection makefile for: picard +# Date created: Sat Aug 20 15:26:15 UTC 2005 +# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= picard +DISTVERSION= 0.6.0 +CATEGORIES= audio python +MASTER_SITES= #https://helixcommunity.org/ + +MAINTAINER= lioux@FreeBSD.org +COMMENT= Next generation MusicBrainzTagger + +RUN_DEPENDS= \ + ${PYTHON_SITELIBDIR}/tunepimp/__init__.py:${PORTSDIR}/audio/py-libtunepimp \ + ${PYTHON_SITELIBDIR}/musicbrainz.py:${PORTSDIR}/audio/py-musicbrainz \ + ${PYTHON_SITELIBDIR}/wx-2.6-gtk2-unicode/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26-unicode + +USE_PYTHON= yes +USE_PYDISTUTILS=yes + +SOURCEFILE= ${DISTNAME}${EXTRACT_SUFX} +PICARD_MODULES= browser lib ui + +post-extract: +# build a fake module directory structure + @${MKDIR} ${WRKSRC}/${PORTNAME} +.for dir in ${PICARD_MODULES} + @${MV} ${WRKSRC}/${dir} ${WRKSRC}/${PORTNAME} +.endfor +# use a locally made __init__.py to enable the fake +# directory structure to work + @${SED} -E \ + -e 's|%%VERSION%%|${DISTVERSION}|' \ + ${FILESDIR}/__init__.py \ + > ${WRKSRC}/${PORTNAME}/__init__.py +# use a locally made setup + @${CP} ${FILESDIR}/setup.py ${WRKSRC} + +post-patch: +# avoid using such a generic script name + @${MV} ${WRKSRC}/tagger.py ${WRKSRC}/mb_tagger.py +# update the launch script + @${REINPLACE_CMD} -E \ + -e 's|/usr/bin/env python|${PYTHON_CMD}|' \ + -e 's|tagger.py|${PREFIX}/bin/mb_tagger.py|' \ + ${WRKSRC}/MBTagger +# update modules to the fake module directory structure +.for module in ${PICARD_MODULES} + @${FIND} ${WRKSRC}/ -type f -name "*py" \ + -print0 | ${XARGS} -0 -n 1 \ + ${REINPLACE_CMD} -E \ + -e 's|^from[[:space:]]+(${module})|from ${PORTNAME}.\1|' +.endfor + +post-install: + @${LN} -sf MBTagger ${PREFIX}/bin/${PORTNAME} + +pre-everything:: +.ifndef(WITHOUT_PSYCO) + @${ECHO_MSG} '===> Define WITHOUT_PSYCO to disable devel/py-psyco optimization' +.endif + +.include <bsd.port.pre.mk> + +.if ${OSVERSION} < 500000 +IGNORE= Systems prior to FreeBSD 5.0 do not support Unicode +.endif + +.if ${ARCH} != "i386" +WITHOUT_PSYCO= yes +.endif + +.ifndef(WITHOUT_PSYCO) +RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/psyco/_psyco.so:${PORTSDIR}/devel/py-psyco + +EXTRA_PATCHES+= ${FILESDIR}/extra-psyco-patch-tagger.py +.endif + +## idea taken from ports/java/jdk14/Makefile written by +## Alexey Zelkin <phantom@FreeBSD.org> +# +# Check for sources +.if !exists(${DISTDIR}/${SOURCEFILE}) && !defined(PACKAGE_BUILDING) +ECHO_MSG=/usr/bin/printf +IGNORE= :\n\ +Because of licensing restrictions, you must fetch the source distribution\n\ +manually. Please access http://musicbrainz.org/wd/PicardDownload\n\ +with a web browser and download the \"Linux tarball\" ${SOURCEFILE}\n\ +just below \"Download Picard\" title.\n\ +Please place this file in ${DISTDIR}.\n +.endif + +.include <bsd.port.post.mk> diff --git a/audio/picard/distinfo b/audio/picard/distinfo new file mode 100644 index 000000000000..7db8ecef5391 --- /dev/null +++ b/audio/picard/distinfo @@ -0,0 +1,3 @@ +MD5 (picard-0.6.0.tar.gz) = 82c2da853ba4c5a0ab8e1baf3fb494eb +SHA256 (picard-0.6.0.tar.gz) = c7d036382df15726c83a4f2dafdda002611eee1e26004e5aecceb50937d411db +SIZE (picard-0.6.0.tar.gz) = 234607 diff --git a/audio/picard/files/__init__.py b/audio/picard/files/__init__.py new file mode 100644 index 000000000000..2f8f644f2894 --- /dev/null +++ b/audio/picard/files/__init__.py @@ -0,0 +1,37 @@ +""" picard modules for Python + +Copyright (c) 2005 Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + + $Id$ + +""" +# (note that subpackages have their own version number) +__version__ = '%%VERSION%%' + +# Copyright notice string +__copyright__ = """\ + See the documentation for information on copyrights, + or contact the author. All Rights Reserved. +""" diff --git a/audio/picard/files/extra-psyco-patch-tagger.py b/audio/picard/files/extra-psyco-patch-tagger.py new file mode 100644 index 000000000000..9e8324e37fab --- /dev/null +++ b/audio/picard/files/extra-psyco-patch-tagger.py @@ -0,0 +1,16 @@ +--- tagger.py.orig Thu Apr 6 16:48:21 2006 ++++ tagger.py Thu Apr 6 16:48:47 2006 +@@ -54,6 +54,13 @@ + # ***** END LICENSE BLOCK ***** + + try: ++ import psyco ++ assert psyco.__version__ >= 0x010300f0 ++ psyco.full() ++except: ++ pass ++ ++try: + import wxversion + wxversion.select(["2.6-unicode"]) + except: diff --git a/audio/picard/files/setup.py b/audio/picard/files/setup.py new file mode 100644 index 000000000000..7dba8e77d33a --- /dev/null +++ b/audio/picard/files/setup.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python + +# Copyright (c) 2005 Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $Id$ + +from distutils.core import setup + +import glob + +scripts = ["MBTagger", "mb_tagger.py"] + +setup( + name = "Picard", + url = "http://wiki.musicbrainz.org/PicardTagger", + scripts = scripts, + packages = ["picard", "picard/browser", "picard/lib", "picard/ui", "picard/ui/options"], + ) diff --git a/audio/picard/pkg-descr b/audio/picard/pkg-descr new file mode 100644 index 000000000000..e8eee027ae31 --- /dev/null +++ b/audio/picard/pkg-descr @@ -0,0 +1,15 @@ +[ excerpt from developer's www site with modifications ] + +The PicardTagger is the next generation MusicBrainzTagger. This +version of the tagging application is album oriented, as opposed +to track oriented as the old tagger was. This new application is +also cross platform, which means the same code runs on Windows as +well as Unix. + +The PicardTagger will implement most of the MBTaggerImprovements. +See also the project page https://musicbrainz.helixcommunity.org/ +for more details on Picard. + +WWW: http://wiki.musicbrainz.org/PicardTagger + +-- lioux@FreeBSD.org diff --git a/audio/picard/pkg-plist b/audio/picard/pkg-plist new file mode 100644 index 000000000000..347f99b8b32b --- /dev/null +++ b/audio/picard/pkg-plist @@ -0,0 +1,157 @@ +bin/MBTagger +bin/mb_tagger.py +bin/picard +%%PYTHON_SITELIBDIR%%/picard/__init__.py +%%PYTHON_SITELIBDIR%%/picard/__init__.pyc +%%PYTHON_SITELIBDIR%%/picard/__init__.pyo +%%PYTHON_SITELIBDIR%%/picard/browser/__init__.py +%%PYTHON_SITELIBDIR%%/picard/browser/__init__.pyc +%%PYTHON_SITELIBDIR%%/picard/browser/__init__.pyo +%%PYTHON_SITELIBDIR%%/picard/browser/browser.py +%%PYTHON_SITELIBDIR%%/picard/browser/browser.pyc +%%PYTHON_SITELIBDIR%%/picard/browser/browser.pyo +%%PYTHON_SITELIBDIR%%/picard/browser/filelookup.py +%%PYTHON_SITELIBDIR%%/picard/browser/filelookup.pyc +%%PYTHON_SITELIBDIR%%/picard/browser/filelookup.pyo +%%PYTHON_SITELIBDIR%%/picard/browser/launch.py +%%PYTHON_SITELIBDIR%%/picard/browser/launch.pyc +%%PYTHON_SITELIBDIR%%/picard/browser/launch.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/__init__.py +%%PYTHON_SITELIBDIR%%/picard/lib/__init__.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/__init__.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/album.py +%%PYTHON_SITELIBDIR%%/picard/lib/album.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/album.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/albummanager.py +%%PYTHON_SITELIBDIR%%/picard/lib/albummanager.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/albummanager.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/artist.py +%%PYTHON_SITELIBDIR%%/picard/lib/artist.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/artist.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/cluster.py +%%PYTHON_SITELIBDIR%%/picard/lib/cluster.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/cluster.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/countries.py +%%PYTHON_SITELIBDIR%%/picard/lib/countries.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/countries.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/coverartcache.py +%%PYTHON_SITELIBDIR%%/picard/lib/coverartcache.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/coverartcache.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/cuesheet.py +%%PYTHON_SITELIBDIR%%/picard/lib/cuesheet.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/cuesheet.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/dataobjs.py +%%PYTHON_SITELIBDIR%%/picard/lib/dataobjs.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/dataobjs.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/debug.py +%%PYTHON_SITELIBDIR%%/picard/lib/debug.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/debug.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/dircache.py +%%PYTHON_SITELIBDIR%%/picard/lib/dircache.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/dircache.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/events.py +%%PYTHON_SITELIBDIR%%/picard/lib/events.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/events.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/playlist.py +%%PYTHON_SITELIBDIR%%/picard/lib/playlist.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/playlist.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/tpmanager.py +%%PYTHON_SITELIBDIR%%/picard/lib/tpmanager.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/tpmanager.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/track.py +%%PYTHON_SITELIBDIR%%/picard/lib/track.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/track.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/util.py +%%PYTHON_SITELIBDIR%%/picard/lib/util.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/util.pyo +%%PYTHON_SITELIBDIR%%/picard/lib/wpath.py +%%PYTHON_SITELIBDIR%%/picard/lib/wpath.pyc +%%PYTHON_SITELIBDIR%%/picard/lib/wpath.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/__init__.py +%%PYTHON_SITELIBDIR%%/picard/ui/__init__.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/__init__.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/albumpanel.py +%%PYTHON_SITELIBDIR%%/picard/ui/albumpanel.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/albumpanel.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/coverartpanel.py +%%PYTHON_SITELIBDIR%%/picard/ui/coverartpanel.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/coverartpanel.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/dirctrl.py +%%PYTHON_SITELIBDIR%%/picard/ui/dirctrl.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/dirctrl.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/fileselection.py +%%PYTHON_SITELIBDIR%%/picard/ui/fileselection.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/fileselection.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/images.py +%%PYTHON_SITELIBDIR%%/picard/ui/images.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/images.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/infopanel.py +%%PYTHON_SITELIBDIR%%/picard/ui/infopanel.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/infopanel.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/mdatapanel.py +%%PYTHON_SITELIBDIR%%/picard/ui/mdatapanel.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/mdatapanel.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/__init__.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/__init__.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/__init__.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/about.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/about.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/about.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/advanced.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/advanced.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/advanced.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/colors.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/colors.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/colors.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/controls.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/controls.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/controls.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/dirs.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/dirs.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/dirs.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/encodings.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/encodings.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/encodings.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/general.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/general.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/general.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/language.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/language.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/language.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/login.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/login.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/login.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/lookup.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/lookup.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/lookup.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/naming.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/naming.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/naming.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/naminghelp.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/naminghelp.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/naminghelp.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/optionsdialog.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/optionsdialog.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/optionsdialog.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/page.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/page.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/page.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/proxy.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/proxy.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/proxy.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/options/tags.py +%%PYTHON_SITELIBDIR%%/picard/ui/options/tags.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/options/tags.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/pydirctrl.py +%%PYTHON_SITELIBDIR%%/picard/ui/pydirctrl.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/pydirctrl.pyo +%%PYTHON_SITELIBDIR%%/picard/ui/toolbar.py +%%PYTHON_SITELIBDIR%%/picard/ui/toolbar.pyc +%%PYTHON_SITELIBDIR%%/picard/ui/toolbar.pyo +@dirrm %%PYTHON_SITELIBDIR%%/picard/ui/options +@dirrm %%PYTHON_SITELIBDIR%%/picard/ui +@dirrm %%PYTHON_SITELIBDIR%%/picard/lib +@dirrm %%PYTHON_SITELIBDIR%%/picard/browser +@dirrm %%PYTHON_SITELIBDIR%%/picard +@dirrmtry %%PYTHON_SITELIBDIR%% +@dirrmtry %%PYTHON_LIBDIR%% |