electron-launch 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env bash
  2. # On Fedora $SNAP is under /var and there is some magic to map it to /snap.
  3. # We need to handle that case and reset $SNAP
  4. SNAP=$(echo "$SNAP" | sed -e "s|/var/lib/snapd||g")
  5. if [ "$SNAP_ARCH" == "amd64" ]; then
  6. ARCH="x86_64-linux-gnu"
  7. elif [ "$SNAP_ARCH" == "armhf" ]; then
  8. ARCH="arm-linux-gnueabihf"
  9. elif [ "$SNAP_ARCH" == "arm64" ]; then
  10. ARCH="aarch64-linux-gnu"
  11. else
  12. ARCH="$SNAP_ARCH-linux-gnu"
  13. fi
  14. GDK_CACHE_DIR="$SNAP_USER_COMMON/.cache"
  15. if [[ -d "$SNAP_USER_DATA/.cache" && ! -e "$GDK_CACHE_DIR" ]]; then
  16. # the .cache directory used to be stored under $SNAP_USER_DATA, migrate it
  17. mv "$SNAP_USER_DATA/.cache" "$SNAP_USER_COMMON/"
  18. fi
  19. [ ! -d "$GDK_CACHE_DIR" ] && mkdir -p "$GDK_CACHE_DIR"
  20. # Gdk-pixbuf loaders
  21. export GDK_PIXBUF_MODULE_FILE="$GDK_CACHE_DIR/gdk-pixbuf-loaders.cache"
  22. export GDK_PIXBUF_MODULEDIR="$SNAP/usr/lib/$ARCH/gdk-pixbuf-2.0/2.10.0/loaders"
  23. if [ -f "$SNAP/usr/lib/$ARCH/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" ]; then
  24. "$SNAP/usr/lib/$ARCH/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" > "$GDK_PIXBUF_MODULE_FILE"
  25. fi
  26. # Create $XDG_RUNTIME_DIR if not exists (to be removed when https://pad.lv/1656340 is fixed)
  27. [ -n "$XDG_RUNTIME_DIR" ] && mkdir -p "$XDG_RUNTIME_DIR" -m 700
  28. exec "$@"