diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/package-management/appimage-run/default.nix')
-rw-r--r-- | nixpkgs/pkgs/tools/package-management/appimage-run/default.nix | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/package-management/appimage-run/default.nix b/nixpkgs/pkgs/tools/package-management/appimage-run/default.nix new file mode 100644 index 000000000000..286fd9d7ff68 --- /dev/null +++ b/nixpkgs/pkgs/tools/package-management/appimage-run/default.nix @@ -0,0 +1,29 @@ +{ appimageTools, buildFHSEnv, makeDesktopItem, extraPkgs ? pkgs: [], appimage-run-tests ? null }: + +let + name = "appimage-run"; + + fhsArgs = appimageTools.defaultFhsEnvArgs; + + desktopItem = makeDesktopItem { + inherit name; + exec = name; + desktopName = name; + genericName = "AppImage runner"; + noDisplay = true; + mimeTypes = ["application/vnd.appimage" "application/x-iso9660-appimage"]; + categories = ["PackageManager" "Utility"]; + }; +in buildFHSEnv (fhsArgs // { + inherit name; + + targetPkgs = pkgs: [ appimageTools.appimage-exec ] + ++ fhsArgs.targetPkgs pkgs ++ extraPkgs pkgs; + runScript = "appimage-exec.sh"; + + extraInstallCommands = '' + cp --recursive "${desktopItem}/share" "$out/" + ''; + + passthru.tests.appimage-run = appimage-run-tests; +}) |