about summary refs log tree commit diff
path: root/nixpkgs/pkgs/games/mudlet
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-09-11 15:24:55 +0000
committerAlyssa Ross <hi@alyssa.is>2019-09-16 22:14:45 +0000
commit89c4dccbd5f33f71808d4b1baafe619696af1162 (patch)
treefb1b8d3a2f171164a05d404ab2340cfb1a9d3e21 /nixpkgs/pkgs/games/mudlet
parent8920a0e4d962a919238bab69ddc607d7f3396f70 (diff)
parente19054ab3cd5b7cc9a01d0efc71c8fe310541065 (diff)
downloadnixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar.gz
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar.bz2
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar.lz
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar.xz
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.tar.zst
nixlib-89c4dccbd5f33f71808d4b1baafe619696af1162.zip
Merge commit 'e19054ab3cd5b7cc9a01d0efc71c8fe310541065'
Diffstat (limited to 'nixpkgs/pkgs/games/mudlet')
-rw-r--r--nixpkgs/pkgs/games/mudlet/default.nix72
-rw-r--r--nixpkgs/pkgs/games/mudlet/libs.patch13
2 files changed, 44 insertions, 41 deletions
diff --git a/nixpkgs/pkgs/games/mudlet/default.nix b/nixpkgs/pkgs/games/mudlet/default.nix
index 4dcc7a6262f0..dc29c3d5f744 100644
--- a/nixpkgs/pkgs/games/mudlet/default.nix
+++ b/nixpkgs/pkgs/games/mudlet/default.nix
@@ -1,46 +1,62 @@
-{ fetchurl, unzip, stdenv, makeWrapper, qtbase, yajl, libzip, hunspell
-, boost, lua5_1, luafilesystem, luazip, lrexlib-pcre, luasql-sqlite3, qmake }:
+{ fetchFromGitHub, fetchpatch, stdenv, wrapQtAppsHook, pcre, pugixml, qtbase, qtmultimedia, qttools, yajl, libzip, hunspell
+, boost, libGLU, lua, cmake,  which, }:
 
+let
+  luaEnv = lua.withPackages(ps: with ps; [ luazip luafilesystem lrexlib-pcre luasql-sqlite3 lua-yajl luautf8 ]);
+in
 stdenv.mkDerivation rec {
   pname = "mudlet";
-  version = "3.0.0-delta";
-
-  src = fetchurl {
-    url = "https://github.com/Mudlet/Mudlet/archive/Mudlet-${version}.tar.gz";
-    sha256 = "08fhqd323kgz5s17ac5z9dhkjxcmwvcmvhzy0x1vw4rayhijfrd7";
+  version = "4.0.3";
+
+  src = fetchFromGitHub {
+    owner = "Mudlet";
+    repo = "Mudlet";
+    rev = "Mudlet-${version}";
+    fetchSubmodules = true;
+    sha256 = "18bl4k0qgh47d9k5ipfvypfj1il678c0ws64a8adn8k21jajzkik";
   };
 
-  nativeBuildInputs = [ makeWrapper qmake ];
+  patches = [
+    ( fetchpatch {
+      url = "https://github.com/Mudlet/Mudlet/commit/3c8f12b6d757894d92ec2e2c9b12b91f69e8a3b6.patch";
+      name = "hunspell-1.7";
+      sha256 = "09qggls4pzpd8h9h10fbpfd7x3kr7fjp9axdwz98igpwy714n98j";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake wrapQtAppsHook qttools which ];
   buildInputs = [
-    unzip qtbase lua5_1 hunspell libzip yajl boost
-    luafilesystem luazip lrexlib-pcre luasql-sqlite3
+    pcre pugixml qtbase qtmultimedia luaEnv libzip libGLU yajl boost hunspell
   ];
 
-  preConfigure = "cd src";
+  WITH_FONTS = "NO";
+  WITH_UPDATER = "NO";
+
+  enableParallelBuilding = true;
 
-  installPhase = let
-    luaZipPath = "${luazip}/lib/lua/5.1/?.so";
-    luaFileSystemPath = "${luafilesystem}/lib/lua/5.1/?.so";
-    lrexlibPath = "${lrexlib-pcre}/lib/lua/5.1/?.so";
-    luasqlitePath = "${luasql-sqlite3}/lib/lua/5.1/?.so";
-  in ''
+  installPhase =  ''
     mkdir -pv $out/bin
-    cp mudlet $out
-    cp -r mudlet-lua $out
+    cp src/mudlet $out
+    mkdir -pv $out/share/mudlet
+    cp -r ../src/mudlet-lua/lua $out/share/mudlet/
 
-    makeWrapper $out/mudlet $out/bin/mudlet \
-      --set LUA_CPATH "${luaFileSystemPath};${luaZipPath};${lrexlibPath};${luasqlitePath}" \
+    mkdir -pv $out/share/applications
+    cp ../mudlet.desktop $out/share/applications/
+
+    mkdir -pv $out/share/pixmaps
+    cp -r ../mudlet.png $out/share/pixmaps/
+
+    makeQtWrapper $out/mudlet $out/bin/mudlet \
+      --set LUA_CPATH "${luaEnv}/lib/lua/${lua.luaversion}/?.so" \
+      --prefix LUA_PATH : "$NIX_LUA_PATH" \
       --run "cd $out";
   '';
 
-  patches = [ ./libs.patch ];
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "Crossplatform mud client";
     homepage = http://mudlet.org/;
-    maintainers = [ stdenv.lib.maintainers.wyvie ];
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.gpl2;
-    broken = true;
+    maintainers = [ maintainers.wyvie maintainers.pstn ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
   };
 }
diff --git a/nixpkgs/pkgs/games/mudlet/libs.patch b/nixpkgs/pkgs/games/mudlet/libs.patch
deleted file mode 100644
index 45b693828ff2..000000000000
--- a/nixpkgs/pkgs/games/mudlet/libs.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/src.pro	2014-09-05 12:51:09.000000000 +0400
-+++ b/src/src.pro	2014-09-15 16:54:34.812560065 +0400
-@@ -85,8 +85,8 @@
- # Again according to FHS /usr/local/share/games is the corresponding place for locally built games documentation:
-     isEmpty( DOCDIR ) DOCDIR = $${DATAROOTDIR}/doc/mudlet
-     LIBS += -lpcre \
--        -llua5.1 \
--        -lhunspell \
-+        -llua \
-+        -lhunspell-1.6 \
-         -L/usr/local/lib/ \
-         -lyajl \
-         -lGLU \