gen-images.yml 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. name: Build noid images
  2. on:
  3. workflow_dispatch:
  4. jobs:
  5. build-iso:
  6. runs-on: ubuntu-latest
  7. container:
  8. image: ghcr.io/void-linux/void-mklive:20250116R1
  9. options: --privileged
  10. steps:
  11. - name: Install required packages
  12. run: |
  13. xbps-install -Syu xbps
  14. xbps-install -yu
  15. xbps-install -y git bash make cdrtools qemu-user-static liblz4 squashfs-tools xorriso xmlto python3 python3-Markdown
  16. - name: Clone void-mklive repository
  17. run: |
  18. git clone https://github.com/ndpm13/void-mklive.git
  19. cd void-mklive
  20. - name: Set up permissions
  21. run: |
  22. cd void-mklive
  23. chmod +x ./mkiso.sh
  24. chmod +x ./mklive.sh
  25. chmod +x ./mkrootfs.sh
  26. chmod +x ./installer.sh
  27. - name: Create output directory
  28. run: |
  29. mkdir -p /github/workspace/images
  30. - name: Build Noid Linux ISO
  31. run: |
  32. cd void-mklive
  33. yes | ./mkiso.sh -a x86_64 -b xfce -r "https://github.com/ndpm13/xbps-repo/releases/latest/download" -- -p "neovim alacritty starship brave" -I noid -C "live.autologin" -T "Noid Linux" -v "linux-lts" -o /github/workspace/images/noid.iso
  34. - name: Create release tag
  35. id: create_tag
  36. run: |
  37. # Get current date in YYYYMMDD format
  38. DATE=$(date +"%Y%m%d")
  39. echo "release_tag=noid-linux-${DATE}" >> $GITHUB_OUTPUT
  40. - name: Create GitHub Release
  41. id: create_release
  42. uses: softprops/action-gh-release@v1
  43. with:
  44. tag_name: ${{ steps.create_tag.outputs.release_tag }}
  45. name: Noid Linux Release ${{ steps.create_tag.outputs.release_tag }}
  46. body: |
  47. Noid Linux ISO Build
  48. - Based on Void Linux (XFCE)
  49. - Pre-installed packages: neovim, alacritty, starship, brave
  50. - Linux kernel: linux-lts
  51. files: /github/workspace/images/noid.iso
  52. draft: true
  53. prerelease: false
  54. env:
  55. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}