gui-wm/river: add 0.4.1

Signed-off-by: Violet Purcell <vimproved@inventati.org>
This commit is contained in:
Violet Purcell
2026-03-18 16:18:35 -04:00
parent 4ebe43cdfc
commit a99cc93119
3 changed files with 114 additions and 0 deletions

View File

@@ -1,9 +1,13 @@
DIST pixman-0.3.0-LClMnz2VAAAs7QSCGwLimV5VUYx0JFnX5xWU6HwtMuDX.tar.gz 7966 BLAKE2B 8d6607e878b0bacc0fc16bcc2264ddd89e349b61a1b269e59b2e19b311064453a473f2401103b0e40906f7190d154d403b712e05fe937abe2f6253f7d8337820 SHA512 2eb43d460aff9ff2da015afc9230ca73588ada59df59465a3efa8f074d9d641fec4bf52ab3de475ec1a5ba2f04afc59221f231af5e2cf5aba7252bbde6be35a5
DIST river-0.3.11.tar.gz 174745 BLAKE2B 6ab4906475d21d6eb1572d2eed53003deb33da5c953fdfa446444677ff7b25d10610d10ce565f891fc5bb20cd375dcdb895e92d084d86dfb1e2c75709852a834 SHA512 b0e2439247c4424b06136c9466447172d5ea4df9b3f8133051d19f8049c5da7d17e3eb03dfe6eac81d03c6762a8c40b2f6d6c918ea5348a23a330f1a782f3bd1
DIST river-0.3.12.tar.gz 174928 BLAKE2B 0f5b4658da4584a5b24fabe441425389a7cf17d0215efa4a08304c5c5249fc6a3b883aa6a596d8765622c571533e0d6b9b8776488c64bb344d4b93d41c373d5b SHA512 d72abaa42b5ef812aa3928a3d900027022fb5b8f7341aac1414e780941ae18508071149d0bb506eaa360adbdfe0a2b568e08d647d07813f4f0f81141012f1471
DIST river-0.4.1.tar.gz 162232 BLAKE2B c27901ded4d242ef57c2c38cb9ee5abb319ddcbefa5a3a00217f59b8394c3254a0ca3fd8f9add324cf4c8202493da4dd2fed647e3db45195f8e9c9043f328d36 SHA512 532d7aadd96b8169cf2df500f197a3d2d4cfd2e8ca5e079a35f8f1037cb4eeb2e7d461f66c643e1ed35ba6b6d1a6a6a02a59b93cee5355855e8cf2d1fa9d7f83
DIST river-classic-0.3.14.tar.gz 175514 BLAKE2B 99560ba151e65967918311b549a2f1942608c1bf6658e02089b82118af9563afc8de7c6dff06479551fbb60c6be3d7b1a45897b35f7fa10488a6db56a6333088 SHA512 3d228a26edb75111e0aff51825bb64ee482c03e1a975fa2b1ad45c9cfb0b19b6f1c937c033b4fa2568689b78d5d3d4d979830f0088db547ce881a310e120e173
DIST wayland-0.3.0-lQa1kjPIAQDmhGYpY-zxiRzQJFHQ2VqhJkQLbKKdt5wl.tar.gz 74934 BLAKE2B 8dda2bae62c65068825068dbe91e701ad4a71685d2209bb703d0e8b71b75f1546690b83fc66e9b81de59e26c9e5a9d8d5cfa3f2098cd16a3f13ada7f38fb94ce SHA512 436c7104c41bb3c26bedc3491d887293fa0a40c11a14bc0973a1fa873c5161a05c9681a857f6cf89c9b34106e2b9e92b4f67eebabaf16836cb99a459ad11d20e
DIST wayland-0.4.0-lQa1khbMAQAsLS2eBR7M5lofyEGPIbu2iFDmoz8lPC27.tar.gz 111219 BLAKE2B 1c33b878c3efdf20eef58ddd6f8a6cab99a24e7481f9a3b8f31b19b58d13372d8dea84dfb26b4097123ca25b1d38939e9b987d70eb3a23fe0fecf9f21fe6f8a2 SHA512 8536456d2f2886c7aa844e227272e8e4595ba3197575cba46b5f757b045976cf1c65a131532a191f2a8a82ca3d58642900d57fe7358518a237f29e84cb85e0f2
DIST wayland-0.5.0-lQa1knz8AQCh08NA8BeQrwJB9U3CfqcVAdHZYGRKIGuu.tar.gz 149548 BLAKE2B 274a6a4cc719a2f2599da2ce992f8405241c4cf1debe3d0e6966e0bcb56f699a8b5f04adfb79e4c9c1dc7e9bbf77241a8f04e85f18c3b8e340df0fb16550d745 SHA512 d3d87d5dd81141d69935f3f0acc6a91531a6b5f2fa275608f92d970c42d3a45c7c2fc3119ae40e49328d110dce460d64254879d4dc490efc465e72f5e79bd659
DIST wlroots-0.19.2-jmOlcsnnAwDFAeOamkUaxyHNhKngH4Ai5rrLSVbqA8LW.tar.gz 59231 BLAKE2B 58eb9e3ee58c843f996dd3781cf7e477f7dbd7627024ba52ab36f5d214be7039b0308a25de843a304bf02c600b1b444eeeac254ab26d2ca21fff6eb686da6ad6 SHA512 d8266b76874a6704d3f453ef7e657a75e6279706476e78565afc46c08d7cdc29acd88f1b27f70225a3c2398b03d9230ed1a322fc688a6ca6ae45875219287e50
DIST wlroots-0.19.3-jmOlcuL_AwBHhLCwpFsXbTizE3q9BugFmGX-XIxqcPMc.tar.gz 60063 BLAKE2B bb54018c92c27fb810b94030141e9d63f08ab3d03cf0a3110e8ec696a66dc3f784062f95a8a86ae4f770989ea07a080d531a8a942eac59f9d946bda6c44c3586 SHA512 3c8bc970076173cb33ea3fc5acbca4c45b2e37c7e18c58bc58bcf021066d6ac28266d5bb3fa2a741c0d01cb8b0c5499ddc0dcc3ea297ea700678f4c01d80e0b9
DIST wlroots-0.19.4-jmOlcqQMBABhKYH6NMSnoK1sohTbhc97_JP-hGg2UZaK.tar.gz 60640 BLAKE2B 5ba53c053b3f958352b3fccfd104b89850e360ebe92a524ab849992e29ff3e964f0d7cbc1da7f74003cb87670a02fb94ca241b0dc954d406aaf6fee1e6f292a8 SHA512 cf3564556c652318bbab9235e6ec8ea82a496e3ac1d1a18bd4f06f4a2d2191f946276d14da9783270d5e522a4bc14ad27c823912d6c8c3c592e9c34b08c5618d
DIST xkbcommon-0.3.0-VDqIe3K9AQB2fG5ZeRcMC9i7kfrp5m2rWgLrmdNn9azr.tar.gz 22730 BLAKE2B 6870fc2465e2b1ef4faa6330183a1dade4a4bcf36130113444e5221ff9c764db488304f2f25a603f2511c2562d55bf1011a5f8fe41a068e7e5b707e1d06c0792 SHA512 fe0dc46a8556f19c2ce1badbeee7576065cb56495b94b6d468ee6ed8667f9fef5377e26864b0c8e81c3a2718cfcaf8a4f5e13aab23a615f3a58ec639372fb758
DIST xkbcommon-0.4.0-VDqIe0i2AgDRsok2GpMFYJ8SVhQS10_PI2M_CnHXsJJZ.tar.gz 25404 BLAKE2B 074a738f81c358413903d5db1821919e2e56e247ca38a0ef1151b38d9ba730cdb5c7821c04ccab37c1f81d9530899749175960aa1efa901a5e183d7c745f571b SHA512 f107d6f8a0a77f9ed6d7bd518519a1052cfc90350bc1f1817b3e24725143b307b4c86be3f25c7cb0feb54273e5e5d9f12fd63db6f1b3f235c08e6c330acbdfe0

