46 lines
910 B
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";
|
|
}
|
|
)
|