pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
py-beets: add upgrade candidate, doesn't build
Module Name: pkgsrc-wip
Committed By: Thomas Klausner <wiz%NetBSD.org@localhost>
Pushed By: wiz
Date: Sun Oct 12 19:49:54 2025 +0200
Changeset: 47573812fbd58213f54a99e8a8cbaf6661bd0229
Modified Files:
Makefile
Added Files:
py-beets/ALTERNATIVES
py-beets/DESCR
py-beets/Makefile
py-beets/PLIST
py-beets/TODO
py-beets/distinfo
Log Message:
py-beets: add upgrade candidate, doesn't build
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=47573812fbd58213f54a99e8a8cbaf6661bd0229
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
py-beets/ALTERNATIVES | 1 +
py-beets/DESCR | 22 +++
py-beets/Makefile | 65 +++++++++
py-beets/PLIST | 389 ++++++++++++++++++++++++++++++++++++++++++++++++++
py-beets/TODO | 3 +
py-beets/distinfo | 5 +
7 files changed, 486 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 21b157817f..f102f6cd2a 100644
--- a/Makefile
+++ b/Makefile
@@ -3508,6 +3508,7 @@ SUBDIR+= py-bcbio-gff
SUBDIR+= py-bctpy
SUBDIR+= py-beampy
SUBDIR+= py-beautysh
+SUBDIR+= py-beets
SUBDIR+= py-behaviour
SUBDIR+= py-bibtexparser3
SUBDIR+= py-bicho
diff --git a/py-beets/ALTERNATIVES b/py-beets/ALTERNATIVES
new file mode 100644
index 0000000000..467dcef321
--- /dev/null
+++ b/py-beets/ALTERNATIVES
@@ -0,0 +1 @@
+bin/beet @PREFIX@/bin/beet-@PYVERSSUFFIX@
diff --git a/py-beets/DESCR b/py-beets/DESCR
new file mode 100644
index 0000000000..d68f279911
--- /dev/null
+++ b/py-beets/DESCR
@@ -0,0 +1,22 @@
+Beets is the best command-line tool for viewing, querying, renaming,
+and updating your music collection.
+
+The purpose of beets is to get your music collection right once
+and for all. It catalogs your collection, automatically improving
+its metadata as it goes using the MusicBrainz database. (It also
+downloads cover art for albums it imports.) Then it provides a
+bouquet of tools for manipulating and accessing your music.
+
+Because beets is designed as a library, it can do almost anything
+you can imagine for your music collection. Via plugins, beets
+becomes a panacea:
+
+ * Embed and extract album art from files' tags.
+ * Listen to your library with a music player that speaks the MPD
+ protocol and works with a staggering variety of interfaces.
+ * Fetch lyrics for all your songs from databases on the Web.
+ * Manage your MusicBrainz music collection.
+ * Analyze music files' metadata from the command line.
+ * Clean up crufty tags left behind by other, less-awesome tools.
+ * Browse your music library graphically through a Web browser
+ and play it in any browser that supports HTML5 Audio.
diff --git a/py-beets/Makefile b/py-beets/Makefile
new file mode 100644
index 0000000000..1f229e22fe
--- /dev/null
+++ b/py-beets/Makefile
@@ -0,0 +1,65 @@
+# $NetBSD: Makefile,v 1.44 2025/10/09 07:57:23 wiz Exp $
+
+DISTNAME= beets-2.5.0
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+CATEGORIES= audio python
+MASTER_SITES= ${MASTER_SITE_PYPI:=b/beets/}
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://beets.io/
+COMMENT= Music geek's media organizer
+LICENSE= mit
+
+# https://github.com/beetbox/beets/issues/5596
+TOOL_DEPENDS+= ${PYPKGPREFIX}-poetry-core>=2.2.1:../../devel/py-poetry-core
+TOOL_DEPENDS+= ${PYPKGPREFIX}-poetry-dynamic-versioning>=0:../../devel/py-poetry-dynamic-versioning
+DEPENDS+= ${PYPKGPREFIX}-Unidecode>=1.3.6:../../textproc/py-Unidecode
+DEPENDS+= ${PYPKGPREFIX}-confuse>=1.5.0:../../devel/py-confuse
+DEPENDS+= ${PYPKGPREFIX}-jellyfish-[0-9]*:../../textproc/py-jellyfish
+DEPENDS+= ${PYPKGPREFIX}-lap>=0.5.12:../../math/py-lap
+DEPENDS+= ${PYPKGPREFIX}-mediafile>=0.12.0:../../audio/py-mediafile
+DEPENDS+= ${PYPKGPREFIX}-musicbrainz-ngs>=0.4:../../audio/py-musicbrainz-ngs
+DEPENDS+= ${PYPKGPREFIX}-numpy>=1.24.4:../../math/py-numpy
+DEPENDS+= ${PYPKGPREFIX}-platformdirs>=3.5.0:../../misc/py-platformdirs
+DEPENDS+= ${PYPKGPREFIX}-typing-extensions-[0-9]*:../../devel/py-typing-extensions
+DEPENDS+= ${PYPKGPREFIX}-yaml-[0-9]*:../../textproc/py-yaml
+# update
+DEPENDS+= ${PYPKGPREFIX}-requests-[0-9]*:../../devel/py-requests
+# lastgenre
+DEPENDS+= ${PYPKGPREFIX}-last-[0-9]*:../../audio/py-last
+# scrub
+DEPENDS+= ${PYPKGPREFIX}-mutagen>=1.33:../../audio/py-mutagen
+TEST_DEPENDS+= ${PYPKGPREFIX}-discogs-client-[0-9]*:../../audio/py-discogs-client
+TEST_DEPENDS+= ${PYPKGPREFIX}-mock-[0-9]*:../../devel/py-mock
+TEST_DEPENDS+= ${PYPKGPREFIX}-mpd2-[0-9]*:../../audio/py-mpd2
+TEST_DEPENDS+= ${PYPKGPREFIX}-requests-oauthlib-[0-9]*:../../security/py-requests-oauthlib
+TEST_DEPENDS+= ${PYPKGPREFIX}-responses>=0.3.0:../../net/py-responses
+TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov
+
+USE_LANGUAGES= # none
+USE_TOOLS+= git
+
+INSTALLATION_DIRS+= ${PKGMANDIR}/man1 ${PKGMANDIR}/man5
+
+PYTHON_VERSIONS_INCOMPATIBLE= 310
+
+# as of 2.4.0
+# 1067 passed, 101 skipped, 1 warning
+.if make(test)
+ALLOW_NETWORK_ACCESS= yes
+.endif
+
+.include "../../lang/python/pyversion.mk"
+.if ${PYTHON_VERSION} < 311
+DEPENDS+= ${PYPKGPREFIX}-typing-extensions-[0-9]*:../../devel/py-typing-extensions
+.endif
+
+post-install:
+ cd ${DESTDIR}${PREFIX}/bin && ${MV} beet beet-${PYVERSSUFFIX} || ${TRUE}
+ ${INSTALL_DATA} ${WRKSRC}/man/beet.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/beet-${PYVERSSUFFIX}.1
+ ${INSTALL_DATA} ${WRKSRC}/man/beetsconfig.5 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man5/beetsconfig-${PYVERSSUFFIX}.5
+ cd ${DESTDIR}${PREFIX}/bin && ${MV} beet beet-${PYVERSSUFFIX} || ${TRUE}
+
+.include "../../lang/python/batteries-included.mk"
+.include "../../lang/python/wheel.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/py-beets/PLIST b/py-beets/PLIST
new file mode 100644
index 0000000000..8b019e90f4
--- /dev/null
+++ b/py-beets/PLIST
@@ -0,0 +1,389 @@
+@comment $NetBSD: PLIST,v 1.24 2025/09/22 20:32:13 wiz Exp $
+bin/beet-${PYVERSSUFFIX}
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
+${PYSITELIB}/beets/__init__.py
+${PYSITELIB}/beets/__init__.pyc
+${PYSITELIB}/beets/__init__.pyo
+${PYSITELIB}/beets/__main__.py
+${PYSITELIB}/beets/__main__.pyc
+${PYSITELIB}/beets/__main__.pyo
+${PYSITELIB}/beets/art.py
+${PYSITELIB}/beets/art.pyc
+${PYSITELIB}/beets/art.pyo
+${PYSITELIB}/beets/autotag/__init__.py
+${PYSITELIB}/beets/autotag/__init__.pyc
+${PYSITELIB}/beets/autotag/__init__.pyo
+${PYSITELIB}/beets/autotag/distance.py
+${PYSITELIB}/beets/autotag/distance.pyc
+${PYSITELIB}/beets/autotag/distance.pyo
+${PYSITELIB}/beets/autotag/hooks.py
+${PYSITELIB}/beets/autotag/hooks.pyc
+${PYSITELIB}/beets/autotag/hooks.pyo
+${PYSITELIB}/beets/autotag/match.py
+${PYSITELIB}/beets/autotag/match.pyc
+${PYSITELIB}/beets/autotag/match.pyo
+${PYSITELIB}/beets/config_default.yaml
+${PYSITELIB}/beets/dbcore/__init__.py
+${PYSITELIB}/beets/dbcore/__init__.pyc
+${PYSITELIB}/beets/dbcore/__init__.pyo
+${PYSITELIB}/beets/dbcore/db.py
+${PYSITELIB}/beets/dbcore/db.pyc
+${PYSITELIB}/beets/dbcore/db.pyo
+${PYSITELIB}/beets/dbcore/query.py
+${PYSITELIB}/beets/dbcore/query.pyc
+${PYSITELIB}/beets/dbcore/query.pyo
+${PYSITELIB}/beets/dbcore/queryparse.py
+${PYSITELIB}/beets/dbcore/queryparse.pyc
+${PYSITELIB}/beets/dbcore/queryparse.pyo
+${PYSITELIB}/beets/dbcore/types.py
+${PYSITELIB}/beets/dbcore/types.pyc
+${PYSITELIB}/beets/dbcore/types.pyo
+${PYSITELIB}/beets/importer/__init__.py
+${PYSITELIB}/beets/importer/__init__.pyc
+${PYSITELIB}/beets/importer/__init__.pyo
+${PYSITELIB}/beets/importer/session.py
+${PYSITELIB}/beets/importer/session.pyc
+${PYSITELIB}/beets/importer/session.pyo
+${PYSITELIB}/beets/importer/stages.py
+${PYSITELIB}/beets/importer/stages.pyc
+${PYSITELIB}/beets/importer/stages.pyo
+${PYSITELIB}/beets/importer/state.py
+${PYSITELIB}/beets/importer/state.pyc
+${PYSITELIB}/beets/importer/state.pyo
+${PYSITELIB}/beets/importer/tasks.py
+${PYSITELIB}/beets/importer/tasks.pyc
+${PYSITELIB}/beets/importer/tasks.pyo
+${PYSITELIB}/beets/library/__init__.py
+${PYSITELIB}/beets/library/__init__.pyc
+${PYSITELIB}/beets/library/__init__.pyo
+${PYSITELIB}/beets/library/exceptions.py
+${PYSITELIB}/beets/library/exceptions.pyc
+${PYSITELIB}/beets/library/exceptions.pyo
+${PYSITELIB}/beets/library/library.py
+${PYSITELIB}/beets/library/library.pyc
+${PYSITELIB}/beets/library/library.pyo
+${PYSITELIB}/beets/library/models.py
+${PYSITELIB}/beets/library/models.pyc
+${PYSITELIB}/beets/library/models.pyo
+${PYSITELIB}/beets/library/queries.py
+${PYSITELIB}/beets/library/queries.pyc
+${PYSITELIB}/beets/library/queries.pyo
+${PYSITELIB}/beets/logging.py
+${PYSITELIB}/beets/logging.pyc
+${PYSITELIB}/beets/logging.pyo
+${PYSITELIB}/beets/mediafile.py
+${PYSITELIB}/beets/mediafile.pyc
+${PYSITELIB}/beets/mediafile.pyo
+${PYSITELIB}/beets/metadata_plugins.py
+${PYSITELIB}/beets/metadata_plugins.pyc
+${PYSITELIB}/beets/metadata_plugins.pyo
+${PYSITELIB}/beets/plugins.py
+${PYSITELIB}/beets/plugins.pyc
+${PYSITELIB}/beets/plugins.pyo
+${PYSITELIB}/beets/py.typed
+${PYSITELIB}/beets/random.py
+${PYSITELIB}/beets/random.pyc
+${PYSITELIB}/beets/random.pyo
+${PYSITELIB}/beets/test/__init__.py
+${PYSITELIB}/beets/test/__init__.pyc
+${PYSITELIB}/beets/test/__init__.pyo
+${PYSITELIB}/beets/test/_common.py
+${PYSITELIB}/beets/test/_common.pyc
+${PYSITELIB}/beets/test/_common.pyo
+${PYSITELIB}/beets/test/helper.py
+${PYSITELIB}/beets/test/helper.pyc
+${PYSITELIB}/beets/test/helper.pyo
+${PYSITELIB}/beets/ui/__init__.py
+${PYSITELIB}/beets/ui/__init__.pyc
+${PYSITELIB}/beets/ui/__init__.pyo
+${PYSITELIB}/beets/ui/commands.py
+${PYSITELIB}/beets/ui/commands.pyc
+${PYSITELIB}/beets/ui/commands.pyo
+${PYSITELIB}/beets/ui/completion_base.sh
+${PYSITELIB}/beets/util/__init__.py
+${PYSITELIB}/beets/util/__init__.pyc
+${PYSITELIB}/beets/util/__init__.pyo
+${PYSITELIB}/beets/util/artresizer.py
+${PYSITELIB}/beets/util/artresizer.pyc
+${PYSITELIB}/beets/util/artresizer.pyo
+${PYSITELIB}/beets/util/bluelet.py
+${PYSITELIB}/beets/util/bluelet.pyc
+${PYSITELIB}/beets/util/bluelet.pyo
+${PYSITELIB}/beets/util/config.py
+${PYSITELIB}/beets/util/config.pyc
+${PYSITELIB}/beets/util/config.pyo
+${PYSITELIB}/beets/util/functemplate.py
+${PYSITELIB}/beets/util/functemplate.pyc
+${PYSITELIB}/beets/util/functemplate.pyo
+${PYSITELIB}/beets/util/hidden.py
+${PYSITELIB}/beets/util/hidden.pyc
+${PYSITELIB}/beets/util/hidden.pyo
+${PYSITELIB}/beets/util/id_extractors.py
+${PYSITELIB}/beets/util/id_extractors.pyc
+${PYSITELIB}/beets/util/id_extractors.pyo
+${PYSITELIB}/beets/util/m3u.py
+${PYSITELIB}/beets/util/m3u.pyc
+${PYSITELIB}/beets/util/m3u.pyo
+${PYSITELIB}/beets/util/pipeline.py
+${PYSITELIB}/beets/util/pipeline.pyc
+${PYSITELIB}/beets/util/pipeline.pyo
+${PYSITELIB}/beets/util/units.py
+${PYSITELIB}/beets/util/units.pyc
+${PYSITELIB}/beets/util/units.pyo
+${PYSITELIB}/beets/vfs.py
+${PYSITELIB}/beets/vfs.pyc
+${PYSITELIB}/beets/vfs.pyo
+${PYSITELIB}/beetsplug/_typing.py
+${PYSITELIB}/beetsplug/_typing.pyc
+${PYSITELIB}/beetsplug/_typing.pyo
+${PYSITELIB}/beetsplug/absubmit.py
+${PYSITELIB}/beetsplug/absubmit.pyc
+${PYSITELIB}/beetsplug/absubmit.pyo
+${PYSITELIB}/beetsplug/acousticbrainz.py
+${PYSITELIB}/beetsplug/acousticbrainz.pyc
+${PYSITELIB}/beetsplug/acousticbrainz.pyo
+${PYSITELIB}/beetsplug/advancedrewrite.py
+${PYSITELIB}/beetsplug/advancedrewrite.pyc
+${PYSITELIB}/beetsplug/advancedrewrite.pyo
+${PYSITELIB}/beetsplug/albumtypes.py
+${PYSITELIB}/beetsplug/albumtypes.pyc
+${PYSITELIB}/beetsplug/albumtypes.pyo
+${PYSITELIB}/beetsplug/aura.py
+${PYSITELIB}/beetsplug/aura.pyc
+${PYSITELIB}/beetsplug/aura.pyo
+${PYSITELIB}/beetsplug/autobpm.py
+${PYSITELIB}/beetsplug/autobpm.pyc
+${PYSITELIB}/beetsplug/autobpm.pyo
+${PYSITELIB}/beetsplug/badfiles.py
+${PYSITELIB}/beetsplug/badfiles.pyc
+${PYSITELIB}/beetsplug/badfiles.pyo
+${PYSITELIB}/beetsplug/bareasc.py
+${PYSITELIB}/beetsplug/bareasc.pyc
+${PYSITELIB}/beetsplug/bareasc.pyo
+${PYSITELIB}/beetsplug/beatport.py
+${PYSITELIB}/beetsplug/beatport.pyc
+${PYSITELIB}/beetsplug/beatport.pyo
+${PYSITELIB}/beetsplug/bench.py
+${PYSITELIB}/beetsplug/bench.pyc
+${PYSITELIB}/beetsplug/bench.pyo
+${PYSITELIB}/beetsplug/bpd/__init__.py
+${PYSITELIB}/beetsplug/bpd/__init__.pyc
+${PYSITELIB}/beetsplug/bpd/__init__.pyo
+${PYSITELIB}/beetsplug/bpd/gstplayer.py
+${PYSITELIB}/beetsplug/bpd/gstplayer.pyc
+${PYSITELIB}/beetsplug/bpd/gstplayer.pyo
+${PYSITELIB}/beetsplug/bpm.py
+${PYSITELIB}/beetsplug/bpm.pyc
+${PYSITELIB}/beetsplug/bpm.pyo
+${PYSITELIB}/beetsplug/bpsync.py
+${PYSITELIB}/beetsplug/bpsync.pyc
+${PYSITELIB}/beetsplug/bpsync.pyo
+${PYSITELIB}/beetsplug/bucket.py
+${PYSITELIB}/beetsplug/bucket.pyc
+${PYSITELIB}/beetsplug/bucket.pyo
+${PYSITELIB}/beetsplug/chroma.py
+${PYSITELIB}/beetsplug/chroma.pyc
+${PYSITELIB}/beetsplug/chroma.pyo
+${PYSITELIB}/beetsplug/convert.py
+${PYSITELIB}/beetsplug/convert.pyc
+${PYSITELIB}/beetsplug/convert.pyo
+${PYSITELIB}/beetsplug/deezer.py
+${PYSITELIB}/beetsplug/deezer.pyc
+${PYSITELIB}/beetsplug/deezer.pyo
+${PYSITELIB}/beetsplug/discogs.py
+${PYSITELIB}/beetsplug/discogs.pyc
+${PYSITELIB}/beetsplug/discogs.pyo
+${PYSITELIB}/beetsplug/duplicates.py
+${PYSITELIB}/beetsplug/duplicates.pyc
+${PYSITELIB}/beetsplug/duplicates.pyo
+${PYSITELIB}/beetsplug/edit.py
+${PYSITELIB}/beetsplug/edit.pyc
+${PYSITELIB}/beetsplug/edit.pyo
+${PYSITELIB}/beetsplug/embedart.py
+${PYSITELIB}/beetsplug/embedart.pyc
+${PYSITELIB}/beetsplug/embedart.pyo
+${PYSITELIB}/beetsplug/embyupdate.py
+${PYSITELIB}/beetsplug/embyupdate.pyc
+${PYSITELIB}/beetsplug/embyupdate.pyo
+${PYSITELIB}/beetsplug/export.py
+${PYSITELIB}/beetsplug/export.pyc
+${PYSITELIB}/beetsplug/export.pyo
+${PYSITELIB}/beetsplug/fetchart.py
+${PYSITELIB}/beetsplug/fetchart.pyc
+${PYSITELIB}/beetsplug/fetchart.pyo
+${PYSITELIB}/beetsplug/filefilter.py
+${PYSITELIB}/beetsplug/filefilter.pyc
+${PYSITELIB}/beetsplug/filefilter.pyo
+${PYSITELIB}/beetsplug/fish.py
+${PYSITELIB}/beetsplug/fish.pyc
+${PYSITELIB}/beetsplug/fish.pyo
+${PYSITELIB}/beetsplug/freedesktop.py
+${PYSITELIB}/beetsplug/freedesktop.pyc
+${PYSITELIB}/beetsplug/freedesktop.pyo
+${PYSITELIB}/beetsplug/fromfilename.py
+${PYSITELIB}/beetsplug/fromfilename.pyc
+${PYSITELIB}/beetsplug/fromfilename.pyo
+${PYSITELIB}/beetsplug/ftintitle.py
+${PYSITELIB}/beetsplug/ftintitle.pyc
+${PYSITELIB}/beetsplug/ftintitle.pyo
+${PYSITELIB}/beetsplug/fuzzy.py
+${PYSITELIB}/beetsplug/fuzzy.pyc
+${PYSITELIB}/beetsplug/fuzzy.pyo
+${PYSITELIB}/beetsplug/gmusic.py
+${PYSITELIB}/beetsplug/gmusic.pyc
+${PYSITELIB}/beetsplug/gmusic.pyo
+${PYSITELIB}/beetsplug/hook.py
+${PYSITELIB}/beetsplug/hook.pyc
+${PYSITELIB}/beetsplug/hook.pyo
+${PYSITELIB}/beetsplug/ihate.py
+${PYSITELIB}/beetsplug/ihate.pyc
+${PYSITELIB}/beetsplug/ihate.pyo
+${PYSITELIB}/beetsplug/importadded.py
+${PYSITELIB}/beetsplug/importadded.pyc
+${PYSITELIB}/beetsplug/importadded.pyo
+${PYSITELIB}/beetsplug/importfeeds.py
+${PYSITELIB}/beetsplug/importfeeds.pyc
+${PYSITELIB}/beetsplug/importfeeds.pyo
+${PYSITELIB}/beetsplug/info.py
+${PYSITELIB}/beetsplug/info.pyc
+${PYSITELIB}/beetsplug/info.pyo
+${PYSITELIB}/beetsplug/inline.py
+${PYSITELIB}/beetsplug/inline.pyc
+${PYSITELIB}/beetsplug/inline.pyo
+${PYSITELIB}/beetsplug/ipfs.py
+${PYSITELIB}/beetsplug/ipfs.pyc
+${PYSITELIB}/beetsplug/ipfs.pyo
+${PYSITELIB}/beetsplug/keyfinder.py
+${PYSITELIB}/beetsplug/keyfinder.pyc
+${PYSITELIB}/beetsplug/keyfinder.pyo
+${PYSITELIB}/beetsplug/kodiupdate.py
+${PYSITELIB}/beetsplug/kodiupdate.pyc
+${PYSITELIB}/beetsplug/kodiupdate.pyo
+${PYSITELIB}/beetsplug/lastgenre/__init__.py
+${PYSITELIB}/beetsplug/lastgenre/__init__.pyc
+${PYSITELIB}/beetsplug/lastgenre/__init__.pyo
+${PYSITELIB}/beetsplug/lastgenre/genres-tree.yaml
+${PYSITELIB}/beetsplug/lastgenre/genres.txt
+${PYSITELIB}/beetsplug/lastimport.py
+${PYSITELIB}/beetsplug/lastimport.pyc
+${PYSITELIB}/beetsplug/lastimport.pyo
+${PYSITELIB}/beetsplug/limit.py
+${PYSITELIB}/beetsplug/limit.pyc
+${PYSITELIB}/beetsplug/limit.pyo
+${PYSITELIB}/beetsplug/listenbrainz.py
+${PYSITELIB}/beetsplug/listenbrainz.pyc
+${PYSITELIB}/beetsplug/listenbrainz.pyo
+${PYSITELIB}/beetsplug/loadext.py
+${PYSITELIB}/beetsplug/loadext.pyc
+${PYSITELIB}/beetsplug/loadext.pyo
+${PYSITELIB}/beetsplug/lyrics.py
+${PYSITELIB}/beetsplug/lyrics.pyc
+${PYSITELIB}/beetsplug/lyrics.pyo
+${PYSITELIB}/beetsplug/mbcollection.py
+${PYSITELIB}/beetsplug/mbcollection.pyc
+${PYSITELIB}/beetsplug/mbcollection.pyo
+${PYSITELIB}/beetsplug/mbsubmit.py
+${PYSITELIB}/beetsplug/mbsubmit.pyc
+${PYSITELIB}/beetsplug/mbsubmit.pyo
+${PYSITELIB}/beetsplug/mbsync.py
+${PYSITELIB}/beetsplug/mbsync.pyc
+${PYSITELIB}/beetsplug/mbsync.pyo
+${PYSITELIB}/beetsplug/metasync/__init__.py
+${PYSITELIB}/beetsplug/metasync/__init__.pyc
+${PYSITELIB}/beetsplug/metasync/__init__.pyo
+${PYSITELIB}/beetsplug/metasync/amarok.py
+${PYSITELIB}/beetsplug/metasync/amarok.pyc
+${PYSITELIB}/beetsplug/metasync/amarok.pyo
+${PYSITELIB}/beetsplug/metasync/itunes.py
+${PYSITELIB}/beetsplug/metasync/itunes.pyc
+${PYSITELIB}/beetsplug/metasync/itunes.pyo
+${PYSITELIB}/beetsplug/missing.py
+${PYSITELIB}/beetsplug/missing.pyc
+${PYSITELIB}/beetsplug/missing.pyo
+${PYSITELIB}/beetsplug/mpdstats.py
+${PYSITELIB}/beetsplug/mpdstats.pyc
+${PYSITELIB}/beetsplug/mpdstats.pyo
+${PYSITELIB}/beetsplug/mpdupdate.py
+${PYSITELIB}/beetsplug/mpdupdate.pyc
+${PYSITELIB}/beetsplug/mpdupdate.pyo
+${PYSITELIB}/beetsplug/musicbrainz.py
+${PYSITELIB}/beetsplug/musicbrainz.pyc
+${PYSITELIB}/beetsplug/musicbrainz.pyo
+${PYSITELIB}/beetsplug/parentwork.py
+${PYSITELIB}/beetsplug/parentwork.pyc
+${PYSITELIB}/beetsplug/parentwork.pyo
+${PYSITELIB}/beetsplug/permissions.py
+${PYSITELIB}/beetsplug/permissions.pyc
+${PYSITELIB}/beetsplug/permissions.pyo
+${PYSITELIB}/beetsplug/play.py
+${PYSITELIB}/beetsplug/play.pyc
+${PYSITELIB}/beetsplug/play.pyo
+${PYSITELIB}/beetsplug/playlist.py
+${PYSITELIB}/beetsplug/playlist.pyc
+${PYSITELIB}/beetsplug/playlist.pyo
+${PYSITELIB}/beetsplug/plexupdate.py
+${PYSITELIB}/beetsplug/plexupdate.pyc
+${PYSITELIB}/beetsplug/plexupdate.pyo
+${PYSITELIB}/beetsplug/random.py
+${PYSITELIB}/beetsplug/random.pyc
+${PYSITELIB}/beetsplug/random.pyo
+${PYSITELIB}/beetsplug/replace.py
+${PYSITELIB}/beetsplug/replace.pyc
+${PYSITELIB}/beetsplug/replace.pyo
+${PYSITELIB}/beetsplug/replaygain.py
+${PYSITELIB}/beetsplug/replaygain.pyc
+${PYSITELIB}/beetsplug/replaygain.pyo
+${PYSITELIB}/beetsplug/rewrite.py
+${PYSITELIB}/beetsplug/rewrite.pyc
+${PYSITELIB}/beetsplug/rewrite.pyo
+${PYSITELIB}/beetsplug/scrub.py
+${PYSITELIB}/beetsplug/scrub.pyc
+${PYSITELIB}/beetsplug/scrub.pyo
+${PYSITELIB}/beetsplug/smartplaylist.py
+${PYSITELIB}/beetsplug/smartplaylist.pyc
+${PYSITELIB}/beetsplug/smartplaylist.pyo
+${PYSITELIB}/beetsplug/sonosupdate.py
+${PYSITELIB}/beetsplug/sonosupdate.pyc
+${PYSITELIB}/beetsplug/sonosupdate.pyo
+${PYSITELIB}/beetsplug/spotify.py
+${PYSITELIB}/beetsplug/spotify.pyc
+${PYSITELIB}/beetsplug/spotify.pyo
+${PYSITELIB}/beetsplug/subsonicplaylist.py
+${PYSITELIB}/beetsplug/subsonicplaylist.pyc
+${PYSITELIB}/beetsplug/subsonicplaylist.pyo
+${PYSITELIB}/beetsplug/subsonicupdate.py
+${PYSITELIB}/beetsplug/subsonicupdate.pyc
+${PYSITELIB}/beetsplug/subsonicupdate.pyo
+${PYSITELIB}/beetsplug/substitute.py
+${PYSITELIB}/beetsplug/substitute.pyc
+${PYSITELIB}/beetsplug/substitute.pyo
+${PYSITELIB}/beetsplug/the.py
+${PYSITELIB}/beetsplug/the.pyc
+${PYSITELIB}/beetsplug/the.pyo
+${PYSITELIB}/beetsplug/thumbnails.py
+${PYSITELIB}/beetsplug/thumbnails.pyc
+${PYSITELIB}/beetsplug/thumbnails.pyo
+${PYSITELIB}/beetsplug/types.py
+${PYSITELIB}/beetsplug/types.pyc
+${PYSITELIB}/beetsplug/types.pyo
+${PYSITELIB}/beetsplug/unimported.py
+${PYSITELIB}/beetsplug/unimported.pyc
+${PYSITELIB}/beetsplug/unimported.pyo
+${PYSITELIB}/beetsplug/web/__init__.py
+${PYSITELIB}/beetsplug/web/__init__.pyc
+${PYSITELIB}/beetsplug/web/__init__.pyo
+${PYSITELIB}/beetsplug/web/static/backbone.js
+${PYSITELIB}/beetsplug/web/static/beets.css
+${PYSITELIB}/beetsplug/web/static/beets.js
+${PYSITELIB}/beetsplug/web/static/jquery.js
+${PYSITELIB}/beetsplug/web/static/underscore.js
+${PYSITELIB}/beetsplug/web/templates/index.html
+${PYSITELIB}/beetsplug/zero.py
+${PYSITELIB}/beetsplug/zero.pyc
+${PYSITELIB}/beetsplug/zero.pyo
+man/man1/beet-${PYVERSSUFFIX}.1
+man/man5/beetsconfig-${PYVERSSUFFIX}.5
diff --git a/py-beets/TODO b/py-beets/TODO
new file mode 100644
index 0000000000..c9a7126bed
--- /dev/null
+++ b/py-beets/TODO
@@ -0,0 +1,3 @@
+Doesn't build.
+
+https://github.com/beetbox/beets/issues/6089
diff --git a/py-beets/distinfo b/py-beets/distinfo
new file mode 100644
index 0000000000..f1ddccdd5e
--- /dev/null
+++ b/py-beets/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.24 2025/09/21 15:17:23 wiz Exp $
+
+BLAKE2s (beets-2.5.0.tar.gz) = b3cb98ac227c2dfbd8641c74015d393fcc80fc1830f7211632679540417e6722
+SHA512 (beets-2.5.0.tar.gz) = 01cf8ec446b4848668fe4b23ba68e9eafb2123680401fd11cec65023f786aca45cd91819113cc6ef2b73b49e000d63ce36ace3942d67c4499580a2b9fb840360
+Size (beets-2.5.0.tar.gz) = 2141493 bytes
Home |
Main Index |
Thread Index |
Old Index