标签 AppImage 下的文章

最近发布的 Ubuntu 22.04 LTS 充满了新的视觉变化和功能

但与任何其他版本一样,它也存在一些错误和问题。

我在 Ubuntu 22.04 中遇到的令人不快的惊喜之一是 AppImage 应用。

即使拥有所有正确的权限,AppImage 应用也会拒绝在我新安装的 Ubuntu 22.04 系统中启动。

如果你遇到类似的情况,我有个好消息要告诉你。修复非常简单。

在 Ubuntu 22.04 LTS 中运行 AppImage 应用

这里的问题是 Ubuntu 22.04 缺少 FUSE(用户空间中的文件系统)库。FUSE 库为用户空间程序提供了一个接口,可以将虚拟文件系统导出到 Linux 内核。

这就是 AppImage 在虚拟文件系统上的工作方式。由于缺少这个关键库,AppImage 无法按预期工作。

现在你了解了问题的根本原因,让我们看看如何使其工作。

第 1 步:安装 libfuse

在 Ubuntu 中打开终端并使用以下命令安装 FUSE 库支持:

sudo apt install libfuse2

如果你不熟悉终端,那么你需要了解以下内容。它会要求你输入 sudo 密码。实际上,那是你的帐户密码。 当你输入密码时,屏幕上不会显示任何内容。这是设计使然。只需继续输入密码并输入。

Install libfuse2 in Ubuntu

第 2 步:确保 AppImage 文件具有正确的文件权限

这个不用说了。你需要对下载的应用的 AppImage 文件具有“执行”权限。

转到你已下载所需应用的 AppImage 文件的文件夹。右键单击并选择 属性 Properties

现在转到 权限 Permissions 选项卡并选中“ 允许将文件作为程序执行 Allow executing file as program ”选项。

give execute permission to AppImage file

设置完成后就好了。现在只需双击该文件,它就会按预期运行应用。

获取 libfuse 的这个小步骤已经在我的 安装 Ubuntu 22.04 后推荐要做的事情列表 上了。

进一步的故障排除提示

你的 AppImage 文件仍未运行?你下载的 AppImage 可能会出现一些其他问题,使其无法运行。

检查它的一种方法是下载一个已知的应用,如 Balena Etcher 并查看其 AppImage 文件是否有效。如果这个没问题,那么当你下载的另一个应用的 AppImage 文件无法工作,你可以通过从终端运行 AppImage 文件并分析它显示的错误来深入挖掘。

对你有用吗?

继续尝试。如果有效,请给我写个“感谢”。如果仍然没有解决,请在评论部分中提及详细信息,我会尽力帮助你。

(该图片由 Ryan McGuirePixabay 上发布)


via: https://itsfoss.com/cant-run-appimage-ubuntu/

作者:Abhishek Prakash 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

这是一个管理和寻找 AppImage 应用的有趣的 GUI 前端。让我们来了解一下它!

我们有很多关于 AppImage 的历史和制作它 的信息。如果你是 Linux 的新手,你也应该看看我们的 AppImage 使用指南

AppImage 使应用可以很容易地在不同的发行版上运行,而不需要安装依赖关系或任何东西。

然而,与 Flatpak 的 Flathub 不同,你可能找不到一个浏览 AppImage 应用的门户。

Nitrux OS 中的 NX 软件中心做了类似的工作,但它不能轻易安装在其他发行版上。因此,AppImage Pool 作为 AppImage 应用的应用商店上场了,你可以安装在任何 Linux 发行版上。

AppImage Pool:一个管理和寻找 AppImage 应用的 GUI 前端

AppImage Pool 是一个使用 Flutter 构建的 GUI 前端,它从 AppImageHub 获取应用数据,并让你快速搜索、下载和管理 AppImage 应用。

它并不托管任何 AppImage 文件,但它可以让你从项目的 GitHub 页面下载可用的 AppImage 文件。

当你试图下载一个 AppImage 文件时,它会从应用的 GitHub 发布页列出所有下载方式。

我不确定它是否仅限于来自 GitHub 的项目,但你可以在 AppImageHub 门户 中找到各种不同方式。

AppImage Pool 的特点

