Update to PikaOS 4

This commit is contained in:
Ward from fusion-voyager-3 2024-07-24 00:34:32 +03:00
parent 4902dab285
commit dda75fe87d
14 changed files with 205 additions and 115 deletions

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

@ -0,0 +1,37 @@
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: Update APT Cache
run: apt-get update -y
- name: Build Package
run: ./mainv3.sh

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

@ -0,0 +1,37 @@
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: Update APT Cache
run: apt-get update -y
- 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: on:
workflow_dispatch workflow_dispatch
@ -7,7 +7,7 @@ jobs:
build: build:
runs-on: self-hosted runs-on: self-hosted
container: container:
image: ghcr.io/pikaos-linux/pika-package-container:latest image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
volumes: volumes:
- /proc:/proc - /proc:/proc
options: --privileged -it options: --privileged -it
@ -30,17 +30,11 @@ jobs:
known_hosts: ${{ secrets.KNOWN_HOSTS }} known_hosts: ${{ secrets.KNOWN_HOSTS }}
if_key_exists: replace if_key_exists: replace
- name: Update APT Cache
run: apt-get update -y
- name: Build Package - name: Build Package
run: ./main.sh run: ./mainv3.sh
- name: Release Package - name: Release Package
run: ./release.sh 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 }}

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

@ -0,0 +1,40 @@
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: Update APT Cache
run: apt-get update -y
- name: Build Package
run: ./mainv3.sh
- name: Release Package
run: ./release.sh

View File

@ -16,3 +16,12 @@ users = "0.11.0"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0" serde_json = "1.0"
reqwest = { version = "0.11", features = ["blocking"] } reqwest = { version = "0.11", features = ["blocking"] }
[profile.release]
lto = "fat"
debug = false
strip = true
opt-level = 3
panic = "abort"
codegen-units = 1

2
cargo-config-v3.toml Normal file
View File

@ -0,0 +1,2 @@
[build]
target = "x86-64-v3"

View File

@ -105,7 +105,7 @@ then
else else
if echo $pkg | grep -i nvidia if echo $pkg | grep -i nvidia
then then
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY bash -c "DEBIAN_FRONTEND=noninteractive apt update -y -o Dpkg::Options::='--force-confnew' && DEBIAN_FRONTEND=noninteractive apt purge nvidia-driver-* -y -o Dpkg::Options::='--force-confnew' && DEBIAN_FRONTEND=noninteractive apt install $pkg -y -o Dpkg::Options::='--force-confnew' && sudo DEBIAN_FRONTEND=noninteractive apt autoremove -y -o Dpkg::Options::='--force-confnew'" pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY bash -c "DEBIAN_FRONTEND=noninteractive apt update -y -o Dpkg::Options::='--force-confnew' && DEBIAN_FRONTEND=noninteractive apt purge nvidia-driver-* nvidia-open-driver-* -y -o Dpkg::Options::='--force-confnew' && DEBIAN_FRONTEND=noninteractive apt install $pkg -y -o Dpkg::Options::='--force-confnew' && sudo DEBIAN_FRONTEND=noninteractive apt autoremove -y -o Dpkg::Options::='--force-confnew'"
else else
if echo $pkg | grep -i mesa-hybrid if echo $pkg | grep -i mesa-hybrid
then then

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
pika-drivers (1.0.0-101pika1) pika; urgency=medium
* Update for PikaOS 4
-- Pika <root@pika.com> Wed, 11 Jan 2023 11:41:38 +0000
pika-drivers (1.0.0-100pika7) pikauwu; urgency=medium pika-drivers (1.0.0-100pika7) pikauwu; urgency=medium
* Nvidia 550 no longer experimental * Nvidia 550 no longer experimental

3
debian/control vendored
View File

@ -2,7 +2,8 @@ Source: pika-drivers
Section: admin Section: admin
Priority: optional Priority: optional
Maintainer: Pika <root@pika.com> Maintainer: Pika <root@pika.com>
Build-Depends: debhelper (>= 9), cargo, build-essential, Build-Depends: debhelper (>= 9),
build-essential,
debhelper, debhelper,
python3, python3,
meson, meson,

