depot/third_party/nixpkgs/pkgs/tools/package-management/appimage-run/default.nix

46 lines
910 B
Nix

{
lib,
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 (
lib.recursiveUpdate 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;
meta.mainProgram = "appimage-run";
}
)