AppImage 是一个简单直白的应用商店,可以让你搜索、下载和管理 AppImage 文件。

其中一些功能包括:

  • 能够下载特定版本的 AppImage 文件
  • 按类别过滤应用
  • 下载进度图标
  • 管理所有已安装的 AppImages
  • 查看下载历史

考虑到该应用是使用 Flutter 构建的,它给人带来了快捷的用户体验。

如果你是一个开发者,这鼓励了你使用它制作一个应用的话,你也可以 在 Linux 中安装 Flutter

在 Linux 中安装 AppImage Pool

由于明显的原因,开发者提供了一个可供下载的 AppImage 文件。

你也可以选择从 Flathub安装它的 Flatpak 包。如果你想测试它即将发布的任何版本,也有一个每夜构建的 AppImage 版本。

在其 GitHub 页面 上可以了解关于它的更多信息。

使用 AppImage Pool 的感受

该应用可以如预期的工作。然而,我注意到,列出的一些应用没有下载链接或任何相关信息。

毕竟,这些数据是来自于 AppImageHub 的。

另外,你可能会觉得奇怪,有些应用只列出了预发布的 AppImage 文件,比如 Blender。

虽然这也是可以选择项目发布分支的一个优势,但我认为我不会下载预发布包。

总的来说,找到一个能让人轻松下载和管理 AppImages 的东西是件好事。

我建议你试一试,并在下面的评论区告诉我你的想法。


via: https://itsfoss.com/appimagepool/

作者:Ankush Das 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

AppImage 在自足的环境中分发应用, 它适用于任何 Linux 发行版。

管理 Linux 机器(尤其是远程机器)的一个重要分就是管理和安装软件。当本地应用程序出现问题时,或者文件系统上的某些文件损坏需要修复时,你通常会希望推送更新,而不必走很多路坐在物理屏幕前。正如我在 Pluralsight 课程《Linux 系统维护和故障排除》中所解释的那样,许多问题当然可以通过 Bash 脚本解决,但是仍有很多情况下,除了老式的二进制文件外,没有其他选择。

想象一下,你的某些远程系统需要安装新的应用程序,这样使用这些计算机的团队成员就能够执行某些业务。能够利用 Debian 或 RPM 之类的主要 Linux 仓库系统的集成和自动化,可以使你的管理任务变得更加容易。

正如 Linus Torvalds 永不厌倦地提醒我们的那样,太多的 Linux 软件管理系统的问题是 Linux 软件管理系统太多了。多年来,应用开发甚至是 Linux 的采用都变得愈加复杂起来,因为你为了提供你的软件(比如,放到 Debian 仓库)而投入的所有时间和工作,对于你想让它们进入 RPM 系统并没有什么帮助,对于 SUSE 的 Zypper 管理器也一样,没有什么帮助。

解决软件孤岛问题的一种有前途的方案是分发具有自足环境的应用,它们可以在任何 Linux 发行版上运行。在这个年轻且不断发展的领域中,选择之一是 AppImage

使用 AppImage

我全面投入到了 AppImage。就像我提到的其他软件包管理系统一样,如果你需要的话,有很多复杂的功能可以使用。但是,从本质上讲,AppImage 非常简单。AppImage 不像大多数其他包管理器一样通过仓库工作,它使用单个、独立的文件,可以直接发送或通过网站共享。

下面是个展示它的美妙之处的例子。当我在用 AppImage 时,我在一个技术论坛上看到了一个很老的讨论,它让我找到了一个同样久远且废弃的 GitHub 项目以及相关的 YAML 和配方文件。它们旨在自动构建准备生成 AppImage 包所需的相当复杂的基础架构。尽管该基础架构全部是在 5 年前的 Ubuntu 版本上构建的,但是当我将它们放在一起并运行 appimagetool 命令时,它创建了一个 AppImage 文件,它可在我当前的桌面上无缝运行。我不认为有很多有五年历史的 GitHub 复杂项目可以使用其他技术运行,而无需认真重做。

但是这里我我不会介绍这个案例。相反,我将用一个简单的 Hello World 程序向你展示它是如何工作的。首先,请确保本地已安装 AppStream 包。

对于基于 Debian 的系统,运行:

