From d30e4a2f5907c665fcf4c906584122e1bbb24d32 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 21 Jul 2024 16:08:19 +0100 Subject: [PATCH 1/3] attract-mode: move to `pkgs/by-name` --- .../default.nix => by-name/at/attract-mode/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{applications/emulators/attract-mode/default.nix => by-name/at/attract-mode/package.nix} (100%) diff --git a/pkgs/applications/emulators/attract-mode/default.nix b/pkgs/by-name/at/attract-mode/package.nix similarity index 100% rename from pkgs/applications/emulators/attract-mode/default.nix rename to pkgs/by-name/at/attract-mode/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b210c70cadb08..63116bc934e3d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2540,8 +2540,6 @@ with pkgs; unfreeEnableDiscord = true; }; - attract-mode = callPackage ../applications/emulators/attract-mode { }; - basiliskii = callPackage ../applications/emulators/basiliskii { }; box64 = callPackage ../applications/emulators/box64 { From 7b2c57a072daa15fa658b43d7799acefdd95a30a Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 21 Jul 2024 16:08:39 +0100 Subject: [PATCH 2/3] attract-mode: format with `nixfmt-rfc-style` --- pkgs/by-name/at/attract-mode/package.nix | 30 +++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/at/attract-mode/package.nix b/pkgs/by-name/at/attract-mode/package.nix index 53765e927a0d6..abf2dfe9b7516 100644 --- a/pkgs/by-name/at/attract-mode/package.nix +++ b/pkgs/by-name/at/attract-mode/package.nix @@ -1,5 +1,19 @@ -{ expat, fetchFromGitHub, ffmpeg_4, fontconfig, freetype, libarchive, libjpeg -, libGLU, libGL, openal, pkg-config, sfml, lib, stdenv, zlib +{ + expat, + fetchFromGitHub, + ffmpeg_4, + fontconfig, + freetype, + libarchive, + libjpeg, + libGLU, + libGL, + openal, + pkg-config, + sfml, + lib, + stdenv, + zlib, }: stdenv.mkDerivation rec { @@ -20,7 +34,17 @@ stdenv.mkDerivation rec { ''; buildInputs = [ - expat ffmpeg_4 fontconfig freetype libarchive libjpeg libGLU libGL openal sfml zlib + expat + ffmpeg_4 + fontconfig + freetype + libarchive + libjpeg + libGLU + libGL + openal + sfml + zlib ]; meta = with lib; { From 2e7de3ff64f5eaa81009de7148d074b4845e25a5 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 21 Jul 2024 13:58:10 +0100 Subject: [PATCH 3/3] attract-mode: 2.6.2 -> 2.7.0-unstable-2024-08-02 Includes fixes for FFmpeg 7. --- pkgs/by-name/at/attract-mode/package.nix | 82 +++++++++++++++--------- 1 file changed, 50 insertions(+), 32 deletions(-) diff --git a/pkgs/by-name/at/attract-mode/package.nix b/pkgs/by-name/at/attract-mode/package.nix index abf2dfe9b7516..87328a78ce6fe 100644 --- a/pkgs/by-name/at/attract-mode/package.nix +++ b/pkgs/by-name/at/attract-mode/package.nix @@ -1,58 +1,76 @@ { - expat, + lib, + stdenv, fetchFromGitHub, - ffmpeg_4, - fontconfig, + pkg-config, + expat, + ffmpeg_7, freetype, libarchive, libjpeg, libGLU, - libGL, - openal, - pkg-config, sfml, - lib, - stdenv, zlib, + openal, + fontconfig, + darwin, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "attract-mode"; - version = "2.6.2"; + version = "2.7.0-unstable-2024-08-02"; src = fetchFromGitHub { owner = "mickelson"; repo = "attract"; - rev = "v${version}"; - sha256 = "sha256-gKxUU2y6Gtm5a/tXYw/fsaTBrriNh5vouPGICs3Ph3c="; + rev = "6ed3a1e32a519608c0b495295cc4c18ceea6b461"; + hash = "sha256-uhbu/DaQSE9Dissv7XLFMVYitPn8ZEewq90poCtEfYY="; }; nativeBuildInputs = [ pkg-config ]; - patchPhase = '' - sed -i "s|prefix=/usr/local|prefix=$out|" Makefile - ''; + buildInputs = + [ + expat + ffmpeg_7 + freetype + libarchive + libjpeg + libGLU + sfml + zlib + ] + ++ lib.optionals (!stdenv.isDarwin) [ + openal + fontconfig + ] + ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Cocoa + darwin.apple_sdk.frameworks.Carbon + darwin.apple_sdk.frameworks.IOKit + darwin.apple_sdk.frameworks.CoreVideo + darwin.apple_sdk.frameworks.OpenAL + ]; + + makeFlags = [ + "prefix=$(out)" + "CC=${stdenv.cc.targetPrefix}cc" + "CXX=${stdenv.cc.targetPrefix}c++" + "STRIP=${stdenv.cc.targetPrefix}strip" + "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" + "PKG_CONFIG=${stdenv.cc.targetPrefix}pkg-config" + "AR=${stdenv.cc.targetPrefix}ar" + "BUILD_EXPAT=0" + ] ++ lib.optionals stdenv.isDarwin [ "USE_FONTCONFIG=0" ]; - buildInputs = [ - expat - ffmpeg_4 - fontconfig - freetype - libarchive - libjpeg - libGLU - libGL - openal - sfml - zlib - ]; + enableParallelBuilding = true; - meta = with lib; { + meta = { description = "Frontend for arcade cabinets and media PCs"; homepage = "http://attractmode.org"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ hrdinka ]; - platforms = with platforms; linux; + license = lib.licenses.gpl3Plus; + maintainers = [ lib.maintainers.hrdinka ]; + platforms = lib.platforms.unix; mainProgram = "attract"; }; }