diff options
-rw-r--r-- | eclass/deadbeef-plugins.eclass | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/eclass/deadbeef-plugins.eclass b/eclass/deadbeef-plugins.eclass new file mode 100644 index 00000000..68c77ccf --- /dev/null +++ b/eclass/deadbeef-plugins.eclass @@ -0,0 +1,44 @@ +# Distributed under the terms of the GNU General Public License v2 + +# @ECLASS: deadbeef-plugins.eclass +# @MAINTAINER: +# Roman Kuzmitsky <damex.pp@gmail.com> +# @BLURB: Eclass for automating deadbeef player plugins installation. +# @DESCRIPTION: +# This eclass makes trivial deadbeef plugin ebuilds possible. +# Many things that would normally be done manually is automated. + +if [[ "${EAPI}" -lt 5 ]] ; then + die "EAPI="${EAPI}" is not supported" +fi + +inherit eutils + +: ${SLOT:=0} + +RDEPEND+=" media-sound/deadbeef:0" +DEPEND+=" media-sound/deadbeef:0" + +RESTRICT+=" mirror" + +if [[ "${DEADBEEF_GUI}" == "yes" ]] ; then + IUSE+=" +gtk2 gtk3" + REQUIRED_USE="|| ( gtk2 gtk3 )" + GUI_DEPEND="gtk2? ( media-sound/deadbeef:0[gtk2] ) + gtk3? ( media-sound/deadbeef:0[gtk3] )" + RDEPEND+=" ${GUI_DEPEND}" + DEPEND+=" ${GUI_DEPEND}" +fi + +EXPORT_FUNCTIONS "src_install" + +# @FUNCTION: deadbeef-plugins_src_install +# @DESCRIPTION: +# Looking for a *.so deadbeef plugins and installs found plugins to corresponding deadbeef directory. +deadbeef-plugins_src_install() { + local plugins=`find "${WORKDIR}" -name "*.so" -type f` + for plugin in ${plugins} ; do + insinto "/usr/$(get_libdir)/deadbeef" + doins "${plugin}" + done +} |