[packages/gtk4-layer-shell] new

atler atler at pld-linux.org
Fri Nov 7 17:41:40 CET 2025


commit 2e7a5170910ae7c02950fa80fce1e28a13b78ae8
Author: Jan Palus <atler at pld-linux.org>
Date:   Fri Nov 7 17:14:46 2025 +0100

    new

 gtk4-layer-shell.spec | 187 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 187 insertions(+)
---
diff --git a/gtk4-layer-shell.spec b/gtk4-layer-shell.spec
new file mode 100644
index 0000000..9ae190c
--- /dev/null
+++ b/gtk4-layer-shell.spec
@@ -0,0 +1,187 @@
+#
+# Conditional build:
+%bcond_without	apidocs		# API documentation
+%bcond_without	static_libs	# static library
+%bcond_without	vala		# Vala API
+
+Summary:	Library to create components for Wayland using the Layer Shell protocol and GTK4
+Summary(pl.UTF-8):	Biblioteka do tworzenia komponentów Waylanda przy użyciu protokołu Layer Shell i GTK4
+Name:		gtk4-layer-shell
+Version:	1.3.0
+Release:	1
+License:	MIT
+Group:		Libraries
+#Source0Download: https://github.com/wmww/gtk4-layer-shell/releases
+Source0:	https://github.com/wmww/gtk4-layer-shell/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5:	dfc6a164894e5cded49b197645e0f84b
+URL:		https://github.com/wmww/gtk4-layer-shell
+BuildRequires:	gcc >= 6:4.7
+BuildRequires:	glib2-devel
+BuildRequires:	gobject-introspection-devel
+BuildRequires:	gtk4-devel
+%{?with_apidocs:BuildRequires:	gtk-doc}
+BuildRequires:	meson >= 0.54.0
+BuildRequires:	ninja >= 1.5
+BuildRequires:	pkgconfig
+BuildRequires:	python3 >= 1:3
+BuildRequires:	rpm-build >= 4.6
+BuildRequires:	rpmbuild(macros) >= 2.042
+BuildRequires:	wayland-devel >= 1.10.0
+BuildRequires:	wayland-protocols >= 1.16
+%{?with_vala:BuildRequires:	vala}
+Requires:	wayland%{?_isa} >= 1.10.0
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+A library to write GTK4 applications that use Layer Shell. Layer Shell
+is a Wayland protocol for desktop shell components, such as panels,
+notifications and wallpapers. You can use it to anchor your windows to
+a corner or edge of the output, or stretch them across the entire
+output. This library only makes sense on Wayland compositors that
+support Layer Shell, and will not work on X11. It supports all Layer
+Shell features including popups and popovers (GTK popups Just Work
+(TM)).
+
+%description -l pl.UTF-8
+Biblioteka do tworzenia aplikacji GTK4, wykorzystujących protokół Layer
+Shell. Jest to protokół Wayland dla komponentów powłok graficznych,
+takich jak panele, powiadomienia i tapety. Można go używać do
+zakotwiczania okien w roku lub przy brzegu wyjścia, albo rozciągania
+ich na całe wyjście. Biblioteka ma sens tylko dla zarządców składania
+Wayland obsługujących protokół Layer Shell, nie będzie działać na X11.
+Obsługuje wszystkie możliwości protokołu Layer Shell, w tym
+wyskakujące okna.
+
+%package preload
+Summary:	gtk4-layer-shell preload library
+Group:		Libraries
+Requires:	%{name}%{?_isa} = %{version}-%{release}
+
+%description preload
+liblayer-shell-preload.so is a hack to allow arbitrary Wayland apps to
+use the Layer Shell protocol. It uses the same approach as
+gtk4-layer-shell, but generalized to work with any libwayland-client
+program. It's designed to be LD_PRELOADed into pre-built binaries, no
+recompiling necessary.
+
+%package devel
+Summary:	Header files for gtk4-layer-shell library
+Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki gtk4-layer-shell
+Group:		Development/Libraries
+Requires:	%{name}%{?_isa} = %{version}-%{release}
+Requires:	gtk4-devel%{?_isa}
+Requires:	wayland-devel%{?_isa} >= 1.10.0
+
+%description devel
+Header files for gtk4-layer-shell library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki gtk4-layer-shell.
+
+%package static
+Summary:	Static gtk4-layer-shell library
+Summary(pl.UTF-8):	Biblioteka statyczna gtk4-layer-shell
+Group:		Development/Libraries
+Requires:	%{name}-devel%{?_isa} = %{version}-%{release}
+
+%description static
+Static gtk4-layer-shell library.
+
+%description static -l pl.UTF-8
+Biblioteka statyczna gtk4-layer-shell.
+
+%package apidocs
+Summary:	API documentation for gtk4-layer-shell library
+Summary(pl.UTF-8):	Dokumentacja API biblioteki gtk4-layer-shell
+Group:		Documentation
+BuildArch:	noarch
+
+%description apidocs
+API documentation for gtk4-layer-shell library.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja API biblioteki gtk4-layer-shell.
+
+%package -n vala-gtk4-layer-shell
+Summary:	gtk4-layer-shell API for Vala language
+Summary(pl.UTF-8):	API gtk4-layer-shell dla języka Vala
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+Requires:	vala
+BuildArch:	noarch
+
+%description -n vala-gtk4-layer-shell
+gtk4-layer-shell API for Vala language.
+
+%description -n vala-gtk4-layer-shell -l pl.UTF-8
+API gtk4-layer-shell dla języka Vala.
+
+%prep
+%setup -q
+
+%build
+%meson \
+	%{!?with_static_libs:--default-library=shared} \
+	%{?with_apidocs:-Ddocs=true} \
+	-Dvapi=%{__true_false vala}
+
+%meson_build
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+%meson_install
+
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/liblayer-shell-preload.so $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+%{?with_static_libs:%{__rm} $RPM_BUILD_ROOT%{_libdir}/liblayer-shell-preload.a}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post	-p /sbin/ldconfig
+%postun	-p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc CHANGELOG.md LICENSE README.md
+%attr(755,root,root) %{_libdir}/libgtk4-layer-shell.so.*.*.*
+%ghost %{_libdir}/libgtk4-layer-shell.so.0
+%{_libdir}/girepository-1.0/Gtk4LayerShell-1.0.typelib
+%{_libdir}/girepository-1.0/Gtk4SessionLock-1.0.typelib
+
+%files preload
+%defattr(644,root,root,755)
+%doc layer_shell_preload.md
+%attr(755,root,root) %{_libdir}/%{name}/liblayer-shell-preload.so
+
+%files devel
+%defattr(644,root,root,755)
+%{_libdir}/libgtk4-layer-shell.so
+%dir %{_includedir}/gtk4-layer-shell
+%{_includedir}/gtk4-layer-shell/gtk4-layer-shell.h
+%{_includedir}/gtk4-layer-shell/gtk4-session-lock.h
+%{_pkgconfigdir}/gtk4-layer-shell-0.pc
+%{_datadir}/gir-1.0/Gtk4LayerShell-1.0.gir
+%{_datadir}/gir-1.0/Gtk4SessionLock-1.0.gir
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libgtk4-layer-shell.a
+%endif
+
+%if %{with apidocs}
+%files apidocs
+%defattr(644,root,root,755)
+%{_gtkdocdir}/gtk4-layer-shell
+%endif
+
+%if %{with vala}
+%files -n vala-gtk4-layer-shell
+%defattr(644,root,root,755)
+%{_datadir}/vala/vapi/gtk4-layer-shell-0.deps
+%{_datadir}/vala/vapi/gtk4-layer-shell-0.vapi
+%endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gtk4-layer-shell.git/commitdiff/2e7a5170910ae7c02950fa80fce1e28a13b78ae8



More information about the pld-cvs-commit mailing list