Change:
Describe the bug The menu icon for Stepmania is missing. To Reproduce Steps to reproduce the behavior: to find it in the Applications menu. Metadata Please run and paste the result. system: host os: multi-user?: sandbox: version: channels(root): nixpkgs: Maintainer information:
I marked this as stale due to inactivity. &rarr;

Discussion:
<del> From 33d928c54f4b35f8877cacd1e2c77b68b4dddc06 Mon Sep 17 00:00:00 2001 From: Zane van Iperen <zane@zanevaniperen.com> Date: Sun, 7 Nov 2021 15:46:37 +1000 Subject: [PATCH] fix build with ffmpeg 4 --- src/arch/MovieTexture/MovieTexture_FFMpeg.cpp |  5 +---- src/arch/MovieTexture/MovieTexture_FFMpeg.h   | 22 +++++++++---------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp index bdf2356..f79fea2 100644 --- a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp +++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp @@ -445,7 +445,7 @@ RString MovieDecoder_FFMpeg::Open( RString sFile ) return "Couldn't find any video streams"; m_pStream = m_fctx->streams[stream_idx]; -	if( m_pStream->codec->codec_id == avcodec::CODEC_ID_NONE ) +	if( m_pStream->codec->codec_id == avcodec::AV_CODEC_ID_NONE ) return ssprintf( "Unsupported codec %08x", m_pStream->codec->codec_tag ); RString sError = OpenCodec(); @@ -474,9 +474,6 @@ RString MovieDecoder_FFMpeg::OpenCodec() m_pStream->codec->idct_algo         = FF_IDCT_AUTO; m_pStream->codec->error_concealment = 3; -	if( pCodec->capabilities & CODEC_CAP_DR1 ) -		m_pStream->codec->flags |= CODEC_FLAG_EMU_EDGE; - LOG->Trace("Opening codec %s", pCodec->name ); int ret = avcodec::avcodec_open2( m_pStream->codec, pCodec, NULL ); diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.h b/src/arch/MovieTexture/MovieTexture_FFMpeg.h index f4d25ef..32564e5 100644 --- a/src/arch/MovieTexture/MovieTexture_FFMpeg.h +++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.h @@ -64,7 +64,7 @@ private: avcodec::AVStream *m_pStream; avcodec::AVFrame *m_Frame; -	avcodec::PixelFormat m_AVTexfmt; /* PixelFormat of output surface */ +	avcodec::AVPixelFormat m_AVTexfmt; /* PixelFormat of output surface */ avcodec::SwsContext *m_swsctx; avcodec::AVFormatContext *m_fctx; @@ -90,7 +90,7 @@ static struct AVPixelFormat_t { int bpp; uint32_t masks[4]; -	avcodec::PixelFormat pf; +	avcodec::AVPixelFormat pf; bool bHighColor; bool bByteSwapOnLittleEndian; MovieDecoderPixelFormatYCbCr YUV; @@ -101,7 +101,7 @@ static struct AVPixelFormat_t 0x00FF0000, 0x0000FF00, 0x000000FF }, -		avcodec::PIX_FMT_YUYV422, +		avcodec::AV_PIX_FMT_YUYV422, false, /* N/A */ true, PixelFormatYCbCr_YUYV422, @@ -112,7 +112,7 @@ static struct AVPixelFormat_t 0x00FF0000, 0xFF000000, 0x000000FF }, -		avcodec::PIX_FMT_BGRA, +		avcodec::AV_PIX_FMT_BGRA, true, true, PixelFormatYCbCr_Invalid, @@ -123,7 +123,7 @@ static struct AVPixelFormat_t 0x0000FF00, 0x000000FF, 0xFF000000 }, -		avcodec::PIX_FMT_ARGB, +		avcodec::AV_PIX_FMT_ARGB, true, true, PixelFormatYCbCr_Invalid, @@ -135,7 +135,7 @@ static struct AVPixelFormat_t 0x0000FF00, 0x00FF0000, 0xFF000000 }, -		avcodec::PIX_FMT_ABGR, +		avcodec::AV_PIX_FMT_ABGR, true, true, PixelFormatYCbCr_Invalid, @@ -146,7 +146,7 @@ static struct AVPixelFormat_t 0x00FF0000, 0x0000FF00, 0x000000FF }, -		avcodec::PIX_FMT_RGBA, +		avcodec::AV_PIX_FMT_RGBA, true, true, PixelFormatYCbCr_Invalid, @@ -157,7 +157,7 @@ static struct AVPixelFormat_t 0x00FF00, 0x0000FF, 0x000000 }, -		avcodec::PIX_FMT_RGB24, +		avcodec::AV_PIX_FMT_RGB24, true, true, PixelFormatYCbCr_Invalid, @@ -168,7 +168,7 @@ static struct AVPixelFormat_t 0x00FF00, 0xFF0000, 0x000000 }, -		avcodec::PIX_FMT_BGR24, +		avcodec::AV_PIX_FMT_BGR24, true, true, PixelFormatYCbCr_Invalid, @@ -179,12 +179,12 @@ static struct AVPixelFormat_t 0x03E0, 0x001F, 0x0000 }, -		avcodec::PIX_FMT_RGB555, +		avcodec::AV_PIX_FMT_RGB555, false, false, PixelFormatYCbCr_Invalid, }, -	{ 0, { 0,0,0,0 }, avcodec::PIX_FMT_NB, true, false, PixelFormatYCbCr_Invalid } +	{ 0, { 0,0,0,0 }, avcodec::AV_PIX_FMT_NB, true, false, PixelFormatYCbCr_Invalid } }; #endif -- 2.31.1 </del>

