# Copyright 2009 Ali Polatel # Based in part upon easytag-2.1.6.ebuild which is: # Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 require gnome.org [ suffix=tar.xz ] require freedesktop-desktop gsettings gtk-icon-cache require flag-o-matic SUMMARY="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags" DESCRIPTION=" Features of EasyTAG: * View, edit, write tags of MP3, MP2 files (ID3 tag with pictures), FLAC files (FLAC Vorbis tag), Ogg Opus files (Ogg Vorbis tag), Ogg Speex (Ogg Vorbis tag), Ogg Vorbis files (Ogg Vorbis tag), MP4/AAC (MP4/AAC tag), MusePack, Monkey's Audio files and WavPack files (APE tag) * Can edit more tag fields: title, artist, album, disc number, year, track number, comment, composer, original artist/performer, copyright, URL, encoder name and attached picture * Auto tagging: filename and directory to automatically complete the fields (masks) * Ability to rename files and directories from the tag (using masks) or by loading a text file * Process selected files of the selected directory * Ability to browse subdirectories * Recursion for tagging, removing, renaming, saving... * Can set a field (artist, title,...) to all other files * Read and display file header information (bitrate, time,...) * Auto completion of the date if a partial one is entered * Undo and redo last changes * Ability to process fields of tag and file name (convert letters into uppercase, lowercase,... * Ability to open a directory or a file with an external program * CDDB support using Freedb.org and Gnudb.org servers (manual and automatic search) * A tree based browser or a view by artist & album * A list to select files * A playlist generator window * A file searching window * Straightforward and explicit interface * Translations into many languages * Written in C and using GTK+ for the GUI * Packages available for Linux and Windows " LICENCES="GPL-2" SLOT="0" PLATFORMS="~amd64 ~x86" MYOPTIONS=" flac mp3 mp4 [[ description = [ Adds support to tag mp4 files ] ]] opus [[ description = [ Adds support for opus files ] ]] vorbis wavpack [[ description = [ Add support for wavpack ] ]] speex [[ requires = vorbis ]] ( linguas: bg bs ca cs da de el en_GB es fr he hu id it ja ko lt nb nl pl pt pt_BR ro ru sl sr sr@latin sv te tr uk zh_CN zh_TW ) " DEPENDENCIES=" build: app-text/docbook-xml-dtd:4.4 app-text/docbook-xsl-stylesheets dev-libs/libxslt [[ note = [ xsltproc for man page generation ] ]] dev-util/intltool[>=0.50.0] gnome-desktop/yelp-tools [[ note = [ build help ] ]] sys-devel/gettext sys-devel/libtool virtual/pkg-config[>=0.24] build+run: dev-libs/glib:2[>=2.38.0] gnome-desktop/gsettings-desktop-schemas x11-libs/gdk-pixbuf:2.0 x11-libs/gtk+:3[>=3.10] flac? ( media-libs/flac:=[>=1.1.4] ) mp3? ( media-libs/id3lib[>=3.8.0] media-libs/libid3tag ) mp4? ( media-libs/taglib:=[>=1.9.1] ) opus? ( media-libs/opus[>=1.0] media-libs/opusfile ) speex? ( media-libs/speex ) vorbis? ( media-libs/libogg[>=1.0] media-libs/libvorbis[>=1.0.1] ) wavpack? ( media-sound/wavpack[>=4.40] ) test: dev-util/desktop-file-utils " DEFAULT_SRC_CONFIGURE_PARAMS=( --disable-appdata-validate # Not compatible with nautilus[>=43] --disable-nautilus-actions ) DEFAULT_SRC_CONFIGURE_OPTION_ENABLES=( flac mp3 'mp3 id3v23' mp4 opus speex 'vorbis ogg' wavpack ) DEFAULT_SRC_CONFIGURE_TESTS=( '--any --enable-tests --disable-tests' ) src_prepare() { has_version 'media-libs/taglib:=[>=2]' \ && expatch "${FILES}"/${PN}-2.4.3-taglib-2.patch default } src_configure() { # Allow to build with gcc 15. We could add upstream commit # a41d48c8849aff8f6bc19ae1f449d8509c20d3ae to partly solve this, but # id3lib has a typedef int bool in its public header and bool became a # keyword in C23. Fixing it there, comes with some ABI concerns and it is # marked as depcreated anyway (and upstream recommends to switch to # taglib). # https://gitlab.gnome.org/GNOME/easytag/-/issues/109 # https://sourceforge.net/p/id3lib/bugs/215/ append-flags -std=gnu17 default } pkg_postrm() { freedesktop-desktop_pkg_postrm gsettings_pkg_postrm gtk-icon-cache_pkg_postrm } pkg_postinst() { freedesktop-desktop_pkg_postinst gsettings_pkg_postinst gtk-icon-cache_pkg_postinst }