Skip to content

Commit

Permalink
update scenefx to 0.2 (#14)
Browse files Browse the repository at this point in the history
* update scenefx to 0.2

* fix mismatched .srcinfo

* Updated scenefx-git

* Replaced scenefx with scenefx-0.1

* Added scenefx-0.2

* Updated workflows

* Use scenefx instead of scenefx-0.2

* Updated COPR spec files

* Updated COPR build workflow

* Updated COPR upload workflow

* Also build the latest scenefx in RPM build workflow

---------

Co-authored-by: Erik Reider <[email protected]>
  • Loading branch information
WillPower3309 and ErikReider authored Feb 11, 2025
1 parent d575b62 commit d0adaf1
Show file tree
Hide file tree
Showing 13 changed files with 236 additions and 46 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/aur_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
strategy:
fail-fast: false
matrix:
pkgname: [ swayfx, swayfx-git, scenefx, scenefx-git ]
pkgname: [ swayfx, swayfx-git, scenefx-0.1, scenefx, scenefx-git ]

name: Test PKGBUILD ${{matrix.pkgname}}
runs-on: ubuntu-latest
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/aur_publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ jobs:
./aur/swayfx-git/50-systemd-user.conf
./aur/swayfx-git/sway.install
- pkgname: scenefx-0.1
- pkgname: scenefx
- pkgname: scenefx-git

Expand Down
55 changes: 48 additions & 7 deletions .github/workflows/copr_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,51 @@ on:
workflow_dispatch:

jobs:
RPM-build:
RPM-SceneFX-build:
strategy:
fail-fast: false
matrix:
pkgname: [ scenefx-0.1, scenefx ]
name: Build RPM ${{matrix.pkgname}}
container: fedora:latest
runs-on: ubuntu-latest
steps:
- name: Install tooling for source RPM build
run: |
dnf -y install rpkg @rpm-development-tools 'dnf-command(builddep)'
- name: Check out sources
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: ${{matrix.pkgname}} Download RPM Spec sources
run: |
cd COPR/${{matrix.pkgname}}
spectool -g ./${{matrix.pkgname}}.rpkg.spec
- name: ${{matrix.pkgname}} Install build dependencies
run: |
cd COPR/${{matrix.pkgname}}
dnf -y builddep ./${{matrix.pkgname}}.rpkg.spec
- name: ${{matrix.pkgname}} Build RPM
run: |
cd COPR/${{matrix.pkgname}}
mkdir -p out
rpkg local --out `pwd`/out
- name: ${{matrix.pkgname}} Install RPMs
run: |
cd COPR/${{matrix.pkgname}}
dnf -y install ./out/*/*.rpm
RPM-SwayFX-build:
name: Build RPM swayfx
container: fedora:latest
runs-on: ubuntu-latest
env:
scenefx_version: "scenefx-0.1"
steps:
- name: Install tooling for source RPM build
run: |
Expand All @@ -30,23 +71,23 @@ jobs:

- name: SceneFX Download RPM Spec sources
run: |
cd COPR/scenefx
spectool -g ./scenefx.rpkg.spec
cd COPR/$scenefx_version
spectool -g ./$scenefx_version.rpkg.spec
- name: SceneFX Install build dependencies
run: |
cd COPR/scenefx
dnf -y builddep ./scenefx.rpkg.spec
cd COPR/$scenefx_version
dnf -y builddep ./$scenefx_version.rpkg.spec
- name: SceneFX Build RPM
run: |
cd COPR/scenefx
cd COPR/$scenefx_version
mkdir -p out
rpkg local --out `pwd`/out
- name: SceneFX Install RPMs
run: |
cd COPR/scenefx
cd COPR/$scenefx_version
dnf -y install ./out/*/*.rpm
- name: SwayFX Download RPM Spec sources
Expand Down
11 changes: 9 additions & 2 deletions .github/workflows/copr_upload.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,19 @@ jobs:
with:
fetch-depth: 0

- name: SceneFX-0.1 Download RPM Spec sources
run: |
cd COPR/scenefx-0.1
spectool -g ./scenefx-0.1.rpkg.spec
- name: SceneFX-0.1 Submit the build to copr
run: |
cd COPR/scenefx-0.1
rpkg -v copr-build -w ${{ secrets.COPR_REPO_NAME }}
- name: SceneFX Download RPM Spec sources
run: |
cd COPR/scenefx
spectool -g ./scenefx.rpkg.spec
- name: SceneFX Submit the build to copr
run: |
cd COPR/scenefx
Expand All @@ -52,7 +60,6 @@ jobs:
run: |
cd COPR/swayfx
spectool -g ./swayfx.rpkg.spec
- name: SwayFX Submit the build to copr
run: |
cd COPR/swayfx
Expand Down
86 changes: 86 additions & 0 deletions COPR/scenefx-0.1/scenefx-0.1.rpkg.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# vim: syntax=spec

### CHANGE THESE VARIABLES BEFORE RELEASE:
# Change to current SceneFX tag!
%global tag 0.1
# Version of the .so library
%global abi_ver 1

Name: scenefx-%{tag}
Version: %{tag}
Release: 1%{?dist}
Summary: A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects
License: MIT
URL: https://github.com/wlrfx/scenefx
Source0: %{url}/archive/refs/tags/%{tag}.tar.gz


BuildRequires: gcc
BuildRequires: glslang
BuildRequires: gnupg2
BuildRequires: meson >= 0.59.0

BuildRequires: (pkgconfig(wlroots) >= 0.17.0 with pkgconfig(wlroots) < 0.18)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gbm) >= 17.1.0
BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(hwdata)
BuildRequires: pkgconfig(libdrm) >= 2.4.114
BuildRequires: pkgconfig(pixman-1) >= 0.42.0
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-protocols) >= 1.32
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-server) >= 1.22

