From fd08510df744b4208fd7df7491de2cb0909d3990 Mon Sep 17 00:00:00 2001 From: Isaac Freund Date: Wed, 3 Nov 2021 14:48:05 +0100 Subject: [PATCH] New package: river-0.1.0 --- ...ble-PIE-for-river-riverctl-rivertile.patch | 42 +++++++++++++++++++ srcpkgs/river/template | 23 ++++++++++ 2 files changed, 65 insertions(+) create mode 100644 srcpkgs/river/patches/0001-Enable-PIE-for-river-riverctl-rivertile.patch create mode 100644 srcpkgs/river/template diff --git a/srcpkgs/river/patches/0001-Enable-PIE-for-river-riverctl-rivertile.patch b/srcpkgs/river/patches/0001-Enable-PIE-for-river-riverctl-rivertile.patch new file mode 100644 index 00000000000..ecc68302db0 --- /dev/null +++ b/srcpkgs/river/patches/0001-Enable-PIE-for-river-riverctl-rivertile.patch @@ -0,0 +1,42 @@ +From 759c1c7a915083f3da46960ff82fa2a3566a7065 Mon Sep 17 00:00:00 2001 +From: Isaac Freund +Date: Wed, 3 Nov 2021 14:21:35 +0100 +Subject: [PATCH] Enable PIE for river, riverctl, rivertile + +There is sadly not yet a standard way to do this exposed by the zig +build system. See: https://github.com/ziglang/zig/issues/7201 +--- + build.zig | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/build.zig b/build.zig +index d561f49..8ac9a4e 100644 +--- a/build.zig ++++ b/build.zig +@@ -85,6 +85,7 @@ pub fn build(b: *zbs.Builder) !void { + const river = b.addExecutable("river", "river/main.zig"); + river.setTarget(target); + river.setBuildMode(mode); ++ river.pie = true; + river.addBuildOption(bool, "xwayland", xwayland); + river.addBuildOption([:0]const u8, "version", full_version); + +@@ -97,6 +98,7 @@ pub fn build(b: *zbs.Builder) !void { + const riverctl = b.addExecutable("riverctl", "riverctl/main.zig"); + riverctl.setTarget(target); + riverctl.setBuildMode(mode); ++ riverctl.pie = true; + riverctl.addBuildOption([:0]const u8, "version", full_version); + + riverctl.step.dependOn(&scanner.step); +@@ -114,6 +116,7 @@ pub fn build(b: *zbs.Builder) !void { + const rivertile = b.addExecutable("rivertile", "rivertile/main.zig"); + rivertile.setTarget(target); + rivertile.setBuildMode(mode); ++ rivertile.pie = true; + rivertile.addBuildOption([:0]const u8, "version", full_version); + + rivertile.step.dependOn(&scanner.step); +-- +2.33.1 + diff --git a/srcpkgs/river/template b/srcpkgs/river/template new file mode 100644 index 00000000000..d3006042241 --- /dev/null +++ b/srcpkgs/river/template @@ -0,0 +1,23 @@ +# Template file for 'river' +pkgname=river +version=0.1.0 +revision=1 +build_style=zig-build +configure_args="$(vopt_if xwayland -Dxwayland)" +hostmakedepends="zig pkg-config wayland-devel scdoc git" +makedepends="wlroots-devel" +depends="$(vopt_if xwayland xorg-server-xwayland)" +short_desc="Dynamic tiling Wayland compositor" +maintainer="Isaac Freund " +license="GPL-3.0-or-later" +homepage="https://github.com/riverwm/river" +distfiles="${homepage}/releases/download/v${version}/river-${version}.tar.gz" +checksum=4153a5511a1008e87a2251fc4510a43d6f6085f41b040222506355ff6d4bd10f + +build_options="xwayland" +build_options_default="xwayland" +desc_option_xwayland="Enable Xwayland support" + +post_install() { + vsconf example/init +}