parallel-launcher: 8.3.0 -> 9.0.2 (#452803)
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
diff --git a/src/core/retroarch.cpp b/src/core/retroarch.cpp
|
||||
index c2a2c47..97fa782 100644
|
||||
index 7502922..c6a572b 100644
|
||||
--- a/src/core/retroarch.cpp
|
||||
+++ b/src/core/retroarch.cpp
|
||||
@@ -102,7 +102,7 @@ static void loadConfig( std::map<string, string> &configs ) {
|
||||
@@ -103,7 +103,7 @@ static void loadConfig( std::map<string, string> &configs ) {
|
||||
|
||||
const fs::path basePath = RetroArch::getBasePath();
|
||||
configs["system_directory"] = (basePath / _NFS("system")).u8string();
|
||||
@@ -11,7 +11,7 @@ index c2a2c47..97fa782 100644
|
||||
configs["savefile_directory"] = (basePath / _NFS("saves")).u8string();
|
||||
configs["savestate_directory"] = (basePath / _NFS("states")).u8string();
|
||||
configs["libretro_info_path"] = (basePath / _NFS("info")).u8string();
|
||||
@@ -110,7 +110,7 @@ static void loadConfig( std::map<string, string> &configs ) {
|
||||
@@ -111,7 +111,7 @@ static void loadConfig( std::map<string, string> &configs ) {
|
||||
#if defined(FLATPAK_VERSION)
|
||||
configs["assets_directory"] = "/app/share/libretro/assets/";
|
||||
#elif defined(__linux__)
|
||||
@@ -20,7 +20,7 @@ index c2a2c47..97fa782 100644
|
||||
configs["osk_overlay_directory"] = (BaseDir::data() / "retro-data" / "overlays" / "keyboards").u8string();
|
||||
configs["overlay_directory"] = (BaseDir::data() / "retro-data" / "overlays").u8string();
|
||||
configs["audio_filter_dir"] = (BaseDir::data() / "retro-data" / "filters" / "audio").u8string();
|
||||
@@ -845,13 +845,7 @@ fs::path RetroArch::getBasePath() {
|
||||
@@ -866,13 +866,7 @@ fs::path RetroArch::getBasePath() {
|
||||
}
|
||||
|
||||
fs::path RetroArch::getCorePath() {
|
||||
@@ -35,7 +35,7 @@ index c2a2c47..97fa782 100644
|
||||
}
|
||||
|
||||
fs::path RetroArch::getConfigPath() {
|
||||
@@ -866,7 +860,7 @@ fs::path RetroArch::getExePath() {
|
||||
@@ -887,7 +881,7 @@ fs::path RetroArch::getExePath() {
|
||||
#elif defined(FLATPAK_VERSION)
|
||||
return BaseDir::program() / "retroarch";
|
||||
#else
|
||||
@@ -45,27 +45,41 @@ index c2a2c47..97fa782 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main.cpp b/src/main.cpp
|
||||
index 3ca39b2..f3c14ba 100644
|
||||
index fbd4c92..91ef84e 100644
|
||||
--- a/src/main.cpp
|
||||
+++ b/src/main.cpp
|
||||
@@ -200,6 +200,7 @@ int main( int argc, char **argv ) {
|
||||
@@ -209,7 +209,7 @@ int main( int argc, char **argv ) {
|
||||
fs::path( "/usr/local/share/parallel-launcher/translations/" ),
|
||||
fs::path( "/usr/share/parallel-launcher/translations/" )
|
||||
#else
|
||||
+ fs::read_symlink( "/proc/self/exe" ).parent_path().parent_path() / "share/parallel-launcher/translations/",
|
||||
fs::path( "/usr/share/parallel-launcher/translations/" ),
|
||||
- fs::path( "/usr/share/parallel-launcher/translations/" ),
|
||||
+ fs::path( "@sharePath@/translations/" ),
|
||||
fs::path( "/usr/local/share/parallel-launcher/translations/" ),
|
||||
BaseDir::program() / "lang"
|
||||
#endif
|
||||
diff --git a/src/plugins/discord-plugin.cpp b/src/plugins/discord-plugin.cpp
|
||||
index 055c0ee..7ce44fb 100644
|
||||
--- a/src/plugins/discord-plugin.cpp
|
||||
+++ b/src/plugins/discord-plugin.cpp
|
||||
@@ -38,7 +38,7 @@ const DiscordPlugin &DiscordPlugin::tryLoad( bool *success ) noexcept {
|
||||
return s_abi;
|
||||
}
|
||||
|
||||
- void *handle = dlopen( (BaseDir::data() / "plugins" / "libdiscord-rpc.so").u8string().c_str(), RTLD_NOW );
|
||||
+ void *handle = dlopen( "libdiscord-rpc.so", RTLD_NOW );
|
||||
if( !handle ) {
|
||||
if( success != nullptr ) *success = false;
|
||||
return s_stub;
|
||||
diff --git a/src/polyfill/base-directory.cpp b/src/polyfill/base-directory.cpp
|
||||
index 720a754..db607ca 100644
|
||||
index 2dcc704..45970a4 100644
|
||||
--- a/src/polyfill/base-directory.cpp
|
||||
+++ b/src/polyfill/base-directory.cpp
|
||||
@@ -134,7 +134,7 @@ static Locations getLocations() {
|
||||
@@ -146,7 +146,7 @@ static Locations getLocations() {
|
||||
#if defined(FLATPAK_VERSION)
|
||||
fs::path( "/app/share/parallel-launcher" )
|
||||
#elif defined(__linux__)
|
||||
- fs::path( "/usr/share/parallel-launcher" )
|
||||
+ fs::read_symlink( "/proc/self/exe" ).parent_path().parent_path() / "share/parallel-launcher"
|
||||
+ fs::path( "@sharePath@" )
|
||||
#endif
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/src/core/updates.cpp b/src/core/updates.cpp
|
||||
index 403290b..f7d6547 100644
|
||||
index cb9ca39..4dc5dfb 100644
|
||||
--- a/src/core/updates.cpp
|
||||
+++ b/src/core/updates.cpp
|
||||
@@ -30,8 +30,8 @@
|
||||
@@ -24,8 +24,8 @@
|
||||
#endif
|
||||
|
||||
const InstalledVersionsInfo InstalledVersionsInfo::Default {
|
||||
@@ -13,7 +13,7 @@ index 403290b..f7d6547 100644
|
||||
/* lastUpdateCheck */ 0
|
||||
};
|
||||
|
||||
@@ -47,15 +47,7 @@ template<> void JsonSerializer::serialize<RetroArchVersion>( JsonWriter &jw, con
|
||||
@@ -41,15 +41,7 @@ template<> void JsonSerializer::serialize<RetroArchVersion>( JsonWriter &jw, con
|
||||
}
|
||||
|
||||
template<> RetroArchVersion JsonSerializer::parse<RetroArchVersion>( const Json &json ) {
|
||||
@@ -30,7 +30,7 @@ index 403290b..f7d6547 100644
|
||||
}
|
||||
|
||||
static constexpr char P_RETROARCH[] = "retroarch";
|
||||
@@ -73,47 +65,14 @@ template<> void JsonSerializer::serialize<InstalledVersionsInfo>( JsonWriter &jw
|
||||
@@ -67,44 +59,15 @@ template<> void JsonSerializer::serialize<InstalledVersionsInfo>( JsonWriter &jw
|
||||
}
|
||||
|
||||
template<> InstalledVersionsInfo JsonSerializer::parse<InstalledVersionsInfo>( const Json &json ) {
|
||||
@@ -60,11 +60,7 @@ index 403290b..f7d6547 100644
|
||||
-#if defined(__linux__)
|
||||
- const Json &vjson = json["linux_x64"];
|
||||
-#elif defined(_WIN32)
|
||||
- #ifdef _WIN64
|
||||
- const Json &vjson = json["windows_x64"];
|
||||
- #else
|
||||
- const Json &vjson = json["windows_x86"];
|
||||
- #endif
|
||||
- const Json &vjson = json["windows_x64"];
|
||||
-#elif defined(__APPLE__)
|
||||
- const Json &vjson = AppleUtil::shouldUseArmCore() ? json["macos_arm64"] : json["macos_x64"];
|
||||
-#else
|
||||
@@ -75,14 +71,16 @@ index 403290b..f7d6547 100644
|
||||
return ParallelCoreVersion{
|
||||
- JsonSerializer::parse<Version>( vjson["version"] ),
|
||||
- vjson["sha1"].get<string>(),
|
||||
- vjson["zipSignature"].get<string>(),
|
||||
- vjson["url"].get<string>()
|
||||
+ InstalledVersionsInfo::Default.parallelVersion,
|
||||
+ "",
|
||||
+ "",
|
||||
+ ""
|
||||
};
|
||||
}
|
||||
|
||||
@@ -178,6 +137,7 @@ void RetroUpdater::checkForUpdates(
|
||||
@@ -169,6 +132,7 @@ void RetroUpdater::checkForUpdates(
|
||||
bool waitForCoreUpdates,
|
||||
bool forceUpdate
|
||||
) {
|
||||
|
||||
@@ -1,25 +1,27 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
callPackage,
|
||||
fetchFromGitLab,
|
||||
replaceVars,
|
||||
qt5,
|
||||
SDL2,
|
||||
discord-rpc,
|
||||
libgcrypt,
|
||||
sqlite,
|
||||
findutils,
|
||||
xdg-utils,
|
||||
coreutils,
|
||||
discord-rpc,
|
||||
dosfstools,
|
||||
fetchFromGitLab,
|
||||
findutils,
|
||||
lib,
|
||||
libgcrypt,
|
||||
libgpg-error,
|
||||
parallel-launcher,
|
||||
qt6,
|
||||
replaceVars,
|
||||
retroarch-assets,
|
||||
SDL2,
|
||||
sqlite,
|
||||
stdenv,
|
||||
vulkan-loader,
|
||||
wrapRetroArch,
|
||||
retroarch-assets,
|
||||
parallel-launcher,
|
||||
xdg-utils,
|
||||
zlib,
|
||||
# Allow overrides for the RetroArch core and declarative settings
|
||||
parallel-n64-core ? parallel-launcher.passthru.parallel-n64-core,
|
||||
extraRetroArchSettings ? { },
|
||||
parallel-n64-core ? parallel-launcher.passthru.parallel-n64-core,
|
||||
withDiscordRpc ? false,
|
||||
}:
|
||||
let
|
||||
@@ -53,13 +55,13 @@ stdenv.mkDerivation (
|
||||
in
|
||||
{
|
||||
pname = "parallel-launcher";
|
||||
version = "8.3.0"; # Check ./parallel-n64-next.nix for updates when updating, too
|
||||
version = "9.0.2"; # Check ./parallel-n64-next.nix for updates when updating, too
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "parallel-launcher";
|
||||
repo = "parallel-launcher";
|
||||
tag = reformatVersion finalAttrs.version;
|
||||
hash = "sha256-Zp/QTPREfpOG0zgnP1Lg5FgT9u+OEhoqBgnxWMu451A=";
|
||||
hash = "sha256-JrZy60xWgrUlFcyGNVBUfHg/diM5TG5mIbbOXpee/2U=";
|
||||
};
|
||||
|
||||
patches =
|
||||
@@ -73,6 +75,8 @@ stdenv.mkDerivation (
|
||||
inherit retroArchAssetsPath retroArchCoresPath;
|
||||
retroArchExePath = lib.getExe retroarch';
|
||||
parallelN64CorePath = "${retroArchCoresPath}/parallel_n64_next_libretro${suffix}";
|
||||
# Manually substituted later since we need to reference PL's $out
|
||||
sharePath = null;
|
||||
})
|
||||
# Bypass update checks and hardcode internal version checks to ours
|
||||
(replaceVars ./fix-version-checks.patch {
|
||||
@@ -82,40 +86,60 @@ stdenv.mkDerivation (
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
qt5.wrapQtAppsHook
|
||||
qt5.qttools
|
||||
qt5.qmake
|
||||
qt6.wrapQtAppsHook
|
||||
qt6.qttools
|
||||
qt6.qmake
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
SDL2
|
||||
libgcrypt
|
||||
libgpg-error
|
||||
qt6.qtbase
|
||||
qt6.qtsvg
|
||||
SDL2
|
||||
sqlite
|
||||
qt5.qtbase
|
||||
qt5.qtsvg
|
||||
]
|
||||
++ lib.optional withDiscordRpc discord-rpc;
|
||||
zlib
|
||||
];
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
findutils
|
||||
xdg-utils
|
||||
coreutils
|
||||
dosfstools
|
||||
findutils
|
||||
xdg-utils
|
||||
]
|
||||
}"
|
||||
"--prefix LD_LIBRARY_PATH : ${
|
||||
lib.makeLibraryPath [
|
||||
vulkan-loader
|
||||
]
|
||||
lib.makeLibraryPath (
|
||||
[
|
||||
vulkan-loader
|
||||
]
|
||||
++ lib.optional withDiscordRpc discord-rpc
|
||||
)
|
||||
}"
|
||||
];
|
||||
|
||||
qmakeFlags = [
|
||||
"DEFINES+=RETROARCH_XWAYLAND"
|
||||
];
|
||||
|
||||
# Our patches result in unused params.
|
||||
# Ignoring the warning is easier to maintain than more invasive patching.
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-parameter";
|
||||
|
||||
postPatch =
|
||||
let
|
||||
sharePath = "${placeholder "out"}/share/parallel-launcher";
|
||||
in
|
||||
''
|
||||
substituteInPlace src/main.cpp \
|
||||
--replace-fail '@sharePath@' '${sharePath}'
|
||||
|
||||
substituteInPlace src/polyfill/base-directory.cpp \
|
||||
--replace-fail '@sharePath@' '${sharePath}'
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
lrelease app.pro
|
||||
'';
|
||||
|
||||
@@ -15,13 +15,13 @@ in
|
||||
# Based on the libretro parallel-n64 derivation with slight tweaks
|
||||
libretro.mkLibretroCore (finalAttrs: {
|
||||
core = "parallel-n64-next";
|
||||
version = "2.24.1";
|
||||
version = "2.27.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "parallel-launcher";
|
||||
repo = "parallel-n64";
|
||||
tag = reformatVersion finalAttrs.version;
|
||||
hash = "sha256-BeeKX78zozxx72cmJ3HI0nH/STvkltMBZs2+mb4ukM0=";
|
||||
hash = "sha256-u4F6CbC1NEU3OWtcqMIi/teX+SS4Jq9v5M2qc9z5bXg=";
|
||||
};
|
||||
|
||||
extraNativeBuildInputs = [
|
||||
|
||||
@@ -8,7 +8,7 @@ packageDir="$nixpkgs/pkgs/by-name/pa/parallel-launcher"
|
||||
|
||||
getLatestVersion() {
|
||||
curl -s "https://gitlab.com/api/v4/projects/parallel-launcher%2F$1/repository/tags" \
|
||||
| jq -r '.[0] | select(.) | .name' \
|
||||
| jq -r '.[0].name' \
|
||||
| sed 's|v||' \
|
||||
| sed 's|-|.|'
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user