Hi there,
welcome to the blog
Today we are gonna see that how to basically do the install of LMstudio in fedora.
so there is only option to use lmstudio is by using appimage of linux from fedora
but we need to have it as a normal application rather than a executable where we go and click on it on each iteration.
we want it displayed on app search and also can be pinned to task bar.
so for all these we need to attach it to our fedora apps directory and set it.
1. we need to have the appimage as executatble.
2. then we need to app to moved to dedicated directory and then source link it to main app directory.
3. then we need to configure the share folder in local instance and then make a configuration with all details.
4. extract the icon png or svg to the base directory and link it in the configuration
5. reload the desktop and thats it. we are done.
now we need to check all things are configured by searching the app. as we found then we can use it automatically.
you can use this script for the creation process or execute as shell script.
#!/usr/bin/env bash
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
INSTALL_DIR="$HOME/Applications"
ICON_DIR="$HOME/.local/share/icons"
DESKTOP_DIR="$HOME/.local/share/applications"
mkdir -p "$INSTALL_DIR" "$ICON_DIR" "$DESKTOP_DIR"
APPIMAGE=$(find "$SCRIPT_DIR" -maxdepth 1 -type f -name "LM-Studio-*.AppImage" | sort -V | tail -n 1)
if [[ -z "$APPIMAGE" ]]; then
echo "No LM Studio AppImage found in: $SCRIPT_DIR"
exit 1
fi
echo "Using $(basename "$APPIMAGE")"
find "$INSTALL_DIR" -maxdepth 1 -type f -name "LM-Studio-*.AppImage" -delete
DEST_APP="$INSTALL_DIR/$(basename "$APPIMAGE")"
cp "$APPIMAGE" "$DEST_APP"
chmod +x "$DEST_APP"
TMP=$(mktemp -d)
pushd "$TMP" >/dev/null
"$DEST_APP" --appimage-extract >/dev/null 2>&1 || true
ICON=$(find squashfs-root -type f \( -name "*.png" -o -name "*.svg" \) | head -n1)
if [[ -n "$ICON" ]]; then
EXT="${ICON##*.}"
cp "$ICON" "$ICON_DIR/lmstudio.$EXT"
ICON_PATH="$ICON_DIR/lmstudio.$EXT"
else
ICON_PATH="utilities-terminal"
fi
popd >/dev/null
rm -rf "$TMP"
cat > "$DESKTOP_DIR/lmstudio.desktop" <<EOF
[Desktop Entry]
Version=1.0
Type=Application
Name=LM Studio
Comment=Run local LLMs
Exec=$DEST_APP
Icon=$ICON_PATH
Terminal=false
Categories=Development;Utility;
StartupNotify=true
EOF
chmod +x "$DESKTOP_DIR/lmstudio.desktop"
update-desktop-database "$DESKTOP_DIR" >/dev/null 2>&1 || true
echo "Installation complete."
now have this saved as install_lmstudio.sh
in terminal trigger it by ./install_lmstudio.sh
IMPORTANT make sure both the app image and executatble shell needs to be in same directory.
if the commands are failed. use this
1. mkdir -p ~/Applications
2. mv ~/Downloads/LM-Studio*.AppImage ~/Applications/
3. chmod +x ~/Applications/lmstudio.AppImage
4. mkdir -p ~/.local/share/applications
5. nano ~/.local/share/applications/lmstudio.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=LM Studio
Comment=Run local LLMs
Exec=/home/<your username>/Applications/lmstudio.AppImage
Icon=lmstudio
Terminal=false
Categories=Development;AI;
StartupNotify=true
6.Ctrl + O
Enter
Ctrl + X
7. ~/Applications/lmstudio.AppImage --appimage-extract
8.find squashfs-root -iname "*.png" && mkdir -p ~/.local/share/icons
9. cp squashfs-root/*.png ~/.local/share/icons/lmstudio.png
10. Icon=/home/<your username>/.local/share/icons/lmstudio.png in the configuration
11. update-desktop-database ~/.local/share/applications
0 Comments