mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-03-10 07:50:19 +00:00
Delete .github/workflows/openbsd-build.yml
This commit is contained in:
committed by
GitHub
parent
0e5d7dfb9f
commit
7a4f744093
118
.github/workflows/openbsd-build.yml
vendored
118
.github/workflows/openbsd-build.yml
vendored
@@ -1,118 +0,0 @@
|
|||||||
name: OpenBSD Build
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [master]
|
|
||||||
pull_request:
|
|
||||||
branches: [master]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
openbsd_package:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
submodules: true
|
|
||||||
|
|
||||||
- name: Build OpenBSD package
|
|
||||||
uses: vmactions/openbsd-vm@v1
|
|
||||||
with:
|
|
||||||
release: '7.5'
|
|
||||||
usesh: true
|
|
||||||
sync: rsync
|
|
||||||
run: |
|
|
||||||
set -eux
|
|
||||||
|
|
||||||
rdate -n pool.ntp.org
|
|
||||||
export PKG_PATH="https://ftp.openbsd.org/pub/OpenBSD/7.5/packages/$(uname -m)/"
|
|
||||||
|
|
||||||
pkg_add -U \
|
|
||||||
git \
|
|
||||||
meson ninja pkgconf gmake \
|
|
||||||
gettext-tools \
|
|
||||||
glib2 gtk+3 dbus-glib libcanberra \
|
|
||||||
luajit mono libgdiplus openssl
|
|
||||||
|
|
||||||
work="$(mktemp -d /tmp/zoitechat.XXXXXX)"
|
|
||||||
trap 'rm -rf "$work"' EXIT
|
|
||||||
|
|
||||||
rsync -a --delete "$GITHUB_WORKSPACE"/ "$work/src/"
|
|
||||||
cd "$work/src"
|
|
||||||
|
|
||||||
rm -rf build
|
|
||||||
meson setup build \
|
|
||||||
--prefix=/usr/local \
|
|
||||||
-Dtext-frontend=true \
|
|
||||||
-Dgtk3=true \
|
|
||||||
-Dplugin=false \
|
|
||||||
-Dauto_features=enabled
|
|
||||||
|
|
||||||
ninja -C build
|
|
||||||
|
|
||||||
staging="$work/staging"
|
|
||||||
rm -rf "$staging"
|
|
||||||
mkdir -p "$staging"
|
|
||||||
|
|
||||||
# Staged install
|
|
||||||
DESTDIR="$staging" meson install -C build --no-rebuild
|
|
||||||
|
|
||||||
# If these exist, something ignored DESTDIR (install scripts are leaking)
|
|
||||||
ls -l /usr/local/bin/zoitechat /usr/local/bin/thememan 2>/dev/null || true
|
|
||||||
|
|
||||||
sync
|
|
||||||
sleep 1
|
|
||||||
sync
|
|
||||||
|
|
||||||
# Freeze staged tree so pkg_create doesn't see moving targets
|
|
||||||
snap="$work/staging-snap"
|
|
||||||
rm -rf "$snap"
|
|
||||||
mkdir -p "$snap"
|
|
||||||
(cd "$staging" && pax -rw -pe . "$snap")
|
|
||||||
|
|
||||||
version="$(meson introspect --projectinfo build | sed -n 's/.*"version"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p')"
|
|
||||||
pkg_name="zoitechat-${version}"
|
|
||||||
pkg_file="${pkg_name}.tgz"
|
|
||||||
plist="$work/openbsd-plist"
|
|
||||||
desc="$work/DESCR"
|
|
||||||
|
|
||||||
cat >"$desc" <<'EOF'
|
|
||||||
ZoiteChat is an IRC client (HexChat-derived) with a GTK UI and optional tools.
|
|
||||||
EOF
|
|
||||||
|
|
||||||
{
|
|
||||||
echo "@cwd /usr/local"
|
|
||||||
|
|
||||||
# Files + symlinks
|
|
||||||
find "$snap/usr/local" \( -type f -o -type l \) -print \
|
|
||||||
| LC_ALL=C sort \
|
|
||||||
| sed "s#^$snap/usr/local/##"
|
|
||||||
|
|
||||||
# Directories (reverse so children removed first)
|
|
||||||
find "$snap/usr/local" -mindepth 1 -type d -print \
|
|
||||||
| LC_ALL=C sort -r \
|
|
||||||
| sed "s#^$snap/usr/local/##" \
|
|
||||||
| sed 's#^#@dir #'
|
|
||||||
} > "$plist"
|
|
||||||
|
|
||||||
# OpenBSD pkg_create: COMMENT is set via -D COMMENT=... (mandatory), no -c flag exists.
|
|
||||||
# Create the .tgz in $work so we can copy it back out.
|
|
||||||
cd "$work"
|
|
||||||
pkg_create \
|
|
||||||
-B "$snap" \
|
|
||||||
-p /usr/local \
|
|
||||||
-f "$plist" \
|
|
||||||
-d "$desc" \
|
|
||||||
-D "COMMENT=ZoiteChat IRC client" \
|
|
||||||
-D "FULLPKGPATH=net/zoitechat" \
|
|
||||||
"$pkg_file"
|
|
||||||
|
|
||||||
mkdir -p "$GITHUB_WORKSPACE/artifacts"
|
|
||||||
cp "$work/$pkg_file" "$GITHUB_WORKSPACE/artifacts/"
|
|
||||||
|
|
||||||
- name: Upload OpenBSD package
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: openbsd-package
|
|
||||||
path: artifacts/*.tgz
|
|
||||||
Reference in New Issue
Block a user