mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2025-09-11 04:55:35 -04:00
Merge branch 'PrismLauncher:develop' into refactor-filter
This commit is contained in:
commit
0f6d589c6b
@ -24,7 +24,7 @@ set(CMAKE_JAVA_TARGET_OUTPUT_DIR ${PROJECT_BINARY_DIR}/jars)
|
|||||||
######## Set compiler flags ########
|
######## Set compiler flags ########
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED true)
|
set(CMAKE_CXX_STANDARD_REQUIRED true)
|
||||||
set(CMAKE_C_STANDARD_REQUIRED true)
|
set(CMAKE_C_STANDARD_REQUIRED true)
|
||||||
set(CMAKE_CXX_STANDARD 17)
|
set(CMAKE_CXX_STANDARD 20)
|
||||||
set(CMAKE_C_STANDARD 11)
|
set(CMAKE_C_STANDARD 11)
|
||||||
include(GenerateExportHeader)
|
include(GenerateExportHeader)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
|
6
flake.lock
generated
6
flake.lock
generated
@ -18,11 +18,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754498491,
|
"lastModified": 1755186698,
|
||||||
"narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=",
|
"narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c2ae88e026f9525daf89587f3cbee584b92b6134",
|
"rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -63,7 +63,7 @@ bool JavaVersion::isModular() const
|
|||||||
return m_parseable && m_major >= 9;
|
return m_parseable && m_major >= 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool JavaVersion::operator<(const JavaVersion& rhs)
|
bool JavaVersion::operator<(const JavaVersion& rhs) const
|
||||||
{
|
{
|
||||||
if (m_parseable && rhs.m_parseable) {
|
if (m_parseable && rhs.m_parseable) {
|
||||||
auto major = m_major;
|
auto major = m_major;
|
||||||
@ -101,7 +101,7 @@ bool JavaVersion::operator<(const JavaVersion& rhs)
|
|||||||
return StringUtils::naturalCompare(m_string, rhs.m_string, Qt::CaseSensitive) < 0;
|
return StringUtils::naturalCompare(m_string, rhs.m_string, Qt::CaseSensitive) < 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool JavaVersion::operator==(const JavaVersion& rhs)
|
bool JavaVersion::operator==(const JavaVersion& rhs) const
|
||||||
{
|
{
|
||||||
if (m_parseable && rhs.m_parseable) {
|
if (m_parseable && rhs.m_parseable) {
|
||||||
return m_major == rhs.m_major && m_minor == rhs.m_minor && m_security == rhs.m_security && m_prerelease == rhs.m_prerelease;
|
return m_major == rhs.m_major && m_minor == rhs.m_minor && m_security == rhs.m_security && m_prerelease == rhs.m_prerelease;
|
||||||
@ -109,7 +109,7 @@ bool JavaVersion::operator==(const JavaVersion& rhs)
|
|||||||
return m_string == rhs.m_string;
|
return m_string == rhs.m_string;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool JavaVersion::operator>(const JavaVersion& rhs)
|
bool JavaVersion::operator>(const JavaVersion& rhs) const
|
||||||
{
|
{
|
||||||
return (!operator<(rhs)) && (!operator==(rhs));
|
return (!operator<(rhs)) && (!operator==(rhs));
|
||||||
}
|
}
|
||||||
|
@ -20,9 +20,9 @@ class JavaVersion {
|
|||||||
|
|
||||||
JavaVersion& operator=(const QString& rhs);
|
JavaVersion& operator=(const QString& rhs);
|
||||||
|
|
||||||
bool operator<(const JavaVersion& rhs);
|
bool operator<(const JavaVersion& rhs) const;
|
||||||
bool operator==(const JavaVersion& rhs);
|
bool operator==(const JavaVersion& rhs) const;
|
||||||
bool operator>(const JavaVersion& rhs);
|
bool operator>(const JavaVersion& rhs) const;
|
||||||
|
|
||||||
bool requiresPermGen() const;
|
bool requiresPermGen() const;
|
||||||
bool defaultsToUtf8() const;
|
bool defaultsToUtf8() const;
|
||||||
|
@ -90,14 +90,6 @@ class ResourceAPI {
|
|||||||
|
|
||||||
std::optional<std::list<Version>> mcVersions;
|
std::optional<std::list<Version>> mcVersions;
|
||||||
std::optional<ModPlatform::ModLoaderTypes> loaders;
|
std::optional<ModPlatform::ModLoaderTypes> loaders;
|
||||||
|
|
||||||
VersionSearchArgs(VersionSearchArgs const&) = default;
|
|
||||||
void operator=(VersionSearchArgs other)
|
|
||||||
{
|
|
||||||
pack = other.pack;
|
|
||||||
mcVersions = other.mcVersions;
|
|
||||||
loaders = other.loaders;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
struct VersionSearchCallbacks {
|
struct VersionSearchCallbacks {
|
||||||
std::function<void(QJsonDocument&, ModPlatform::IndexedPack)> on_succeed;
|
std::function<void(QJsonDocument&, ModPlatform::IndexedPack)> on_succeed;
|
||||||
@ -106,9 +98,6 @@ class ResourceAPI {
|
|||||||
|
|
||||||
struct ProjectInfoArgs {
|
struct ProjectInfoArgs {
|
||||||
ModPlatform::IndexedPack pack;
|
ModPlatform::IndexedPack pack;
|
||||||
|
|
||||||
ProjectInfoArgs(ProjectInfoArgs const&) = default;
|
|
||||||
void operator=(ProjectInfoArgs other) { pack = other.pack; }
|
|
||||||
};
|
};
|
||||||
struct ProjectInfoCallbacks {
|
struct ProjectInfoCallbacks {
|
||||||
std::function<void(QJsonDocument&, const ModPlatform::IndexedPack&)> on_succeed;
|
std::function<void(QJsonDocument&, const ModPlatform::IndexedPack&)> on_succeed;
|
||||||
|
@ -76,35 +76,33 @@ stdenv.mkDerivation {
|
|||||||
stripJavaArchivesHook
|
stripJavaArchivesHook
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
cmark
|
||||||
cmark
|
kdePackages.qtbase
|
||||||
kdePackages.qtbase
|
kdePackages.qtnetworkauth
|
||||||
kdePackages.qtnetworkauth
|
kdePackages.quazip
|
||||||
kdePackages.quazip
|
tomlplusplus
|
||||||
tomlplusplus
|
zlib
|
||||||
zlib
|
]
|
||||||
]
|
++ lib.optionals stdenv.hostPlatform.isDarwin [ apple-sdk_11 ]
|
||||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ apple-sdk_11 ]
|
++ lib.optional gamemodeSupport gamemode;
|
||||||
++ lib.optional gamemodeSupport gamemode;
|
|
||||||
|
|
||||||
hardeningEnable = lib.optionals stdenv.hostPlatform.isLinux [ "pie" ];
|
hardeningEnable = lib.optionals stdenv.hostPlatform.isLinux [ "pie" ];
|
||||||
|
|
||||||
cmakeFlags =
|
cmakeFlags = [
|
||||||
[
|
# downstream branding
|
||||||
# downstream branding
|
(lib.cmakeFeature "Launcher_BUILD_PLATFORM" "nixpkgs")
|
||||||
(lib.cmakeFeature "Launcher_BUILD_PLATFORM" "nixpkgs")
|
]
|
||||||
]
|
++ lib.optionals (msaClientID != null) [
|
||||||
++ lib.optionals (msaClientID != null) [
|
(lib.cmakeFeature "Launcher_MSA_CLIENT_ID" (toString msaClientID))
|
||||||
(lib.cmakeFeature "Launcher_MSA_CLIENT_ID" (toString msaClientID))
|
]
|
||||||
]
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
# we wrap our binary manually
|
||||||
# we wrap our binary manually
|
(lib.cmakeFeature "INSTALL_BUNDLE" "nodeps")
|
||||||
(lib.cmakeFeature "INSTALL_BUNDLE" "nodeps")
|
# disable built-in updater
|
||||||
# disable built-in updater
|
(lib.cmakeFeature "MACOSX_SPARKLE_UPDATE_FEED_URL" "''")
|
||||||
(lib.cmakeFeature "MACOSX_SPARKLE_UPDATE_FEED_URL" "''")
|
(lib.cmakeFeature "CMAKE_INSTALL_PREFIX" "${placeholder "out"}/Applications/")
|
||||||
(lib.cmakeFeature "CMAKE_INSTALL_PREFIX" "${placeholder "out"}/Applications/")
|
];
|
||||||
];
|
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
|
@ -61,14 +61,13 @@ symlinkJoin {
|
|||||||
|
|
||||||
nativeBuildInputs = [ kdePackages.wrapQtAppsHook ];
|
nativeBuildInputs = [ kdePackages.wrapQtAppsHook ];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
kdePackages.qtbase
|
||||||
kdePackages.qtbase
|
kdePackages.qtsvg
|
||||||
kdePackages.qtsvg
|
]
|
||||||
]
|
++ lib.optional (
|
||||||
++ lib.optional (
|
lib.versionAtLeast kdePackages.qtbase.version "6" && stdenv.hostPlatform.isLinux
|
||||||
lib.versionAtLeast kdePackages.qtbase.version "6" && stdenv.hostPlatform.isLinux
|
) kdePackages.qtwayland;
|
||||||
) kdePackages.qtwayland;
|
|
||||||
|
|
||||||
postBuild = ''
|
postBuild = ''
|
||||||
wrapQtAppsHook
|
wrapQtAppsHook
|
||||||
@ -76,41 +75,41 @@ symlinkJoin {
|
|||||||
|
|
||||||
qtWrapperArgs =
|
qtWrapperArgs =
|
||||||
let
|
let
|
||||||
runtimeLibs =
|
runtimeLibs = [
|
||||||
[
|
(lib.getLib stdenv.cc.cc)
|
||||||
(lib.getLib stdenv.cc.cc)
|
## native versions
|
||||||
## native versions
|
glfw3-minecraft
|
||||||
glfw3-minecraft
|
openal
|
||||||
openal
|
|
||||||
|
|
||||||
## openal
|
## openal
|
||||||
alsa-lib
|
alsa-lib
|
||||||
libjack2
|
libjack2
|
||||||
libpulseaudio
|
libpulseaudio
|
||||||
pipewire
|
pipewire
|
||||||
|
|
||||||
## glfw
|
## glfw
|
||||||
libGL
|
libGL
|
||||||
libX11
|
libX11
|
||||||
libXcursor
|
libXcursor
|
||||||
libXext
|
libXext
|
||||||
libXrandr
|
libXrandr
|
||||||
libXxf86vm
|
libXxf86vm
|
||||||
|
|
||||||
udev # oshi
|
udev # oshi
|
||||||
|
|
||||||
vulkan-loader # VulkanMod's lwjgl
|
vulkan-loader # VulkanMod's lwjgl
|
||||||
]
|
]
|
||||||
++ lib.optional textToSpeechSupport flite
|
++ lib.optional textToSpeechSupport flite
|
||||||
++ lib.optional gamemodeSupport gamemode.lib
|
++ lib.optional gamemodeSupport gamemode.lib
|
||||||
++ lib.optional controllerSupport libusb1
|
++ lib.optional controllerSupport libusb1
|
||||||
++ additionalLibs;
|
++ additionalLibs;
|
||||||
|
|
||||||
runtimePrograms = [
|
runtimePrograms = [
|
||||||
mesa-demos
|
mesa-demos
|
||||||
pciutils # need lspci
|
pciutils # need lspci
|
||||||
xrandr # needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128
|
xrandr # needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128
|
||||||
] ++ additionalPrograms;
|
]
|
||||||
|
++ additionalPrograms;
|
||||||
|
|
||||||
in
|
in
|
||||||
[ "--prefix PRISMLAUNCHER_JAVA_PATHS : ${lib.makeSearchPath "bin/java" jdks}" ]
|
[ "--prefix PRISMLAUNCHER_JAVA_PATHS : ${lib.makeSearchPath "bin/java" jdks}" ]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user