Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 942642 - games-arcade/performous-1.3.1: version bump
Summary: games-arcade/performous-1.3.1: version bump
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-01 08:11 UTC by Sam James
Modified: 2024-11-04 22:54 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-11-01 08:11:28 UTC
See discussion at https://forums.gentoo.org/viewtopic-t-1171513.html.

Thanks.
Comment 1 lebkoungcity 2024-11-04 22:54:27 UTC
I took the ebuild of version 1.2.0, saved it as performous-1.3.1.ebuild and found that this version of performous checks for nlohmann-json, so I put that into RDEPEND. But I'm stuck because it also checks for compact_enc_det (can be found here: https://github.com/performous/compact_enc_det ). But at least on my machines (amd64 & arm64) the ebuild fails with:

-- Checking for module 'CED'
--   Package 'CED' not found
-- ced build from source because not found on system
-- Fetching and making available ced-src...
[1/9] Creating directories for 'ced-src-populate'
[1/9] Performing download step (git clone) for 'ced-src-populate'
Cloning into 'ced-src-src'...
fatal: unable to access 'https://github.com/performous/compact_enc_det.git/': Could not resolve host: github.com
Cloning into 'ced-src-src'...
fatal: unable to access 'https://github.com/performous/compact_enc_det.git/': Could not resolve host: github.com
Cloning into 'ced-src-src'...
fatal: unable to access 'https://github.com/performous/compact_enc_det.git/': Could not resolve host: github.com
Had to git clone more than once: 3 times.
CMake Error at /var/tmp/portage/games-arcade/performous-1.3.1/work/performous-1.3.1_build/_deps/ced-src-subbuild/ced-src-populate-prefix/tmp/ced-src-populate-gitclone.cmake:50 (message):
  Failed to clone repository:
  'https://github.com/performous/compact_enc_det.git' 

I tried to make a working ebuild for https://github.com/performous/compact_enc_det but I failed. Maybe it's easier to fix this within the ebuild for performous?

So, this is what I have so far. Not much but maybe someone can make use of it as a starting point.


# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit cmake

# CED is only used in 1.2.0 and can be dropped on bump, no LICENSE
# changes needed given Apache-2.0 is also used by installed fonts
HASH_CED=9ca1351fe0b1e85992a407b0fc54a63e9b3adc6e

DESCRIPTION="SingStar GPL clone"
HOMEPAGE="https://performous.org/"
SRC_URI="
        https://github.com/performous/performous/archive/refs/tags/${PV}.tar.gz
                -> ${P}.tar.gz
        https://github.com/performous/compact_enc_det/archive/${HASH_CED}.tar.gz
                -> ${PN}-ced-${HASH_CED}.tar.gz
        songs? (
                https://downloads.sourceforge.net/performous/ultrastar-songs-jc-1.zip
                https://downloads.sourceforge.net/performous/ultrastar-songs-libre-3.zip
                https://downloads.sourceforge.net/performous/ultrastar-songs-restricted-3.zip
                https://downloads.sourceforge.net/performous/ultrastar-songs-shearer-1.zip
        )"

LICENSE="
        GPL-2
        Apache-2.0 OFL-1.1
        songs? ( CC-BY-NC-SA-2.5 CC-BY-NC-ND-2.5 )"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="midi songs webcam"

RDEPEND="
        dev-cpp/libxmlpp:5.0
        dev-cpp/nlohmann_json
        dev-libs/boost:=[nls]
        dev-libs/glib:2
        dev-libs/icu:=
        gnome-base/librsvg:2
        media-libs/aubio:=[fftw]
        media-libs/fontconfig:1.0
        media-libs/glm
        media-libs/libepoxy
        media-libs/libjpeg-turbo:=
        media-libs/libpng:=
        media-libs/libsdl2[joystick,opengl,video]
        media-libs/portaudio
        media-video/ffmpeg:=
        virtual/libintl
        x11-libs/cairo
        x11-libs/pango
        midi? ( media-libs/portmidi )
        webcam? ( media-libs/opencv:= )"
DEPEND="${RDEPEND}"
BDEPEND="
        sys-apps/help2man
        sys-devel/gettext
        songs? ( app-arch/unzip )"

PATCHES=(
)

src_prepare() {
        cmake_src_prepare

        if [[ -v LINGUAS ]]; then
                local po
                for po in lang/*.po; do
                        : "${po#*/}"
                        has "${_%.*}" ${LINGUAS} || rm "${po}" || die
                done
        fi

        # glibmm is only needed if libxmlpp:2.6, but :5.0 is used if available
        sed -i '/Glibmm/d' cmake/Modules/FindLibXML++.cmake || die
}

src_configure() {
        local mycmakeargs=(
                -DENABLE_MIDI=$(usex midi)
                -DENABLE_WEBCAM=$(usex webcam)
                -DFETCHCONTENT_SOURCE_DIR_CED-SOURCES="${WORKDIR}"/compact_enc_det-${HASH_CED}
                -DSHARE_INSTALL="${EPREFIX}"/usr/share/${PN}

                # webserver needs unpackaged cpprestsdk which is not recommended for
                # use by its upstream (dead), may consider adding only if requested
                -DENABLE_WEBSERVER=no
        )

        cmake_src_configure
}

src_install() {
        local DOCS=( README.md docs/{Authors,instruments}.txt )
        cmake_src_install

        insinto /usr/share/${PN}
        use songs && doins -r "${WORKDIR}"/songs

        gzip -d "${ED}"/usr/share/man/man6/${PN}.6.gz || die
}