View File

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

View File

@ -98,54 +98,6 @@
}, },
{ {
"id": 12, "id": 12,
"driver": "nvidia-driver-525",
"icon": "nvidia",
"experimental": false,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 13,
"driver": "nvidia-driver-525-open",
"icon": "nvidia",
"experimental": true,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 14,
"driver": "nvidia-driver-535",
"icon": "nvidia",
"experimental": false,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 15,
"driver": "nvidia-driver-535-open",
"icon": "nvidia",
"experimental": true,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 16,
"driver": "nvidia-driver-545",
"icon": "nvidia",
"experimental": false,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 17,
"driver": "nvidia-driver-545-open",
"icon": "nvidia",
"experimental": true,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 18,
"driver": "nvidia-driver-550", "driver": "nvidia-driver-550",
"icon": "nvidia", "icon": "nvidia",
"experimental": false, "experimental": false,
@ -153,31 +105,7 @@
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia" "detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
}, },
{ {
"id": 19, "id": 13,
"driver": "nvidia-driver-550-open",
"icon": "nvidia",
"experimental": true,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 20,
"driver": "xone-dkms",
"icon": "input-gaming",
"experimental": false,
"removable": true,
"detection": "lsusb | grep -i xbox"
},
{
"id": 21,
"driver": "intel-gpu-compute",
"icon": "intel",
"experimental": false,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i intel"
},
{
"id": 22,
"driver": "nvidia-driver-555", "driver": "nvidia-driver-555",
"icon": "nvidia", "icon": "nvidia",
"experimental": false, "experimental": false,
@ -185,12 +113,36 @@
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia" "detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
}, },
{ {
"id": 23, "id": 14,
"driver": "nvidia-driver-555-open", "driver": "nvidia-driver-560",
"icon": "nvidia", "icon": "nvidia",
"experimental": true, "experimental": true,
"removable": true, "removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia" "detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 15,
"driver": "nvidia-open-driver-560",
"icon": "nvidia",
"experimental": true,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i nvidia"
},
{
"id": 16,
"driver": "xone-dkms",
"icon": "input-gaming",
"experimental": false,
"removable": true,
"detection": "lsusb | grep -i xbox"
},
{
"id": 17,
"driver": "intel-gpu-compute",
"icon": "intel",
"experimental": false,
"removable": true,
"detection": "lspci -D | grep -iE 'VGA|3D' | grep -i intel"
} }
] ]
} }

17
main.sh
View File

@ -1,17 +0,0 @@
# Clone Upstream
mkdir -p pika-drivers
cp -rvf ./* ./pika-drivers/
cd ./pika-drivers/
# Get build deps
apt-get build-dep ./ -y
apt-get install curl -y
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | CARGO_HOME=/root/.cargo sh -s -- -y
# Build package
dpkg-buildpackage --no-sign
# Move the debs to output
cd ../
mkdir -p ./output
mv ./*.deb ./output/

35
mainv3.sh Executable file
View File

@ -0,0 +1,35 @@
#! /bin/bash
set -e
VERSION="1.0.0"
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
mkdir -p pika-drivers
cp -rvf ./* ./pika-drivers/ || true
mkdir ./pika-drivers/.cargo
cp -vf ./cargo-config-v3.toml ./pika-drivers/.cargo/config.toml
cd ./pika-drivers/
# Get build deps
apt-get build-dep ./
apt-get install curl -y
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | CARGO_HOME=/root/.cargo sh -s -- -y
# Build package
LOGNAME=root dh_make --createorig -y -l -p pika-drivers_"$VERSION" || echo "dh-make: Ignoring Last Error"
dpkg-buildpackage --no-sign
# Move the debs to output
cd ../
mkdir -p ./output
mv ./*.deb ./output/

View File

@ -1,8 +1,2 @@
# send debs to server # send debs to server
rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/incoming/ rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/cockatiel-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:'