%description
%{summary}


%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} == %{version}-%{release}
# for examples
Suggests: gcc
Suggests: meson >= 0.58.0
Suggests: pkgconfig(wayland-egl)

%description devel
Development files for %{name}.


%prep
%autosetup -N -n %{name}

%build
MESON_OPTIONS=(
# Disable options requiring extra/unpackaged dependencies
-Dexamples=false
-Dwerror=false
)

%{meson} "${MESON_OPTIONS[@]}"
%{meson_build}


%install
%{meson_install}


%check
%{meson_test}


%files
%license LICENSE
%doc README.md
%{_libdir}/libscenefx.so.%{abi_ver}{,.*}


%files devel
%{_includedir}/scenefx
%{_libdir}/libscenefx.so
%{_libdir}/pkgconfig/scenefx.pc


# Changelog will be empty until you make first annotated Git tag.
# %changelog
20 changes: 8 additions & 12 deletions COPR/scenefx/scenefx.rpkg.spec
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# vim: syntax=spec

### CHANGE THESE VARIABLES BEFORE RELEASE:
# Change to current SceneFX tag!
%global tag 0.1
# Version of the .so library
%global abi_ver 1
%global tag 0.2

Name: scenefx
Version: %{tag}
Expand All @@ -14,23 +10,23 @@ License: MIT
URL: https://github.com/wlrfx/scenefx
Source0: %{url}/archive/refs/tags/%{tag}.tar.gz


BuildRequires: gcc
BuildRequires: glslang
BuildRequires: gnupg2
BuildRequires: meson >= 0.59.0

BuildRequires: (pkgconfig(wlroots) >= 0.17.0 with pkgconfig(wlroots) < 0.18)
BuildRequires: pkgconfig(wlroots-0.18)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gbm) >= 17.1.0
BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(hwdata)
BuildRequires: pkgconfig(libdrm) >= 2.4.114
BuildRequires: pkgconfig(libdrm) >= 2.4.122
BuildRequires: pkgconfig(pixman-1) >= 0.42.0
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-protocols) >= 1.32
BuildRequires: pkgconfig(wayland-protocols) >= 1.35
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-server) >= 1.22
BuildRequires: pkgconfig(wayland-server) >= 1.23

