diff --git a/.github/workflows/build-rootfs-releases.yml b/.github/workflows/build-rootfs-releases.yml index f9b1564..504ff8e 100644 --- a/.github/workflows/build-rootfs-releases.yml +++ b/.github/workflows/build-rootfs-releases.yml @@ -1,7 +1,7 @@ name: Build and Release Droidspaces RootFS on: - push: + pull_request: branches: - main workflow_dispatch: @@ -10,8 +10,9 @@ on: description: 'Only update rootfs.json (skip build & release)' type: boolean default: false - schedule: - - cron: '0 0 * * 0' + +env: + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true jobs: setup: @@ -23,7 +24,7 @@ jobs: build_date: ${{ steps.prep.outputs.build_date }} steps: - name: Checkout Repository - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Find Build Templates id: find-templates @@ -52,7 +53,7 @@ jobs: template: ${{ fromJson(needs.setup.outputs.templates) }} steps: - name: Checkout Repository - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Build RootFS (${{ matrix.template }}) run: | @@ -61,7 +62,7 @@ jobs: ./build_rootfs-native.sh -i "${{ matrix.template }}.Dockerfile" -v "${{ needs.setup.outputs.build_id }}" - name: Upload Build Artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: ${{ matrix.template }}-rootfs path: "*.tar.xz" @@ -97,7 +98,7 @@ jobs: cp "$TARBALL" "$FINAL" - name: Upload Build Artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: ${{ matrix.name }}-rootfs path: "*.tar.xz" @@ -111,16 +112,16 @@ jobs: contents: write steps: - name: Checkout Repository - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Download All Artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: pattern: "*-rootfs" merge-multiple: true - name: Create Unified Release - uses: softprops/action-gh-release@v2 + uses: softprops/action-gh-release@v3 with: tag_name: ${{ needs.setup.outputs.build_id }} name: "Droidspaces RootFS ${{ needs.setup.outputs.build_id }}" @@ -162,7 +163,7 @@ jobs: contents: write steps: - name: Checkout Repository - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Update rootfs.json Registry run: python3 scripts/update_rootfs_json.py . diff --git a/.github/workflows/build-single-rootfs.yml b/.github/workflows/build-single-rootfs.yml new file mode 100644 index 0000000..e6344d9 --- /dev/null +++ b/.github/workflows/build-single-rootfs.yml @@ -0,0 +1,47 @@ +name: Build Single RootFS + +on: + workflow_dispatch: + inputs: + template: + description: '请选择要构建的模板' + required: true + type: choice + default: 'Ubuntu-24.04-Minimal' + options: + - Alpine-Minimal + - Alpine-base + - Arch-Minimal-Kernel-5.10-and-up + - Arch-base-Kernel-5.10-and-up + - AzureLinux-3.0-Minimal + - Debian-13-Minimal + - Debian-13-XFCE + - Debian-13-base + - OpenWrt-24.10-Minimal + - Ubuntu-22.04-Minimal + - Ubuntu-22.04-base + - Ubuntu-24.04-Minimal + - Ubuntu-24.04-XFCE + - Ubuntu-24.04-base + +env: + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true + +jobs: + build: + runs-on: ubuntu-24.04-arm + steps: + - name: Checkout Repository + uses: actions/checkout@v7 + + - name: Build RootFS (${{ inputs.template }}) + run: | + chmod +x build_rootfs-native.sh + ./build_rootfs-native.sh -i "${{ inputs.template }}.Dockerfile" -v "manual-$(date +%Y%m%d-%H%M%S)" + + - name: Upload Build Artifact + uses: actions/upload-artifact@v7 + with: + name: ${{ inputs.template }}-rootfs + path: "*.tar.xz" + retention-days: 7 diff --git a/.github/workflows/cleanup-old-assets.yml b/.github/workflows/cleanup-old-assets.yml index f5c5686..f079848 100644 --- a/.github/workflows/cleanup-old-assets.yml +++ b/.github/workflows/cleanup-old-assets.yml @@ -1,10 +1,11 @@ name: Cleanup Old Releases, Tags, and Workflow Runs on: - schedule: - - cron: '0 0 * * 0' workflow_dispatch: +env: + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true + jobs: cleanup: runs-on: ubuntu-latest @@ -13,7 +14,7 @@ jobs: actions: write steps: - name: Checkout Repository - uses: actions/checkout@v4 + uses: actions/checkout@v7 with: fetch-depth: 0 # Fetch all history and tags so git for-each-ref works correctly diff --git a/rootfs.json b/rootfs.json index 575bd9a..2e52876 100644 --- a/rootfs.json +++ b/rootfs.json @@ -5,11 +5,11 @@ "description": "Minimal Alpine Linux v3.23 rootfs with basic packages.", "architecture": "aarch64", "file": "Alpine-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Alpine-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "30539d9f7eda615aa3d9f882c2b64b70aff1004046a96e6699f2670880a8aab5", - "size_bytes": 10103740, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Alpine-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "fbe227ea54b342341dd7be504c46345c9ea8e160afa846fdcc71bf9bf409c60f", + "size_bytes": 10108132, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -18,11 +18,11 @@ "description": "Alpine Linux v3.23 rootfs with basic packages, development tools, Python, and Docker.", "architecture": "aarch64", "file": "Alpine-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Alpine-base-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "4cb3dc1a30aa350a16037704474c1dde98a596d0951e8f78629757593dc98d73", - "size_bytes": 234935396, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Alpine-base-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "8934a1718d2f8915891d481a13004f27dcad6a6f9c7b0473de2baa76745d4f63", + "size_bytes": 234948428, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -31,11 +31,11 @@ "description": "Minimal Arch Linux rootfs with basic packages. (Runs on Kernel 5.10 and above only).", "architecture": "aarch64", "file": "Arch-Minimal-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Arch-Minimal-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "2970f51fdf96b28c548d4aa84715f73ab8bbb1fe143725e857c0a00e3fb99116", - "size_bytes": 110380500, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Arch-Minimal-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "e50448776a51c51476cfce531765f19597ab809a090a7a656d28ba831f60c0dd", + "size_bytes": 110402180, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -44,11 +44,11 @@ "description": "Arch Linux rootfs with basic packages, development tools and Docker (Runs on Kernel 5.10 and above only).", "architecture": "aarch64", "file": "Arch-base-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Arch-base-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "09271fb9199e93afb40fd3e2606855350c508ad4ecf15aebabdba3a849d0587c", - "size_bytes": 353429768, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Arch-base-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "e87fdeb2c04e3314aa2929bc4b4103c3a646d4925dc7158b5023d4df4a3de056", + "size_bytes": 353793492, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -57,11 +57,11 @@ "description": "Minimal Debian 13 rootfs with basic packages.", "architecture": "aarch64", "file": "Debian-13-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Debian-13-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "4bfbbf10057aa13a7a36a47cd317464cf39b90a7bb694c15b7461ab4d127557c", - "size_bytes": 101281316, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Debian-13-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "8c9b78546b69c55bbb87ea15101d6d41de2018c7674579f84120198e960ea152", + "size_bytes": 101230720, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -70,11 +70,11 @@ "description": "Debian 13 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Debian-13-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Debian-13-base-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "48a7ca010f82d5a687b899fd68f5bcf6161578eb85694a725f06ad2c83246fa9", - "size_bytes": 346947484, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Debian-13-base-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "aa4452059b60ce436299619b9db4cb624e4788dad365de499b91aa16d3c6f889", + "size_bytes": 346966744, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -83,11 +83,11 @@ "description": "Debian 13 rootfs with basic packages, development tools, Docker, XFCE desktop environment.", "architecture": "aarch64", "file": "Debian-13-XFCE", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Debian-13-XFCE-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "b19d1df2d56779deada3ed6d6a8fd4c91c3f61c92c747363c9b13dfa39df94d6", - "size_bytes": 631612484, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Debian-13-XFCE-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "2bf4f98fd8fa1c7ce8381ceccb2ad7a759b26e925fa7c20a1308bb1922047250", + "size_bytes": 631715316, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -96,11 +96,11 @@ "description": "Minimal Ubuntu 22.04 rootfs with basic packages..", "architecture": "aarch64", "file": "Ubuntu-22.04-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Ubuntu-22.04-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "181afbc6d88f4af859784f123ae97556f3bd0e00578322ba47ac27b7c589f686", - "size_bytes": 70703760, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Ubuntu-22.04-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "496ccc6065eaf54ec9fe8b61f0cbbed95bb220b69cb7aa82766e37d0c9ce6339", + "size_bytes": 70661404, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -109,11 +109,11 @@ "description": "Ubuntu 22.04 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Ubuntu-22.04-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Ubuntu-22.04-base-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "e44b97541215e9c6545df882d6f38adb2d4545c32360f7f5c5484a8d40eb9bf7", - "size_bytes": 279131128, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Ubuntu-22.04-base-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "97e76177513eb57fdfefcb7989f61227fb09dd6eae674774136c998efd0739fc", + "size_bytes": 279056432, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -122,11 +122,11 @@ "description": "Minimal Ubuntu 24.04 rootfs with basic packages.", "architecture": "aarch64", "file": "Ubuntu-24.04-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Ubuntu-24.04-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "2e128e2500a44c24f0574f70d2145aa4c01a4e30134e846257678f37a4b298d2", - "size_bytes": 73975568, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Ubuntu-24.04-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "e445d85343bd605333b4b85726bb7cd65b31d71d18dd8b962bfab0dcc4d88148", + "size_bytes": 73991604, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -135,11 +135,11 @@ "description": "Ubuntu 24.04 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Ubuntu-24.04-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Ubuntu-24.04-base-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "3ddc20ef4763f6d06e5a02dd5afa9dc1d02dac2c81412bda0211c552959ad0d7", - "size_bytes": 302787688, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Ubuntu-24.04-base-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "ba5d68bde413c0da1dbb9cda5e3ebee414db0262fcc26f01a23e0ac8433156e6", + "size_bytes": 302801280, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -148,11 +148,11 @@ "description": "Ubuntu 24.04 rootfs with basic packages, development tools, Docker and XFCE desktop environment.", "architecture": "aarch64", "file": "Ubuntu-24.04-XFCE", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/Ubuntu-24.04-XFCE-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "a53fbdb9f16ccb78b43912a914b9ad00c653e1b8829d0fb68036bbddd3148877", - "size_bytes": 567085172, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/Ubuntu-24.04-XFCE-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "8ff0fd41d2d2559c2abed276aaa469f38d02791df295bd261226164cecc2d395", + "size_bytes": 567099520, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -161,11 +161,11 @@ "description": "Minimal NixOS rootfs with basic packages with basic packages and latest Systemd. (Runs on Kernel 5.10 and above only)", "architecture": "aarch64", "file": "NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", "sha256": "86ad472977de85f5ef1416c1627f7c59c01d72b9a0c68cd6da7d13ac2f238fec", "size_bytes": 204216116, - "version": "v20260621-044423", - "build_date": "20260621", + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -174,11 +174,11 @@ "description": "Minimal NixOS rootfs with basic packages with basic packages and Systemd v257.9.", "architecture": "aarch64", "file": "NixOS-Minimal-Systemd-v257.9", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/NixOS-Minimal-Systemd-v257.9-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/NixOS-Minimal-Systemd-v257.9-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", "sha256": "10e828cfb6bef064c19338cf1d45604a646d95a308d5df60d5d396e7f057b4ed", "size_bytes": 189369976, - "version": "v20260621-044423", - "build_date": "20260621", + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -187,11 +187,11 @@ "description": "Experimental Finix NixOS rootfs with basic packages.", "architecture": "aarch64", "file": "NixOS-Minimal-Finix-Experimental", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/NixOS-Minimal-Finix-Experimental-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/NixOS-Minimal-Finix-Experimental-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", "sha256": "0d0f41556630c96aa7d8006ec7ce0132c2867c27f11145e69ebbbf9f43b943db", "size_bytes": 285773576, - "version": "v20260621-044423", - "build_date": "20260621", + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -200,11 +200,11 @@ "description": "Azure Linux 3.0 rootfs with basic packages.", "architecture": "aarch64", "file": "AzureLinux-3.0-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/AzureLinux-3.0-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "fd462b7af625024bce76013528c3b347a888fb1ca8eb9dadd2f18fecabb31511", - "size_bytes": 86475628, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/AzureLinux-3.0-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "8a8f069a271a459ccfb59f8f02d1e7eef3e9a6563c4806aa2c160b34655651c6", + "size_bytes": 86516740, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" }, { @@ -213,11 +213,11 @@ "description": "Minimal OpenWrt 24.10 router rootfs built for Android kernels: nftables/fw4 stripped out in favor of iptables-legacy + fw3, with full firewall (NAT, zones, masquerade) working. Tuned for VirtualAP's managed-hotspot (container) mode.", "architecture": "aarch64", "file": "OpenWrt-24.10-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260621-044423/OpenWrt-24.10-Minimal-Droidspaces-rootfs-aarch64-20260621-v20260621-044423.tar.xz", - "sha256": "d7fe40e51542f7f9c99a8db45fb71a44d3109ee9d0668daf3239e7b3174c25cb", - "size_bytes": 2989372, - "version": "v20260621-044423", - "build_date": "20260621", + "download_url": "https://github.com/fvgfgtxdeujv/Droidspaces-rootfs-builder/releases/download/v20260623-022951/OpenWrt-24.10-Minimal-Droidspaces-rootfs-aarch64-20260623-v20260623-022951.tar.xz", + "sha256": "908c4a2bf5e22d0bee48ec6a62b8ce2fd694be970a811e56e7704163574f369d", + "size_bytes": 2990948, + "version": "v20260623-022951", + "build_date": "20260623", "author": "Droidspaces developers" } ]