Appimage: Difference between revisions

Abowen (talk | contribs)
How to add additional packages
Ardenet (talk | contribs)
m Adjust the position of page translation tags
 
Line 10: Line 10:
<!--T:3-->
<!--T:3-->
On most distros, all one has to do is download the <code>.AppImage</code> file, make it executable <code>chmod +x $AppImage</code>, and execute it. This doesn't work in NixOS out of the box though, as AppImage files usually (if not always) depend on certain system libraries in hardcoded paths.
On most distros, all one has to do is download the <code>.AppImage</code> file, make it executable <code>chmod +x $AppImage</code>, and execute it. This doesn't work in NixOS out of the box though, as AppImage files usually (if not always) depend on certain system libraries in hardcoded paths.
</translate>


</translate>
<syntaxhighlight lang="shell">
<syntaxhighlight lang="shell">
$ nix-shell -p appimage-run
$ nix-shell -p appimage-run
$ appimage-run path/to/application.AppImage
$ appimage-run path/to/application.AppImage
</syntaxhighlight>
</syntaxhighlight>
<translate>
<translate>
===== Additional Packages =====
===== Additional Packages =====
Some appimages still have issues, so you can override for additional pkgs such as<syntaxhighlight lang="nix">programs.appimage.enable = true;
 
Some appimages still have issues, so you can override for additional pkgs such as
</translate>
 
<syntaxhighlight lang="nix">programs.appimage.enable = true;
programs.appimage.binfmt = true;
programs.appimage.binfmt = true;
programs.appimage.package = pkgs.appimage-run.override  
programs.appimage.package = pkgs.appimage-run.override  
Line 29: Line 34:
     pkgs.python312Packages.torch
     pkgs.python312Packages.torch
   ];  
   ];  
};</syntaxhighlight>
};
</syntaxhighlight>


<translate>
=== Packaging === <!--T:8-->
=== Packaging === <!--T:8-->


Line 77: Line 84:


<translate>
<translate>
== Configuration == <!--T:16-->
== Configuration == <!--T:16-->


Line 85: Line 91:
You can tell the [[Linux kernel]] to use an interpreter (e.g. <code>appimage-run</code>) when executing certain binary files through the use of [https://en.wikipedia.org/wiki/Binfmt_misc#External_links binfmt_misc], either by filename extension or magic number matching. Below NixOS configuration registers AppImage files (ELF files with magic number "AI" + 0x02) to be run with <code>appimage-run</code> as interpreter:
You can tell the [[Linux kernel]] to use an interpreter (e.g. <code>appimage-run</code>) when executing certain binary files through the use of [https://en.wikipedia.org/wiki/Binfmt_misc#External_links binfmt_misc], either by filename extension or magic number matching. Below NixOS configuration registers AppImage files (ELF files with magic number "AI" + 0x02) to be run with <code>appimage-run</code> as interpreter:
</translate>
</translate>
<syntaxhighlight lang="nixos">
<syntaxhighlight lang="nixos">
programs.appimage = {
programs.appimage = {
Line 91: Line 98:
};
};
</syntaxhighlight>
</syntaxhighlight>
<translate>
<translate>
<!--T:7-->
<!--T:7-->
This way AppImage files can be invoked directly as if they were normal programs
This way AppImage files can be invoked directly as if they were normal programs
</translate>


</translate>
[[Category:Software]]
[[Category:Software]]