Compare commits
18 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
3ea22913dd | ||
|
3554a12458 | ||
|
2b1773e7ad | ||
|
d538bb63e1 | ||
|
d86181c04d | ||
|
98063af728 | ||
|
45e12a1184 | ||
|
62cb2266d0 | ||
|
7e5b7b4df6 | ||
|
0883e724d6 | ||
|
162fd971f9 | ||
|
b627ca9dd4 | ||
|
84902aa600 | ||
|
960482f1da | ||
|
49ebbbc7bc | ||
|
61490c3124 | ||
|
edcd46a17e | ||
|
a7d5db6afe |
1
.github/build-canary-v3
vendored
Normal file
1
.github/build-canary-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
8
|
1
.github/build-nest-v3
vendored
Normal file
1
.github/build-nest-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
1
|
1
.github/release-canary-v3
vendored
Normal file
1
.github/release-canary-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
10
|
1
.github/release-nest-v3
vendored
Normal file
1
.github/release-nest-v3
vendored
Normal file
@ -0,0 +1 @@
|
||||
1
|
37
.github/workflows/build-canaryv3.yml
vendored
Normal file
37
.github/workflows/build-canaryv3.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: PikaOS Package Build Only (Canary) (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/build-canary-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- 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: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
37
.github/workflows/build-nestv3.yml
vendored
Normal file
37
.github/workflows/build-nestv3.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: PikaOS Package Build Only (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/build-nest-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:nestv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- 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: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
40
.github/workflows/release-canaryv3.yml
vendored
Normal file
40
.github/workflows/release-canaryv3.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
name: PikaOS Package Build & Release (Canary) (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/release-canary-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:canaryv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- 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: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
||||
|
||||
- name: Release Package
|
||||
run: ./release.sh
|
40
.github/workflows/release-nestv3.yml
vendored
Normal file
40
.github/workflows/release-nestv3.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
name: PikaOS Package Build & Release (amd64-v3)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.github/release-nest-v3'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pikaos-builder:nestv3
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- 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: Set Build Config
|
||||
run: cp -vf ./pika-build-config/amd64-v3.sh ./pika-build-config.sh
|
||||
|
||||
- name: Build Package
|
||||
run: ./main.sh
|
||||
|
||||
- name: Release Package
|
||||
run: ./release.sh
|
46
.github/workflows/release.yml
vendored
46
.github/workflows/release.yml
vendored
@ -1,46 +0,0 @@
|
||||
name: PikaOS Package Release
|
||||
|
||||
on:
|
||||
workflow_dispatch
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: self-hosted
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pika-package-container:latest
|
||||
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: ./main.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 }}
|
@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
MIT License (With DPKG packaging compatibility)
|
||||
|
||||
Copyright (c) 2023 PikaOS
|
||||
Copyright (c) 2024 PikaOS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
@ -19,3 +19,6 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
Notes:
|
||||
The files covered by this license are any files and directories in the root of this repository (including but not limited to: `main.sh`, `release.sh`, and `.github`), with the exception of the `debian` directory and its contents if `debian/copyright` exists, and declares any files or directories as a different LICENSE/COPYRIGHT.
|
||||
|
8
debian/changelog
vendored
8
debian/changelog
vendored
@ -1,4 +1,10 @@
|
||||
wayshot (1.3.0-99pika2) lunar; urgency=medium
|
||||
wayshot (1.3.1.git-101pika3) pika; urgency=medium
|
||||
|
||||
* Update to PikaOS 4
|
||||
|
||||
-- ferreo <harderthanfire@gmail.com> Wed, 18 Jan 2023 21:48:14 +0000
|
||||
|
||||
wayshot (1.3.0.git-100pika1) pikauwu; urgency=medium
|
||||
|
||||
* Actually package the bin this time
|
||||
|
||||
|
88
debian/rules
vendored
88
debian/rules
vendored
@ -4,76 +4,32 @@
|
||||
## Output every command that modifies files on the build system.
|
||||
export DH_VERBOSE = 1
|
||||
|
||||
## === Set paths env vars ===
|
||||
export PIKA_BUILD_ARCH = $(shell cat ../pika-build-arch)
|
||||
|
||||
## Source directory, called upon by $(srcdir)
|
||||
srcdir = $(shell debian/scripts/get_pwd.sh)
|
||||
## The Root of package number one, called upon by $(pkgdir1)
|
||||
pkgdir1 = $(srcdir)/debian/pkgdir1
|
||||
## The Root of package number two, you can add as many of these as you like
|
||||
pkgdir2 = $(srcdir)/debian/pkgdir2
|
||||
override_dh_prep:
|
||||
# amd64 build prep
|
||||
ifeq (amd64-v3,$(PIKA_BUILD_ARCH))
|
||||
# Does not support LTO due to dylib-lto
|
||||
#export RUSTFLAGS = -C target-cpu=x86-64-v3 -C lto=fat -C embed-bitcode -C codegen-units=1 -C opt-level=3 -Zdylib-lto
|
||||
export RUSTFLAGS = -C target-cpu=x86-64-v3 -C opt-level=3
|
||||
endif
|
||||
|
||||
## If building a singular package you can remove the number, and as you guessed you call upon it with $(pkgdir)
|
||||
# pkgdir = $(srcdir)/debian/pkgdir
|
||||
BUILDFLAGS := --release
|
||||
BINARY := wayshot
|
||||
TARGET_DIR := $(DESTDIR)/usr/bin
|
||||
SOURCE_DIR := ./target/release
|
||||
MAN1_DIR := /usr/share/man/man1
|
||||
MAN7_DIR := /usr/share/man/man7
|
||||
|
||||
## === End end of region ===
|
||||
override_dh_auto_build:
|
||||
cargo build $(BUILDFLAGS)
|
||||
|
||||
## === the chain of command ===
|
||||
## debuild runs a chain of dh functions in the following order:
|
||||
## dh_testdir
|
||||
## dh_clean
|
||||
## dh_auto_clean
|
||||
## dh_update_autotools_config
|
||||
## dh_autoreconf
|
||||
## dh_auto_configure
|
||||
## dh_prep
|
||||
## dh_build
|
||||
## dh_auto_build
|
||||
## dh_install
|
||||
## dh_auto_install
|
||||
## dh_installdocs
|
||||
## dh_installchangelogs
|
||||
## dh_perl
|
||||
## dh_link
|
||||
## dh_strip_nondeterminism
|
||||
## dh_compress
|
||||
## dh_fixperms
|
||||
## dh_missing
|
||||
## dh_dwz
|
||||
## dh_strip
|
||||
## dh_makeshlibs
|
||||
## dh_shlibdeps
|
||||
## dh_installdeb
|
||||
## dh_gencontrol
|
||||
## but you are most likely to only need to override the following:
|
||||
## dh_clean
|
||||
## dh_auto_configure
|
||||
## dh_build
|
||||
## dh_install
|
||||
|
||||
## === End end of region ===
|
||||
|
||||
## === overriding dh functions ===
|
||||
## by default all dh functions will run a specific command based on the build system selected by "dh $@"
|
||||
## if you have a makefile that does everything you need this is fine,
|
||||
## but most likely you have no MakeFile and you want to add your own commands
|
||||
## Note : overrides must be places above %:
|
||||
## So here's a few examples:
|
||||
|
||||
## overriding dh_clean to make it not delete rust vendor files:
|
||||
#override_dh_clean:
|
||||
# echo "disabled"
|
||||
|
||||
## overriding dh_auto_configure to add custom configs:
|
||||
#override_dh_auto_configure:
|
||||
# $(srcdir)/configure -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_DATADIR=/usr/share -DCMAKE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu -DBUILD_PLUGIN=OFF
|
||||
|
||||
## overriding dh_install to install files to a package:
|
||||
#override_dh_auto_configure:
|
||||
# mkdir -p $(pkgdir1)/usr/bin
|
||||
# cp $(srcdir)/pikman $(pkgdir1)/usr/bin/
|
||||
|
||||
## === End end of region ===
|
||||
override_dh_auto_install:
|
||||
mkdir -p $(TARGET_DIR)
|
||||
cp $(SOURCE_DIR)/$(BINARY) $(TARGET_DIR)
|
||||
chmod +x $(TARGET_DIR)/$(BINARY)
|
||||
find ./docs -type f -iname "*.1.gz" -exec cp {} $(MAN1_DIR) \;
|
||||
find ./docs -type f -iname "*.7.gz" -exec cp {} $(MAN7_DIR) \;
|
||||
|
||||
## This here will start the build:
|
||||
%:
|
||||
|
2
debian/scripts/get_pwd.sh
vendored
2
debian/scripts/get_pwd.sh
vendored
@ -1,2 +0,0 @@
|
||||
#! /bin/sh
|
||||
env | grep -w "PWD" | cut -c5-
|
2
debian/source/format
vendored
2
debian/source/format
vendored
@ -1 +1 @@
|
||||
3.0 (native)
|
||||
3.0 (quilt)
|
||||
|
15
main.sh
15
main.sh
@ -1,17 +1,24 @@
|
||||
#! /bin/bash
|
||||
|
||||
DEBIAN_FRONTEND=noninteractive
|
||||
set -e
|
||||
|
||||
VERSION="1.3.1.git"
|
||||
|
||||
source ./pika-build-config.sh
|
||||
|
||||
echo "$PIKA_BUILD_ARCH" > pika-build-arch
|
||||
|
||||
# Clone Upstream
|
||||
#git clone https://github.com/waycrate/wayshot.git --recurse-submodules -b "$VERSION"
|
||||
git clone https://github.com/waycrate/wayshot.git --recurse-submodules
|
||||
cd wayshot
|
||||
cp -rvf ../debian ./
|
||||
cp -vf ../Makefile ./Makefile
|
||||
cp -rvf ./debian ./wayshot
|
||||
cd ./wayshot
|
||||
|
||||
# Get build deps
|
||||
apt-get build-dep ./ -y
|
||||
|
||||
# Build package
|
||||
LOGNAME=root dh_make --createorig -y -l -p wayshot_"$VERSION" || echo "dh-make: Ignoring Last Error"
|
||||
dpkg-buildpackage --no-sign
|
||||
|
||||
# Move the debs to output
|
||||
|
10
pika-build-config/amd64-v3.sh
Executable file
10
pika-build-config/amd64-v3.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#! /bin/bash
|
||||
export PIKA_BUILD_ARCH="amd64-v3"
|
||||
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
|
5
pika-build-config/i386.sh
Executable file
5
pika-build-config/i386.sh
Executable file
@ -0,0 +1,5 @@
|
||||
#! /bin/bash
|
||||
export PIKA_BUILD_ARCH="i386"
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
export DEB_BUILD_OPTIONS="nocheck notest terse"
|
||||
export DPKG_GENSYMBOLS_CHECK_LEVEL=0
|
@ -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 pika-main /srv/www/incoming/'
|
||||
|
||||
# publish the repo
|
||||
ssh ferreo@direct.pika-os.com 'aptly publish update -batch -skip-contents -force-overwrite lunar filesystem:pikarepo:'
|
||||
rsync -azP --include './' --include '*.deb' --exclude '*' ./output/ ferreo@direct.pika-os.com:/srv/www/cockatiel-incoming/
|
||||
|
Loading…
Reference in New Issue
Block a user