119 lines
2.3 KiB
Markdown
119 lines
2.3 KiB
Markdown
---
|
|
publish: true
|
|
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/AppImage Management.md
|
|
title: AppImage Management
|
|
created: 2026-01-29T15:05:11.266-07:00
|
|
modified: 2026-02-05T09:21:56.851-07:00
|
|
tags:
|
|
- appimage
|
|
- apps
|
|
cssclasses: ""
|
|
---
|
|
|
|
Managing AppImage applications on Arch Linux.
|
|
|
|
## Directory Structure
|
|
|
|
```
|
|
~/.local/bin/ # AppImage binaries
|
|
~/.local/share/applications/ # Desktop entries
|
|
```
|
|
|
|
## Installation Process
|
|
|
|
### 1. Download the AppImage
|
|
|
|
```bash
|
|
cd ~/.local/bin
|
|
wget "https://example.com/App.AppImage"
|
|
chmod +x App.AppImage
|
|
```
|
|
|
|
### 2. Create desktop entry
|
|
|
|
Create `~/.local/share/applications/app.desktop`:
|
|
```ini
|
|
[Desktop Entry]
|
|
Name=App Name
|
|
Comment=Description
|
|
Exec=/home/phil/.local/bin/App.AppImage
|
|
Icon=app-icon
|
|
Type=Application
|
|
Categories=Utility;
|
|
```
|
|
|
|
### 3. Update desktop database
|
|
|
|
```bash
|
|
update-desktop-database ~/.local/share/applications/
|
|
```
|
|
|
|
## Electron Apps on Wayland
|
|
|
|
Many Electron-based AppImages need extra flags for Wayland:
|
|
|
|
```bash
|
|
./App.AppImage --enable-features=UseOzonePlatform --ozone-platform=wayland
|
|
```
|
|
|
|
Update the desktop entry:
|
|
```ini
|
|
Exec=/home/phil/.local/bin/App.AppImage --enable-features=UseOzonePlatform --ozone-platform=wayland
|
|
```
|
|
|
|
## AppImage Tools
|
|
|
|
### appimagetool
|
|
|
|
Extract and repack AppImages:
|
|
```bash
|
|
# Extract
|
|
./App.AppImage --appimage-extract
|
|
|
|
# Creates squashfs-root/ directory
|
|
```
|
|
|
|
### AppImageLauncher
|
|
|
|
Integrates AppImages into your system automatically:
|
|
```bash
|
|
paru -S appimagelauncher
|
|
```
|
|
|
|
Features:
|
|
- Prompts to integrate on first run
|
|
- Creates desktop entries automatically
|
|
- Manages AppImages in a central location
|
|
|
|
## Helper Script
|
|
|
|
Save as `~/.local/bin/appimage-install`:
|
|
```bash
|
|
#!/bin/bash
|
|
# Usage: appimage-install App.AppImage "App Name"
|
|
|
|
APPIMAGE="$1"
|
|
NAME="$2"
|
|
DEST="$HOME/.local/bin/$(basename "$APPIMAGE")"
|
|
|
|
cp "$APPIMAGE" "$DEST"
|
|
chmod +x "$DEST"
|
|
|
|
cat > "$HOME/.local/share/applications/${NAME,,}.desktop" << EOF
|
|
[Desktop Entry]
|
|
Name=$NAME
|
|
Exec=$DEST
|
|
Type=Application
|
|
Categories=Utility;
|
|
EOF
|
|
|
|
update-desktop-database ~/.local/share/applications/
|
|
echo "Installed $NAME"
|
|
```
|
|
|
|
## Tips
|
|
|
|
- Keep AppImages in `~/.local/bin` which should be in your PATH
|
|
- Some AppImages bundle their own icon — extract with `--appimage-extract` to find it
|
|
- For system-wide install, use `/opt/` and `/usr/share/applications/`
|