diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 8f854ac6..6c53bb83 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -64,34 +64,45 @@ jobs: getPatches "files/p3/patches" getTheme "files/p1/boot/grub" getOffline "files/p3/configs" - getBuildroot "latest" "br" + getBuildroot "latest" "brx" + echo "BR_XVERSION=${TAG}" >> $GITHUB_ENV + getBuildroot "stable" "brs" + echo "BR_SVERSION=${TAG}" >> $GITHUB_ENV + echo "BUILD_TIME=$(date +'%Y-%m-%d %H:%M')" >> $GITHUB_ENV echo "OK" # Build incremental - - name: Build image + - name: Build Image X run: | . scripts/func.sh + if [ -n "${VERSION}" ]; then + # Modify Source File + echo "${VERSION}x" >VERSION + echo "${VERSION}x" >files/p1/ARC-VERSION + sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}x'"/' -i files/initrd/opt/arc/include/consts.sh + fi + echo "Create Arc Image" - IMAGE_FILE="arc.img" + IMAGE_FILE="arc-x.img" gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" fdisk -l "${IMAGE_FILE}" LOOPX=$(sudo losetup -f) sudo losetup -P "${LOOPX}" "${IMAGE_FILE}" - echo "Mounting image file" + echo "Mounting Image File" mkdir -p "/tmp/p1" mkdir -p "/tmp/p3" sudo mount ${LOOPX}p1 "/tmp/p1" sudo mount ${LOOPX}p3 "/tmp/p3" - [ ! -f "br/bzImage-arc" ] || [ ! -f "br/initrd-arc" ] && return 1 + [ ! -f "brx/bzImage-arc" ] || [ ! -f "brx/initrd-arc" ] && return 1 echo "Repack initrd" - cp -f "br/bzImage-arc" "files/p3/bzImage-arc" - repackInitrd "br/initrd-arc" "files/initrd" "files/p3/initrd-arc" + cp -f "brx/bzImage-arc" "files/p3/bzImage-arc" + repackInitrd "brx/initrd-arc" "files/initrd" "files/p3/initrd-arc" echo "Copying files" sudo cp -Rf "files/p1/"* "/tmp/p1" @@ -106,39 +117,93 @@ jobs: sudo losetup --detach ${LOOPX} - #resizeImg "arc.img" "+1024M" "arc-2G.img" - #mv -f "arc-2G.img" "arc.img" - echo "Image Converter" - qemu-img convert arc.img -O vmdk -o adapter_type=lsilogic,compat6 arc-dyn.vmdk - qemu-img convert arc.img -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat,compat6 arc.vmdk - qemu-img convert arc.img -O vhdx -o subformat=dynamic arc.vhdx + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-x-dyn.vmdk + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-x.vmdk + qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-x.vhdx echo "Create Arc ova" - convertova "arc.img" "arc.ova" + convertova "${IMAGE_FILE}" "arc-x.ova" + + # Zip update and generate checksum + zip -9j update-x.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" + sha256sum update-x.zip >checksum-x.sha256 + + # Build incremental + - name: Build Image S + run: | + . scripts/func.sh + + if [ -n "${VERSION}" ]; then + # Modify Source File + echo "${VERSION}s" >VERSION + echo "${VERSION}s" >files/p1/ARC-VERSION + sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}s'"/' -i files/initrd/opt/arc/include/consts.sh + fi + + echo "Create Arc Image" + IMAGE_FILE="arc-s.img" + gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" + fdisk -l "${IMAGE_FILE}" + + LOOPX=$(sudo losetup -f) + sudo losetup -P "${LOOPX}" "${IMAGE_FILE}" + + echo "Mounting Image File" + mkdir -p "/tmp/p1" + mkdir -p "/tmp/p3" + sudo mount ${LOOPX}p1 "/tmp/p1" + sudo mount ${LOOPX}p3 "/tmp/p3" + + [ ! -f "brs/bzImage-arc" ] || [ ! -f "brs/initrd-arc" ] && return 1 + + echo "Repack initrd" + cp -f "brs/bzImage-arc" "files/p3/bzImage-arc" + repackInitrd "brs/initrd-arc" "files/initrd" "files/p3/initrd-arc" + + echo "Copying files" + sudo cp -Rf "files/p1/"* "/tmp/p1" + sudo cp -Rf "files/p3/"* "/tmp/p3" + sync + + echo "Unmount image file" + sudo umount "/tmp/p1" + sudo umount "/tmp/p3" + rmdir "/tmp/p1" + rmdir "/tmp/p3" + + sudo losetup --detach ${LOOPX} + + echo "Image Converter" + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-s-dyn.vmdk + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-s.vmdk + qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-s.vhdx + + echo "Create Arc ova" + convertova "${IMAGE_FILE}" "arc-s.ova" + + # Zip update and generate checksum + zip -9j update-s.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" + sha256sum update-s.zip >checksum-s.sha256 # Zip image and generate checksum - name: Pack run: | if [ -n "${{ env.VERSION }}" ]; then - zip -9 "arc-${{ env.VERSION }}.img.zip" arc.img - zip -9 "arc-${{ env.VERSION }}.vmdk-dyn.zip" arc-dyn.vmdk - zip -9 "arc-${{ env.VERSION }}.vmdk-flat.zip" arc.vmdk arc-flat.vmdk - zip -9 "arc-${{ env.VERSION }}.ova.zip" arc.ova - else - zip -9 "arc.img.zip" arc.img + # XBase + zip -9 "arc-x-${{ env.VERSION }}.img.zip" arc-x.img + zip -9 "arc-x-${{ env.VERSION }}.vmdk-dyn.zip" arc-x-dyn.vmdk + zip -9 "arc-x-${{ env.VERSION }}.vmdk-flat.zip" arc-x.vmdk arc-x-flat.vmdk + zip -9 "arc-x-${{ env.VERSION }}.vhdx.zip" arc-x.vhdx + zip -9 "arc-x-${{ env.VERSION }}.ova.zip" arc-x.ova + # SBase + zip -9 "arc-s-${{ env.VERSION }}.img.zip" arc-s.img + zip -9 "arc-s-${{ env.VERSION }}.vmdk-dyn.zip" arc-s-dyn.vmdk + zip -9 "arc-s-${{ env.VERSION }}.vmdk-flat.zip" arc-s.vmdk arc-s-flat.vmdk + zip -9 "arc-s-${{ env.VERSION }}.vhdx.zip" arc-s.vhdx + zip -9 "arc-s-${{ env.VERSION }}.ova.zip" arc-s.ova fi - zip -9j update.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" - - # Upload artifact - - name: Upload - if: success() && env.VERSION == '' - uses: actions/upload-artifact@v4 - with: - name: Images - path: | - update.zip - retention-days: 5 + echo "${{ inputs.update_version }}" >check.update # Publish a release if is a tag - name: Release @@ -147,7 +212,32 @@ jobs: with: tag: ${{ env.VERSION }} prerelease: true + makeLatest: ${{ inputs.latest }} allowUpdates: true + body: | + ### Information: + Notice: ${{ inputs.notice }} + Buildtime: ${{ env.BUILD_TIME }} + + - Full Changelog and Arc Patch (Decryption Key) can be found in my Discord. + - Version: + - X Version: Latest Buildroot System (incl. Hyper-V and XEN (still in testing)) + - S Version: Stable Buildroot System (For the most Systems) + + ### Versions: + Addons: ${{ env.ADDONSTAG }} + Configs: ${{ env.CONFIGSTAG }} + Modules: ${{ env.MODULESTAG }} + Patches: ${{ env.PATCHESTAG }} + Theme: ${{ env.THEMETAG }} + LKM: ${{ env.LKMTAG }} + Buildroot: + X Version: ${{ env.BR_XVERSION }} + S Version: ${{ env.BR_SVERSION }} artifacts: | - arc-*.zip - update.zip \ No newline at end of file + arcx-*.zip + update-x.zip + update-s.zip + checksum-x.sha256 + checksum-s.sha256 + check.update \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 764955d0..e80f253b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -80,13 +80,6 @@ jobs: echo "Version: ${VERSION}" echo "VERSION=${VERSION}" >> $GITHUB_ENV - if [ -n "${VERSION}" ]; then - # Modify Source File - echo "${VERSION}" >VERSION - echo "${VERSION}" >files/p1/ARC-VERSION - sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}'"/' -i files/initrd/opt/arc/include/consts.sh - fi - # Get extractor, LKM, Addons, Modules, Theme and Configs - name: Get extractor, LKM, Addons, Modules, Theme and Configs run: | @@ -105,19 +98,28 @@ jobs: getTheme "files/p1/boot/grub" echo "THEMETAG=${TAG}" >> $GITHUB_ENV getOffline "files/p3/configs" - getBuildroot "latest" "br" - echo "BR_VERSION=${TAG}" >> $GITHUB_ENV + getBuildroot "latest" "brx" + echo "BR_XVERSION=${TAG}" >> $GITHUB_ENV + getBuildroot "stable" "brs" + echo "BR_SVERSION=${TAG}" >> $GITHUB_ENV echo "BUILD_TIME=$(date +'%Y-%m-%d %H:%M')" >> $GITHUB_ENV echo "OK" # Build incremental - - name: Build Image New + - name: Build Image X run: | . scripts/func.sh + if [ -n "${VERSION}" ]; then + # Modify Source File + echo "${VERSION}x" >VERSION + echo "${VERSION}x" >files/p1/ARC-VERSION + sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}x'"/' -i files/initrd/opt/arc/include/consts.sh + fi + echo "Create Arc Image" - IMAGE_FILE="arc.img" + IMAGE_FILE="arc-x.img" gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" fdisk -l "${IMAGE_FILE}" @@ -130,11 +132,11 @@ jobs: sudo mount ${LOOPX}p1 "/tmp/p1" sudo mount ${LOOPX}p3 "/tmp/p3" - [ ! -f "br/bzImage-arc" ] || [ ! -f "br/initrd-arc" ] && return 1 + [ ! -f "brx/bzImage-arc" ] || [ ! -f "brx/initrd-arc" ] && return 1 echo "Repack initrd" - cp -f "br/bzImage-arc" "files/p3/bzImage-arc" - repackInitrd "br/initrd-arc" "files/initrd" "files/p3/initrd-arc" + cp -f "brx/bzImage-arc" "files/p3/bzImage-arc" + repackInitrd "brx/initrd-arc" "files/initrd" "files/p3/initrd-arc" echo "Copying files" sudo cp -Rf "files/p1/"* "/tmp/p1" @@ -150,27 +152,90 @@ jobs: sudo losetup --detach ${LOOPX} echo "Image Converter" - qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,compat6 arc-dyn.vmdk - qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat,compat6 arc.vmdk - qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc.vhdx + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-x-dyn.vmdk + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-x.vmdk + qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-x.vhdx echo "Create Arc ova" - convertova "arc.img" "arc.ova" + convertova "${IMAGE_FILE}" "arc-x.ova" # Zip update and generate checksum - zip -9j update.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" - sha256sum update.zip >checksum.sha256 + zip -9j update-x.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" + sha256sum update-x.zip >checksum-x.sha256 + + # Build incremental + - name: Build Image S + run: | + . scripts/func.sh + + if [ -n "${VERSION}" ]; then + # Modify Source File + echo "${VERSION}s" >VERSION + echo "${VERSION}s" >files/p1/ARC-VERSION + sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}s'"/' -i files/initrd/opt/arc/include/consts.sh + fi + + echo "Create Arc Image" + IMAGE_FILE="arc-s.img" + gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" + fdisk -l "${IMAGE_FILE}" + + LOOPX=$(sudo losetup -f) + sudo losetup -P "${LOOPX}" "${IMAGE_FILE}" + + echo "Mounting Image File" + mkdir -p "/tmp/p1" + mkdir -p "/tmp/p3" + sudo mount ${LOOPX}p1 "/tmp/p1" + sudo mount ${LOOPX}p3 "/tmp/p3" + + [ ! -f "brs/bzImage-arc" ] || [ ! -f "brs/initrd-arc" ] && return 1 + + echo "Repack initrd" + cp -f "brs/bzImage-arc" "files/p3/bzImage-arc" + repackInitrd "brs/initrd-arc" "files/initrd" "files/p3/initrd-arc" + + echo "Copying files" + sudo cp -Rf "files/p1/"* "/tmp/p1" + sudo cp -Rf "files/p3/"* "/tmp/p3" + sync + + echo "Unmount image file" + sudo umount "/tmp/p1" + sudo umount "/tmp/p3" + rmdir "/tmp/p1" + rmdir "/tmp/p3" + + sudo losetup --detach ${LOOPX} + + echo "Image Converter" + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-s-dyn.vmdk + qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-s.vmdk + qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-s.vhdx + + echo "Create Arc ova" + convertova "${IMAGE_FILE}" "arc-s.ova" + + # Zip update and generate checksum + zip -9j update-s.zip "files/p3/bzImage-arc" "files/p3/initrd-arc" "files/p1/ARC-VERSION" "files/p1/boot/grub/grub.cfg" + sha256sum update-s.zip >checksum-s.sha256 # Zip image and generate checksum - name: Pack run: | if [ -n "${{ env.VERSION }}" ]; then - # NBase - zip -9 "arc-${{ env.VERSION }}.img.zip" arc.img - zip -9 "arc-${{ env.VERSION }}.vmdk-dyn.zip" arc-dyn.vmdk - zip -9 "arc-${{ env.VERSION }}.vmdk-flat.zip" arc.vmdk arc-flat.vmdk - zip -9 "arc-${{ env.VERSION }}.vhdx.zip" arc.vhdx - zip -9 "arc-${{ env.VERSION }}.ova.zip" arc.ova + # XBase + zip -9 "arc-x-${{ env.VERSION }}.img.zip" arc-x.img + zip -9 "arc-x-${{ env.VERSION }}.vmdk-dyn.zip" arc-x-dyn.vmdk + zip -9 "arc-x-${{ env.VERSION }}.vmdk-flat.zip" arc-x.vmdk arc-x-flat.vmdk + zip -9 "arc-x-${{ env.VERSION }}.vhdx.zip" arc-x.vhdx + zip -9 "arc-x-${{ env.VERSION }}.ova.zip" arc-x.ova + # SBase + zip -9 "arc-s-${{ env.VERSION }}.img.zip" arc-s.img + zip -9 "arc-s-${{ env.VERSION }}.vmdk-dyn.zip" arc-s-dyn.vmdk + zip -9 "arc-s-${{ env.VERSION }}.vmdk-flat.zip" arc-s.vmdk arc-s-flat.vmdk + zip -9 "arc-s-${{ env.VERSION }}.vhdx.zip" arc-s.vhdx + zip -9 "arc-s-${{ env.VERSION }}.ova.zip" arc-s.ova fi echo "${{ inputs.update_version }}" >check.update @@ -187,7 +252,11 @@ jobs: ### Information: Notice: ${{ inputs.notice }} Buildtime: ${{ env.BUILD_TIME }} - Full Changelog and Arc Patch (Decryption Key) can be found in my Discord. + + - Full Changelog and Arc Patch (Decryption Key) can be found in my Discord. + - Version: + - X Version: Latest Buildroot System (incl. Hyper-V and XEN (still in testing)) + - S Version: Stable Buildroot System (For the most Systems) ### Versions: Addons: ${{ env.ADDONSTAG }} @@ -196,9 +265,13 @@ jobs: Patches: ${{ env.PATCHESTAG }} Theme: ${{ env.THEMETAG }} LKM: ${{ env.LKMTAG }} - Buildroot: ${{ env.BR_VERSION }} + Buildroot: + X Version: ${{ env.BR_XVERSION }} + S Version: ${{ env.BR_SVERSION }} artifacts: | - arc-*.zip - update.zip - checksum.sha256 + arcx-*.zip + update-x.zip + update-s.zip + checksum-x.sha256 + checksum-s.sha256 check.update diff --git a/img-gen.sh b/img-gen.sh index 51d6f5eb..e595d2a2 100755 --- a/img-gen.sh +++ b/img-gen.sh @@ -15,8 +15,54 @@ getConfigs "files/p3/configs" getPatches "files/p3/patches" getTheme "files/p1/boot/grub" getOffline "files/p3/configs" -getBuildroot "latest" "br" +getBuildroot "latest" "brx" +getBuildroot "stable" "brs" +# Xbase +IMAGE_FILE="arc-x.img" +gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" +fdisk -l "${IMAGE_FILE}" + +LOOPX=$(sudo losetup -f) +sudo losetup -P "${LOOPX}" "${IMAGE_FILE}" + +echo "Mounting Image File" +sudo rm -rf "/tmp/p1" +sudo rm -rf "/tmp/p3" +mkdir -p "/tmp/p1" +mkdir -p "/tmp/p3" +sudo mount ${LOOPX}p1 "/tmp/p1" +sudo mount ${LOOPX}p3 "/tmp/p3" + +[[ ! -f "brx/bzImage-arc" || ! -f "brx/initrd-arc" ]] && return 1 + +VERSION=$(date +'%y.%-m.dev') +echo "${VERSION}-x" >files/p1/ARC-VERSION +echo "${VERSION}-x" >VERSION +sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}-x'"/' -i files/initrd/opt/arc/include/consts.sh + +echo "Repack initrd" +cp -f "brx/bzImage-arc" "files/p3/bzImage-arc" +repackInitrd "brx/initrd-arc" "files/initrd" "files/p3/initrd-arc" + +echo "Copying files" +sudo cp -Rf "files/p1/"* "/tmp/p1" +sudo cp -Rf "files/p3/"* "/tmp/p3" +sync + +echo "Unmount image file" +sudo umount "/tmp/p1" +sudo umount "/tmp/p3" +rmdir "/tmp/p1" +rmdir "/tmp/p3" + +sudo losetup --detach ${LOOPX} + +qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-x-dyn.vmdk +qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-x.vmdk +qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-x.vhdx + +# Sbase IMAGE_FILE="arc.img" gzip -dc "files/initrd/opt/arc/grub.img.gz" >"${IMAGE_FILE}" fdisk -l "${IMAGE_FILE}" @@ -32,18 +78,16 @@ mkdir -p "/tmp/p3" sudo mount ${LOOPX}p1 "/tmp/p1" sudo mount ${LOOPX}p3 "/tmp/p3" -[[ ! -f "br/bzImage-arc" || ! -f "br/initrd-arc" ]] && return 1 +[[ ! -f "brs/bzImage-arc" || ! -f "brs/initrd-arc" ]] && return 1 VERSION=$(date +'%y.%-m.dev') -echo "${VERSION}" >files/p1/ARC-VERSION -echo "${VERSION}" >VERSION -sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}'"/' -i files/initrd/opt/arc/include/consts.sh - -# read -rp "Build: ${VERSION}? Press ENTER to continue" +echo "${VERSION}-s" >files/p1/ARC-VERSION +echo "${VERSION}-s" >VERSION +sed 's/^ARC_VERSION=.*/ARC_VERSION="'${VERSION}-s'"/' -i files/initrd/opt/arc/include/consts.sh echo "Repack initrd" -cp -f "br/bzImage-arc" "files/p3/bzImage-arc" -repackInitrd "br/initrd-arc" "files/initrd" "files/p3/initrd-arc" +cp -f "brs/bzImage-arc" "files/p3/bzImage-arc" +repackInitrd "brs/initrd-arc" "files/initrd" "files/p3/initrd-arc" echo "Copying files" sudo cp -Rf "files/p1/"* "/tmp/p1" @@ -58,9 +102,6 @@ rmdir "/tmp/p3" sudo losetup --detach ${LOOPX} -#resizeImg "arc.img" "+1024M" "arc-2G.img" -#mv -f "arc-2G.img" "arc.img" - -qemu-img convert arc.img -O vmdk -o adapter_type=lsilogic,compat6 arc-dyn.vmdk -qemu-img convert arc.img -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat,compat6 arc.vmdk -qemu-img convert arc.img -O vhdx -o subformat=dynamic arc.vhdx \ No newline at end of file +qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic arc-s-dyn.vmdk +qemu-img convert ${IMAGE_FILE} -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat arc-s.vmdk +qemu-img convert ${IMAGE_FILE} -O vhdx -o subformat=dynamic arc-s.vhdx \ No newline at end of file