Appimage: Difference between revisions
→Packaging: Fix code example |
Marked this version for translation |
||
| Line 4: | Line 4: | ||
[https://appimage.org/ AppImage] is a monolithic packaging format for linux applications. It contains all dependencies in one file that is composed of an executable with a tacked on filesystem. | [https://appimage.org/ AppImage] is a monolithic packaging format for linux applications. It contains all dependencies in one file that is composed of an executable with a tacked on filesystem. | ||
== Usage == | == Usage == <!--T:10--> | ||
=== Run ===<!--T:2--> | === Run === <!--T:2--> | ||
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. | <!--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. | |||
</translate> | </translate> | ||
| Line 16: | Line 17: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<translate> | <translate> | ||
=== Packaging ===<!--T:8--> | === Packaging === <!--T:8--> | ||
<!--T:9--> | <!--T:9--> | ||
| Line 27: | Line 28: | ||
}: | }: | ||
<!--T:11--> | |||
let | let | ||
version = "1.4.0"; | version = "1.4.0"; | ||
| Line 32: | Line 34: | ||
name = "${pname}-${version}"; | name = "${pname}-${version}"; | ||
src = fetchurl { | <!--T:12--> | ||
src = fetchurl { | |||
url = "https://github.com/ZUGFeRD/quba-viewer/releases/download/v${version}/Quba-${version}.AppImage"; | url = "https://github.com/ZUGFeRD/quba-viewer/releases/download/v${version}/Quba-${version}.AppImage"; | ||
hash = "sha256-EsTF7W1np5qbQQh3pdqsFe32olvGK3AowGWjqHPEfoM="; | hash = "sha256-EsTF7W1np5qbQQh3pdqsFe32olvGK3AowGWjqHPEfoM="; | ||
}; | }; | ||
appimageContents = appimageTools.extractType1 { inherit name src; }; | <!--T:13--> | ||
appimageContents = appimageTools.extractType1 { inherit name src; }; | |||
in | in | ||
appimageTools.wrapType1 { | appimageTools.wrapType1 { | ||
inherit name src; | inherit name src; | ||
extraInstallCommands = '' | <!--T:14--> | ||
extraInstallCommands = '' | |||
mv $out/bin/${name} $out/bin/${pname} | mv $out/bin/${name} $out/bin/${pname} | ||
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications | install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications | ||
| Line 50: | Line 55: | ||
''; | ''; | ||
meta = { | <!--T:15--> | ||
meta = { | |||
description = "Viewer for electronic invoices"; | description = "Viewer for electronic invoices"; | ||
homepage = "https://github.com/ZUGFeRD/quba-viewer"; | homepage = "https://github.com/ZUGFeRD/quba-viewer"; | ||
| Line 62: | Line 68: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Configuration == | == Configuration == <!--T:16--> | ||
=== Register AppImage files as a binary type to binfmt_misc ===<!--T:4--> | === Register AppImage files as a binary type to binfmt_misc === <!--T:4--> | ||
<!--T:5--> | <!--T:5--> | ||