part 1: PikaOS 4

This commit is contained in:
Ward from fusion-voyager-3 2024-07-23 02:07:12 +03:00
parent 399045f559
commit 7e174541de
10 changed files with 147 additions and 42 deletions

34
.github/workflows/build-canaryv3.yml vendored Normal file
View File

@ -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

34
.github/workflows/build-nestv3.yml vendored Normal file
View File

@ -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

View File

@ -1,4 +1,4 @@
name: PikaOS Package Release
name: PikaOS Package Build & Release (Canary) (amd64-v3)
on:
workflow_dispatch
@ -7,7 +7,7 @@ jobs:
build:
runs-on: self-hosted
container:
image: ghcr.io/pikaos-linux/pika-package-container:latest
image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
volumes:
- /proc:/proc
options: --privileged -it
@ -31,16 +31,7 @@ jobs:
if_key_exists: replace
- name: Build Package
run: ./main.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 }}

37
.github/workflows/release-nestv3.yml vendored Normal file
View File

@ -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

15
main.sh
View File

@ -1,15 +0,0 @@
#! /bin/bash
# Clone Upstream
cd ./pika-meta
# 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/

27
mainv3.sh Executable file
View File

@ -0,0 +1,27 @@
#! /bin/bash
set -e
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
cd ./pika-meta
# Get build deps
apt-get build-dep ./ -y
# Build package
LOGNAME=root dh_make --createorig -y -l -p pika-meta_4.0 || echo "dh-make didn't go clean"
dpkg-buildpackage --no-sign
# Move the debs to output
cd ../
mkdir -p ./output
mv ./*.deb ./output/

View File

@ -1,3 +1,9 @@
pika-meta (11:4.0-101pika1) pika; urgency=medium
* PikaOS 4
-- Ward Nakchbandi <hotrod.master@hotmail.com> Thu, 12 Jan 2023 16:48:00 +0300
pika-meta (10:3.7-100pika3) pikauwu; urgency=medium
* PikaUwU

View File

@ -15,14 +15,12 @@ Depends: ${misc:Depends},
gdebi,
repoman,
pikman,
Conflicts: update-manager
Description: A Meta package to install pika's collection of package management software.
Package: pika-gameutils-meta
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends},
flatpak,
pika-codecs-meta,
i965-va-driver,
intel-media-va-driver-non-free,
@ -47,8 +45,6 @@ Depends: ${misc:Depends},
vkbasalt:i386,
mangohud,
mangohud:i386,
gamemode,
libgamemodeauto0:i386,
intel-media-va-driver-non-free:i386,
goverlay,
gamescope-session,
@ -59,7 +55,6 @@ Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends},
ffmpeg,
ffmpeg5,
libavcodec60:i386,
libavdevice60:i386,
libavfilter9:i386,
@ -100,7 +95,7 @@ Depends: ${misc:Depends},
heif-thumbnailer
Recommends:
gnome-sushi
Description: A Meta package to install pika's collection of codec software.
Description: A Meta package to install pika's collection of Multi-media Codecs.
Package: pika-rocm-meta
Architecture: all
@ -130,11 +125,13 @@ Depends: ${misc:Depends},
libreoffice-writer,
libreoffice-gnome,
libreoffice-ogltrans,
Description: A Meta package to install pika's collection of Office software.
Description: A Meta package to install pika's collection of LibreOffice software.
Package: pika-gameutils-meta-extra
Architecture: all
Pre-Depends: flatpak
Depends: ${misc:Depends},
flatpak,
pika-gameutils-meta
Description: A Meta package to Extend pika's collection of gaming software.

View File

@ -1 +1 @@
3.0 (native)
3.0 (quilt)

View File

@ -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:'
rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/cockatiel-incoming/