<del> { stdenv, lib, fetchFromGitHub, cmake, nasm , gtk2, glib, ffmpeg_4, alsa-lib, libmad, libogg, libvorbis , glew, libpulseaudio, udev </del> <ins> { lib , stdenv , fetchFromGitHub , fetchpatch , cmake , nasm , alsa-lib , ffmpeg_6 , glew , glib , gtk2 , libmad , libogg , libpulseaudio , libvorbis , udev , xorg </ins> }: <del> stdenv.mkDerivation rec { </del> <ins> stdenv.mkDerivation { </ins> pname = "stepmania"; <del> version = "5.1.0-b2"; </del> <ins> version = "5.1.0-b2-unstable-2022-11-14"; </ins> src = fetchFromGitHub { owner = "stepmania"; repo  = "stepmania"; <del> rev   = "v${version}"; sha256 = "0a7y9l7xm510vgnpmj1is7p9m6d6yd0fcaxrjcickz295k5w3rdn"; </del> <ins> rev   = "d55acb1ba26f1c5b5e3048d6d6c0bd116625216f"; hash = "sha256-49H2Q61R4l/G0fWsjCjiAUXeWwG3lcsDpV5XvR3l3QE="; </ins> }; patches = [ <del> ./0001-fix-build-with-ffmpeg-4.patch </del> <ins> # https://github.com/stepmania/stepmania/pull/2247 (fetchpatch { name = "fix-building-with-ffmpeg6.patch"; url = "https://github.com/stepmania/stepmania/commit/3fef5ef60b7674d6431f4e1e4ba8c69b0c21c023.patch"; hash = "sha256-m+5sP+mIpcSjioRBdzChqja5zwNcwdSNAfvSJ2Lww+g="; }) </ins> ]; postPatch = ''

nativeBuildInputs = [ cmake nasm ]; buildInputs = [ <del> gtk2 glib ffmpeg_4 alsa-lib libmad libogg libvorbis glew libpulseaudio udev </del> <ins> alsa-lib ffmpeg_6 glew glib gtk2 libmad libogg libpulseaudio libvorbis udev xorg.libXtst </ins> ]; cmakeFlags = [

postInstall = '' mkdir -p $out/bin ln -s $out/stepmania-5.1/stepmania $out/bin/stepmania <ins> mkdir -p $out/share/ cp -r $src/icons $out/share/ install -Dm444 $src/stepmania.desktop -t $out/share/applications </ins> ''; meta = with lib; {

description = "Free dance and rhythm game for Windows, Mac, and Linux"; platforms = platforms.linux; license = licenses.mit; # expat version <del> maintainers = [ ]; </del> <ins> maintainers = with maintainers; [ h7x4 ]; </ins> # never built on aarch64-linux since first introduction in nixpkgs broken = stdenv.isLinux && stdenv.isAarch64; mainProgram = "stepmania";