diff --git a/.github/workflows/build-canaryi386.yml b/.github/workflows/build-canaryi386.yml new file mode 100644 index 0000000..27c6068 --- /dev/null +++ b/.github/workflows/build-canaryi386.yml @@ -0,0 +1,34 @@ +name: PikaOS Package Build Only (Canary) (i386) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:canaryi386 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./maini386.sh diff --git a/.github/workflows/build-canaryv3.yml b/.github/workflows/build-canaryv3.yml new file mode 100644 index 0000000..61fbee7 --- /dev/null +++ b/.github/workflows/build-canaryv3.yml @@ -0,0 +1,34 @@ +name: PikaOS Package Build Only (Canary) (amd64-v3) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./mainv3.sh diff --git a/.github/workflows/build-nesti386.yml b/.github/workflows/build-nesti386.yml new file mode 100644 index 0000000..23022bf --- /dev/null +++ b/.github/workflows/build-nesti386.yml @@ -0,0 +1,34 @@ +name: PikaOS Package Build Only (i386) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:nesti386 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./maini386.sh diff --git a/.github/workflows/build-nestv3.yml b/.github/workflows/build-nestv3.yml new file mode 100644 index 0000000..0d013ba --- /dev/null +++ b/.github/workflows/build-nestv3.yml @@ -0,0 +1,34 @@ +name: PikaOS Package Build Only (amd64-v3) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:nestv3 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./mainv3.sh diff --git a/.github/workflows/release.yml b/.github/workflows/release-canaryi386.yml similarity index 59% rename from .github/workflows/release.yml rename to .github/workflows/release-canaryi386.yml index 9f6bbad..a4c3f5c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release-canaryi386.yml @@ -1,4 +1,4 @@ -name: PikaOS Package Release +name: PikaOS Package Build & Release (Canary) (i386) on: workflow_dispatch @@ -7,14 +7,14 @@ jobs: build: runs-on: self-hosted container: - image: ghcr.io/pikaos-linux/pika-package-container:latest + image: ghcr.io/pikaos-linux/pikaos-builder:canaryi386 volumes: - /proc:/proc options: --privileged -it steps: - uses: actions/checkout@v3 - + - name: Import GPG key id: import_gpg uses: crazy-max/ghaction-import-gpg@v5 @@ -30,20 +30,8 @@ jobs: known_hosts: ${{ secrets.KNOWN_HOSTS }} if_key_exists: replace - - name: Update apt cache - run: apt-get update - - name: Build Package - run: ./main.sh + run: ./maini386.sh - name: Release Package run: ./release.sh - - - name: Purge cache - uses: strrife/cloudflare-chunked-purge-action@master - env: - # Zone is required by both authentication methods - CLOUDFLARE_ZONE: ${{ secrets.CLOUDFLARE_ZONE }} - - CLOUDFLARE_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} - PURGE_URLS: ${{ vars.PURGE_URLS }} diff --git a/.github/workflows/release_i386.yml b/.github/workflows/release-canaryv3.yml similarity index 57% rename from .github/workflows/release_i386.yml rename to .github/workflows/release-canaryv3.yml index bc9cc2a..5b36604 100644 --- a/.github/workflows/release_i386.yml +++ b/.github/workflows/release-canaryv3.yml @@ -1,4 +1,4 @@ -name: PikaOS Package Release (i386) +name: PikaOS Package Build & Release (Canary) (amd64-v3) on: workflow_dispatch @@ -7,14 +7,14 @@ jobs: build: runs-on: self-hosted container: - image: ghcr.io/pikaos-linux/pika-i386-package-container:latest + image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3 volumes: - /proc:/proc options: --privileged -it steps: - uses: actions/checkout@v3 - + - name: Import GPG key id: import_gpg uses: crazy-max/ghaction-import-gpg@v5 @@ -29,21 +29,9 @@ jobs: name: id_rsa known_hosts: ${{ secrets.KNOWN_HOSTS }} if_key_exists: replace - - - name: Update apt cache - run: apt-get update - + - name: Build Package - run: chmod +x ./main32.sh && ./main32.sh + run: ./mainv3.sh - name: Release Package run: ./release.sh - - - name: Purge cache - uses: strrife/cloudflare-chunked-purge-action@master - env: - # Zone is required by both authentication methods - CLOUDFLARE_ZONE: ${{ secrets.CLOUDFLARE_ZONE }} - - CLOUDFLARE_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} - PURGE_URLS: ${{ vars.PURGE_URLS }} diff --git a/.github/workflows/release-nesti386.yml b/.github/workflows/release-nesti386.yml new file mode 100644 index 0000000..00292eb --- /dev/null +++ b/.github/workflows/release-nesti386.yml @@ -0,0 +1,37 @@ +name: PikaOS Package Build & Release (i386) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:nesti386 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./maini386.sh + + - name: Release Package + run: ./release.sh diff --git a/.github/workflows/release-nestv3.yml b/.github/workflows/release-nestv3.yml new file mode 100644 index 0000000..36a34fb --- /dev/null +++ b/.github/workflows/release-nestv3.yml @@ -0,0 +1,37 @@ +name: PikaOS Package Build & Release (amd64-v3) + +on: + workflow_dispatch + +jobs: + build: + runs-on: self-hosted + container: + image: ghcr.io/pikaos-linux/pikaos-builder:nestv3 + volumes: + - /proc:/proc + options: --privileged -it + + steps: + - uses: actions/checkout@v3 + + - name: Import GPG key + id: import_gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.PASSPHRASE }} + + - name: Install SSH key + uses: shimataro/ssh-key-action@v2 + with: + key: ${{ secrets.SSH_KEY }} + name: id_rsa + known_hosts: ${{ secrets.KNOWN_HOSTS }} + if_key_exists: replace + + - name: Build Package + run: ./mainv3.sh + + - name: Release Package + run: ./release.sh diff --git a/main.sh b/main.sh deleted file mode 100755 index 2ee76d0..0000000 --- a/main.sh +++ /dev/null @@ -1,17 +0,0 @@ -DEBIAN_FRONTEND=noninteractive - -# Clone Upstream -git clone https://github.com/elFarto/nvidia-vaapi-driver -b v0.0.10 -cp -rvf ./debian ./nvidia-vaapi-driver/ -cd ./nvidia-vaapi-driver - -# Get build deps -apt-get build-dep ./ -y - -# Build package -dpkg-buildpackage --no-sign - -# Move the debs to output -cd ../ -mkdir -p ./output -mv ./*.deb ./output/ diff --git a/main32.sh b/main32.sh deleted file mode 100644 index 262c73c..0000000 --- a/main32.sh +++ /dev/null @@ -1,17 +0,0 @@ -DEBIAN_FRONTEND=noninteractive - -# Clone Upstream -git clone https://github.com/elFarto/nvidia-vaapi-driver -b v0.0.10 -cp -rvf ./debian ./nvidia-vaapi-driver/ -cd ./nvidia-vaapi-driver - -# Get build deps -apt-get build-dep ./ -y - -# Build package -dpkg-buildpackage --no-sign - -# Move the debs to output -cd ../ -mkdir -p ./output -mv ./*.deb ./output/ \ No newline at end of file diff --git a/maini386.sh b/maini386.sh new file mode 100755 index 0000000..4cda01b --- /dev/null +++ b/maini386.sh @@ -0,0 +1,24 @@ +#! /bin/bash + +VERSION="0.0.12" + +export DEBIAN_FRONTEND="noninteractive" +export DEB_BUILD_OPTIONS="nocheck notest terse" +export DPKG_GENSYMBOLS_CHECK_LEVEL=0 + +# Clone Upstream +git clone https://github.com/elFarto/nvidia-vaapi-driver -b v"$VERSION" +cp -rvf ./debian ./nvidia-vaapi-driver/ +cd ./nvidia-vaapi-driver + +# Get build deps +apt-get build-dep ./ -y + +# Build package +LOGNAME=root dh_make --createorig -y -l -p nvidia-vaapi-driver_"$VERSION".git || echo "dh-make didn't go clean" +dpkg-buildpackage --no-sign + +# Move the debs to output +cd ../ +mkdir -p ./output +mv ./*.deb ./output/ diff --git a/mainv3.sh b/mainv3.sh new file mode 100755 index 0000000..e25b0db --- /dev/null +++ b/mainv3.sh @@ -0,0 +1,29 @@ +#! /bin/bash + +VERSION="0.0.12" + +export DEBIAN_FRONTEND="noninteractive" +export DEB_BUILD_MAINT_OPTIONS="optimize=+lto -march=x86-64-v3 -O3 -flto -fuse-linker-plugin -falign-functions=32" +export DEB_CFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto -fuse-linker-plugin -falign-functions=32" +export DEB_CPPFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto -fuse-linker-plugin -falign-functions=32" +export DEB_CXXFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto -fuse-linker-plugin -falign-functions=32" +export DEB_LDFLAGS_MAINT_APPEND="-march=x86-64-v3 -O3 -flto -fuse-linker-plugin -falign-functions=32" +export DEB_BUILD_OPTIONS="nocheck notest terse" +export DPKG_GENSYMBOLS_CHECK_LEVEL=0 + +# Clone Upstream +git clone https://github.com/elFarto/nvidia-vaapi-driver -b v"$VERSION" +cp -rvf ./debian ./nvidia-vaapi-driver/ +cd ./nvidia-vaapi-driver + +# Get build deps +apt-get build-dep ./ -y + +# Build package +LOGNAME=root dh_make --createorig -y -l -p nvidia-vaapi-driver_"$VERSION".git || echo "dh-make didn't go clean" +dpkg-buildpackage --no-sign + +# Move the debs to output +cd ../ +mkdir -p ./output +mv ./*.deb ./output/ diff --git a/release.sh b/release.sh index 1575255..1e45a35 100755 --- a/release.sh +++ b/release.sh @@ -1,8 +1,2 @@ # send debs to server -rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/incoming/ - -# add debs to repo -ssh ferreo@direct.pika-os.com 'aptly repo add -force-replace -remove-files pikauwu-main /srv/www/incoming/' - -# publish the repo -ssh ferreo@direct.pika-os.com 'aptly publish update -batch -skip-contents -force-overwrite pikauwu filesystem:pikarepo:' \ No newline at end of file +rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/cockatiel-incoming/⏎ \ No newline at end of file