%description
%{summary}
Expand Down Expand Up @@ -73,12 +69,12 @@ MESON_OPTIONS=(
%files
%license LICENSE
%doc README.md
%{_libdir}/lib%{name}.so.%{abi_ver}{,.*}
%{_libdir}/libscenefx-%{tag}.so


%files devel
%{_includedir}/scenefx
%{_libdir}/lib%{name}.so
%{_libdir}/libscenefx-%{tag}.so
%{_libdir}/pkgconfig/%{name}.pc


Expand Down
2 changes: 1 addition & 1 deletion COPR/swayfx/swayfx.rpkg.spec
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-server) >= 1.21.0
BuildRequires: pkgconfig(wayland-protocols) >= 1.24
BuildRequires: (pkgconfig(wlroots) >= 0.17.0 with pkgconfig(wlroots) < 0.18)
BuildRequires: (pkgconfig(scenefx) >= 0.1 with pkgconfig(scenefx) < 0.2)
BuildRequires: pkgconfig(scenefx)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xcb-icccm)
BuildRequires: pkgconfig(xkbcommon) >= 1.5.0
Expand Down
23 changes: 23 additions & 0 deletions aur/scenefx-0.1/.SRCINFO
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
pkgbase = scenefx-0.1
pkgdesc = A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects
pkgver = 0.1
pkgrel = 1
url = https://github.com/wlrfx/scenefx
arch = x86_64
license = MIT
makedepends = git
makedepends = glslang
makedepends = meson
makedepends = ninja
makedepends = wayland-protocols
depends = libdrm
depends = libglvnd
depends = libpixman-1.so
depends = wayland
depends = wlroots0.17
provides = libscenefx.so
options = debug
source = scenefx-0.1.tar.gz::https://github.com/wlrfx/scenefx/archive/refs/tags/0.1.tar.gz
sha512sums = SKIP

pkgname = scenefx-0.1
41 changes: 41 additions & 0 deletions aur/scenefx-0.1/PKGBUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Maintainer: Erik Reider <[email protected]>

_pkgname=scenefx
_pkgver=0.1
pkgname="$_pkgname-$_pkgver"
pkgver="$_pkgver"
pkgrel=1
license=("MIT")
pkgdesc="A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects"
url="https://github.com/wlrfx/scenefx"
arch=("x86_64")
depends=(
"libdrm"
"libglvnd"
"libpixman-1.so"
"wayland"
"wlroots0.17"
)
makedepends=(
"git"
"glslang"
"meson"
"ninja"
"wayland-protocols"
)
optdepends=()
provides=("libscenefx.so")
options=("debug")
source=("${_pkgname}-${_pkgver}.tar.gz::${url}/archive/refs/tags/$_pkgver.tar.gz")
sha512sums=("SKIP")

build() {
export PKG_CONFIG_PATH='/usr/lib/wlroots0.17/pkgconfig'
arch-meson -Dwerror=false "${_pkgname}-${_pkgver}" build
meson compile -C build
}

package() {
DESTDIR="$pkgdir" meson install -C build
}

6 changes: 2 additions & 4 deletions aur/scenefx-git/.SRCINFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
pkgbase = scenefx-git
pkgdesc = A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects
pkgver = r251.ab17e38
pkgver = r265.914b2a9
pkgrel = 1
url = https://github.com/wlrfx/scenefx
arch = x86_64
Expand All @@ -15,9 +15,7 @@ pkgbase = scenefx-git
depends = libdrm
depends = libpixman-1.so
depends = libwlroots-0.18.so
provides = libscenefx.so
conflicts = scenefx
conflicts = scenefx-git
provides = libscenefx-0.2.so
options = debug
source = scenefx::git+https://github.com/wlrfx/scenefx.git
sha512sums = SKIP
Expand Down
8 changes: 4 additions & 4 deletions aur/scenefx-git/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# Maintainer: Erik Reider <[email protected]>

_pkgname=scenefx
_pkgver=0.2
pkgname="$_pkgname-git"
pkgver=r251.ab17e38
pkgver=r265.914b2a9
pkgrel=1
license=("MIT")
pkgdesc="A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects"
Expand All @@ -23,8 +24,7 @@ makedepends=(
"wayland-protocols"
)
optdepends=()
conflicts=("scenefx" "scenefx-git")
provides=("libscenefx.so")
provides=("libscenefx-$_pkgver.so")
options=("debug")
source=("${pkgname%-*}::git+${url}.git")
sha512sums=("SKIP")
Expand All @@ -35,7 +35,7 @@ pkgver() {
}

build() {
export PKG_CONFIG_PATH='/usr/lib/wlroots0.17/pkgconfig'
export PKG_CONFIG_PATH='/usr/lib/wlroots0.18/pkgconfig'
arch-meson -Dwerror=false "$_pkgname" build
meson compile -C build
}
Expand Down
Loading

0 comments on commit d0adaf1

Please sign in to comment.