diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml new file mode 100644 index 00000000..a53297c1 --- /dev/null +++ b/.github/workflows/build-test.yml @@ -0,0 +1,150 @@ +name: Run tests + +on: + workflow_call: +env: + APPIMAGE_BUILDER_REMOTE_REPO_OWNER: ${{ github.repository_owner }} + +jobs: + pytest-ubuntu-container: + name: Run tests on Ubuntu 24.04 (Docker) + runs-on: ubuntu-24.04 + container: ubuntu:24.04 + steps: + - name: Install dependencies + run: | + apt-get -y update + apt-get install -y fakeroot python3-pip python3-venv lsb-release binutils patchelf git + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Set up a virtualenv + run: | + python3 -m venv .venv + - name: Install appimage-builder and run tests + run: | + . .venv/bin/activate + pip install pytest + pip install -e .[dev] + pytest tests + + pytest-archlinux: + name: Run tests on ArchLinux (Docker) + runs-on: ubuntu-24.04 + container: archlinux + steps: + - name: Install dependencies + run: pacman -Syu --noconfirm python-pip binutils patchelf fakeroot lsb-release strace patchelf git + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Set up a virtualenv + run: | + python3 -m venv .venv + - name: Install appimage-builder and run tests + run: | + . .venv/bin/activate + pip install pytest + pip install -e .[dev] + pytest tests + + pytest-ubuntu-runner: + name: Run tests on Ubuntu 24.04 with python 3.13. + runs-on: ubuntu-24.04 + steps: + - name: Install dependencies + run: | + sudo apt-get -y update + sudo apt-get install -y fakeroot lsb-release binutils patchelf git + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Clear Python cache + run: | + sudo rm -rf /__t/Python + - name: Install python + uses: actions/setup-python@v5 + with: + python-version: '3.13' + cache: 'pip' + - name: Install appimage-builder and run tests + run: | + pip install pytest + pip install -e .[dev] + python3 -m pytest tests + + build-pack-bash: + runs-on: ubuntu-24.04 + needs: [ pytest-ubuntu-container, pytest-ubuntu-runner, pytest-archlinux ] + steps: + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y patchelf desktop-file-utils libgdk-pixbuf2.0-dev fakeroot strace git lsb-release python3-build python3-setuptools adwaita-icon-theme + sudo wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage -O /usr/local/bin/appimagetool + sudo chmod +x /usr/local/bin/appimagetool + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Build Python Wheel + run: | + cd ${{ github.workspace }} + python3 -m build + - name: Install appimage-builder + run: | + pip install --ignore-installed --user --break-system-packages . + - name: Build AppImage + run: | + cd ${{ github.workspace }}/recipes/appimage-builder + export APPIMAGE_BUILDER_VERSION=$(appimage-builder --version | head -1 | cut -f 2 -d" ") + echo "APPIMAGE_BUILDER_VERSION=${APPIMAGE_BUILDER_VERSION}" >> $GITHUB_ENV + appimage-builder --skip-test + - name: Pack bash + run: | + # build bash + BUILDER_PATH=$(find $PWD -name appimage-builder-*.AppImage) + chmod +x "$BUILDER_PATH" + cd ${{ github.workspace }}/recipes/bash/ + "$BUILDER_PATH" --skip-test + - name: Test bash + run: | + cd ${{ github.workspace }}/recipes/bash/ + ./bash*.AppImage --appimage-extract-and-run -c "echo Hello World" + - name: Build AppImage (DEBUG runtime) + run: | + cd ${{ github.workspace }}/recipes/appimage-builder + appimage-builder --skip-test --recipe ./AppImageBuilder-debug.yml + - name: Compress Assets + run: | + cd ${{ github.workspace }}/recipes/appimage-builder + tar -cvf appimage-builder_x86_64-AppImage.tar ${{ github.workspace }}/recipes/appimage-builder/*x86_64.AppImage* + tar -cvf appimage-builder_x86_64-AppImage-DEBUG.tar ${{ github.workspace }}/recipes/appimage-builder/*-DEBUG.AppImage* + tar -cvf ${{ github.workspace }}/appimage-builder_python-dist.tar -C ${{ github.workspace }}/dist . + - name: Upload AppImageBuilder AppImage + uses: actions/upload-artifact@v4 + with: + name: appimage-builder.AppImage + path: '${{ github.workspace }}/recipes/appimage-builder/appimage-builder_x86_64-AppImage.tar' + retention-days: 7 + - name: Upload AppImageBuilder Debug AppImage + uses: actions/upload-artifact@v4 + with: + name: appimage-builder-DEBUG.AppImage + path: '${{ github.workspace }}/recipes/appimage-builder/appimage-builder_x86_64-AppImage-DEBUG.tar' + retention-days: 7 + - name: Upload AppImageBuilder Python dist + uses: actions/upload-artifact@v4 + with: + name: appimage-builder-pydist + path: '${{ github.workspace }}/appimage-builder_python-dist.tar' + retention-days: 7 + - name: Upload Bash AppImage + uses: actions/upload-artifact@v4 + with: + name: bash.AppImage + path: '${{ github.workspace }}/recipes/bash/*.AppImage*' + retention-days: 7 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..981a46f4 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,14 @@ +name: "CI Build" + +on: + pull_request: + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build-and-test: + name: "Build and test" + uses: ./.github/workflows/build-test.yml \ No newline at end of file diff --git a/.github/workflows/continuous-builds.yml b/.github/workflows/continuous-builds.yml deleted file mode 100644 index a13c927e..00000000 --- a/.github/workflows/continuous-builds.yml +++ /dev/null @@ -1,112 +0,0 @@ -# This workflows will upload a Python Package using Twine when a release is created -# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries - -name: Continuous Builds - -on: - push: - branches: - - '**' - tags: - - '!**' - -jobs: - pytest-ubuntu-focal: - runs-on: ubuntu-latest - container: ubuntu:22.04 - steps: - - name: Install dependencies - run: | - apt-get update - apt-get install -y python3.11 python3-pip python3-pytest fakeroot binutils patchelf git - - uses: actions/checkout@v3 - - name: Install appimage-builder - run: | - git config --global --add safe.directory $PWD - git fetch --prune --unshallow - python3 -m pip install -e .[dev] - - name: Run pytest - run: python3 -m unittest - - pytest-archlinux: - runs-on: ubuntu-latest - container: archlinux - steps: - - name: Install dependencies - run: pacman -Syu --noconfirm python-pip python-pytest python-setuptools binutils patchelf fakeroot strace patchelf git - - uses: actions/checkout@v3 - - name: Install appimage-builder - run: | - git config --global --add safe.directory $PWD - git fetch --prune --unshallow - python3 -m pip install -e .[dev] - - name: Run pytest - run: python3 -m unittest - - build: - runs-on: ubuntu-latest - needs: [ pytest-ubuntu-focal, pytest-archlinux ] - steps: - - name: Install dependencies - run: | - sudo apt install -y python3.11-minimal python3-pip python3-setuptools patchelf desktop-file-utils libgdk-pixbuf2.0-dev fakeroot strace git - sudo wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage -O /usr/local/bin/appimagetool - sudo chmod +x /usr/local/bin/appimagetool - - uses: actions/checkout@v3 - - name: Install appimage-builder - run: | - git config --global --add safe.directory $PWD - git fetch --prune --unshallow - sudo python3.11 -m pip install . - - name: Build AppImage - run: | - cd recipes/appimage-builder - export APPIMAGE_BUILDER_VERSION=$(appimage-builder --version | head -1 | cut -f 2 -d" ") - appimage-builder --skip-test - - name: Upload Artifacts - uses: actions/upload-artifact@v2.1.4 - with: - name: appimage-builder - path: 'recipes/appimage-builder/appimage-builder*.AppImage*' - test-pack-bash: - runs-on: ubuntu-latest - needs: build - steps: - - uses: actions/checkout@v3 - - name: Download AppImage from build job - uses: actions/download-artifact@v2 - with: - name: appimage-builder - - name: Install dependencies - run: | - sudo apt install -y adwaita-icon-theme - - name: Pack bash - run: | - # build bash - BUILDER_PATH=$(find $PWD -name appimage-builder-*.AppImage) - chmod +x "$BUILDER_PATH" - cd recipes/bash/ - "$BUILDER_PATH" --skip-test - - name: Test bash - run: | - recipes/bash/*.AppImage --appimage-extract-and-run -c "echo Hello World" - - name: Upload Artifacts - uses: actions/upload-artifact@v2.1.4 - with: - name: bash - path: 'recipes/bash/*.AppImage*' - publish: - runs-on: ubuntu-latest - needs: test-pack-bash - if: github.ref == 'refs/heads/main' - steps: - - name: Download AppImage from build job - uses: actions/download-artifact@v2 - with: - name: appimage-builder - - uses: "marvinpinto/action-automatic-releases@latest" - with: - repo_token: "${{ secrets.GITHUB_TOKEN }}" - prerelease: true - automatic_release_tag: Continuous - files: 'appimage-builder*.AppImage*' diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml new file mode 100644 index 00000000..c7384db3 --- /dev/null +++ b/.github/workflows/pre-release.yml @@ -0,0 +1,36 @@ +name: "Pre-release" + +on: + push: + branches: + - "main" + workflow_dispatch: + +jobs: + build: + name: "Run Build and Test Matrix" + uses: ./.github/workflows/build-test.yml + + publish: + name: "Publish Pre-release" + runs-on: ubuntu-latest + needs: build + steps: + - name: Download all build artifacts from build job + uses: actions/download-artifact@v4 + with: + pattern: "appimage-builder*" + path: "${{ github.workspace }}/release-assets" + merge-multiple: true + - name: Look at downloaded assets + run: | + ls -l "${{ github.workspace }}/" + ls -l "${{ github.workspace }}/release-assets/" + - name: Create 'continuous' Pre-release + uses: softprops/action-gh-release@v2 + with: + files: "${{ github.workspace }}/release-assets/*" + tag_name: "continuous" + name: "Continuous Build (Pre-release)" + body: "This is a continuous build which may be unstable." + prerelease: true diff --git a/.github/workflows/stable-releases.yml b/.github/workflows/stable-releases.yml index be135c07..83ca3316 100644 --- a/.github/workflows/stable-releases.yml +++ b/.github/workflows/stable-releases.yml @@ -1,95 +1,37 @@ -# This workflows will upload a Python Package using Twine when a release is created -# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries - -name: Release builds +name: "Tagged Release" on: push: tags: - - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 + - "v*" + workflow_dispatch: jobs: build: - runs-on: ubuntu-latest - steps: - - name: Install dependencies - run: | - sudo apt install -y python3.8-minimal python3-pip python3-setuptools patchelf desktop-file-utils libgdk-pixbuf2.0-dev fakeroot strace git - sudo wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage -O /usr/local/bin/appimagetool - sudo chmod +x /usr/local/bin/appimagetool - - uses: actions/checkout@v3 - - name: Install appimage-builder - run: | - git config --global --add safe.directory $PWD - git fetch --prune --unshallow - sudo python3.8 -m pip install . - - name: Build AppImage - run: | - cd recipes/appimage-builder - export APPIMAGE_BUILDER_VERSION=$(appimage-builder --version | head -1 | cut -f 2 -d" ") - appimage-builder --skip-test - - name: Upload Artifacts - uses: actions/upload-artifact@v2.1.4 - with: - name: appimage-builder - path: 'recipes/appimage-builder/appimage-builder*.AppImage*' - test: + name: "Run Build and Test Matrix" + uses: ./.github/workflows/build-test.yml + + publish: + name: "Publish Tagged Release" runs-on: ubuntu-latest needs: build steps: - - uses: actions/checkout@v3 - - name: Download AppImage from build job - uses: actions/download-artifact@v2 + - name: Download all build artifacts from build job + uses: actions/download-artifact@v4 with: - name: appimage-builder - - name: Install dependencies - run: | - sudo apt install -y adwaita-icon-theme - - name: Pack bash - run: | - # build bash - BUILDER_PATH=$(find $PWD -name appimage-builder-*.AppImage) - chmod +x "$BUILDER_PATH" - cd recipes/bash/ - "$BUILDER_PATH" --skip-test - - name: Test bash - run: | - recipes/bash/*.AppImage --appimage-extract-and-run -c "echo Hello World" - - name: Upload Artifacts - uses: actions/upload-artifact@v2.1.4 - with: - name: bash - path: 'recipes/bash/*.AppImage*' - publish-appimage: - runs-on: ubuntu-20.04 - needs: test - steps: - - name: Download AppImage from build job - uses: actions/download-artifact@v2 - with: - name: appimage-builder - - uses: "marvinpinto/action-automatic-releases@latest" + pattern: "appimage-builder*-pydist" + path: release-assets + merge-multiple: true + + - name: Create GitHub Release + uses: softprops/action-gh-release@v2 with: - repo_token: "${{ secrets.GITHUB_TOKEN }}" + files: release-assets/* prerelease: false - files: 'appimage-builder*.AppImage*' - publish-python-wheel: - runs-on: ubuntu-latest - needs: test - steps: - - uses: actions/checkout@v2 - - name: Set up Python - uses: actions/setup-python@v1 - with: - python-version: '3.x' - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install setuptools wheel twine - - name: Build and publish + - name: Publish wheel env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} run: | - python setup.py sdist bdist_wheel - twine upload dist/* + sudo apt-get -y install python3-twine + twine upload release-assets/* diff --git a/appimagebuilder/__main__.py b/appimagebuilder/__main__.py index 48cc8390..42b763d6 100755 --- a/appimagebuilder/__main__.py +++ b/appimagebuilder/__main__.py @@ -19,6 +19,8 @@ from appimagebuilder.modules.generate.command_generate import CommandGenerate from appimagebuilder.invoker import Invoker from appimagebuilder.orchestrator import Orchestrator +from os import environ +from sys import version_info def __main__(): @@ -37,6 +39,8 @@ def __main__(): exit(0) recipe_loader = recipe.Loader() + environ["APPIMAGE_BUILDER_PY_VERSION"] = rf"{version_info.major}.{version_info.minor}" + environ["APPIMAGE_BUILDER_REMOTE_REPO_OWNER"] = environ.get("APPIMAGE_BUILDER_REMOTE_REPO_OWNER","AppImageCrafters").lower() raw_recipe_data = recipe_loader.load(args.recipe) recipe_roamer = recipe.Roamer(raw_recipe_data) diff --git a/appimagebuilder/commands/setup_runtime.py b/appimagebuilder/commands/setup_runtime.py index 5341aeca..38e9a66d 100644 --- a/appimagebuilder/commands/setup_runtime.py +++ b/appimagebuilder/commands/setup_runtime.py @@ -28,14 +28,15 @@ def id(self): def __call__(self, *args, **kwargs): apprun_version = self.context.recipe.AppDir.runtime.version() or "v2.0.0" - apprun_version = version.parse(apprun_version) + if apprun_version != "continuous": + apprun_version = version.parse(apprun_version) runtime_setup = None - if ( + if (apprun_version != "continuous" and version.parse("v2.0.0") <= apprun_version < version.parse("v3.0.0") - ) or apprun_version == version.parse("continuous"): + ) or apprun_version == "continuous": runtime_setup = AppRunV2Setup(self.context, self._finder) - if not runtime_setup and version.parse("v3.0.0-devel") <= apprun_version < version.parse("v4.0.0"): + if not runtime_setup and apprun_version != "continuous" and version.parse("v3.0.0-devel") <= apprun_version < version.parse("v4.0.0"): runtime_setup = AppRunV3Setup(self.context) if not runtime_setup: diff --git a/appimagebuilder/modules/deploy/pacman/venv.py b/appimagebuilder/modules/deploy/pacman/venv.py index f247d860..603e145a 100644 --- a/appimagebuilder/modules/deploy/pacman/venv.py +++ b/appimagebuilder/modules/deploy/pacman/venv.py @@ -224,7 +224,7 @@ def _run_command( # need to split the command into args _proc = subprocess.Popen( - shlex.split(command), stdout=stdout, stdin=sys.stdin, stderr=sys.stderr + shlex.split(command), stdout=stdout, stdin=subprocess.PIPE, stderr=sys.stderr ) if wait_for_completion: diff --git a/appimagebuilder/modules/generate/recipe_generator.py b/appimagebuilder/modules/generate/recipe_generator.py index 5bece795..dc95eebc 100644 --- a/appimagebuilder/modules/generate/recipe_generator.py +++ b/appimagebuilder/modules/generate/recipe_generator.py @@ -100,7 +100,7 @@ def _generate_v1_recipe(self, bundle_info, sections): }, "AppImage": { "arch": bundle_info.runtime_arch, - "comp": bundle_info.compression, + "comp": bundle_info.compression or "None", "update-information": bundle_info.update_string }, } diff --git a/appimagebuilder/modules/generate/recipe_sections/test_section_generator.py b/appimagebuilder/modules/generate/recipe_sections/test_section_generator.py index 139295bf..58f857de 100644 --- a/appimagebuilder/modules/generate/recipe_sections/test_section_generator.py +++ b/appimagebuilder/modules/generate/recipe_sections/test_section_generator.py @@ -9,16 +9,17 @@ # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. - +from os import environ class TestSectionGenerator: def __init__(self): + remote_repo = environ["APPIMAGE_BUILDER_REMOTE_REPO_OWNER"] self.docker_images = [ - "appimagecrafters/tests-env:fedora-30", - "appimagecrafters/tests-env:debian-stable", - "appimagecrafters/tests-env:archlinux-latest", - "appimagecrafters/tests-env:centos-7", - "appimagecrafters/tests-env:ubuntu-xenial", + f"{remote_repo}/tests-env:fedora-42", + f"{remote_repo}/tests-env:debian-bookworm", + f"{remote_repo}/tests-env:archlinux-latest", + f"{remote_repo}/tests-env:centos-10", + f"{remote_repo}/tests-env:ubuntu-noble", ] def generate(self): diff --git a/appimagebuilder/modules/prime/appimage_primer.py b/appimagebuilder/modules/prime/appimage_primer.py index 683c1b04..f3af11f4 100644 --- a/appimagebuilder/modules/prime/appimage_primer.py +++ b/appimagebuilder/modules/prime/appimage_primer.py @@ -87,11 +87,11 @@ def _make_squashfs(self, appdir: pathlib.Path): # I think this is better than hardcoding the supported compressions # If the team behind AppImageKit adds a new compression # we wouldn't need to update the code and release a new version just for a new compression method - comp = self.config.comp() or "xz" + comp = self.config.comp() or "None" if comp != "None": - command += [ "-comp", comp] + command += [ "-comp", self.config.comp()] else: - command += ["-noDataCompression"] + command += ["-noI","-noD","-noF","-noX"] self.logger.info("Creating squashfs from AppDir") self.logger.debug(" ".join(command)) diff --git a/appimagebuilder/modules/setup/apprun_2/apprun2.py b/appimagebuilder/modules/setup/apprun_2/apprun2.py index ffcee5dc..5730978c 100644 --- a/appimagebuilder/modules/setup/apprun_2/apprun2.py +++ b/appimagebuilder/modules/setup/apprun_2/apprun2.py @@ -81,7 +81,8 @@ def __init__(self, context: Context, finder: Finder): self.path_mappings_env: Final = "APPDIR_PATH_MAPPINGS" - parsed_version = version.parse(self.apprun_version) + if self.apprun_version != "continuous": + parsed_version = version.parse(self.apprun_version) if self.apprun_version != "continuous" and ( parsed_version < version.parse("v2.0.0") or parsed_version > version.parse("v3.0.0") @@ -93,6 +94,30 @@ def __init__(self, context: Context, finder: Finder): def setup(self): self.move_glibc_to_compat_runtime() + ubuntu_compat_linker_folder = self.compat_runtime_path / "lib64" + + if ubuntu_compat_linker_folder.exists(): + logging.info( + "Linker expected under %s for Ubuntu; path should be a symlink..." + % ubuntu_compat_linker_folder.__str__() + ) + if ubuntu_compat_linker_folder.is_file(): + logging.info("Unlinking file at %s" % ubuntu_compat_linker_folder.__str__()) + ubuntu_compat_linker_folder.unlink() + elif not ubuntu_compat_linker_folder.is_symlink() and ubuntu_compat_linker_folder.is_dir(): + logging.info("Removing directory at %s" % ubuntu_compat_linker_folder.__str__()) + shutil.rmtree(ubuntu_compat_linker_folder) + linker_folder = self.finder.find_one( + "*/x86_64-linux-gnu/ld-linux*.so*", [Finder.is_file, Finder.is_elf_shared_lib] + ).parent + logging.info(f"Found linker at: {linker_folder.__str__()}") + logging.info( + "Creating symlink to %s at %s" + % (linker_folder.relative_to(self.appdir_path), ubuntu_compat_linker_folder.__str__()) + ) + symlink_dest = linker_folder.relative_to(ubuntu_compat_linker_folder.parent) + ubuntu_compat_linker_folder.symlink_to(symlink_dest) + runtime_env = self._configure_runtime_environment() scanner = ExecutablesScanner(self.appdir_path, self.finder) diff --git a/appimagebuilder/modules/setup/apprun_binaries_resolver.py b/appimagebuilder/modules/setup/apprun_binaries_resolver.py index 6a33bedd..731d9937 100644 --- a/appimagebuilder/modules/setup/apprun_binaries_resolver.py +++ b/appimagebuilder/modules/setup/apprun_binaries_resolver.py @@ -26,6 +26,7 @@ import tarfile from pathlib import Path from urllib import request +from os import environ from appimagebuilder.modules.setup import apprun_utils @@ -90,8 +91,8 @@ def resolve_check_glibstdcpp_binary(self, arch): def _download_release_asset(self, asset, path): path.parent.mkdir(parents=True, exist_ok=True) - - url = "https://github.com/AppImageCrafters/AppRun/releases/download/%s/%s" % ( + url = "https://github.com/%s/AppRun/releases/download/%s/%s" % ( + environ.get("APPIMAGE_BUILDER_REMOTE_REPO_OWNER", "AppImageCrafters"), self.apprun_version, asset, ) diff --git a/appimagebuilder/orchestrator.py b/appimagebuilder/orchestrator.py index 50aaf4f8..a41ce89c 100644 --- a/appimagebuilder/orchestrator.py +++ b/appimagebuilder/orchestrator.py @@ -178,8 +178,7 @@ def _extract_v1_recipe_context(self, args, recipe): app_info=app_info, update_string=recipe.AppImage["update-information"]() or "guess", runtime_arch=recipe.AppImage.arch(), - compression=recipe.AppImage.comp() or "xz", - sign_key=recipe.AppImage["sign-key"]() or None, + compression=recipe.AppImage.comp() or "zstd", file_name=recipe.AppImage["file_name"] or None, ) return Context( diff --git a/appimagebuilder/recipe/loader.py b/appimagebuilder/recipe/loader.py index 4263ab7f..d75ebbbb 100644 --- a/appimagebuilder/recipe/loader.py +++ b/appimagebuilder/recipe/loader.py @@ -43,7 +43,7 @@ def __init__(self): self._tag = "!ENV" # pattern for global vars: look for ${word} - pattern = re.compile(".*?\${(\w+)}.*?") + pattern = re.compile(r".*?\${(\w+)}.*?") self._loader.add_implicit_resolver(self._tag, pattern, None) diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..079f98d7 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,44 @@ +[build-system] +requires = ["setuptools>=64", "setuptools-scm>=8"] +build-backend = "setuptools.build_meta" + +[project] +name = "appimage-builder" +dynamic = ["version"] +description = "Recipe based AppImage creation meta-tool" +readme = "README.md" +license = "MIT" +requires-python = ">=3.6" +authors = [ + { name = "Alexis Lopez Zubieta", email = "contact@azubieta.net" }, +] +dependencies = [ + "docker", + "emrichen", + "libconf", + "lief", + "packaging", + "pydpkg", + "python-gnupg", + "pyyaml>=5", + "questionary", + "requests", + "roam", + "ruamel.yaml", + "schema", + "urllib3", +] + +[project.scripts] +appimage-builder = "appimagebuilder.__main__:__main__" + +[project.urls] +"Bug Tracker" = "https://github.com/AppImageCrafters/appimage-builder/issues" +Documentation = "https://appimage-builder.readthedocs.io" +Homepage = "https://github.com/AppImageCrafters/appimage-builder" +"Source Code" = "https://github.com/AppImageCrafters/appimage-builder" + +[tool.setuptools_scm] + +[tool.setuptools] +packages = ["appimagebuilder", "tests"] \ No newline at end of file diff --git a/recipes/appimage-builder/AppImageBuilder-debug.yml b/recipes/appimage-builder/AppImageBuilder-debug.yml new file mode 100644 index 00000000..4dba5594 --- /dev/null +++ b/recipes/appimage-builder/AppImageBuilder-debug.yml @@ -0,0 +1,91 @@ +version: 1 +script: + # Remove any previous build + - rm -rf $TARGET_APPDIR || true + - mkdir -p $TARGET_APPDIR/usr/share/icons/hicolor/scalable/apps $TARGET_APPDIR/usr/bin $TARGET_APPDIR/opt "$BUILD_DIR" + - cp ../../resources/appimage-builder.svg $TARGET_APPDIR/usr/share/icons/hicolor/scalable/apps + - cp ../../resources/application-vnd.appimage.svg $TARGET_APPDIR/usr/share/icons/hicolor/scalable/apps + +AppDir: + app_info: + id: org.appimage-crafters.appimage-builder + name: appimage-builder + icon: appimage-builder + version: 'latest' + # Set the python executable as entry point + exec: usr/bin/python{{APPIMAGE_BUILDER_PY_VERSION}} + # Set the application main script path as argument. Use '$@' to forward CLI parameters + exec_args: "$APPDIR/usr/local/bin/appimage-builder $@" + + apt: + arch: amd64 + sources: + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' + + include: + - bash + - coreutils + - binutils + - util-linux + - file + - desktop-file-utils + - fakeroot + - libgdk-pixbuf2.0-dev + - patchelf + - python{{APPIMAGE_BUILDER_PY_VERSION}}-minimal + - squashfs-tools + - strace + - zsync + exclude: [] + + after_bundle: | + # configure tools + mkdir -p $TARGET_APPDIR/bin + pushd $TARGET_APPDIR/usr/bin/ + ln -sr ./fakeroot-sysv fakeroot + ln -sr ./bash sh + ln -sr ./sh $TARGET_APPDIR/bin/sh + + # install appimage-builder + popd + python3 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" ../../ + python3 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" certifi + + runtime: + debug: true + version: "continuous" + env: + # Set python home + # See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONHOME + PYTHONHOME: '${APPDIR}/usr' + # Path to the site-packages dir or other modules dirs + # See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONPATH + PYTHONPATH: '${APPDIR}/usr/lib/python{{APPIMAGE_BUILDER_PY_VERSION}}/site-packages' + # SSL Certificates are placed in a different location for every system therefore we ship our own copy + SSL_CERT_FILE: '${APPDIR}/usr/lib/python{{APPIMAGE_BUILDER_PY_VERSION}}/site-packages/certifi/cacert.pem' + + test: + fedora: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 + command: ./AppRun --help + debian: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm + command: ./AppRun --help + arch: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest + command: ./AppRun --help + centos: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 + command: ./AppRun --help + ubuntu: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble + command: ./AppRun --help + +AppImage: + file_name: "appimage-builder-{{APPIMAGE_BUILDER_VERSION}}-x86_64-DEBUG.AppImage" + update-information: 'gh-releases-zsync|AppImageCrafters|appimage-builder|latest|-*x86_64.AppImage.zsync' + sign-key: None + arch: x86_64 + comp: zstd diff --git a/recipes/appimage-builder/AppImageBuilder.yml b/recipes/appimage-builder/AppImageBuilder.yml index 2304b9b8..77b23fc4 100644 --- a/recipes/appimage-builder/AppImageBuilder.yml +++ b/recipes/appimage-builder/AppImageBuilder.yml @@ -13,16 +13,16 @@ AppDir: icon: appimage-builder version: 'latest' # Set the python executable as entry point - exec: usr/bin/python3 + exec: usr/bin/python{{APPIMAGE_BUILDER_PY_VERSION}} # Set the application main script path as argument. Use '$@' to forward CLI parameters - exec_args: "$APPDIR/usr/bin/appimage-builder $@" + exec_args: "$APPDIR/usr/local/bin/appimage-builder $@" apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - bash @@ -34,20 +34,24 @@ AppDir: - fakeroot - libgdk-pixbuf2.0-dev - patchelf - - python3.8 + - python{{APPIMAGE_BUILDER_PY_VERSION}}-minimal - squashfs-tools - strace - zsync exclude: [] after_bundle: | - # configure tools - ln -s fakeroot-sysv $TARGET_APPDIR/usr/bin/fakeroot - ln -s bash $TARGET_APPDIR/bin/sh + # configure tools + mkdir -p $TARGET_APPDIR/bin + pushd $TARGET_APPDIR/usr/bin/ + ln -sr ./fakeroot-sysv fakeroot + ln -sr ./bash sh + ln -sr ./sh $TARGET_APPDIR/bin/sh # install appimage-builder - python3.8 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" install ../../ - python3.8 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" install certifi + popd + python3 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" ../../ + python3 -m pip install --ignore-installed --prefix=/usr --root="$TARGET_APPDIR" certifi runtime: version: "continuous" @@ -57,25 +61,25 @@ AppDir: PYTHONHOME: '${APPDIR}/usr' # Path to the site-packages dir or other modules dirs # See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONPATH - PYTHONPATH: '${APPDIR}/usr/lib/python3.8/site-packages' + PYTHONPATH: '${APPDIR}/usr/lib/python{{APPIMAGE_BUILDER_PY_VERSION}}/site-packages' # SSL Certificates are placed in a different location for every system therefore we ship our own copy - SSL_CERT_FILE: '${APPDIR}/usr/lib/python3.8/site-packages/certifi/cacert.pem' + SSL_CERT_FILE: '${APPDIR}/usr/lib/python{{APPIMAGE_BUILDER_PY_VERSION}}/site-packages/certifi/cacert.pem' test: fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun --help debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun --help arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: ./AppRun --help centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun --help ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun --help AppImage: @@ -83,4 +87,4 @@ AppImage: update-information: 'gh-releases-zsync|AppImageCrafters|appimage-builder|latest|-*x86_64.AppImage.zsync' sign-key: None arch: x86_64 - + comp: zstd diff --git a/recipes/bash-files/AppImageBuilder.yml b/recipes/bash-files/AppImageBuilder.yml index a305b222..08694406 100644 --- a/recipes/bash-files/AppImageBuilder.yml +++ b/recipes/bash-files/AppImageBuilder.yml @@ -29,20 +29,20 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm before_command: "pwd" command: "./AppRun --version" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun --version" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun --version" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun --version" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun --version" diff --git a/recipes/bash-pacman/AppImageBuilder.yml b/recipes/bash-pacman/AppImageBuilder.yml index 7cc126d0..28680ab3 100644 --- a/recipes/bash-pacman/AppImageBuilder.yml +++ b/recipes/bash-pacman/AppImageBuilder.yml @@ -34,19 +34,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun --version" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun --version" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun --version" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun --version" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun --version" diff --git a/recipes/bash/AppImageBuilder.yml b/recipes/bash/AppImageBuilder.yml index 3684f3a2..ae9f6c6f 100644 --- a/recipes/bash/AppImageBuilder.yml +++ b/recipes/bash/AppImageBuilder.yml @@ -1,26 +1,24 @@ version: 1 script: - echo $PWD - - rm -rf $TARGET_APPDIR | true - mkdir -p $TARGET_APPDIR/bin - cp run_tests.sh $TARGET_APPDIR - cp -r tests $TARGET_APPDIR - - ln -s ../usr/bin/env $TARGET_APPDIR/tests/test_internal_binary_env - - ln -s /usr/bin/env $TARGET_APPDIR/tests/test_external_binary_env - - ln -s bash $TARGET_APPDIR/bin/nubash AppDir: app_info: id: org.gnu.bash - version: 4.4.20 + name: bash + version: 5.2.21 exec: bin/bash + exec_args: "$@" apt: arch: [ amd64, i386 ] allow_unauthenticated: true sources: - - sourceline: 'deb http://archive.ubuntu.com/ubuntu bionic main' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb http://archive.ubuntu.com/ubuntu noble main' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - bash @@ -30,6 +28,14 @@ AppDir: exclude: - libpcre3 + after_bundle: | + cd $TARGET_APPDIR + ln -sr usr/bin/env tests/test_internal_binary_env + ln -sr /usr/bin/env tests/test_external_binary_env + mkdir -p bin + ln -sr usr/bin/bash bin/bash + ln -sr bin/bash bin/nubash + files: exclude: - etc/** @@ -48,22 +54,22 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm before_command: "pwd" command: "./AppRun ./run_tests.sh" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun ./run_tests.sh" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun ./run_tests.sh" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun ./run_tests.sh" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun ./run_tests.sh" - AppImage: + comp: zstd arch: x86_64 diff --git a/recipes/bash/bash-apprun-v3.yml b/recipes/bash/bash-apprun-v3.yml index bc758ab4..ca32d56f 100644 --- a/recipes/bash/bash-apprun-v3.yml +++ b/recipes/bash/bash-apprun-v3.yml @@ -1,34 +1,40 @@ version: 1 script: - echo $PWD - - rm -rf $TARGET_APPDIR | true - mkdir -p $TARGET_APPDIR/bin - cp run_tests.sh $TARGET_APPDIR - cp -r tests $TARGET_APPDIR - - ln -s ../usr/bin/env $TARGET_APPDIR/tests/test_internal_binary_env - - ln -s /usr/bin/env $TARGET_APPDIR/tests/test_external_binary_env - - ln -s bash $TARGET_APPDIR/bin/nubash AppDir: app_info: id: org.gnu.bash - version: 4.4.20 + name: bash + version: 5.2.21 exec: bin/bash apt: arch: [ amd64, i386 ] allow_unauthenticated: true sources: - - sourceline: 'deb http://archive.ubuntu.com/ubuntu bionic main' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb http://archive.ubuntu.com/ubuntu noble main' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - bash - coreutils - libc6 - libc6:i386 + exclude: - libpcre3 + after_bundle: | + cd $TARGET_APPDIR + ln -sr usr/bin/env tests/test_internal_binary_env + ln -sr /usr/bin/env tests/test_external_binary_env + mkdir -p bin + ln -sr usr/bin/bash bin/bash + ln -sr bin/bash bin/nubash + files: exclude: - etc/** @@ -48,22 +54,23 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm before_command: "pwd" command: "./AppRun ./run_tests.sh" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun ./run_tests.sh" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun ./run_tests.sh" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun ./run_tests.sh" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun ./run_tests.sh" AppImage: + comp: zstd arch: x86_64 diff --git a/recipes/gimp/AppImageBuilder.yml b/recipes/gimp/AppImageBuilder.yml index 0b63af43..d33e9cbc 100644 --- a/recipes/gimp/AppImageBuilder.yml +++ b/recipes/gimp/AppImageBuilder.yml @@ -13,9 +13,9 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse' - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - coreutils @@ -103,16 +103,16 @@ AppDir: GEGL_PATH: $APPDIR/usr/lib/x86_64-linux-gnu/gegl-0.4 test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" AppImage: diff --git a/recipes/gnome-calculator/AppImageBuilder.yml b/recipes/gnome-calculator/AppImageBuilder.yml index 93727155..9ff06e60 100644 --- a/recipes/gnome-calculator/AppImageBuilder.yml +++ b/recipes/gnome-calculator/AppImageBuilder.yml @@ -13,8 +13,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - gnome-calculator @@ -41,19 +41,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" diff --git a/recipes/hello-world-gtk/AppImageBuilder.yml b/recipes/hello-world-gtk/AppImageBuilder.yml index ab377384..30acccae 100644 --- a/recipes/hello-world-gtk/AppImageBuilder.yml +++ b/recipes/hello-world-gtk/AppImageBuilder.yml @@ -17,8 +17,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - libgtk-3-0 @@ -45,21 +45,21 @@ AppDir: test: ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" env: LD_DEBUG: libs debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" diff --git a/recipes/hello-world-qt5/AppImageBuilder.yml b/recipes/hello-world-qt5/AppImageBuilder.yml index 933ef11b..1fb12c86 100644 --- a/recipes/hello-world-qt5/AppImageBuilder.yml +++ b/recipes/hello-world-qt5/AppImageBuilder.yml @@ -19,10 +19,10 @@ AppDir: - amd64 allow_unauthenticated: true sources: - - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse - - sourceline: deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse - - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse - - sourceline: deb http://archive.neon.kde.org/user focal main + - sourceline: deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse + - sourceline: deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse + - sourceline: deb http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse + - sourceline: deb http://archive.neon.kde.org/user noble main include: - libbz2-1.0 - libcom-err2 @@ -47,20 +47,20 @@ AppDir: - usr/share/doc/*/NEWS.* - usr/share/doc/*/TODO.* test: - fedora-30: - image: appimagecrafters/tests-env:fedora-30 + fedora-42: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun - debian-stable: - image: appimagecrafters/tests-env:debian-stable + debian-bookworm: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun archlinux-latest: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: ./AppRun - centos-7: - image: appimagecrafters/tests-env:centos-7 + centos-10: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun - ubuntu-xenial: - image: appimagecrafters/tests-env:ubuntu-xenial + ubuntu-noble: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun AppImage: arch: x86_64 diff --git a/recipes/hello-world-qt5/recipe-with-apprun-v3.yml b/recipes/hello-world-qt5/recipe-with-apprun-v3.yml index 06315d7d..0b1d711d 100644 --- a/recipes/hello-world-qt5/recipe-with-apprun-v3.yml +++ b/recipes/hello-world-qt5/recipe-with-apprun-v3.yml @@ -19,10 +19,10 @@ AppDir: - amd64 allow_unauthenticated: true sources: - - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse - - sourceline: deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse - - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse - - sourceline: deb http://archive.neon.kde.org/user focal main + - sourceline: deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse + - sourceline: deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse + - sourceline: deb http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse + - sourceline: deb http://archive.neon.kde.org/user noble main include: - libbz2-1.0 - libcom-err2 @@ -53,20 +53,20 @@ AppDir: version: v3.0.0-devel-1 debug: true test: - fedora-30: - image: appimagecrafters/tests-env:fedora-30 + fedora-42: + image: Lord-Kamina/tests-env:fedora-42 command: ./AppRun - debian-stable: - image: appimagecrafters/tests-env:debian-stable + debian-bookworm: + image: Lord-Kamina/tests-env:debian-bookworm command: ./AppRun archlinux-latest: - image: appimagecrafters/tests-env:archlinux-latest + image: Lord-Kamina/tests-env:archlinux-latest command: ./AppRun - centos-7: - image: appimagecrafters/tests-env:centos-7 + centos-10: + image: Lord-Kamina/tests-env:centos-10 command: ./AppRun - ubuntu-xenial: - image: appimagecrafters/tests-env:ubuntu-xenial + ubuntu-noble: + image: Lord-Kamina/tests-env:ubuntu-noble command: ./AppRun AppImage: arch: x86_64 diff --git a/recipes/hello-world-qt6/AppImageBuilder.yml b/recipes/hello-world-qt6/AppImageBuilder.yml index 26440987..3f01e708 100644 --- a/recipes/hello-world-qt6/AppImageBuilder.yml +++ b/recipes/hello-world-qt6/AppImageBuilder.yml @@ -20,10 +20,10 @@ AppDir: - amd64 allow_unauthenticated: true sources: - - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse - - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse - - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse - - sourceline: deb http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse + - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse + - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse + - sourceline: deb http://mx.archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse + - sourceline: deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse include: - libcap2:amd64 - libcom-err2:amd64 @@ -87,20 +87,20 @@ AppDir: # and the bundle may not work in such systems - strip --remove-section=.note.ABI-tag $TARGET_APPDIR/usr/lib/x86_64-linux-gnu/libQt6Core.so.6 test: - centos-7: - image: appimagecrafters/tests-env:centos-7 + centos-10: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun - fedora-30: - image: appimagecrafters/tests-env:fedora-30 + fedora-42: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun - ubuntu-xenial: - image: appimagecrafters/tests-env:ubuntu-bionic + ubuntu-noble: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun - debian-stable: - image: appimagecrafters/tests-env:debian-stable + debian-bookworm: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun archlinux-latest: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: ./AppRun diff --git a/recipes/kcalc-files/AppImageBuilder.yml b/recipes/kcalc-files/AppImageBuilder.yml index 4cdf0fee..7cc83edc 100644 --- a/recipes/kcalc-files/AppImageBuilder.yml +++ b/recipes/kcalc-files/AppImageBuilder.yml @@ -161,20 +161,20 @@ AppDir: runtime: version: v2.0.0-alpha test: - fedora-30: - image: appimagecrafters/tests-env:fedora-30 + fedora-42: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun - debian-stable: - image: appimagecrafters/tests-env:debian-stable + debian-bookworm: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun archlinux-latest: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: ./AppRun - centos-7: - image: appimagecrafters/tests-env:centos-7 + centos-10: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun - ubuntu-xenial: - image: appimagecrafters/tests-env:ubuntu-xenial + ubuntu-noble: + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun AppImage: arch: x86_64 diff --git a/recipes/kcalc-nbc/AppImageBuilder.yml b/recipes/kcalc-nbc/AppImageBuilder.yml index c6d52268..9cef1f25 100644 --- a/recipes/kcalc-nbc/AppImageBuilder.yml +++ b/recipes/kcalc-nbc/AppImageBuilder.yml @@ -15,7 +15,7 @@ AppDir: arch: amd64 sources: - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - kcalc @@ -42,19 +42,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" diff --git a/recipes/kcalc/AppImageBuilder.yml b/recipes/kcalc/AppImageBuilder.yml index e2b87c2a..cb367781 100644 --- a/recipes/kcalc/AppImageBuilder.yml +++ b/recipes/kcalc/AppImageBuilder.yml @@ -16,10 +16,10 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse' - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse' include: - kcalc @@ -46,19 +46,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" diff --git a/recipes/parole/AppImageBuilder.yml b/recipes/parole/AppImageBuilder.yml index f43cace2..7d1144f0 100644 --- a/recipes/parole/AppImageBuilder.yml +++ b/recipes/parole/AppImageBuilder.yml @@ -13,8 +13,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - parole @@ -42,19 +42,19 @@ AppDir: - usr/share/metainfo/org.kde.kcalc.appdata.xml test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "dbus-launch ./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "dbus-launch ./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "dbus-launch ./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "dbus-launch ./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "dbus-launch ./AppRun" AppImage: diff --git a/recipes/pyqt5/AppImageBuilder.yml b/recipes/pyqt5/AppImageBuilder.yml index 513c838f..e382eaca 100644 --- a/recipes/pyqt5/AppImageBuilder.yml +++ b/recipes/pyqt5/AppImageBuilder.yml @@ -24,8 +24,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - python3 @@ -48,19 +48,19 @@ AppDir: test: fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: ./AppRun centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun AppImage: diff --git a/recipes/python/AppImageBuilder.yml b/recipes/python/AppImageBuilder.yml index 9b532257..ad1d0630 100644 --- a/recipes/python/AppImageBuilder.yml +++ b/recipes/python/AppImageBuilder.yml @@ -20,8 +20,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - python3 @@ -35,19 +35,19 @@ AppDir: test: fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" diff --git a/recipes/qmlscene/AppImageBuilder.yml b/recipes/qmlscene/AppImageBuilder.yml index 879cb16d..6c851e46 100644 --- a/recipes/qmlscene/AppImageBuilder.yml +++ b/recipes/qmlscene/AppImageBuilder.yml @@ -16,10 +16,10 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://mx.archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse' - - sourceline: 'deb [arch=amd64] http://mx.archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' - - sourceline: 'deb http://archive.neon.kde.org/user bionic main' + - sourceline: 'deb [arch=amd64] http://mx.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://mx.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' + - sourceline: 'deb http://archive.neon.kde.org/user noble main' key_url: 'http://archive.neon.kde.org/public.key' include: @@ -65,19 +65,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" AppImage: diff --git a/recipes/tkinter/AppImageBuilder.yml b/recipes/tkinter/AppImageBuilder.yml index 3db38a74..474c384e 100644 --- a/recipes/tkinter/AppImageBuilder.yml +++ b/recipes/tkinter/AppImageBuilder.yml @@ -24,8 +24,8 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - libpng16-16 @@ -48,22 +48,22 @@ AppDir: APPDIR_LIBRARY_PATH: '${APPDIR}/usr/lib:${APPDIR}/usr/lib/x86_64-linux-gnu:${APPDIR}/lib/x86_64-linux-gnu' TCL_LIBRARY: '${APPDIR}/usr/share/tcltk/tcl8.6' TK_LIBRARY: '${APPDIR}/usr/lib/tcltk/x86_64-linux-gnu/tk8.6' - TKPATH: '{APPDIR}/usr/lib/tcltk/x86_64-linux-gnu/tk8.6' + TKPATH: '${APPDIR}/usr/lib/tcltk/x86_64-linux-gnu/tk8.6' test: arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "LD_DEBUG=libs ./AppRun 2>&1 | grep 'init: '" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: ./AppRun debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: ./AppRun centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: ./AppRun ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: ./AppRun AppImage: diff --git a/recipes/vlc/AppImageBuilder.yml b/recipes/vlc/AppImageBuilder.yml index d723b69d..eff20786 100644 --- a/recipes/vlc/AppImageBuilder.yml +++ b/recipes/vlc/AppImageBuilder.yml @@ -14,28 +14,28 @@ AppDir: apt: arch: amd64 sources: - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' - - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' + - sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' include: - vlc test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun" AppImage: diff --git a/recipes/wget/AppImageBuilder.yml b/recipes/wget/AppImageBuilder.yml index 1abda036..c2cefb85 100644 --- a/recipes/wget/AppImageBuilder.yml +++ b/recipes/wget/AppImageBuilder.yml @@ -14,7 +14,7 @@ AppDir: arch: !ENV ${TARGET_ARCH} sources: - sourceline: !ENV 'deb [arch=${TARGET_ARCH}] http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' include: - wget @@ -37,19 +37,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun --version" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun --version" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun --version" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun --version" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun --version" AppImage: diff --git a/recipes/wine/AppImageBuilder.yml b/recipes/wine/AppImageBuilder.yml index bc02bd08..11c97d96 100644 --- a/recipes/wine/AppImageBuilder.yml +++ b/recipes/wine/AppImageBuilder.yml @@ -11,11 +11,11 @@ AppDir: apt: arch: [amd64, i386] sources: - - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse' - - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse' - - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse' - key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32' - - sourceline: 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main' + - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse' + - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse' + - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse' + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c' + - sourceline: 'deb https://dl.winehq.org/wine-builds/ubuntu/ noble main' key_url: 'https://dl.winehq.org/wine-builds/winehq.key' include: @@ -38,19 +38,19 @@ AppDir: test: debian: - image: appimagecrafters/tests-env:debian-stable + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:debian-bookworm command: "./AppRun --version" centos: - image: appimagecrafters/tests-env:centos-7 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:centos-10 command: "./AppRun --version" arch: - image: appimagecrafters/tests-env:archlinux-latest + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:archlinux-latest command: "./AppRun --version" fedora: - image: appimagecrafters/tests-env:fedora-30 + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:fedora-42 command: "./AppRun --version" ubuntu: - image: appimagecrafters/tests-env:ubuntu-xenial + image: ${APPIMAGE_BUILDER_REMOTE_REPO_OWNER}/tests-env:ubuntu-noble command: "./AppRun --version" AppImage: diff --git a/requirements.txt b/requirements.txt index 62b67393..839b1491 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,42 +1,43 @@ arpy==2.3.0 -certifi==2023.7.22 -cffi==1.16.0 -charset-normalizer==3.3.0 -configparser==6.0.0 +certifi==2025.7.14 +cffi==1.17.1 +charset-normalizer==3.4.2 +configparser==7.2.0 contextlib2==21.6.0 -cryptography==42.0.4 -decorator==5.1.1 -distlib==0.3.7 -docker==6.1.3 +cryptography==45.0.5 +decorator==5.2.1 +distlib==0.4.0 +docker==7.1.0 emrichen==0.4.0 -filelock==3.12.4 -idna==3.4 +filelock==3.18.0 +idna==3.10 jsonpath-rw==1.4.0 libconf==2.0.1 -lief==0.12.2 -packaging==23.2 +lief==0.16.6 +packaging==25.0 PGPy==0.6.0 -pipenv==2023.10.3 -platformdirs==3.11.0 +pipenv==2025.0.4 +platformdirs==4.3.8 ply==3.11 -prompt-toolkit==3.0.36 +prompt_toolkit==3.0.51 pyaml==21.10.1 -pyasn1==0.5.0 -pycparser==2.21 -pydpkg==1.9.2 -PyMySQL==1.1.0 -python-gnupg==0.4.9 -PyYAML==6.0.1 -questionary==2.0.1 -requests==2.31.0 +pyasn1==0.6.1 +pycparser==2.22 +pydpkg==1.9.4 +PyMySQL==1.1.1 +python-gnupg==0.5.4 +PyYAML==6.0.2 +questionary==2.1.0 +requests==2.32.4 roam==0.3.1 -ruamel.yaml==0.17.35 -ruamel.yaml.clib==0.2.8 -schema==0.7.5 +ruamel.yaml==0.18.14 +ruamel.yaml.clib==0.2.12 +schema==0.7.7 +setuptools==80.9.0 shutils==0.1.0 -six==1.16.0 -urllib3==1.26.18 -virtualenv==20.24.5 -wcwidth==0.2.8 -websocket-client==1.6.4 -zstandard==0.19.0 +six==1.17.0 +urllib3==2.5.0 +virtualenv==20.32.0 +wcwidth==0.2.13 +websocket-client==1.8.0 +zstandard==0.23.0 diff --git a/setup.py b/setup.py deleted file mode 100644 index 0fa180d2..00000000 --- a/setup.py +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -# Copyright 2020 Alexis Lopez Zubieta -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. - -import setuptools - -with open("README.md", "r", encoding="utf-8") as fh: - long_description = fh.read() - -setuptools.setup( - name="appimage_builder", - use_scm_version=True, - setup_requires=["setuptools_scm"], - author="Alexis Lopez Zubieta", - author_email="contact@azubieta.net", - description="Recipe based AppImage creation meta-tool", - long_description=long_description, - long_description_content_type="text/markdown", - entry_points={ - "console_scripts": [ - "appimage-builder = appimagebuilder.__main__:__main__", - ] - }, - url="https://github.com/AppImageCrafters/appimage-builder", - project_urls={ - "Bug Tracker": "https://github.com/AppImageCrafters/appimage-builder/issues", - "Documentation": "https://appimage-builder.readthedocs.io", - "Source Code": "https://github.com/AppImageCrafters/appimage-builder", - }, - packages=setuptools.find_packages(), - classifiers=[ - "Programming Language :: Python :: 3", - "License :: OSI Approved :: MIT License", - ], - license="MIT", - install_requires=[ - "pyyaml>=5", - "docker", - "requests", - "schema", - "packaging", - "questionary", - "emrichen", - "ruamel.yaml", - "roam", - "urllib3", - "lief", - "python-gnupg", - "libconf", - "pydpkg", - ], - python_requires=">=3.6", - package_data={"": []}, - include_package_data=True, -) diff --git a/tests/modules/deploy/apt/test_deploy.py b/tests/modules/deploy/apt/test_deploy.py index 8efbe00a..8dbac238 100644 --- a/tests/modules/deploy/apt/test_deploy.py +++ b/tests/modules/deploy/apt/test_deploy.py @@ -29,8 +29,8 @@ def setUpClass(cls): cls.appdir_path = Path("/tmp/AppDir") cls.apt_venv = Venv( cls.venv_path, - ["deb [arch=amd64] http://deb.debian.org/debian/ bullseye main"], - ["https://ftp-master.debian.org/keys/archive-key-10.asc"], + ["deb [arch=amd64] http://deb.debian.org/debian/ bookworm main"], + ["https://ftp-master.debian.org/keys/archive-key-12.asc"], ["amd64"], ) diff --git a/tests/modules/deploy/apt/test_venv.py b/tests/modules/deploy/apt/test_venv.py index e1784baa..4dbc47c6 100644 --- a/tests/modules/deploy/apt/test_venv.py +++ b/tests/modules/deploy/apt/test_venv.py @@ -25,8 +25,8 @@ def setUpClass(cls): cls.venv_path = "/tmp/apt-venv" cls.apt_venv = Venv( cls.venv_path, - ["deb http://deb.debian.org/debian/ bullseye main"], - ["https://ftp-master.debian.org/keys/archive-key-10.asc"], + ["deb http://deb.debian.org/debian/ bookworm main"], + ["https://ftp-master.debian.org/keys/archive-key-12.asc"], ["amd64"], ) cls.apt_venv.update() diff --git a/tests/modules/generate/fake_package_repository_resolver.py b/tests/modules/generate/fake_package_repository_resolver.py index 8d199b44..13a4e01e 100644 --- a/tests/modules/generate/fake_package_repository_resolver.py +++ b/tests/modules/generate/fake_package_repository_resolver.py @@ -17,5 +17,5 @@ class FakePackageRepositoryResolver(PackageRepositoryResolver): def resolve_source_lines(self, packages) -> []: return [ - "deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse" + "deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" ] diff --git a/tests/modules/generate/test_apt_section_generator.py b/tests/modules/generate/test_apt_section_generator.py index e0c0e889..1dc1c439 100644 --- a/tests/modules/generate/test_apt_section_generator.py +++ b/tests/modules/generate/test_apt_section_generator.py @@ -54,7 +54,7 @@ def test_generate(self): "allow_unauthenticated": True, "sources": [ { - "sourceline": "deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse" + "sourceline": "deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" } ], "include": ["libc6:amd64"], diff --git a/tests/recipe/test_validator.py b/tests/recipe/test_validator.py index fe9bcee6..c9926564 100644 --- a/tests/recipe/test_validator.py +++ b/tests/recipe/test_validator.py @@ -92,8 +92,8 @@ def test_validate_apt(self): "arch": "i386", "sources": [ { - "sourceline": "deb [arch=i386] http://mx.archive.ubuntu.com/ubuntu/ bionic main", - "key_url": "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32", + "sourceline": "deb [arch=i386] http://mx.archive.ubuntu.com/ubuntu/ noble main", + "key_url": "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c", } ], "include": ["qmlscene"],