mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-22 14:45:27 +00:00
Merge pull request #11258 from cleverca22/multimc
multimc: init at 0.4.8
This commit is contained in:
commit
1c8aceab7e
55
pkgs/games/multimc/default.nix
Normal file
55
pkgs/games/multimc/default.nix
Normal file
|
@ -0,0 +1,55 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, qt5Full, jdk7, zlib, file, makeWrapper, xorg, libpulseaudio }:
|
||||
|
||||
let
|
||||
libnbt = fetchFromGitHub {
|
||||
owner = "MultiMC";
|
||||
repo = "libnbtplusplus";
|
||||
rev = "5d0ffb50a526173ce58ae57136bf5d79a7e1920d";
|
||||
sha256 = "05hnwfb77rmm9ba7n96g4g1sgwqqcmplvbcafsl76yxr6ysgw5jg";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "multimc-5";
|
||||
src = fetchFromGitHub {
|
||||
owner = "MultiMC";
|
||||
repo = "MultiMC5";
|
||||
rev = "895d8ab4699f1b50bf03532c967a91f5ecb62a50";
|
||||
sha256 = "179vc1iv57fx4g4h1wy8yvyvdm671jnvp6zi8pcr1n6azqhwklds";
|
||||
};
|
||||
buildInputs = [ cmake qt5Full jdk7 zlib file makeWrapper ];
|
||||
|
||||
libpath = with xorg; [ libX11 libXext libXcursor libXrandr libXxf86vm libpulseaudio ];
|
||||
postUnpack = ''
|
||||
rmdir $sourceRoot/depends/libnbtplusplus
|
||||
cp -r ${libnbt} $sourceRoot/depends/libnbtplusplus
|
||||
chmod 755 -R $sourceRoot/depends/libnbtplusplus
|
||||
'';
|
||||
|
||||
patches = [ ./multimc.patch ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# the install rule tries to bundle ALL deps into the output for portability
|
||||
installPhase = ''
|
||||
RESULT=/run/opengl-driver/lib/
|
||||
for x in $libpath; do
|
||||
RESULT=$x/lib/:$RESULT
|
||||
done
|
||||
|
||||
mkdir -pv $out/bin/jars $out/lib
|
||||
cp -v MultiMC $out/bin/
|
||||
cp -v jars/*.jar $out/bin/jars/
|
||||
cp -v librainbow.so libnbt++.so libMultiMC_logic.so $out/lib
|
||||
wrapProgram $out/bin/MultiMC --add-flags "-d \$HOME/.multimc/" --set GAME_LIBRARY_PATH $RESULT --prefix PATH : ${jdk7}/bin/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://multimc.org/;
|
||||
description = "A free, open source launcher for Minecraft";
|
||||
longDescription = ''
|
||||
Allows you to have multiple, separate instances of Minecraft (each with their own mods, texture packs, saves, etc) and helps you manage them and their associated options with a simple interface.
|
||||
'';
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.lgpl21Plus;
|
||||
};
|
||||
}
|
24
pkgs/games/multimc/multimc.patch
Normal file
24
pkgs/games/multimc/multimc.patch
Normal file
|
@ -0,0 +1,24 @@
|
|||
diff -ur MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src-orig/application/MultiMC.cpp MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src/application/MultiMC.cpp
|
||||
--- MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src-orig/application/MultiMC.cpp 2015-10-25 03:29:25.270126028 -0300
|
||||
+++ MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src/application/MultiMC.cpp 2015-10-25 04:22:48.568437861 -0300
|
||||
@@ -330,7 +330,7 @@
|
||||
}
|
||||
|
||||
m_mmc_translator.reset(new QTranslator());
|
||||
- if (m_mmc_translator->load("mmc_" + locale.bcp47Name(), staticDataPath + "/translations"))
|
||||
+ if (m_mmc_translator->load("mmc_" + locale.bcp47Name(), "translations"))
|
||||
{
|
||||
qDebug() << "Loading MMC Language File for"
|
||||
<< locale.bcp47Name().toLocal8Bit().constData() << "...";
|
||||
diff -ur MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src-orig/logic/Env.cpp MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src/logic/Env.cpp
|
||||
--- MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src-orig/logic/Env.cpp 2015-10-25 03:29:25.428124792 -0300
|
||||
+++ MultiMC5-895d8ab4699f1b50bf03532c967a91f5ecb62a50-src/logic/Env.cpp 2015-10-25 04:29:24.145412196 -0300
|
||||
@@ -147,7 +147,7 @@
|
||||
m_metacache->addBase("general", QDir("cache").absolutePath());
|
||||
m_metacache->addBase("skins", QDir("accounts/skins").absolutePath());
|
||||
m_metacache->addBase("root", QDir(rootPath).absolutePath());
|
||||
- m_metacache->addBase("translations", QDir(staticDataPath + "/translations").absolutePath());
|
||||
+ m_metacache->addBase("translations", QDir("translations").absolutePath());
|
||||
m_metacache->addBase("icons", QDir("cache/icons").absolutePath());
|
||||
m_metacache->Load();
|
||||
}
|
|
@ -14022,6 +14022,8 @@ let
|
|||
|
||||
minecraft-server = callPackage ../games/minecraft-server { };
|
||||
|
||||
multimc = callPackage ../games/multimc { };
|
||||
|
||||
minetest = callPackage ../games/minetest {
|
||||
libpng = libpng12;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue