summary refs log tree commit diff
path: root/pkgs/tools/package-management/appimage-run/default.nix
blob: 0595f2ea99f88eb341fc5252bc5dfcf9b54ff8ab (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{ appimageTools, buildFHSUserEnv, 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 buildFHSUserEnv (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;
})