$ sudo apt install appstream

对于 RPM 系统,请使用:

$ sudo dnf install appstream

克隆这篇文章中提及的 Git 仓库,我会基于它示例:

$ git clone <https://github.com/boolean-world/appimage-resources>
$ cd appimage-resources
$ ls hello-world-appimage

接下来,使用 cd 进入 Git 新创建的目录。这里有两个目录。请使用 hello-world-appimage。另一个是更复杂的项目,你也应该考虑尝试一下。

Linux GUI 系统会读取 helloworld.desktop 文件来知道如何呈现桌面图标。事实证明,当前的这个文件会在以后给你带来点麻烦,因此请进行一些小修改:添加 Categories= 这行并为其赋予值 GNOME。不要忘记最后的分号:

$ nano hello-world-appimage/helloworld.desktop
        add Categories=GNOME;

AppImage GitHub 项目下载 appimagetool 预编译的二进制文件。访问 GitHub 的原因之一:那里有很多出色的文档和资源。下载二进制文件后,使文件可执行,并将 hello-world-appimage 目录传给它。但是首先,你需要告诉它你想要的架构。由于某些原因,一个名字以 x86\_64 结尾的工具都不能自行确定是否该使用 x86\_64 来构建应用程序(我不知道这是怎么回事)。

$ wget <https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage>
$ chmod +x appimagetool-x86_64.AppImage
$ ARCH=x86_64 ./appimagetool-x86_64.AppImage hello-world-appimage

如果你没有看到任何错误消息,那么表示完成了,请运行:

$ ls
$ ./hello-world-appimage-x86_64.AppImage

总结

AppImage 是软件包管理的非常有效的选择。当你探索它时,我想你会发现它是 Linux 发行版默认软件包系统的很好的替代品。


via: https://opensource.com/article/20/6/appimages

作者:David Clinton 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

你有没有下载过 AppImage 文件,而你不知道如何使用它?或许你可能知道如何使用它,但是你每次要运行它时必须要进入到下载了该 .AppImage 的文件夹中来运行它,或者手动为其创建启动程序。

使用 AppImageLauncher,这些就都是过去的问题。该程序可让你轻松运行 AppImage 文件,而无需使其可执行。但它最有趣的特点是可以轻松地将 AppImage 与你的系统进行整合:AppImageLauncher 可以自动将 AppImage 程序快捷方式添加到桌面环境的程序启动器/菜单(包括程序图标和合适的说明)中。

这 里有个例子,我想在 Ubuntu 上使用 Kdenlive,但我不想从仓库中安装它,因为它有大量的 KDE 依赖,我不想把它们弄到我的 Gnome 系统中。因为没有它的 Flatpak 或 Snap 镜像,我只能去下载了 Kdenlive 的 AppImage。

在没有把下载的 Kdenline AppImage 变成可执行的情况下,我第一次双击它时(安装好了 AppImageLauncher),AppImageLauncher 提供了两个选项:

“Run once”或者“Integrate and run”。

点击 “Integrate and run”,这个 AppImage 就被复制到 ~/.bin/ (家目录中的隐藏文件夹)并添加到菜单中,然后启动该程序。

要删除它也很简单,只要您使用的桌面环境支持桌面动作就行。例如,在 Gnome Shell 中,只需右键单击“活动概览”中的应用程序图标,然后选择“Remove from system”:

更新:该应用只初步为 Ubuntu 和 Mint 做了开发,但它最近会提供 Debian、 Netrunner 和 openSUSE 支持。本文首次发布后添加的另一个功能是支持 AppImage 的更新;你在启动器中可以找到 “Update AppImage”。

下载 AppImageLauncher

AppImageLauncher 支持 Ubuntu、 Debian、Netrunner 和 openSUSE。如果你使用 Ubuntu 18.04,请确保你下载的 deb 包的名字中有“bionic”,而其它的 deb 是用于旧一些的 Ubuntu 版本的。


via: https://www.linuxuprising.com/2018/04/easily-run-and-integrate-appimage-files.html

作者:Logix 译者:geekpi 校对:wxy 选题:lujun9972

本文由 LCTT 原创编译,Linux中国 荣誉推出