mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-04 14:00:04 +00:00
lmstudio: 0.4.21.2 -> 0.4.23.1
Assisted-by: Claude Code (Claude Opus 5)
This commit is contained in:
@@ -27,7 +27,9 @@ stdenv.mkDerivation {
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/Applications
|
||||
cp -r *.app $out/Applications
|
||||
# The DMG mounts as a single volume directory named after the version
|
||||
# (e.g. "LM Studio 0.4.23+1-arm64/"), with the app bundle inside it.
|
||||
cp -r */*.app $out/Applications
|
||||
|
||||
# Bypass the /Applications path check in the main index.js
|
||||
# LM Studio verifies the app is running from /Applications and shows an
|
||||
|
||||
@@ -7,9 +7,7 @@
|
||||
pname,
|
||||
meta,
|
||||
stdenv,
|
||||
lib,
|
||||
passthru,
|
||||
graphicsmagick,
|
||||
}:
|
||||
let
|
||||
src = fetchurl { inherit url hash; };
|
||||
@@ -25,28 +23,21 @@ appimageTools.wrapType2 {
|
||||
passthru
|
||||
;
|
||||
|
||||
nativeBuildInputs = [ graphicsmagick ];
|
||||
|
||||
extraPkgs = pkgs: [ pkgs.ocl-icd ];
|
||||
|
||||
extraInstallCommands = ''
|
||||
mkdir -p $out/share/applications
|
||||
# upstream ships pre-rendered icons for every hicolor size
|
||||
mkdir -p $out/share/icons
|
||||
cp -r ${appimageContents}/usr/share/icons/hicolor $out/share/icons/
|
||||
|
||||
# setup icons (see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=lmstudio#n55 for how Arch solved this; approach adapted to here)
|
||||
src_icon="${appimageContents}/usr/share/icons/hicolor/0x0/apps/lm-studio.png"
|
||||
sizes=("16x16" "32x32" "48x48" "64x64" "128x128" "256x256")
|
||||
for size in "''${sizes[@]}"; do
|
||||
install -dm755 "$out/share/icons/hicolor/$size/apps"
|
||||
gm convert "$src_icon" -resize "$size" "$out/share/icons/hicolor/$size/apps/lm-studio.png"
|
||||
done
|
||||
|
||||
install -m 444 -D ${appimageContents}/lm-studio.desktop -t $out/share/applications
|
||||
install -m 444 -D ${appimageContents}/ai.elementlabs.lmstudio.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'
|
||||
substituteInPlace $out/share/applications/ai.elementlabs.lmstudio.desktop \
|
||||
--replace-fail 'Exec=AppRun %U' 'Exec=lm-studio %U'
|
||||
|
||||
# lms cli tool
|
||||
install -m 755 ${appimageContents}/resources/app/.webpack/lms $out/bin/
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
let
|
||||
pname = "lmstudio";
|
||||
|
||||
version_aarch64-linux = "0.4.21-2";
|
||||
hash_aarch64-linux = "sha256-ft/ud1MOP3eOEZgiB+IdL6qhpTiWfEqGz8iKoWnCKn8=";
|
||||
version_aarch64-darwin = "0.4.21-2";
|
||||
hash_aarch64-darwin = "sha256-A0PQ348VQovNbBqnl5z0krZKec0tPZQZ0aZ1QdNuzzE=";
|
||||
version_x86_64-linux = "0.4.21-2";
|
||||
hash_x86_64-linux = "sha256-EBQ3bYnWaMOBTNIOKxRqB2FGdg3tHvB7lo+2HFje01U=";
|
||||
version_aarch64-linux = "0.4.23-1";
|
||||
hash_aarch64-linux = "sha256-MzPygFB0StS8KTuZWq0AR+ZtiQIJ353QHlgpddOa19Y=";
|
||||
version_aarch64-darwin = "0.4.23-1";
|
||||
hash_aarch64-darwin = "sha256-9FD1ENl1YIpF+/VM2JKRXChQZswHy/NEHX3bC6Mynw4=";
|
||||
version_x86_64-linux = "0.4.23-1";
|
||||
hash_x86_64-linux = "sha256-wb3xlSgeJdySGvXJHrJQIDUkDc4SFxQMQwNtbPMDj9g=";
|
||||
|
||||
meta = {
|
||||
description = "LM Studio is an easy to use desktop app for experimenting with local and open-source Large Language Models (LLMs)";
|
||||
|
||||
Reference in New Issue
Block a user