git.iko.soy/typeable/nixpkgs
on master help sign in
ultrastardx: 2020.4.0 -> 2021-04-03

Not a lot has changed since last update, a few fixes were pushed to the master tree. We take the liberty to update to master for now. This updates the ffmpeg version from 2.x to 4.x, which seems to be supported upstream when we bend the minor version restriction a little. A simple karaoke song played just fine in my test.

commitd7cfce0e475eb78a18f554b2384a65de5d6c57a6 authorProfpatsch <mail@profpatsch.de> dateTue 18 May 2021, 00:12 (5 years ago) parent636b358
1 file changed+24−11
pkgs/games/ultrastardx/default.nix+24−11
pkgs/games/ultrastardx/default.nix+24−11
@@ -31,28 +31,41 @@ let
3131
3232in stdenv.mkDerivation rec {
3333 pname = "ultrastardx";
34− version = "2020.4.0";
34+ version = "2021-04-03";
3535 src = fetchFromGitHub {
3636 owner = "UltraStar-Deluxe";
3737 repo = "USDX";
38− rev = "v${version}";
39− sha256 = "0vmfv8zpyf8ymx3rjydpd7iqis080lni94vb316vfxkgvjmqbhym";
38+ rev = "d49e916705092f3d765d85d276b283b9e7e232a6";
39+ sha256 = "0sdcz2vc8i2z50nj7zbkdpxx2mvx0m0927lfsj7d7qr0p8vkm0wa";
4040 };
4141
4242 nativeBuildInputs = [ pkg-config autoreconfHook ];
4343 buildInputs = [ fpc libpng ] ++ sharedLibs;
4444
45− patches = [
46− (fetchpatch {
47− name = "fpc-3.2-support.patch";
48− url = "https://github.com/UltraStar-Deluxe/USDX/commit/1b8e8714c1523ef49c2fd689a1545d097a3d76d7.patch";
49− sha256 = "02zmjymj9w1mkpf7armdpf067byvml6lprs1ca4lhpkv45abddp4";
50− })
51− ];
52−
5345 postPatch = ''
5446 substituteInPlace src/config.inc.in \
5547 --subst-var-by libpcre_LIBNAME libpcre.so.1
48+
49+ # ultrastardx binds to libffmpeg (and sublibs), specifying a very restrictive
50+ # upper bounds on the minor versions of .so files.
51+ # We can assume ffmpeg won’t break any major ABI compatibility, since their
52+ # patch version seems to always stay at 100,
53+ # and their minor version changes quite frequently.
54+ sed \
55+ -e 's/^ LIBAVCODEC_MAX_VERSION_MINOR.*$/ LIBAVCODEC_MAX_VERSION_MINOR = 1000;/' \
56+ -i src/lib/ffmpeg-4.0/avcodec.pas
57+ sed \
58+ -e 's/^ LIBAVFORMAT_MAX_VERSION_MINOR.*$/ LIBAVFORMAT_MAX_VERSION_MINOR = 1000;/' \
59+ -i src/lib/ffmpeg-4.0/avformat.pas
60+ sed \
61+ -e 's/^ LIBAVUTIL_MAX_VERSION_MINOR.*$/ LIBAVUTIL_MAX_VERSION_MINOR = 1000;/' \
62+ -i src/lib/ffmpeg-4.0/avutil.pas
63+ sed \
64+ -e 's/^ LIBSWRESAMPLE_MAX_VERSION_MINOR.*$/ LIBSWRESAMPLE_MAX_VERSION_MINOR = 1000;/' \
65+ -i src/lib/ffmpeg-4.0/swresample.pas
66+ sed \
67+ -e 's/^ LIBSWSCALE_MAX_VERSION_MINOR.*$/ LIBSWSCALE_MAX_VERSION_MINOR = 1000;/' \
68+ -i src/lib/ffmpeg-4.0/swscale.pas
5669 '';
5770
5871 preBuild = with lib;