From 6fc40c85c4709c70eb57c23701977f1bf94992a1 Mon Sep 17 00:00:00 2001 From: Ivar Scholten Date: Tue, 22 Mar 2022 01:56:49 +0100 Subject: goldberg-emu: init at 0.2.5 --- .../emulators/goldberg-emu/default.nix | 52 ++++++++++++++++++++++ .../goldberg-emu/dont-install-unsupported.patch | 34 ++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 88 insertions(+) create mode 100644 pkgs/applications/emulators/goldberg-emu/default.nix create mode 100644 pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch diff --git a/pkgs/applications/emulators/goldberg-emu/default.nix b/pkgs/applications/emulators/goldberg-emu/default.nix new file mode 100644 index 000000000000..4a8d3e3b85ec --- /dev/null +++ b/pkgs/applications/emulators/goldberg-emu/default.nix @@ -0,0 +1,52 @@ +{ lib +, stdenv +, fetchFromGitLab +, cmake +, protobuf + }: + +stdenv.mkDerivation rec { + pname = "goldberg-emu"; + version = "0.2.5"; + + src = fetchFromGitLab { + owner = "mr_goldberg"; + repo = "goldberg_emulator"; + rev = version; + sha256 = "sha256-goOgMNjtDmIKOAv9sZwnPOY0WqTN90LFJ5iEp3Vkzog="; + }; + + # It attempts to install windows-only libraries which we never build + patches = [ ./dont-install-unsupported.patch ]; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ protobuf ]; + + cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/share/goldberg" + ]; + + preFixup = '' + mkdir -p $out/{bin,lib} + chmod +x $out/share/goldberg/tools/find_interfaces.sh + + ln -s $out/share/goldberg/libsteam_api.so $out/lib + ln -s $out/share/goldberg/lobby_connect/lobby_connect $out/bin + ln -s $out/share/goldberg/tools/generate_interfaces_file $out/bin + ln -s $out/share/goldberg/tools/find_interfaces.sh $out/bin/find_interfaces + ''; + + meta = with lib; { + homepage = "https://gitlab.com/Mr_Goldberg/goldberg_emulator"; + changelog = "https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/releases"; + description = "Program that emulates steam online features"; + longDescription = '' + Steam emulator that emulates steam online features. Lets you play games that + use the steam multiplayer apis on a LAN without steam or an internet connection. + ''; + mainProgram = "lobby_connect"; + license = licenses.lgpl3Only; + platforms = platforms.unix; + maintainers = [ maintainers.ivar ]; + }; +} diff --git a/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch b/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch new file mode 100644 index 000000000000..7dba7e25b970 --- /dev/null +++ b/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch @@ -0,0 +1,34 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index abaace2..5e3465c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -182,10 +182,10 @@ if(WIN32) + RUNTIME DESTINATION ./ + ) + else() +- install(TARGETS +- ${LIB_STEAMCLIENT} +- LIBRARY DESTINATION ./ +- ) ++ # install(TARGETS ++ #${LIB_STEAMCLIENT} ++ #LIBRARY DESTINATION ./ ++ #) + endif() + + if(NOT WIN32) +@@ -220,10 +220,10 @@ if(WIN32) + RUNTIME DESTINATION ./ + ) + else() +- install(TARGETS +- ${LIB_STEAMNETWORKINGSOCKETS} +- LIBRARY DESTINATION ./ +- ) ++ # install(TARGETS ++ # ${LIB_STEAMNETWORKINGSOCKETS} ++ # LIBRARY DESTINATION ./ ++ # ) + endif() + + if(NOT WIN32) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b544f1e0e6b7..016a855f7c9b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25835,6 +25835,8 @@ with pkgs; tuigreet = callPackage ../os-specific/linux/tuigreet { }; }; + goldberg-emu = callPackage ../applications/emulators/goldberg-emu { }; + goldendict = libsForQt5.callPackage ../applications/misc/goldendict { inherit (darwin) libiconv; }; -- cgit 1.4.1