add github builder

This commit is contained in:
Ward Nakchbandi 2023-02-25 13:14:27 +03:00
parent c16a6073a2
commit 4cb8b93d6e
11 changed files with 93 additions and 14 deletions

40
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,40 @@
name: PikaOS Package Release
on:
workflow_dispatch
jobs:
build:
runs-on: self-hosted
container:
image: ubuntu:22.10
volumes:
- /proc:/proc
options: --privileged -it
steps:
- uses: actions/checkout@v3
- name: Install needed packages
run: apt update && apt install software-properties-common sudo git bc gpg gpg-agent bison build-essential ccache cpio fakeroot flex git kmod libelf-dev libncurses5-dev libssl-dev lz4 qtbase5-dev rsync schedtool wget zstd tar reprepro dpkg-sig devscripts -y
- 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: ./main.sh
- name: Release Package
run: ./release.sh

19
main.sh Executable file
View File

@ -0,0 +1,19 @@
# Add dependent repositories
wget -q -O - https://ppa.pika-os.com/key.gpg | sudo apt-key add -
add-apt-repository https://ppa.pika-os.com
add-apt-repository ppa:pikaos/pika
add-apt-repository ppa:kubuntu-ppa/backports
# Clone Upstream
cd ./pika-sources
# Get build deps
apt-get build-dep ./ -y
# Build package
dh_make --createorig
dpkg-buildpackage
# Move the debs to output
cd ../
mkdir -p ./output
mv ./*.deb ./output/

View File

@ -1,3 +1,9 @@
pika-sources (4.0-99pika1) kinetic; urgency=low
* Move to new repos
-- Ward Nakchbandi <hotrod.master@hotmail.com> Sat, 01 Oct 2022 14:50:00 +0200
pika-sources (3.0-99pika18) kinetic; urgency=low pika-sources (3.0-99pika18) kinetic; urgency=low
* Fix breakages * Fix breakages

View File

@ -1,11 +1,11 @@
# Base OS Priority Override # PikaOS Launchpad Priority Override
Package: * Package: *
Pin: release o=LP-PPA-pikaos-baseos Pin: release o=LP-PPA-pikaos-pika
Pin-Priority: 1000 Pin-Priority: 1000
# Multimedia Priority Override # PikaOS APT Priority Override
Package: * Package: *
Pin: release o=LP-PPA-pikaos-multimedia Pin: release o=ppa.pika-os.com
Pin-Priority: 1000 Pin-Priority: 1000
# Mesa Priority Override # Mesa Priority Override

View File

@ -1,7 +1,7 @@
X-Repolib-Name: Official AMDGPU Sources X-Repolib-Name: Official AMDGPU Sources
Enabled: yes Enabled: yes
Types: deb deb-src Types: deb deb-src
URIs: https://repo.radeon.com/amdgpu/5.4.1/ubuntu URIs: https://repo.radeon.com/amdgpu/5.4.3/ubuntu
Suites: jammy Suites: jammy
Components: main proprietary Components: main proprietary
Signed-By: /usr/share/keyrings/rocm-keyring.gpg.key Signed-By: /usr/share/keyrings/rocm-keyring.gpg.key

View File

@ -1,7 +1,7 @@
X-Repolib-Name: PikaOS BaseOS Sources X-Repolib-Name: PikaOS APT Sources
Enabled: yes Enabled: yes
Types: deb deb-src Types: deb deb-src
URIs: https://ppa.launchpadcontent.net/pikaos/baseos/ubuntu URIs: https://ppa.pika-os.com/
Suites: kinetic Suites: kinetic
Components: main Components: main
Signed-By: /usr/share/keyrings/pika-keyring.gpg.key Signed-By: /usr/share/keyrings/pika-keyring.gpg.key

View File

@ -0,0 +1,7 @@
X-Repolib-Name: PikaOS Launchpad Sources
Enabled: yes
Types: deb deb-src
URIs: https://ppa.launchpadcontent.net/pikaos/pika/ubuntu
Suites: kinetic
Components: main
Signed-By: /usr/share/keyrings/pika-ppa-keyring.gpg.key

View File

@ -1,7 +0,0 @@
X-Repolib-Name: PikaOS Multimedia Sources
Enabled: yes
Types: deb deb-src
URIs: https://ppa.launchpadcontent.net/pikaos/multimedia/ubuntu
Suites: kinetic
Components: main
Signed-By: /usr/share/keyrings/pika-keyring.gpg.key

14
release.sh Executable file
View File

@ -0,0 +1,14 @@
# Sign the packages
dpkg-sig --sign builder ./output/pika-sources*.deb
# Pull down existing ppa repo db files etc
rsync -azP --exclude '*.deb' ferreo@direct.pika-os.com:/srv/www/pikappa/ ./output/repo
# Remove our existing package from the repo
reprepro -V --basedir ./output/repo/ removefilter kinetic 'Package (% pika-sources*)'
# Add the new package to the repo
reprepro -V --basedir ./output/repo/ includedeb kinetic ./output/pika-sources*.deb
# Push the updated ppa repo to the server
rsync -azP ./output/repo/ ferreo@direct.pika-os.com:/srv/www/pikappa/