0af
1
商业软件往往会近以二进制形式分发。在 Nix 上使用这些软件通常存在如下方案:
- 使用 Nixpkgs 里打包的 unfree software(如果打包了的话)
- 自己下载二进制文件进行 adjust
- 使用 appimage/snap/flatpak/homebrew-cask
如果只是试用的话,我推荐nix-ld+envfs,基本能运行大多数软件。如果长期使用那肯定是建议打个包。appimage感觉在nixos上的可用性并不强,我遇到的几个通过appimage分发的软件都不知道为什么没法运行。
我觉得flatpak挺好的,更方便限制商业软件的权限。nix上可以通过nix-flatpak等工具来声明式管理。
0af
6
AppImage 好像还是会假定系统提供了一些动态链接库的,所以个人认为 AppImage < Snap < Flatpak。
0af
7
开发者不一定比打包者更懂 Linux。开发者可能会在代码和编译脚本里写死各种路径,做出各种只符合 FHS 标准的假设。
最大的问题还不是这个,而是给这些开发者打完了补丁,他们还觉得你是在“恶意篡改”他们的“成果”。 
1 个赞
不过在非nixos的系统上,用nix、home-manager来搭配nix-flatpak或者declarative-flatpak来管理flatpak好像都是少有人尝试的行为,可能会有不少问题,并且应该只能以user模式来安装flatpak软件包
在 nix 上运行 appimage 很多时候还是需要用 appimage-run 才行。
iab
10
一般都会提供 deb 包
nix 打包 deb 太简单了,解压 autoPatchelfHook 按提示补上依赖就能工作了
1 个赞