summary refs log tree commit diff
path: root/pkgs/tools/package-management
diff options
context:
space:
mode:
authorBignaux Ronan <ronan@aimao.org>2020-03-05 23:57:36 +0100
committerBignaux Ronan <ronan@aimao.org>2020-03-07 20:24:26 +0100
commitb36d3f2c4a94a5e5002fb0647db5465e7c38668b (patch)
tree48c7a8789f1d5bb2c5617dfff20593f98b612fb7 /pkgs/tools/package-management
parent349e923e00cf46fa33f118bfd22024f392e95a79 (diff)
downloadnixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar.gz
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar.bz2
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar.lz
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar.xz
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.tar.zst
nixpkgs-b36d3f2c4a94a5e5002fb0647db5465e7c38668b.zip
appimage: replace writeScript to a standalone appimage-exec.sh
Diffstat (limited to 'pkgs/tools/package-management')
-rwxr-xr-xpkgs/tools/package-management/appimage-run/appimage-exec.sh43
-rw-r--r--pkgs/tools/package-management/appimage-run/default.nix28
2 files changed, 5 insertions, 66 deletions
diff --git a/pkgs/tools/package-management/appimage-run/appimage-exec.sh b/pkgs/tools/package-management/appimage-run/appimage-exec.sh
deleted file mode 100755
index cdce727af4f..00000000000
--- a/pkgs/tools/package-management/appimage-run/appimage-exec.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#!@bash@/bin/bash
-if [ $# -eq 0 ]; then
-  echo "Usage: $0 FILE [OPTION...]"
-  echo
-  echo 'Options are passed on to the appimage.'
-  echo "If you want to execute a custom command in the appimage's environment, set the APPIMAGE_DEBUG_EXEC environment variable."
-  exit 1
-fi
-APPIMAGE="$(realpath "$1")"
-shift
-
-if [ ! -x "$APPIMAGE" ]; then
-  echo "fatal: $APPIMAGE is not executable"
-  exit 1
-fi
-
-SHA256="$(@coreutils@/bin/sha256sum "$APPIMAGE" | cut -d ' ' -f 1)"
-SQUASHFS_ROOT="''${XDG_CACHE_HOME:-$HOME/.cache}/appimage-run/$SHA256/"
-mkdir -p "$SQUASHFS_ROOT"
-
-export APPDIR="$SQUASHFS_ROOT/squashfs-root"
-if [ ! -x "$APPDIR" ]; then
-  cd "$SQUASHFS_ROOT"
-
-  if @file@/bin/file --mime-type --brief --keep-going "$APPIMAGE" | grep -q iso; then
-    # is type-1 appimage
-    mkdir "$APPDIR"
-    @libarchive@/bin/bsdtar -x -C "$APPDIR" -f "$APPIMAGE"
-  else
-    # is type-2 appimage
-    "$APPIMAGE" --appimage-extract 2>/dev/null
-  fi
-fi
-
-cd "$APPDIR"
-export PATH="$PATH:$PWD/usr/bin"
-export APPIMAGE_SILENT_INSTALL=1
-
-if [ -n "$APPIMAGE_DEBUG_EXEC" ]; then
-  exec "$APPIMAGE_DEBUG_EXEC"
-fi
-
-exec ./AppRun "$@"
diff --git a/pkgs/tools/package-management/appimage-run/default.nix b/pkgs/tools/package-management/appimage-run/default.nix
index 3eeaa752f02..37d1afe2843 100644
--- a/pkgs/tools/package-management/appimage-run/default.nix
+++ b/pkgs/tools/package-management/appimage-run/default.nix
@@ -1,31 +1,13 @@
-{ buildFHSUserEnv, coreutils, file, libarchive, runtimeShell
-, extraPkgs ? pkgs: [], appimageTools, stdenv, bash }:
+{ appimageTools, buildFHSUserEnv, extraPkgs ? pkgs: [] }:
 
 let
 
-  name = "appimage-run";
-  version = "1.0";
   fhsArgs = appimageTools.defaultFhsEnvArgs;
 
-  appimage-exec = stdenv.mkDerivation {
-     #inherit pname version;
-     name = "appimage-exec";
-
-     inherit coreutils file libarchive bash;
-
-     buildCommand = ''
-       mkdir -p $out/bin/
-       substituteAll ${./appimage-exec.sh} $out/bin/appimage-exec.sh
-       chmod +x $out/bin/appimage-exec.sh
-    '';
-  };
-
 in buildFHSUserEnv (fhsArgs // {
-  inherit name;
+  name = "appimage-run";
 
-  targetPkgs = pkgs:
-    [ appimage-exec
-    ] ++ fhsArgs.targetPkgs pkgs ++ extraPkgs pkgs;
-  #extraInstallCommands = '''';
-  runScript = "appimage-exec.sh";
+  targetPkgs = pkgs: [ appimageTools.appimage-exec ]
+    ++ fhsArgs.targetPkgs pkgs ++ extraPkgs pkgs;
+  runScript = "appimage-exec.sh -r -a";
 })