Merge pull request #225391 from K900/pob

path-of-building: init at 2.28.0-unstable-2023-04-09

authored by

K900 and committed by
GitHub
0fac1123 a503b616

+102
+1
maintainers/scripts/luarocks-packages.csv
··· 40 40 lrexlib-posix,,,,,, 41 41 lua-cjson,,,,,, 42 42 lua-cmsgpack,,,,,, 43 + lua-curl,,,,,, 43 44 lua-iconv,,,,,, 44 45 lua-lsp,,,,,, 45 46 lua-messagepack,,,,,,
+23
pkgs/development/lua-modules/generated-packages.nix
··· 1121 1121 }; 1122 1122 }) {}; 1123 1123 1124 + lua-curl = callPackage({ lua, buildLuarocksPackage, fetchzip, luaOlder, luaAtLeast }: 1125 + buildLuarocksPackage { 1126 + pname = "lua-curl"; 1127 + version = "0.3.13-1"; 1128 + knownRockspec = (fetchurl { 1129 + url = "mirror://luarocks/lua-curl-0.3.13-1.rockspec"; 1130 + sha256 = "0lz534sm35hxazf1w71hagiyfplhsvzr94i6qyv5chjfabrgbhjn"; 1131 + }).outPath; 1132 + src = fetchzip { 1133 + url = "https://github.com/Lua-cURL/Lua-cURLv3/archive/v0.3.13.zip"; 1134 + sha256 = "0gn59bwrnb2mvl8i0ycr6m3jmlgx86xlr9mwnc85zfhj7zhi5anp"; 1135 + }; 1136 + 1137 + disabled = (luaOlder "5.1") || (luaAtLeast "5.5"); 1138 + propagatedBuildInputs = [ lua ]; 1139 + 1140 + meta = { 1141 + homepage = "https://github.com/Lua-cURL"; 1142 + description = "Lua binding to libcurl"; 1143 + license.fullName = "MIT/X11"; 1144 + }; 1145 + }) {}; 1146 + 1124 1147 lua-iconv = callPackage({ fetchurl, lua, buildLuarocksPackage, luaOlder }: 1125 1148 buildLuarocksPackage { 1126 1149 pname = "lua-iconv";
+7
pkgs/development/lua-modules/overrides.nix
··· 1 1 # do not add pkgs, it messes up splicing 2 2 { stdenv 3 3 , cmake 4 + , curl 4 5 , cyrus_sasl 5 6 , dbus 6 7 , expat ··· 252 253 lrexlib-posix = prev.luaLib.overrideLuarocks prev.lrexlib-posix (drv: { 253 254 buildInputs = [ 254 255 glibc.dev 256 + ]; 257 + }); 258 + 259 + lua-curl = prev.luaLib.overrideLuarocks prev.lua-curl (drv: { 260 + buildInputs = [ 261 + curl 255 262 ]; 256 263 }); 257 264
+69
pkgs/games/path-of-building/default.nix
··· 1 + { stdenv, lib, fetchFromGitHub, runCommand, unzip, meson, ninja, pkg-config, qtbase, qttools, wrapQtAppsHook, luajit }: 2 + let 3 + dataVersion = "2.28.0"; 4 + frontendVersion = "unstable-2023-04-09"; 5 + in 6 + stdenv.mkDerivation { 7 + pname = "path-of-building"; 8 + version = "${dataVersion}-${frontendVersion}"; 9 + 10 + src = fetchFromGitHub { 11 + owner = "ernstp"; 12 + repo = "pobfrontend"; 13 + rev = "9faa19aa362f975737169824c1578d5011487c18"; 14 + hash = "sha256-zhw2PZ6ZNMgZ2hG+a6AcYBkeg7kbBHNc2eSt4if17Wk="; 15 + }; 16 + 17 + data = runCommand "path-of-building-data" { 18 + src = fetchFromGitHub { 19 + owner = "PathOfBuildingCommunity"; 20 + repo = "PathOfBuilding"; 21 + rev = "v${dataVersion}"; 22 + hash = "sha256-IO6qUE6OcjNibljNzcJQlwji3DZqrBm7cvHedKuAwpM="; 23 + }; 24 + 25 + nativeBuildInputs = [ unzip ]; 26 + } 27 + '' 28 + # I have absolutely no idea how this file is generated 29 + # and I don't think I want to know. The Flatpak also does this. 30 + unzip -j -d $out $src/runtime-win32.zip lua/sha1.lua 31 + 32 + # Install the actual data 33 + cp -r $src/src $src/runtime/lua/*.lua $src/manifest.xml $out 34 + 35 + # Pretend this is an official build so we don't get the ugly "dev mode" warning 36 + substituteInPlace $out/manifest.xml --replace '<Version' '<Version platform="nixos"' 37 + touch $out/installed.cfg 38 + 39 + # Completely stub out the update check 40 + chmod +w $out/src/UpdateCheck.lua 41 + echo 'return "none"' > $out/src/UpdateCheck.lua 42 + ''; 43 + 44 + nativeBuildInputs = [ meson ninja pkg-config qttools wrapQtAppsHook ]; 45 + buildInputs = [ qtbase luajit luajit.pkgs.lua-curl ]; 46 + dontWrapQtApps = true; 47 + 48 + installPhase = '' 49 + runHook preInstall 50 + install -Dm555 pobfrontend $out/bin/pobfrontend 51 + runHook postInstall 52 + ''; 53 + 54 + postFixup = '' 55 + wrapQtApp $out/bin/pobfrontend \ 56 + --set LUA_PATH "$LUA_PATH" \ 57 + --set LUA_CPATH "$LUA_CPATH" \ 58 + --chdir "$data" 59 + ''; 60 + 61 + meta = { 62 + description = "Offline build planner for Path of Exile"; 63 + homepage = "https://pathofbuilding.community/"; 64 + license = lib.licenses.mit; 65 + maintainers = [ lib.maintainers.k900 ]; 66 + mainProgram = "pobfrontend"; 67 + broken = stdenv.isDarwin; # doesn't find uic6 for some reason 68 + }; 69 + }
+2
pkgs/top-level/all-packages.nix
··· 36264 36264 36265 36265 papermc = callPackage ../games/papermc { }; 36266 36266 36267 + path-of-building = qt6Packages.callPackage ../games/path-of-building {}; 36268 + 36267 36269 pentobi = libsForQt5.callPackage ../games/pentobi { }; 36268 36270 36269 36271 performous = callPackage ../games/performous { };