forked from pool/picard
Olaf Hering
4ff1ab618d
- Update to version 1.0 - 2012-06-02 - New UI: Extended comparison of existing vs. MB metadata & tags (PICARD-43) - Merged the renaming and moving options pages - Removed the VA file naming format option (there is now a single format option) (PICARD-159) - Add %license% tag - Made %writer% available to tagger scripts and plugins with contents of songwriter (PICARD-21) - Allow two multi-valued variables to be merged in tagger scripting (PICARD-139) - Allow multi-valued variables to be transformed in tagger script and then set back in tags as multi-valued (PICARD-147) - Fix $copy not preserving multi-value variables as documented (PICARD-138) - Load/save free-text tags for ID3 as TXXX frames (PICARD-148) - Fix writing of MusicBrainz Work Id / musicbrainz_workid to tags (PICARD-88) - Handle mimetype for embedding cover art from EXIF jpegs (PICARD-27) - Change cover art box to open MusicBrainz release rather than Amazon - Support manual drag-and-drop of cover art onto a release via cover art box - Only open browser on left-click of cover art box (PICARD-190) - Fix Lookup in Browser (previously 'tag lookup') for clusters (PICARD-186) - Lookup in Browser will now not use MBIDs to lookup unmatched files/clusters - Add Date/Country to CD Lookup results dialog (PICARD-198) - Fix/reset album folksonomy tag counts while refreshing releases (PICARD-4) - Plugins actions can now create sub-menus using the MENU class attribute - New plugin hook register_clusterlist_action - Display the port Picard is listening on at bottom right status bar (PICARD-191) - Make album drops from right hand pane to left default to "unmatched files" again (PICARD-33) - Remove .DS_Store, desktop.ini, and Thumbs.db from otherwise empty directories (PICARD-75) - Update artist translation to use new alias features (primary flag, sort names) (PICARD-200) - Deleted tags aren't indicated as changes (PICARD-165) - Picard log entries have inaccurate timestamp (PICARD-45) - Interface doesn't allow keyboard only management (PICARD-103) - Added option to preserve timestamps of tagged files (PICARD-31) - Added keyboard shortcut to reload release (PICARD-99) - Medium formats weren't listed in order in the "Other versions" menu (PICARD-91) - Couldn't select multiple directories in "Add Folder" window on OS X (PICARD-74) OBS-URL: https://build.opensuse.org/request/show/124381 OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/picard?expand=0&rev=26
140 lines
5.0 KiB
RPMSpec
140 lines
5.0 KiB
RPMSpec
#
|
|
# spec file for package picard
|
|
#
|
|
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: picard
|
|
Version: 1.0
|
|
Release: 0
|
|
Summary: The Next Generation MusicBrainz Tagger
|
|
License: GPL-2.0+
|
|
Group: Productivity/Multimedia/Sound/Utilities
|
|
Url: http://musicbrainz.org/doc/PicardTagger
|
|
Source0: http://ftp.musicbrainz.org/pub/musicbrainz/picard/%{name}-%{version}.tar.gz
|
|
# http://wiki.musicbrainz.org/Picard_Plugins
|
|
Source2: http://dispuutivv.nl/~jan/bonusdisc.py
|
|
Source8: http://users.musicbrainz.org/~brianfreud/SearchAmazon3.py
|
|
Source9: http://users.musicbrainz.org/~brianfreud/SearchAMG.py
|
|
Source10: http://users.musicbrainz.org/~brianfreud/SearchCastAlbums3.py
|
|
Source11: http://users.musicbrainz.org/~brianfreud/SearchDiscogs3.py
|
|
Source12: http://users.musicbrainz.org/~brianfreud/SearchFilmMusziek3.py
|
|
Source13: http://users.musicbrainz.org/~brianfreud/SearchGMR.py
|
|
Source14: http://users.musicbrainz.org/~brianfreud/SearchGoogle3.py
|
|
Source15: http://users.musicbrainz.org/~brianfreud/SearchLortelArchives3.py
|
|
Source16: http://users.musicbrainz.org/~brianfreud/SearchSoundtrackCollector3.py
|
|
Source17: http://users.musicbrainz.org/~brianfreud/SearchSoundtrackINFO3.py
|
|
%if 0%{?BUILD_ORIG_ADDON:1}
|
|
BuildRequires: ffmpeg-devel
|
|
%endif
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libdiscid-devel
|
|
BuildRequires: libofa-devel
|
|
BuildRequires: python-devel
|
|
BuildRequires: python-mutagen
|
|
Requires: python-mutagen
|
|
%if 0%{?suse_version}
|
|
BuildRequires: hicolor-icon-theme
|
|
BuildRequires: python-qt4
|
|
BuildRequires: update-desktop-files
|
|
Requires: python-qt4
|
|
%endif
|
|
%if 0%{?fedora}
|
|
BuildRequires: PyQt4
|
|
%endif
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
%{!?python_sitearch: %global python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
|
|
|
|
%description
|
|
MusicBrainz Picard is a cross-platform MusicBrainz tag editor written in
|
|
Python. Picard Tagger is intended to be the next generation of tagger for
|
|
MusicBrainz, with a focus on album oriented tagging as opposed to track based
|
|
tagging and cross platform compatibility.
|
|
|
|
%lang_package
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
export CFLAGS="%{optflags}"
|
|
cat > %{name}_libdiscid_dummy.c <<-EOF
|
|
#include <stdio.h>
|
|
#include <discid/discid.h>
|
|
int main(void) {
|
|
printf("Dummy to generate correct libdiscid.so rpm dependency.\n");
|
|
discid_free(discid_new());
|
|
return 0;
|
|
}
|
|
EOF
|
|
gcc -Wall -s $CFLAGS -o %{name}_libdiscid_dummy %{name}_libdiscid_dummy.c -ldiscid
|
|
# there is some upstream confusion about what the SONAME of libdiscid is supposed to be
|
|
libdiscid_so="`readelf --wide --dynamic picard_libdiscid_dummy | sed -n '/(NEEDED).*libdiscid.so/s@^\(.*\[\)\([^]]\+\).*@\2@p'`"
|
|
sed -i~ -e "s@^\([[:blank:]]\+\)\(libName[[:blank:]]*=[[:blank:]]*'\)\(libdiscid.so.0\)\('[[:blank:]]*\)@\1\2${libdiscid_so}\4 # was '\3'@" picard/disc.py
|
|
if diff -u picard/disc.py~ picard/disc.py ; then : ; fi
|
|
#
|
|
python setup.py config
|
|
python setup.py build
|
|
|
|
%install
|
|
python setup.py install --skip-build --prefix=%{_prefix} --root=%{buildroot}
|
|
|
|
# install plugins
|
|
PLUGINDIR=%{buildroot}%{py_sitedir}/picard/plugins/
|
|
install -m 0644 %{SOURCE2} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE8} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE9} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE10} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE11} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE12} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE13} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE14} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE15} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE16} ${PLUGINDIR}
|
|
install -m 0644 %{SOURCE17} ${PLUGINDIR}
|
|
|
|
%if 0%{?fedora}
|
|
desktop-file-install --delete-original --remove-category="Application" \
|
|
--dir=%{buildroot}%{_datadir}/applications %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
%endif
|
|
%if 0%{?suse_version}
|
|
%suse_update_desktop_file -G "Music Tagger" -N "picard" picard
|
|
%endif
|
|
|
|
%find_lang %{name}
|
|
|
|
mkdir -vp %{buildroot}/%{_libdir}/%{name}
|
|
cp -avL %{name}_libdiscid_dummy %{buildroot}/%{_libdir}/%{name}
|
|
|
|
%post
|
|
%icon_theme_cache_post
|
|
|
|
%postun
|
|
%icon_theme_cache_postun
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc AUTHORS.txt COPYING.txt NEWS.txt
|
|
%{_bindir}/picard
|
|
%{_libdir}/%{name}
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{python_sitearch}/picard*
|
|
%{_datadir}/icons/hicolor/*/apps/picard.png
|
|
|
|
%files lang -f %{name}.lang
|
|
%defattr(-,root,root)
|
|
|
|
%changelog
|