gRdx4
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
literal 0
HcmV?d00001
diff --git a/arch2appimage.py b/arch2appimage.py
new file mode 100644
index 0000000..9dd328b
--- /dev/null
+++ b/arch2appimage.py
@@ -0,0 +1,258 @@
+import re
+import os
+import sys
+import time
+import glob
+import shutil
+
+from config import *
+from utils import Utils
+
+if os.path.exists(APP_DIR):
+ print(f"{APP_DIR}/ already exists. Please remove it then run the script again.")
+ sys.exit(1)
+
+print()
+print("Convert any Arch linux package (official/AUR) to AppImage!!")
+utils = Utils()
+main_pkg = None
+
+while True:
+ main_pkg = utils.user_text("Enter the name of the package (leave empty to quit)")
+
+ if not main_pkg:
+ print("Exiting...")
+ sys.exit(1)
+
+ main_pkg_url = utils.get_pkg(main_pkg)
+
+ if main_pkg_url:
+ break
+
+ print("Package not found. Please check the name and try again")
+ print()
+
+
+print()
+os.mkdir(APP_DIR)
+
+utils.download(main_pkg_url, "download", main_pkg)
+utils.extract_zst("download", APP_DIR)
+utils.rm("download")
+
+desktop_file = glob.glob(os.path.join(APP_DIR, "usr/share/applications/*.desktop"))
+
+if not desktop_file:
+ print("No .desktop file was found in the package.")
+ desktop_file = utils.user_path("Please enter the path to a .desktop file", required=True)
+
+elif len(desktop_file) == 1:
+ desktop_file = desktop_file[0]
+
+else:
+ desktop_file = utils.user_select("Select the .desktop file to be used", desktop_file)
+
+
+while True:
+ vfd, msg = utils.validate_desktop_file(desktop_file)
+ if vfd:
+ break
+
+ print()
+ print(".desktop file validation failed due to the error below:")
+ print(msg)
+ desktop_file = utils.user_path("Please enter the path to a valid .desktop file", required=True)
+
+
+utils.copy_file(desktop_file, APP_DIR)
+
+with open(desktop_file, "r") as f:
+ icon_name = re.findall('Icon=(.*)', f.read())
+ if icon_name:
+ icon_name = icon_name[0]
+ else:
+ icon_name = None
+
+
+icon_file = None
+
+if not icon_name:
+ print("The .desktop file doesn't have an Icon attribute")
+ icon_file = utils.user_path("Please enter the path to the icon file to be used", required=True)
+ if icon_file is not None:
+ icon_name = ".".join(icon_file.split("/")[-1].split(".")[:-1])
+ utils.set_icon_desktop_file(desktop_file, icon_name)
+
+else:
+ i_files = os.path.join(APP_DIR, f"usr/share/icons/**/*.*")
+ icon_file = glob.glob(i_files, recursive=True)
+
+ if not icon_file:
+ print(f"No icon file was found in {APP_DIR}/usr/share/icons/")
+ icon_file = utils.user_path("Please enter the path to the icon file to be used", required=True)
+
+ elif len(icon_file) == 1:
+ icon_file = icon_file[0]
+
+ else:
+ icon_file = utils.user_select("Please select the icon file to be used", sorted(icon_file))
+
+
+utils.copy_file(icon_file, APP_DIR)
+
+file_name = icon_file.split("/")[-1]
+file_ext = file_name.split(".")[-1]
+if file_name != f"{icon_name}.{file_ext}":
+ os.rename(
+ os.path.join(APP_DIR, file_name),
+ os.path.join(APP_DIR, f"{icon_name}.{file_ext}")
+ )
+
+pkgs = {}
+
+with open(os.path.join(APP_DIR, ".PKGINFO"), "r") as f:
+ lines = f.read().splitlines()
+ for line in lines:
+ line = line.strip()
+ if line.startswith("depend ="):
+ pkgs[line.replace("depend =", "").strip()] = None
+
+
+while True:
+ not_found = []
+ for pkg in pkgs:
+ if pkgs[pkg]:
+ continue
+
+ url = utils.get_pkg(pkg)
+ if url:
+ pkgs[pkg] = url
+
+ else:
+ not_found.append(pkg)
+
+ print()
+ print("These packages (and their dependencies) will be downloaded:")
+
+ for i, p in enumerate(pkgs):
+ if pkgs[p]:
+ print(f"{i+1}. {p}")
+
+ if not_found:
+ print()
+ print("These packages could not be found: " + " ".join(not_found))
+
+
+ new_pkgs = utils.user_text("If you would like to add additional packages " +
+ "please enter them below (space seperated). Leave empty to start downloading")
+
+ if not new_pkgs.strip():
+ break
+
+ for i in new_pkgs.split(" "):
+ if i not in pkgs:
+ pkgs[i] = None
+
+
+for name, url in pkgs.items():
+ if url:
+ utils.download(url, "download", name)
+ utils.extract_zst("download", APP_DIR)
+ utils.rm("download")
+
+
+files_to_delete = [".BUILDINFO", ".MTREE", ".PKGINFO", ".INSTALL"]
+for i in files_to_delete:
+ utils.rm(os.path.join(APP_DIR, i))
+
+
+utils.copy_file(os.path.join(RES_DIR, "AppRun"), APP_DIR)
+utils.make_executable(os.path.join(APP_DIR, "AppRun"))
+
+ldp_file = os.path.join(RES_DIR, "libunionpreload.so")
+if utils.user_confirm("Would you like to download the latest \
+libunionpreload.so? If you select No the existing one will be used."):
+ utils.download(LDP_URL, ldp_file, "libunionpreload.so")
+
+utils.copy_file(ldp_file, APP_DIR)
+utils.make_executable(os.path.join(APP_DIR, "libunionpreload.so"))
+
+while True:
+ print("AppDir is ready. Please take a look into the directory to ensure everything is OK.")
+ print("Exec the AppRun (command './AppRun') to test if everything works.")
+ yn = utils.user_confirm(
+ "What would you like to do next?",
+ "Build the AppImage",
+ "Add more packages"
+ )
+ if yn:
+ break
+
+ pkgs = {}
+ while True:
+ new_pkgs = utils.user_text("If you would like to add additional packages " +
+ "please enter them below (space seperated). Leave empty to start downloading")
+
+ if not new_pkgs.strip():
+ break
+
+ for i in new_pkgs.split(" "):
+ if i not in pkgs:
+ pkgs[i] = None
+
+ not_found = []
+ for pkg in pkgs:
+ if pkgs[pkg]:
+ continue
+
+ url = utils.get_pkg(pkg)
+ if url:
+ pkgs[pkg] = url
+
+ else:
+ not_found.append(pkg)
+
+ print()
+ print("These packages will be downloaded:")
+
+ for i, p in enumerate(pkgs):
+ if pkgs[p]:
+ print(f"{i+1}. {p}")
+
+ if not_found:
+ print()
+ print("These packages could not be found: " + " ".join(not_found))
+
+ if pkgs:
+ for name, url in pkgs.items():
+ if url:
+ utils.download(url, "download", name)
+ utils.extract_zst("download", APP_DIR)
+ utils.rm("download")
+
+
+appimagetool = os.path.join(RES_DIR, "appimagetool")
+
+if utils.user_confirm("Would you like to download the \
+latest AppImageTool? If you select No the existing one will be used."):
+ utils.download(APPIMAGETOOL_URL, appimagetool, "AppImageTool")
+ utils.make_executable(appimagetool)
+
+while True:
+ print("Running AppImageTool...")
+ print()
+ if not os.path.exists(OUT_DIR):
+ os.mkdir(OUT_DIR)
+
+ cmd = f"./{appimagetool} -n {APP_DIR} {OUT_DIR}/{main_pkg}-{ARCH}.AppImage"
+ utils.run_cmd(cmd)
+
+ time.sleep(5)
+ yn = utils.user_confirm("Would you like to re-build it?")
+ if not yn:
+ break
+
+if utils.user_confirm(f"Would you like to remove {APP_DIR}/"):
+ shutil.rmtree(APP_DIR)
+
+print("Exiting...")
\ No newline at end of file
diff --git a/config.py b/config.py
new file mode 100644
index 0000000..2e6ca62
--- /dev/null
+++ b/config.py
@@ -0,0 +1,16 @@
+import platform
+
+USE_AUR = True # set to False to disable AUR Support
+
+OUT_DIR = "out"
+APP_DIR = "AppDir"
+RES_DIR = "resources"
+
+ARCH = platform.machine()
+
+AUR_URL = f"https://cdn-mirror.chaotic.cx/chaotic-aur/{ARCH}"
+ARCH_URL = "https://archlinux.org/packages/{repo}/{arch}/{pkg}/download"
+ARCH_SEARCH_URL = "https://archlinux.org/packages/search/json/?name={pkg}"
+
+LDP_URL = "https://github.com/project-portable/libunionpreload/releases/download/amd64/libunionpreload.so"
+APPIMAGETOOL_URL = f"https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-{ARCH}.AppImage"
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..cfcefeb
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,4 @@
+inquirer==2.10.0
+requests==2.28.1
+rich==12.5.1
+zstandard==0.18.0
diff --git a/resources/AppRun b/resources/AppRun
new file mode 100644
index 0000000..dd148fa
--- /dev/null
+++ b/resources/AppRun
@@ -0,0 +1,14 @@
+#!/bin/sh
+SELF=$(readlink -f "$0")
+HERE=${SELF%/*}
+export PATH="${HERE}:${HERE}/usr/bin/:${HERE}/usr/sbin/:${HERE}/usr/games/:${HERE}/bin/:${HERE}/sbin/${PATH:+:$PATH}"
+export LD_LIBRARY_PATH="${HERE}/usr/lib/:${HERE}/usr/lib/i386-linux-gnu/:${HERE}/usr/lib/x86_64-linux-gnu/:${HERE}/usr/lib32/:${HERE}/usr/lib64/:${HERE}/lib/:${HERE}/lib/i386-linux-gnu/:${HERE}/lib/x86_64-linux-gnu/:${HERE}/lib32/:${HERE}/lib64/${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+export PYTHONPATH="${HERE}/usr/share/pyshared/${PYTHONPATH:+:$PYTHONPATH}"
+export MOZ_LEGACY_PROFILES=1 # Prevent per installation profiles
+DEFAULT_XDG_DATA_DIRS='./share/:/usr/share/gnome:/usr/local/share/:/usr/share/'
+export XDG_DATA_DIRS="${HERE}/usr/share/:${XDG_DATA_DIRS:-$DEFAULT_XDG_DATA_DIRS}"
+export PERLLIB="${HERE}/usr/share/perl5/:${HERE}/usr/lib/perl5/${PERLLIB:+:$PERLLIB}"
+export GSETTINGS_SCHEMA_DIR="${HERE}/usr/share/glib-2.0/schemas/${GSETTINGS_SCHEMA_DIR:+:$GSETTINGS_SCHEMA_DIR}"
+export QT_PLUGIN_PATH="${HERE}/usr/lib/qt4/plugins/:${HERE}/usr/lib/i386-linux-gnu/qt4/plugins/:${HERE}/usr/lib/x86_64-linux-gnu/qt4/plugins/:${HERE}/usr/lib32/qt4/plugins/:${HERE}/usr/lib64/qt4/plugins/:${HERE}/usr/lib/qt5/plugins/:${HERE}/usr/lib/i386-linux-gnu/qt5/plugins/:${HERE}/usr/lib/x86_64-linux-gnu/qt5/plugins/:${HERE}/usr/lib32/qt5/plugins/:${HERE}/usr/lib64/qt5/plugins/${QT_PLUGIN_PATH:+:$QT_PLUGIN_PATH}"
+EXEC=$(grep -e '^Exec=.*' "${HERE}"/*.desktop | head -n 1 | cut -d "=" -f 2 | cut -d " " -f 1)
+exec "${EXEC}" "$@"
diff --git a/resources/appimagetool b/resources/appimagetool
new file mode 100644
index 0000000000000000000000000000000000000000..365ed881814b7cd746d5e5565bce9de6bed8de08
GIT binary patch
literal 8164544
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