legends-of-equestria: init at 2024.05.01 (#296316)
This commit is contained in:
@@ -0,0 +1,141 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
runCommand,
|
||||
megacmd,
|
||||
unzip,
|
||||
makeWrapper,
|
||||
autoPatchelfHook,
|
||||
makeDesktopItem,
|
||||
copyDesktopItems,
|
||||
libgcc,
|
||||
dbus,
|
||||
xorg_sys_opengl,
|
||||
systemd,
|
||||
libcap,
|
||||
libdrm,
|
||||
pulseaudio,
|
||||
libsndfile,
|
||||
flac,
|
||||
libvorbis,
|
||||
libopus,
|
||||
mpg123,
|
||||
lame,
|
||||
libGL,
|
||||
vulkan-loader,
|
||||
libasyncns,
|
||||
xorg,
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "legends-of-equestria";
|
||||
version = "2024.05.01";
|
||||
description = "Free-to-play MMORPG";
|
||||
runtimeDeps =
|
||||
[
|
||||
dbus.lib
|
||||
xorg_sys_opengl
|
||||
systemd
|
||||
libcap.lib
|
||||
libdrm
|
||||
pulseaudio
|
||||
libsndfile
|
||||
flac
|
||||
libvorbis
|
||||
mpg123
|
||||
lame.lib
|
||||
libGL
|
||||
vulkan-loader
|
||||
libasyncns
|
||||
]
|
||||
++ (with xorg; [
|
||||
libX11
|
||||
libxcb
|
||||
libXau
|
||||
libXdmcp
|
||||
libXext
|
||||
libXcursor
|
||||
libXrender
|
||||
libXfixes
|
||||
libXinerama
|
||||
libXi
|
||||
libXrandr
|
||||
libXScrnSaver
|
||||
]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version;
|
||||
src =
|
||||
runCommand "mega-loe"
|
||||
{
|
||||
inherit pname version;
|
||||
nativeBuildInputs = [
|
||||
megacmd
|
||||
unzip
|
||||
];
|
||||
url = "https://mega.nz/file/NjIwwJoK#MVi3C3FAcSQPd7FRpQc0CoStBG8jSFuPn0jD-pG3zY0";
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = "VXBtEB3G5MTrWn9OOvmCG3sDoasjbKkLJruhdQZa4SQ=";
|
||||
outputHashMode = "recursive";
|
||||
}
|
||||
''
|
||||
export HOME=$(mktemp -d)
|
||||
dest=$HOME/mega-loe
|
||||
mkdir -p $dest
|
||||
mega-get "$url" $dest
|
||||
mkdir -p $out
|
||||
unzip -d $out $dest/*.zip
|
||||
'';
|
||||
|
||||
dontBuild = true;
|
||||
buildInputs = [
|
||||
libgcc
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
copyDesktopItems
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
loeHome=$out/lib/${pname}
|
||||
mkdir -p $loeHome
|
||||
cp -r LoE/* $loeHome
|
||||
|
||||
makeWrapper $loeHome/LoE.x86_64 $out/bin/LoE \
|
||||
--suffix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeDeps}"
|
||||
|
||||
icon=$out/share/icons/hicolor/128x128/apps/legends-of-equestria.png
|
||||
mkdir -p $(dirname $icon)
|
||||
ln -s $loeHome/LoE_Data/Resources/UnityPlayer.png $icon
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "legends-of-equestria";
|
||||
comment = description;
|
||||
desktopName = "Legends of Equestria";
|
||||
genericName = "Legends of Equestria";
|
||||
exec = "LoE";
|
||||
icon = "legends-of-equestria";
|
||||
categories = [ "Game" ];
|
||||
})
|
||||
];
|
||||
|
||||
meta = {
|
||||
inherit description;
|
||||
license = lib.licenses.unfree;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with lib.maintainers; [ ulysseszhan ];
|
||||
mainProgram = "LoE";
|
||||
homepage = "https://www.legendsofequestria.com";
|
||||
downloadPage = "https://www.legendsofequestria.com/downloads";
|
||||
};
|
||||
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl common-updater-scripts
|
||||
|
||||
set -eu -o pipefail
|
||||
|
||||
DOWNLOADS_PAGE_URL=https://www.legendsofequestria.com/downloads
|
||||
REGEX='href="(https.+)".+Linux.+v(([0-9]+\.)+[0-9]+)'
|
||||
|
||||
if [[ $(curl -s $DOWNLOADS_PAGE_URL | grep -Fi Linux) =~ $REGEX ]]; then
|
||||
url="${BASH_REMATCH[1]}"
|
||||
version="${BASH_REMATCH[2]}"
|
||||
else
|
||||
echo "cannot find the latest version"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
update-source-version legends-of-equestria "$version" "" "$url"
|
||||
Reference in New Issue
Block a user