COMMENT =	A scrollable-tiling Wayland compositor

V =		25.02.20250304

# Use https://github.com/tobhe/niri/tree/openbsd-port until all
# the dependency fixes have propagated to the actual rust packages
GH_ACCOUNT = tobhe
GH_PROJECT = niri
GH_COMMIT = f95cd1c8e1e0701f0f280ba19d56c61290c7508b
DISTNAME = ${GH_PROJECT}-${V}

# Bundled dependencies
SITES += ${SITES_GITHUB}
DISTFILES = ${GH_DISTFILE}

EXTRACT_SUFX = .tar.gz

DRM_COMMIT = d574dfb0ad6aea62a3ab3ebc3870a931ec49d422
SITES.drm = https://github.com/tobhe/drm-rs/archive/
DISTFILES.drm = drm-rs-${DRM_COMMIT:C/(........).*/\1/}{${DRM_COMMIT}}${EXTRACT_SUFX}

LIBC_COMMIT = a367ad93e810b0f61d8eb531291b9a1d5f1cd865
SITES.libc = https://github.com/tobhe/libc-rs/archive/
DISTFILES.libc+= libc-rs-${LIBC_COMMIT:C/(........).*/\1/}{${LIBC_COMMIT}}${EXTRACT_SUFX}

SMITHAY_COMMIT = efcaf42722ec03dafbdb014b55b9598a4bfe024d
SITES.smithay = https://github.com/tobhe/smithay/archive/
DISTFILES.smithay += smithay-${SMITHAY_COMMIT:C/(........).*/\1/}{${SMITHAY_COMMIT}}${EXTRACT_SUFX}

XKB_COMMIT = dc5f42e20156fcccf5d948cca775882d19e5d1ae
SITES.xkb = https://github.com/tobhe/xkbcommon-dl/archive/
DISTFILES.xkb += xkbcommon-dl-${XKB_COMMIT:C/(........).*/\1/}{${XKB_COMMIT}}${EXTRACT_SUFX}

# MODCARGO_CRATES_UPDATE = drm libc smithay xkbcommon-dl

CATEGORIES =	wayland

MAINTAINER =	Tobias Heider <tobhe@openbsd.org>

# GPLv3 only
PERMIT_PACKAGE = Yes

MODULES =	devel/cargo

CONFIGURE_STYLE =	cargo

BUILD_DEPENDS = wayland/wayland-protocols

LIB_DEPENDS =	devel/pango \
		devel/glib2 \
		graphics/cairo \
		sysutils/libdisplay-info \
		sysutils/libudev-openbsd \
		sysutils/seatd \
		wayland/wayland \
		wayland/libinput-openbsd \
		x11/xkbcommon

WANTLIB =	${MODCARGO_WANTLIB}
WANTLIB +=	cairo display-info gbm glib-2.0 gobject-2.0 input m
WANTLIB +=	pango-1.0 pangocairo-1.0 pixman-1 seat udev xkbcommon

post-install:
	${INSTALL_DATA} ${WRKSRC}/resources/default-config.kdl ${PREFIX}/share/examples/niri
	${INSTALL_SCRIPT} ${FILESDIR}/startniri.sh ${PREFIX}/bin

.include "crates.inc"
.include <bsd.port.mk>
