目录
目录README.md

AppImage 安装工具

AppImage工具能够在Linux系统上一键轻松安装和管理AppImage应用程序/文件至本地,并提供系统级用户级安装选项。

1. 功能特点

AppImage工具可以:

  • 自动提取AppImage元数据

  • 用户级安装(无需root权限)

  • 系统级安装(整个系统可用)

  • 自动创建:

    • 桌面启动器 ( .desktop 文件)
    • 应用程序图标
    • 终端命令
  • 冲突检测

2. 安装工具

# 首先安装 git
sudo apt install git

然后下载安装工具

# 推荐在home目录下专门建个software
git clone https://github.com/kanwuqing/appimage-installer.git
 
cd appimage-installer
 
chmod +x install_appimage.sh uninstall_appimage.sh

3. 安装软件

3.1 用户级安装(推荐)

用户级安装可以避免污染系统目录,不需要 sudo 权限,更适合多用户系统

./install_appimage.sh ~/Downloads/MyApp.AppImage

运行脚本后,脚本首先提取AppImage中的元数据(.desktop文件和图标),等到安装完成后,会将文件部署到标准位置

  • 应用程序: /home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage
  • 终端命令: Cursor-1.3.9-x86_64,位于: /home/e/.local/bin/Cursor-1.3.9-x86_64
  • 桌面启动器: /home/e/.local/share/applications/Cursor-1.3.9-x86_64.desktop
  • 图标: home/e/.local/share/icons/Cursor-1.3.9-x86_64.png

3.2 系统级安装(需要sudo)

sudo ./install_appimage.sh ~/Downloads/MyApp.AppImage --system

3.3 卸载应用程序

卸载同样有用户级和系统级之分,系统级卸载同样需要 sudo

./uninstall_appimage.sh MyApp

3.4 工作原理

  1. 提取AppImage中的元数据(.desktop文件和图标)
  2. 文件的标准位置:
  • 路径: 用户系统

  • 应用程序:~/.local/apps//opt/

  • 桌面启动器:~/.local/share/applications//usr/share/applications/

  • 图标:~/.local/share/icons//usr/share/icons/

  • 终端命令~/.local/bin//usr/local/bin/

需要记住的是,用户的位置在 .local 而系统的在 usr ;命令在 bin;应用程序( AppImage )在 apps,图标和桌面启动器在 share/applicationsshare/icons 下面。

4. DEBUG

当完成上述步骤后,可以运行如下命令:

/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage
or
/home/e/.local/bin/Cursor-1.3.9-x86_64

此时会有以下报错:

dlopen(): error loading libfuse.so.2

AppImages require FUSE to run. 
You might still be able to extract the contents of this AppImage 
if you run it with the --appimage-extract option. 
See https://github.com/AppImage/AppImageKit/wiki/FUSE 
for more information

根据报错信息可知,是缺少了相关的依赖包,使用下面命令安装:

sudo apt update # 可选
sudo apt install libfuse2

再次运行还是报错

此时参考 CSDN 和deepseek的回答,遇到的错误是由于安装软件,如 Cursor(基于 Electron/Chromium 的编辑器)尝试使用沙箱功能但权限不足导致的。以下是几种解决方法:

  • 方法 1:禁用沙箱(推荐,亲测)。编辑启动命令,添加 --no-sandbox 参数即可:
/home/e/.local/bin/Cursor-1.3.9-x86_64 --no-sandbox # 推荐
or
/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage --no-sandbox

  • 方法 2:修复 setuid 沙箱权限。该方法来自于 知乎老哥,但是感觉看着挺累赘的,况且不能通过点击桌面图标来启动
# 找到沙箱二进制文件
/Chatbox-1.9.8-x86_64.AppImage --appimage-extract

# 进入解压的文件
cd squashfs-root/
# 设置正确的权限
sudo chown root:root chrome-sandbox
sudo chmod 4755 chrome-sandbox
# 运行
./AppRun

  • 方法 3:更新系统权限。永久解决方案,创建桌面快捷方式时添加 --no-sandbox 参数,或设置环境变量:
export ELECTRON_DISABLE_SANDBOX=1

注意:禁用沙箱会降低安全性,但对于个人开发环境通常可以接受。

但现在的两个问题是,只能通过下面的命令行启动,无法通过点击桌面快捷方式来启动,当然核心原因是文件的配置问题。

/home/e/.local/bin/Cursor-1.3.9-x86_64 --no-sandbox # 推荐
or
/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage --no-sandbox

此时打开桌面启动器(路径在下方已给出),修改配置。

- 应用程序位置: `/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage`
- 终端命令: `Cursor-1.3.9-x86_64`,位于: `/home/e/.local/bin/Cursor-1.3.9-x86_64`
- 桌面启动器: `/home/e/.local/share/applications/Cursor-1.3.9-x86_64.desktop`
- 图标: `home/e/.local/share/icons/Cursor-1.3.9-x86_64.png`

最主要的是给 第9行 的Exec添加 --no-sandbox 参数:

[Desktop Entry]
Name=Chatbox
Terminal=false
Type=Application
StartupWMClass=Chatbox
X-AppImage-Version=1.15.2
Comment=A desktop client for multiple cutting-edge AI models
Categories=Development;
Exec="/home/e/.local/apps/Chatbox-1.15.2-x86_64/Chatbox-1.15.2-x86_64.AppImage" --no-sandbox%U
Icon=/home/e/.local/share/icons/Chatbox-1.15.2-x86_64.png


[Desktop Entry]
Name=Cursor
Exec=/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage --no-sandbox
Icon=/home/e/.local/share/icons/Cursor-1.3.9-x86_64.png
Type=Application
Categories=Development;

[Desktop Action new-empty-window]
Name=New Empty Window
Name[cs]=Nové prázdné okno
Name[de]=Neues leeres Fenster
Name[es]=Nueva ventana vacía
Name[fr]=Nouvelle fenêtre vide
Name[it]=Nuova finestra vuota
Name[ja]=新しい空のウィンドウ
Name[ko]=새 빈 창
Name[ru]=Новое пустое окно
Name[zh_CN]=新建空窗口
Name[zh_TW]=開新空視窗
Exec="/home/e/.local/apps/Cursor-1.3.9-x86_64/Cursor-1.3.9-x86_64.AppImage" %U
Icon=/home/e/.local/share/icons/Cursor-1.3.9-x86_64.png

此时应该可以完美运行了,具体的 Desktop 文件格式学习参考 CSDN老哥。其实一般的应用,运行完脚本后,就可以正常运行,若出现BUG,应该都是个别命令的问题,例如本案例,所以耐心去排查即可。

References

知乎参考 能命令行运行,但是不能点击桌面运行

CSDN参考 主要解决桌面运行,参考价值比较大

CSDN学习 用于学习

Github老哥 提供了安装和卸载脚本

关于

Linux下安装appImage格式软件。

746.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号