View File

@@ -0,0 +1,14 @@
--- a/build.zig
+++ b/build.zig
@@ -252,8 +252,9 @@
inline for (.{"river"}) |page| {
// Workaround for https://github.com/ziglang/zig/issues/16369
// Even passing a buffer to std.Build.Step.Run appears to be racy and occasionally deadlocks.
- const scdoc = b.addSystemCommand(&.{ "/bin/sh", "-c", "scdoc < doc/" ++ page ++ ".1.scd" });
+ // Fix: Ensure scdoc runs in the correct source directory to find .scd files
+ const scdoc = b.addSystemCommand(&.{ "/bin/sh", "-c", b.fmt("cd {s} && scdoc < doc/{s}.1.scd", .{ b.build_root.path orelse ".", page }) });
// This makes the caching work for the Workaround, and the extra argument is ignored by /bin/sh.
scdoc.addFileArg(b.path("doc/" ++ page ++ ".1.scd"));
const stdout = scdoc.captureStdOut();
b.getInstallStep().dependOn(&b.addInstallFile(stdout, "share/man/man1/" ++ page ++ ".1").step);

View File

@@ -0,0 +1,96 @@
# Copyright 2024-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="A dynamic tiling Wayland compositor"
HOMEPAGE="https://isaacfreund.com/software/river/ https://codeberg.org/river/river"
declare -g -r -A ZBS_DEPENDENCIES=(
[pixman-0.3.0-LClMnz2VAAAs7QSCGwLimV5VUYx0JFnX5xWU6HwtMuDX.tar.gz]='https://codeberg.org/ifreund/zig-pixman/archive/v0.3.0.tar.gz'
[wayland-0.5.0-lQa1knz8AQCh08NA8BeQrwJB9U3CfqcVAdHZYGRKIGuu.tar.gz]='https://codeberg.org/ifreund/zig-wayland/archive/v0.5.0.tar.gz'
[wlroots-0.19.4-jmOlcqQMBABhKYH6NMSnoK1sohTbhc97_JP-hGg2UZaK.tar.gz]='https://codeberg.org/ifreund/zig-wlroots/archive/v0.19.4.tar.gz'
[xkbcommon-0.4.0-VDqIe0i2AgDRsok2GpMFYJ8SVhQS10_PI2M_CnHXsJJZ.tar.gz]='https://codeberg.org/ifreund/zig-xkbcommon/archive/v0.4.0.tar.gz'
)
ZIG_SLOT="0.15"
inherit eapi9-ver zig
if [[ "${PV}" = "9999" ]]; then
inherit git-r3
EGIT_REPO_URI="https://codeberg.org/river/river.git"
else
# TODO verify-sig support
SRC_URI="
https://codeberg.org/river/river/releases/download/v${PV}/${P}.tar.gz
${ZBS_DEPENDENCIES_SRC_URI}
"
KEYWORDS="~amd64"
fi
# river: GPL-3-or-later
# zig-pixman, zig-wayland, zig-wlroots, zig-xkbcommon: MIT
LICENSE="GPL-3+ MIT"
SLOT="0"
IUSE="X +llvm man"
BDEPEND="
dev-libs/wayland-protocols
dev-util/wayland-scanner
man? ( app-text/scdoc )
|| (
dev-lang/zig:${ZIG_SLOT}[llvm(+)?]
dev-lang/zig-bin:${ZIG_SLOT}
)
"
DEPEND="
dev-libs/libevdev
dev-libs/libinput:=
dev-libs/wayland
gui-libs/wlroots:0.19[X?]
x11-libs/libxkbcommon[wayland,X?]
x11-libs/pixman
"
RDEPEND="${DEPEND}"
DOCS=( "README.md" )
PATCHES=(
"${FILESDIR}/river-0.4.1-fix-scdoc-path.patch"
)
src_unpack() {
if [[ "${PV}" = "9999" ]]; then
git-r3_src_unpack
zig_live_fetch
else
zig_src_unpack
fi
}
src_configure() {
local my_zbs_args=(
-Dstrip=false # Let Portage control this
-Dpie=true
-Dman-pages=$(usex man true false)
-Dxwayland=$(usex X true false)
)
zig_src_configure
}
src_install() {
zig_src_install
insinto /usr/share/wayland-sessions/
doins contrib/river.desktop
}
pkg_postinst() {
if ver_replacing -lt 0.4; then
ewarn "river 0.4.x is a significant rework of the compositor's architecture,"
ewarn "and requires significant manual migration. If you would like to stay on"
ewarn "river 0.3.x, simply add '>=gui-wm/river-0.4' to your package.mask to"
ewarn "use river-classic continuation of the 0.3.x branch."
fi
}