multimc: init at 0.4.8

This commit is contained in:
michael bishop 2015-11-25 06:34:26 -04:00
parent 2c502bc9d2
commit 17020526a7
3 changed files with 81 additions and 0 deletions

View 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;
};
}

View 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();
}

View file

@ -14028,6 +14028,8 @@ let
minecraft-server = callPackage ../games/minecraft-server { };
multimc = callPackage ../games/multimc { };
minetest = callPackage ../games/minetest {
libpng = libpng12;
};