summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhantasm2024-02-25 15:30:29 +0100
committerPhantasm2024-02-25 15:30:29 +0100
commitf35495ba9a3b7aa0014b4a83eac235a1a0280198 (patch)
tree578b9eac4dc218cfc20f56cae5d6b7b5e63dc564
parente6c9848e6f67213de4a8dd4df98ef80e64f09d58 (diff)
downloadaur-f35495ba9a3b7aa0014b4a83eac235a1a0280198.tar.gz
Support taglib2 and updated PKGBUILD to sort of match the normal AUR package
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD33
-rw-r--r--taglib2.diff259
3 files changed, 283 insertions, 13 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f89502f7d50f..dc9013688f66 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = soundkonverter-dark-theme-git
pkgdesc = Front-end to various audio converters (Git - with custom colors for dark themes)
- pkgver = 3.0.1.r31.g0329d90
+ pkgver = 3.0.1.31.g0329d90
pkgrel = 1
url = https://www.linux-apps.com/content/show.php?content=29024
arch = x86_64
@@ -36,6 +36,8 @@ pkgbase = soundkonverter-dark-theme-git
provides = soundkonverter
conflicts = soundkonverter
source = git+https://github.com/nphantasm/soundkonverter.git
+ source = taglib2.diff
sha256sums = SKIP
+ sha256sums = 6775198a5c30495ead5cda9756643e7e3c5b767dd5f322f985c9775bb37093e9
pkgname = soundkonverter-dark-theme-git
diff --git a/PKGBUILD b/PKGBUILD
index fef0d75e2465..3d238ee12a57 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,8 +2,7 @@
# Based on the official Arch Linux PKGBUILD
pkgname=soundkonverter-dark-theme-git
-_name=soundkonverter
-pkgver=3.0.1.r31.g0329d90
+pkgver=3.0.1.31.g0329d90
pkgrel=1
pkgdesc="Front-end to various audio converters (Git - with custom colors for dark themes)"
arch=(x86_64)
@@ -27,27 +26,37 @@ optdepends=('faac: faac backend'
'vorbis-tools: vorbis tools backend'
'wavpack: wavpack backend'
'sox: sox plugin (change sample rate, various effects)')
-source=("git+https://github.com/nphantasm/soundkonverter.git")
+source=(
+ "git+https://github.com/nphantasm/soundkonverter.git"
+ "taglib2.diff" # Patch imported from soundkonverter AUR package by MdN
+)
provides=(soundkonverter)
conflicts=(soundkonverter)
-sha256sums=('SKIP')
+sha256sums=(
+ 'SKIP'
+ '6775198a5c30495ead5cda9756643e7e3c5b767dd5f322f985c9775bb37093e9'
+)
pkgver() {
- cd "$_name"
- git describe --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
+ cd "$srcdir"/soundkonverter
+ echo "$(git describe --long --tags | tr - . | tr -d v)"
}
prepare() {
- mkdir -p build
+ cd "$srcdir"/soundkonverter
+ patch -Np1 -i "$srcdir"/taglib2.diff
}
build() {
- cd build
- cmake ../"$_name"/src
- make
+ cmake -S soundkonverter/src -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_INSTALL_DIR=lib \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON
+
+ cmake --build build
}
package() {
- cd build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
diff --git a/taglib2.diff b/taglib2.diff
new file mode 100644
index 000000000000..55f3320ae219
--- /dev/null
+++ b/taglib2.diff
@@ -0,0 +1,259 @@
+diff --git a/src/metadata/tagengine.cpp b/src/metadata/tagengine.cpp
+index 4056d67..0aa48b2 100644
+--- a/src/metadata/tagengine.cpp
++++ b/src/metadata/tagengine.cpp
+@@ -367,8 +367,8 @@ TagData* TagEngine::readTags( const KUrl& fileName )
+
+ if( TagLib::MP4::Tag *tag = file->tag() )
+ {
+- TagLib::MP4::ItemListMap map = tag->itemListMap();
+- for( TagLib::MP4::ItemListMap::ConstIterator it = map.begin(); it != map.end(); ++it )
++ TagLib::MP4::ItemMap map = tag->itemMap();
++ for( TagLib::MP4::ItemMap::ConstIterator it = map.begin(); it != map.end(); ++it )
+ {
+ if( it->first == "aART" )
+ {
+@@ -680,7 +680,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->albumArtist.isEmpty() )
+ {
+ if( tag->contains("ALBUMARTIST") )
+- tag->removeField("ALBUMARTIST");
++ tag->removeFields("ALBUMARTIST");
+
+ tag->addField( "ALBUMARTIST", TagLib::String(tagData->albumArtist.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -688,7 +688,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->composer.isEmpty() )
+ {
+ if( tag->contains("COMPOSER") )
+- tag->removeField("COMPOSER");
++ tag->removeFields("COMPOSER");
+
+ tag->addField( "COMPOSER", TagLib::String(tagData->composer.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -698,7 +698,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentTrackTotalTag == "TRACKNUMBER" )
+ {
+ if( tag->contains("TRACKNUMBER") )
+- tag->removeField("TRACKNUMBER");
++ tag->removeFields("TRACKNUMBER");
+
+ tag->addField( "TRACKNUMBER", TagLib::String(track.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -711,7 +711,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( tagData->disc > 0 )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(QString::number(tagData->disc).toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -721,7 +721,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentDiscTotalTag == "DISCNUMBER" )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(disc.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -734,7 +734,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzTrackId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_TRACKID") )
+- tag->removeField("MUSICBRAINZ_TRACKID");
++ tag->removeFields("MUSICBRAINZ_TRACKID");
+
+ tag->addField( "MUSICBRAINZ_TRACKID", TagLib::String(tagData->musicBrainzTrackId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -742,7 +742,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzReleaseId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_ALBUMID") )
+- tag->removeField("MUSICBRAINZ_ALBUMID");
++ tag->removeFields("MUSICBRAINZ_ALBUMID");
+
+ tag->addField( "MUSICBRAINZ_ALBUMID", TagLib::String(tagData->musicBrainzReleaseId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -755,7 +755,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->albumArtist.isEmpty() )
+ {
+ if( tag->contains("ALBUMARTIST") )
+- tag->removeField("ALBUMARTIST");
++ tag->removeFields("ALBUMARTIST");
+
+ tag->addField( "ALBUMARTIST", TagLib::String(tagData->albumArtist.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -763,7 +763,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->composer.isEmpty() )
+ {
+ if( tag->contains("COMPOSER") )
+- tag->removeField("COMPOSER");
++ tag->removeFields("COMPOSER");
+
+ tag->addField( "COMPOSER", TagLib::String(tagData->composer.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -773,7 +773,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentTrackTotalTag == "TRACKNUMBER" )
+ {
+ if( tag->contains("TRACKNUMBER") )
+- tag->removeField("TRACKNUMBER");
++ tag->removeFields("TRACKNUMBER");
+
+ tag->addField( "TRACKNUMBER", TagLib::String(track.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -786,7 +786,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( tagData->disc > 0 )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(QString::number(tagData->disc).toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -796,7 +796,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentDiscTotalTag == "DISCNUMBER" )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(disc.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -809,7 +809,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzTrackId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_TRACKID") )
+- tag->removeField("MUSICBRAINZ_TRACKID");
++ tag->removeFields("MUSICBRAINZ_TRACKID");
+
+ tag->addField( "MUSICBRAINZ_TRACKID", TagLib::String(tagData->musicBrainzTrackId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -817,7 +817,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzReleaseId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_ALBUMID") )
+- tag->removeField("MUSICBRAINZ_ALBUMID");
++ tag->removeFields("MUSICBRAINZ_ALBUMID");
+
+ tag->addField( "MUSICBRAINZ_ALBUMID", TagLib::String(tagData->musicBrainzReleaseId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -830,7 +830,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->albumArtist.isEmpty() )
+ {
+ if( tag->contains("ALBUMARTIST") )
+- tag->removeField("ALBUMARTIST");
++ tag->removeFields("ALBUMARTIST");
+
+ tag->addField( "ALBUMARTIST", TagLib::String(tagData->albumArtist.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -838,7 +838,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->composer.isEmpty() )
+ {
+ if( tag->contains("COMPOSER") )
+- tag->removeField("COMPOSER");
++ tag->removeFields("COMPOSER");
+
+ tag->addField( "COMPOSER", TagLib::String(tagData->composer.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -848,7 +848,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentTrackTotalTag == "TRACKNUMBER" )
+ {
+ if( tag->contains("TRACKNUMBER") )
+- tag->removeField("TRACKNUMBER");
++ tag->removeFields("TRACKNUMBER");
+
+ tag->addField( "TRACKNUMBER", TagLib::String(track.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -861,7 +861,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( tagData->disc > 0 )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(QString::number(tagData->disc).toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -871,7 +871,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( config->data.general.preferredVorbisCommentDiscTotalTag == "DISCNUMBER" )
+ {
+ if( tag->contains("DISCNUMBER") )
+- tag->removeField("DISCNUMBER");
++ tag->removeFields("DISCNUMBER");
+
+ tag->addField( "DISCNUMBER", TagLib::String(disc.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -884,7 +884,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzTrackId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_TRACKID") )
+- tag->removeField("MUSICBRAINZ_TRACKID");
++ tag->removeFields("MUSICBRAINZ_TRACKID");
+
+ tag->addField( "MUSICBRAINZ_TRACKID", TagLib::String(tagData->musicBrainzTrackId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -892,7 +892,7 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( !tagData->musicBrainzReleaseId.isEmpty() )
+ {
+ if( tag->contains("MUSICBRAINZ_ALBUMID") )
+- tag->removeField("MUSICBRAINZ_ALBUMID");
++ tag->removeFields("MUSICBRAINZ_ALBUMID");
+
+ tag->addField( "MUSICBRAINZ_ALBUMID", TagLib::String(tagData->musicBrainzReleaseId.toUtf8().data(), TagLib::String::UTF8), true );
+ }
+@@ -903,27 +903,27 @@ bool TagEngine::writeTags( const KUrl& fileName, TagData *tagData )
+ if( TagLib::MP4::Tag *tag = file->tag() )
+ {
+ if( !tagData->albumArtist.isEmpty() )
+- tag->itemListMap()["aART"] = TagLib::StringList(TagLib::String(tagData->albumArtist.toUtf8().data(), TagLib::String::UTF8));
++ tag->setItem("aART", TagLib::StringList(TagLib::String(tagData->albumArtist.toUtf8().data(), TagLib::String::UTF8)));
+
+ if( !tagData->composer.isEmpty() )
+- tag->itemListMap()["\xA9wrt"] = TagLib::StringList(TagLib::String(tagData->composer.toUtf8().data(), TagLib::String::UTF8));
++ tag->setItem("\xA9wrt", TagLib::StringList(TagLib::String(tagData->composer.toUtf8().data(), TagLib::String::UTF8)));
+
+ if( tagData->trackTotal > 0 )
+- tag->itemListMap()["trkn"] = TagLib::MP4::Item( tagData->track, tagData->trackTotal );
++ tag->setItem("trkn", TagLib::MP4::Item( tagData->track, tagData->trackTotal ));
+
+ if( tagData->disc > 0 )
+ {
+ if( tagData->discTotal > 0 )
+- tag->itemListMap()["disk"] = TagLib::MP4::Item( tagData->disc, tagData->discTotal );
++ tag->setItem("disk", TagLib::MP4::Item( tagData->disc, tagData->discTotal ));
+ else
+- tag->itemListMap()["disk"] = TagLib::MP4::Item( tagData->disc );
++ tag->setItem("disk", TagLib::MP4::Item( tagData->disc ));
+ }
+
+ if( !tagData->musicBrainzTrackId.isEmpty() )
+- tag->itemListMap()["----:com.apple.iTunes:MusicBrainz Track Id"] = TagLib::StringList(TagLib::String(tagData->musicBrainzTrackId.toUtf8().data(), TagLib::String::UTF8));
++ tag->setItem("----:com.apple.iTunes:MusicBrainz Track Id", TagLib::StringList(TagLib::String(tagData->musicBrainzTrackId.toUtf8().data(), TagLib::String::UTF8)));
+
+ if( !tagData->musicBrainzReleaseId.isEmpty() )
+- tag->itemListMap()["----:com.apple.iTunes:MusicBrainz Album Id"] = TagLib::StringList(TagLib::String(tagData->musicBrainzReleaseId.toUtf8().data(), TagLib::String::UTF8));
++ tag->setItem("----:com.apple.iTunes:MusicBrainz Album Id", TagLib::StringList(TagLib::String(tagData->musicBrainzReleaseId.toUtf8().data(), TagLib::String::UTF8)));
+ }
+ }
+ else if( TagLib::ASF::File *file = dynamic_cast<TagLib::ASF::File*>(fileref.file()) )
+@@ -1136,8 +1136,8 @@ QList<CoverData*> TagEngine::readCovers( const KUrl& fileName )
+ {
+ if( TagLib::MP4::Tag *tag = file->tag() )
+ {
+- TagLib::MP4::ItemListMap map = tag->itemListMap();
+- for( TagLib::MP4::ItemListMap::ConstIterator it = map.begin(); it != map.end(); ++it )
++ TagLib::MP4::ItemMap map = tag->itemMap();
++ for( TagLib::MP4::ItemMap::ConstIterator it = map.begin(); it != map.end(); ++it )
+ {
+ if( it->first == "covr" )
+ {
+@@ -1290,7 +1290,7 @@ bool TagEngine::writeCovers( const KUrl& fileName, QList<CoverData*> covers )
+
+ coversList.append( TagLib::MP4::CoverArt( format, TagLib::ByteVector( cover->data.data(), cover->data.size() ) ) );
+ }
+- tag->itemListMap()["covr"] = TagLib::MP4::Item( coversList );
++ tag->setItem("covr", TagLib::MP4::Item( coversList ));
+ }
+
+ return fileref.save();