feat: try to package with derivation, patching ELF (/!\ BROKEN)

This commit is contained in:
Xavier Morel
2025-04-23 10:59:36 +02:00
parent 2d7e482012
commit c3bf8fe0fe

View File

@@ -13,15 +13,11 @@
url = "https://github.com/AsherGlick/Burrito/releases/download/burrito-1.0.0/burrito-1.0.0.zip";
stripRoot = false;
sha256 = "10iz1w3vz1881i8h898v2ankhfhcsi439jh8b38z14jpfzbv2m6x";
};
in
{
packages.${system}.default = pkgs.buildFHSUserEnv {
name = "burrito-gw2";
targetPkgs = pkgs: with pkgs; [
};
deps = with pkgs; [
stdenv.cc.cc.lib
glibc
gcc
xorg.libXcursor
xorg.libX11
xorg.libXinerama
@@ -31,9 +27,48 @@
xorg.libXi
libGL
libudev-zero
];
];
in
{
packages.${system} = {
default = self.packages.${system}.burrito;
runScript = "${self}/script.sh ${src}";
burrito = pkgs.stdenv.mkDerivation {
name = "burrito";
version = "1.0.0";
src = src;
nativeBuildInputs = [ pkgs.makeWrapper pkgs.autoPatchelfHook ];
buildInputs = deps;
runtimeDependencies = deps;
installPhase = ''
mkdir -p $out/bin $out/lib
# Copy the main executable
cp $src/burrito.x86_64 $out/bin/burrito.x86_64
chmod +x $out/bin/burrito.x86_64
# Copy the xml_converter
cp $src/xml_converter $out/bin/xml_converter
chmod +x $out/bin/xml_converter
# Copy the libraries
cp $src/*.so $out/lib/
# Patch the binary
# chmod +w $out/bin/burrito.x86_64
# patchelf --set-rpath "$out/lib:${pkgs.lib.makeLibraryPath deps}" $out/bin/burrito.x86_64
# chmod -w $out/bin/burrito.x86_64
# Create a wrapper script
makeWrapper $out/bin/burrito.x86_64 $out/bin/burrito \
--set LD_LIBRARY_PATH "$out/lib:${pkgs.lib.makeLibraryPath deps}" \
--chdir "$out/bin"
'';
meta = {
description = "Burrito Guild Wars 2 overlay";
platforms = [ "x86_64-linux" ];
};
};
};
devShell.${system} = pkgs.mkShell {