mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-03-18 11:40:18 +00:00
fix windows build lua dependency.
Add attempted Solus Build.
This commit is contained in:
59
.github/workflows/solus-eopkg-build.yml
vendored
Normal file
59
.github/workflows/solus-eopkg-build.yml
vendored
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
name: Solus eopkg build
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
package_yml:
|
||||||
|
description: "Path to Solus package.yml for ypkg build"
|
||||||
|
required: false
|
||||||
|
default: "packaging/solus/package.yml"
|
||||||
|
solus_image:
|
||||||
|
description: "Solus container image"
|
||||||
|
required: false
|
||||||
|
default: "ghcr.io/getsolus/solus:latest"
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-eopkg:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
SOLUS_IMAGE: ${{ inputs.solus_image || 'ghcr.io/getsolus/solus:latest' }}
|
||||||
|
PACKAGE_YML: ${{ inputs.package_yml || 'packaging/solus/package.yml' }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Build eopkg package in Solus container
|
||||||
|
run: |
|
||||||
|
if [ ! -f "$PACKAGE_YML" ]; then
|
||||||
|
echo "Expected Solus packaging file at $PACKAGE_YML" >&2
|
||||||
|
echo "Available package.yml files:" >&2
|
||||||
|
find . -name "package.yml" -print >&2 || true
|
||||||
|
echo "Add a package.yml (ypkg) file or update the workflow input PACKAGE_YML." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
docker pull "$SOLUS_IMAGE"
|
||||||
|
|
||||||
|
docker run --rm \
|
||||||
|
-v "$PWD":/workspace \
|
||||||
|
-w /workspace \
|
||||||
|
"$SOLUS_IMAGE" \
|
||||||
|
sh -lc '
|
||||||
|
set -euo pipefail
|
||||||
|
eopkg update-repo -y
|
||||||
|
eopkg install -y ypkg git
|
||||||
|
ypkg build "$PACKAGE_YML"
|
||||||
|
mkdir -p /workspace/artifacts
|
||||||
|
find . -maxdepth 3 -name "*.eopkg" -type f -exec cp -v {} /workspace/artifacts/ \;
|
||||||
|
'
|
||||||
|
|
||||||
|
- name: Upload eopkg artifacts
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: solus-eopkg
|
||||||
|
path: artifacts/*.eopkg
|
||||||
|
if-no-files-found: error
|
||||||
13
.github/workflows/windows-build.yml
vendored
13
.github/workflows/windows-build.yml
vendored
@@ -104,8 +104,13 @@ jobs:
|
|||||||
throw "Lua extraction failed; missing $luaExtractRoot."
|
throw "Lua extraction failed; missing $luaExtractRoot."
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$luaMakefile = Get-ChildItem -Path $luaExtractRoot -Filter "Makefile.msc" -Recurse -File | Select-Object -First 1
|
||||||
|
if (-not $luaMakefile) {
|
||||||
|
throw "Lua Makefile.msc not found under $luaExtractRoot."
|
||||||
|
}
|
||||||
|
$luaBuildRoot = $luaMakefile.Directory.FullName
|
||||||
$luaBuildArch = if ($gvsPlatform -eq "x86") { "x86" } else { "amd64" }
|
$luaBuildArch = if ($gvsPlatform -eq "x86") { "x86" } else { "amd64" }
|
||||||
cmd /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\VsDevCmd.bat`" -arch=$luaBuildArch && cd /d `"$luaExtractRoot\src`" && nmake -f Makefile.msc"
|
cmd /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\VsDevCmd.bat`" -arch=$luaBuildArch && pushd `"$luaBuildRoot`" && nmake -f Makefile.msc && popd"
|
||||||
|
|
||||||
$luaDepsRoot = "C:\gtk-build\gtk\$gvsPlatform\release"
|
$luaDepsRoot = "C:\gtk-build\gtk\$gvsPlatform\release"
|
||||||
$luaIncludeDir = Join-Path $luaDepsRoot "include\lua54"
|
$luaIncludeDir = Join-Path $luaDepsRoot "include\lua54"
|
||||||
@@ -114,9 +119,9 @@ jobs:
|
|||||||
New-Item -Path $luaIncludeDir -ItemType Directory -Force | Out-Null
|
New-Item -Path $luaIncludeDir -ItemType Directory -Force | Out-Null
|
||||||
New-Item -Path $luaLibDir -ItemType Directory -Force | Out-Null
|
New-Item -Path $luaLibDir -ItemType Directory -Force | Out-Null
|
||||||
New-Item -Path $luaBinDir -ItemType Directory -Force | Out-Null
|
New-Item -Path $luaBinDir -ItemType Directory -Force | Out-Null
|
||||||
Copy-Item "$luaExtractRoot\src\*.h" $luaIncludeDir -Force
|
Copy-Item "$luaBuildRoot\*.h" $luaIncludeDir -Force
|
||||||
Copy-Item "$luaExtractRoot\src\lua54.lib" $luaLibDir -Force
|
Copy-Item "$luaBuildRoot\lua54.lib" $luaLibDir -Force
|
||||||
Copy-Item "$luaExtractRoot\src\lua54.dll" $luaBinDir -Force
|
Copy-Item "$luaBuildRoot\lua54.dll" $luaBinDir -Force
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
34
packaging/solus/package.yml
Normal file
34
packaging/solus/package.yml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
name : zoitechat
|
||||||
|
version : 2.17.4
|
||||||
|
release : 1
|
||||||
|
source :
|
||||||
|
- https://github.com/ZoiteChat/zoitechat/archive/refs/tags/zoitechat-2.17.4.tar.gz : 77d787cf00abd533326440eab01ca077c21cdfd2eb56807fc21d6fb70f34ada6
|
||||||
|
homepage : https://zoitechat.zoite.net/
|
||||||
|
license : GPL-2.0-only
|
||||||
|
component : network.irc
|
||||||
|
summary : HexChat-based IRC client
|
||||||
|
description: |
|
||||||
|
ZoiteChat is a HexChat-based IRC client for Windows and UNIX-like systems.
|
||||||
|
builddeps :
|
||||||
|
- pkgconfig(glib-2.0)
|
||||||
|
- pkgconfig(gmodule-2.0)
|
||||||
|
- pkgconfig(gtk+-3.0)
|
||||||
|
- pkgconfig(ayatana-appindicator3-0.1)
|
||||||
|
- pkgconfig(dbus-glib-1)
|
||||||
|
- pkgconfig(libcanberra)
|
||||||
|
- pkgconfig(openssl)
|
||||||
|
- pkgconfig(iso-codes)
|
||||||
|
- meson
|
||||||
|
- ninja
|
||||||
|
- pkgconfig
|
||||||
|
- gcc
|
||||||
|
- gettext
|
||||||
|
setup : |
|
||||||
|
%meson_configure \
|
||||||
|
-Dgtk-frontend=true \
|
||||||
|
-Dgtk3=true \
|
||||||
|
-Dinstall-appdata=true
|
||||||
|
build : |
|
||||||
|
%ninja_build
|
||||||
|
install : |
|
||||||
|
%ninja_install
|
||||||
Reference in New Issue
Block a user