{ appimageTools, fetchurl, version, url, hash, pname, meta, stdenv, lib, passthru, }: let src = fetchurl { inherit url hash; }; appimageContents = appimageTools.extractType2 { inherit pname version src; }; in appimageTools.wrapType2 { inherit meta pname version src passthru ; extraPkgs = pkgs: [ pkgs.ocl-icd ]; extraInstallCommands = '' mkdir -p $out/share/applications cp -r ${appimageContents}/usr/share/icons $out/share install -m 444 -D ${appimageContents}/lm-studio.desktop -t $out/share/applications # Rename the main executable from lmstudio to lm-studio mv $out/bin/lmstudio $out/bin/lm-studio substituteInPlace $out/share/applications/lm-studio.desktop \ --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=lm-studio' # lms cli tool install -m 755 ${appimageContents}/resources/app/.webpack/lms $out/bin/ patchelf --set-interpreter "${stdenv.cc.bintools.dynamicLinker}" \ --set-rpath "${lib.getLib stdenv.cc.cc}/lib:${lib.getLib stdenv.cc.cc}/lib64:$out/lib:${ lib.makeLibraryPath [ (lib.getLib stdenv.cc.cc) ] }" $out/bin/lms ''; }