mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-09 15:13:31 -04:00
media-sound/musikcube: new package, add 3.0.1
A lot of the parts of the ebuild are stolen from @Gerodote's overlay: https://github.com/Gerodote/ex_repo/tree/master/media-sound/musikcube I did some cleanup, fixed the libtinfow link issue (pending upstream fix), and made the USE flags enforce the plugins that gets build, rather than having the build system perform autodetection. Signed-off-by: YiFei Zhu <zhuyifei1999@gmail.com>
This commit is contained in:
1
media-sound/musikcube/Manifest
Normal file
1
media-sound/musikcube/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST musikcube-3.0.1.tar.gz 4759002 BLAKE2B c312067fefaeaeb1c56b15fdcc83e1a73be648d88db54dc43d5c0f3e2ed1f226480612461b7239087ebfadcbcc38ed432622873fc40d3739daca1d32d19bea7f SHA512 ff18b69bf9a295925ede561c80a66f3fce7c00fdc29906a39e89b520c49467ddaa88cb69406a8bd012eaa851716b6515e93a5a0d0f75f2f24e64ced3fef4b9c7
|
||||
26
media-sound/musikcube/files/musikcube-3.0.1-tinfow.patch
Normal file
26
media-sound/musikcube/files/musikcube-3.0.1-tinfow.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
diff --git a/src/musikcube/CMakeLists.txt b/src/musikcube/CMakeLists.txt
|
||||
index e16ec8b4..8e7d0f2c 100644
|
||||
--- a/src/musikcube/CMakeLists.txt
|
||||
+++ b/src/musikcube/CMakeLists.txt
|
||||
@@ -96,10 +96,12 @@ if ((${DISABLE_WIDE_NCURSES_LIB_SUFFIXES} MATCHES "true") OR ((APPLE) AND (${ENA
|
||||
message(STATUS "[ncurses] using library names *WITHOUT* 'w' prefix")
|
||||
set(CURSES_LIBRARY_NAME ncurses)
|
||||
set(PANEL_LIBRARY_NAME panel)
|
||||
+ set(TINFO_LIBRARY_NAME tinfo)
|
||||
else()
|
||||
message(STATUS "[ncurses] using library names with 'w' prefix")
|
||||
set(CURSES_LIBRARY_NAME ncursesw)
|
||||
set(PANEL_LIBRARY_NAME panelw)
|
||||
+ set(TINFO_LIBRARY_NAME tinfow)
|
||||
endif()
|
||||
|
||||
if (APPLE)
|
||||
@@ -114,7 +116,7 @@ else()
|
||||
set(LIBTINFO "")
|
||||
else()
|
||||
message(STATUS "[ncurses] not Darwin! will attempt to link against libtinfo")
|
||||
- find_library(LIBTINFO NAMES tinfo)
|
||||
+ find_library(LIBTINFO NAMES ${TINFO_LIBRARY_NAME})
|
||||
message(STATUS "[musikcube] using libtinfo at: " ${LIBTINFO})
|
||||
endif()
|
||||
endif()
|
||||
29
media-sound/musikcube/metadata.xml
Normal file
29
media-sound/musikcube/metadata.xml
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>zhuyifei1999@gmail.com</email>
|
||||
<name>YiFei Zhu</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="alsa">Build plugin for alsa-out.</flag>
|
||||
<flag name="pipewire">Build plugin to support pipewire.</flag>
|
||||
<flag name="pulseaudio">Build plugin to support pulseaudio.</flag>
|
||||
<flag name="sndio">Build plugin to support sndio</flag>
|
||||
<flag name="portaudio">Build plugin to support portaudio</flag>
|
||||
<flag name="libopenmpt">Build plugin to support playing MOD music aka tracker music through libopenmpt</flag>
|
||||
<flag name="mpris">
|
||||
Build plugin to support MPRIS. needs systemd/elogind or basu USE flags.
|
||||
MPRIS (Media Player Remote Interfacing Specification) is a standard D-Bus interface which aims to provide a common programmatic API for controlling media players.
|
||||
</flag>
|
||||
<flag name="systemd">Build plugin to support MPRIS using systemd.</flag>
|
||||
<flag name="elogind">Build plugin to support MPRIS using elogind.</flag>
|
||||
<flag name="basu">Build plugin to support MPRIS using basu.</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<bugs-to>https://github.com/clangen/musikcube/issues</bugs-to>
|
||||
<changelog>https://github.com/clangen/musikcube/releases</changelog>
|
||||
<doc>https://github.com/clangen/musikcube/wiki</doc>
|
||||
<remote-id type="github">clangen/musikcube</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
93
media-sound/musikcube/musikcube-3.0.1.ebuild
Normal file
93
media-sound/musikcube/musikcube-3.0.1.ebuild
Normal file
@@ -0,0 +1,93 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Excellent terminal music player, support almost every known sound system."
|
||||
HOMEPAGE="https://github.com/clangen/musikcube"
|
||||
SRC_URI="https://github.com/clangen/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="+alsa +libopenmpt pipewire pulseaudio +mpris portaudio sndio systemd elogind basu"
|
||||
|
||||
REQUIRED_USE="
|
||||
mpris? ( ^^ ( systemd elogind basu ) )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
net-libs/libmicrohttpd
|
||||
sys-libs/ncurses
|
||||
media-libs/libogg
|
||||
media-video/ffmpeg
|
||||
sys-libs/zlib
|
||||
media-libs/libvorbis
|
||||
net-misc/curl
|
||||
media-sound/lame
|
||||
dev-libs/libev
|
||||
media-libs/taglib
|
||||
dev-cpp/asio
|
||||
libopenmpt? (
|
||||
media-libs/libopenmpt
|
||||
)
|
||||
mpris? (
|
||||
|| (
|
||||
elogind? ( >=sys-auth/elogind-239 )
|
||||
systemd? ( sys-apps/systemd )
|
||||
basu? ( sys-libs/basu )
|
||||
)
|
||||
)
|
||||
pipewire? (
|
||||
media-video/pipewire
|
||||
)
|
||||
portaudio? (
|
||||
media-libs/portaudio
|
||||
)
|
||||
pulseaudio? (
|
||||
media-sound/pulseaudio
|
||||
)
|
||||
sndio? (
|
||||
media-sound/sndio
|
||||
)
|
||||
alsa? (
|
||||
media-libs/alsa-lib
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
dev-util/cmake
|
||||
"
|
||||
PATCHES=(
|
||||
"${FILESDIR}/musikcube-3.0.1-tinfow.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# Gentoo users enable ccache via e.g. FEATURES=ccache or
|
||||
# other means. We don't want the build system to enable it for us.
|
||||
sed -i -e '/find_program(CCACHE_FOUND ccache)/d' CMakeLists.txt || die
|
||||
|
||||
use mpris || sed -i '/pkg_check_modules.*SDBUS/d' src/plugins/mpris/CMakeLists.txt || die
|
||||
|
||||
local mycmakeargs=(
|
||||
$(usex alsa '' -DLIBASOUND=LIBASOUND-NOTFOUND)
|
||||
-DENABLE_PIPEWIRE=$(usex pipewire true false)
|
||||
$(usex pulseaudio '' -DLIBPULSE=LIBPULSE-NOTFOUND)
|
||||
$(usex portaudio '' -DLIBPORTAUDIO=LIBPORTAUDIO-NOTFOUND)
|
||||
|
||||
if use mpris then
|
||||
-DUSE_ELOGIND=$(usex elogind true false)
|
||||
-DUSE_BASU=$(usex basu true false)
|
||||
fi
|
||||
|
||||
$(usex libopenmpt '' -DLIBOPENMPT=LIBOPENMPT-NOTFOUND)
|
||||
$(usex sndio '' -DLIBSNDIO=LIBSNDIO-NOTFOUND)
|
||||
-DBUILD_STANDALONE=false
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
Reference in New Issue
Block a user