diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml new file mode 100644 index 0000000..d41f645 --- /dev/null +++ b/.gitea/workflows/release.yml @@ -0,0 +1,25 @@ +name: Build and Push Image +on: [ push ] + +env: + USERNAME: ai + TAG: latest + IMAGE_NAME: ${{ gitea.repository }} + APP_TOKEN: ${{ secrets.APP_TOKEN }} + REGISTRY: localhost:8088 + +jobs: + release: + name: Release + runs-on: ubuntu-latest + container: + image: archlinux + options: --privileged + steps: + - name: Initialize + run: | + pacman -Syuu --noconfirm base-devel archiso docker git + docker pull syui/aios + docker tag syui/aios ${{ env.REGISTRY }}/${{ env.USERNAME }}/${{ env.IMAGE_NAME }}:latest + echo "${{ env.APP_TOKEN }}" | docker login ${{ env.REGISTRY }} -u syui --password-stdin + docker push ${{ env.REGISTRY }}/${{ env.USERNAME }}/${{ env.IMAGE_NAME }}:latest diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e7b4a71..8d1351b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,7 +28,7 @@ jobs: uses: actions/checkout@v4 - name: Initialize run: | - pacman -Syuu --noconfirm base-devel archiso docker git + pacman -Syuu --noconfirm base-devel archiso docker git nodejs git clone https://gitlab.archlinux.org/archlinux/archiso cp -rf ./cfg/profiledef.sh /usr/share/archiso/configs/releng/ cp -rf ./cfg/profiledef.sh ./archiso/configs/releng/profiledef.sh @@ -36,11 +36,14 @@ jobs: cp -rf ./scpt/mkarchiso ./archiso/archiso/mkarchiso ./archiso/archiso/mkarchiso -v -o ./ ./archiso/configs/releng/ tar xf aios-bootstrap*.tar.gz - echo -e 'Server = http://mirrors.cat.net/archlinux/$repo/os/$arch\nServer = https://geo.mirror.pkgbuild.com/$repo/os/$arch' >> ./root.x86_64/etc/pacman.d/mirrorlist + mkdir -p root.x86_64/var/lib/machines/arch + pacstrap -c root.x86_64/var/lib/machines/arch base + echo -e 'Server = http://mirrors.cat.net/archlinux/$repo/os/$arch + Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch' >> ./root.x86_64/etc/pacman.d/mirrorlist sed -i s/CheckSpace/#CheckeSpace/ root.x86_64/etc/pacman.conf arch-chroot root.x86_64 /bin/sh -c 'pacman-key --init' arch-chroot root.x86_64 /bin/sh -c 'pacman-key --populate archlinux' - arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq' + arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq go nodejs' arch-chroot root.x86_64 /bin/sh -c 'chsh -s /bin/zsh' arch-chroot root.x86_64 /bin/sh -c 'git clone https://git.syui.ai/ai/bot && cd bot && cargo build && cp -rf ./target/debug/ai /bin/ && ai ai' tar -zcvf aios-bootstrap.tar.gz root.x86_64/ @@ -66,3 +69,4 @@ jobs: tag_name: latest files: aios-bootstrap.tar.gz + diff --git a/archiso b/archiso deleted file mode 160000 index 1f65b69..0000000 --- a/archiso +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1f65b695d309d6089bdc2251bb4c9aa00bd11a51 diff --git a/archlinux-docker b/archlinux-docker deleted file mode 160000 index 98cd791..0000000 --- a/archlinux-docker +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 98cd79111dd530447f491d547d14f3c38e227e46 diff --git a/build.zsh b/build.zsh index 4b809b0..0853e2c 100755 --- a/build.zsh +++ b/build.zsh @@ -1,5 +1,5 @@ #!/bin/zsh -pacman -Syuu --noconfirm base-devel archiso docker git +pacman -Syuu --noconfirm base-devel archiso docker git nodejs git clone https://gitlab.archlinux.org/archlinux/archiso cp -rf ./cfg/profiledef.sh /usr/share/archiso/configs/releng/ cp -rf ./cfg/profiledef.sh ./archiso/configs/releng/profiledef.sh @@ -7,12 +7,14 @@ cp -rf ./cfg/profiledef.sh ./archiso/configs/baseline/profiledef.sh cp -rf ./scpt/mkarchiso ./archiso/archiso/mkarchiso ./archiso/archiso/mkarchiso -v -o ./ ./archiso/configs/releng/ tar xf aios-bootstrap*.tar.gz +mkdir -p root.x86_64/var/lib/machines/arch +pacstrap -c root.x86_64/var/lib/machines/arch base echo -e 'Server = http://mirrors.cat.net/archlinux/$repo/os/$arch Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch' >> ./root.x86_64/etc/pacman.d/mirrorlist sed -i s/CheckSpace/#CheckeSpace/ root.x86_64/etc/pacman.conf arch-chroot root.x86_64 /bin/sh -c 'pacman-key --init' arch-chroot root.x86_64 /bin/sh -c 'pacman-key --populate archlinux' -arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq' +arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq go nodejs' arch-chroot root.x86_64 /bin/sh -c 'chsh -s /bin/zsh' arch-chroot root.x86_64 /bin/sh -c 'git clone https://git.syui.ai/ai/bot && cd bot && cargo build && cp -rf ./target/debug/ai /bin/ && ai ai' tar -zcvf aios-bootstrap.tar.gz root.x86_64/ diff --git a/cfg/gh-actions.yml b/cfg/gh-actions.yml index f45bedc..8d1351b 100644 --- a/cfg/gh-actions.yml +++ b/cfg/gh-actions.yml @@ -28,7 +28,7 @@ jobs: uses: actions/checkout@v4 - name: Initialize run: | - pacman -Syuu --noconfirm base-devel archiso docker git + pacman -Syuu --noconfirm base-devel archiso docker git nodejs git clone https://gitlab.archlinux.org/archlinux/archiso cp -rf ./cfg/profiledef.sh /usr/share/archiso/configs/releng/ cp -rf ./cfg/profiledef.sh ./archiso/configs/releng/profiledef.sh @@ -43,7 +43,7 @@ jobs: sed -i s/CheckSpace/#CheckeSpace/ root.x86_64/etc/pacman.conf arch-chroot root.x86_64 /bin/sh -c 'pacman-key --init' arch-chroot root.x86_64 /bin/sh -c 'pacman-key --populate archlinux' - arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq' + arch-chroot root.x86_64 /bin/sh -c 'pacman -Syu --noconfirm base base-devel linux vim git zsh rust openssh openssl jq go nodejs' arch-chroot root.x86_64 /bin/sh -c 'chsh -s /bin/zsh' arch-chroot root.x86_64 /bin/sh -c 'git clone https://git.syui.ai/ai/bot && cd bot && cargo build && cp -rf ./target/debug/ai /bin/ && ai ai' tar -zcvf aios-bootstrap.tar.gz root.x86_64/