我最近切换到 Artix Linux,使用 OpenRC 作为初始化系统。我之前用过Manjaro,它使用Systemd。不管怎样,我试图安装一些我在 Manjaro 上使用的软件包,这些软件包是我从 snap-store 获得的。但由于某些 systemd 依赖性,我无法安装它。我认为只是尝试Office和其他东西。
答案1
标题问题
虽然这对于您的问题正文似乎提出的具体答案来说确实太模糊了,但标题中提出的问题有一个具体的答案。
依赖systemd
和需要此类的包将包含放置在systemd
期望的位置的服务文件,并使用这些文件执行诸如运行守护程序之类的操作,这是您可能(或可能没有)与特定发行版的 init 系统进行交互的典型方式。OpenRC
作为一个不同的 init 系统,它以不同的方式处理守护进程的运行,除其他差异外,它不会知道systemd
init 文件在哪里,也不会知道如何处理它们,因为它们期望文件符合不同的语法。
Systemd
它还带来了许多其他 init 系统避免的功能和特性,无论好坏。因此,您的标题问题的答案是,目标包或其他包通常是这样编写的,以便它们期望特定的环境,而该环境不一定是另一个 init 系统将提供的环境。
你绝对不需要 Snapd
Snapd
是一个为跨发行版使用而编写的包管理器,它不一定是安装您想要安装的任何包的必要功能。因为它需要systemd
,对于我不知道也不关心调查的事情,它不属于用于安装您打算安装的任何软件包的工具的潜在候选者。
相反,您可以尝试类似的、非systemd
特定的flatpak
.它是同样的事情,尽管它声称更安全,并且同样渴望系统上的空间,因为它也在沙盒环境中安装了它所需的所有依赖项。 OnlyOffice 绝对可以通过 获得flathub
,其中还描述了安装过程和设置其存储库等。
您还可以用来检查 Artix 的软件包存储库(它可能就在那里)。在 Artix 的 wiki 上有启用其他存储库的说明,包括一些 Arch 的存储库,它们可能会为您提供您已经需要的内容。pacman -Ss [whatever]
基于 Arch 并使用pacman
意味着您还可以使用 AUR 来访问相关包。您将需要安装 AUR 帮助程序,例如yay
或paru
,然后您可以使用 AUR 帮助程序,其方式类似于pacman
从 AUR 安装您想要的任何内容。
或者您可以找到与该项目关联的 git 存储库(可能存在)并按照其说明readme.md
从源代码构建它。进入更利基和更具体的 Linux 发行版(例如 Artix),您可能应该适应这个过程,因为您越深入兔子洞,越需要它变得越有必要,因为较小的团队无法免费维护巨大的存储库,甚至不需要太多东西。以感谢的方式,更不用说帮助了。一般来说,这将相当于目录中的a 后跟 a和另一个 ,当您已经安装了所需的东西(例如和)时,这并不是那么令人畏惧。git clone [repo url]
make
sudo make install
gcc
make