gui-wm/niri: add 25.11

Signed-off-by: Takuya Wakazono <pastalian46@gmail.com>
This commit is contained in:
Takuya Wakazono
2025-11-30 16:27:56 +09:00
parent 6cfe29563e
commit 8fce3f4c85
3 changed files with 160 additions and 8 deletions

View File

@@ -5,5 +5,7 @@ DIST niri-25.05.1-vendored-dependencies.tar.xz 48884152 BLAKE2B 210eff27af94a01d
DIST niri-25.05.1.tar.gz 716558 BLAKE2B 012c44351e6fa0e8631b3c44243da119cd03eb41a5ab81c787961df9f3456acb73c3cbb3639d620d19d8111e954797965c2a1bf4b0b3657142e3a1ab77413d7d SHA512 63f6f6e651d2a399259354f5a80fd8815c2be9c1c6b7d5038c03d89fac5966596d0da8b36d83fa7ea85b192e77e0ddfcf40ee9244a2c44cd55776a7a3f54de35
DIST niri-25.08-vendored-dependencies.tar.xz 54415568 BLAKE2B 906523cab0fd96ebb47c179efe93d34013ea8afc0b94603016cddfcb5fc4947610a26597c416e209aea48de3b13f8fafab821bcbeb9489135d2d5f7240a63085 SHA512 9d192525d5e07bffda2bfc8a0d9329055f2c3fa4ebe6b2897ec3fe9b9a74e1364120411534902eaf509e970c92d4791e676466bb9bdd0b93d7e5c5892ed11ce6
DIST niri-25.08.tar.gz 810302 BLAKE2B 39758d4ba4ff721d71a116cba0b8cdcd9e1f0a024257885879b5dc31bf439e91109133cc1650f3bd2376a6f8437fb07b4ee137b0b4d8ace98a1397c6b64d74ea SHA512 d8a10bb726d2e79f695544130cc9f55b1ac0f76dd9a9fb1cafb16cd7934b29a4fecf88656a3bc46ab6140aef7d2c58ed87f3ba43dfe8882df50de997283f2292
DIST niri-25.11-vendored-dependencies.tar.xz 56722340 BLAKE2B ffcdc71c03b7c5fb64640f92f19ed6cccedb44c68eb10a0952e70f2190182eb492d10052bdfef2ae1c8d677c8611bd4dce51df6c8dfa1eb825861cf2f21653b0 SHA512 6dda3f5e303e3488feffe9d406a2cd9f2d1175697b5d44702906603cc9f9fe412fd3639da50e42a238222b8ef2910d61032fb04fb9c12b2cad7aa325a1a63479
DIST niri-25.11.tar.gz 915604 BLAKE2B 1ae432534044bbc4ab34d30d1c52e2f90e0391e5d04611c1b7ec60ccb1ba6fe87ff4c28f82de26d8eee2c839deb37c8096deec2ee7819884a23bfa4f3746c147 SHA512 88adbfc1b993d692e981d811dbfcb0898fefbc184c5659a14b4f61cf9e1dcf5c9eb100e68807710ed9ed89799277fafbecf9fc3057c41d93c19dbaf96350a697
DIST pipewire-rs-93138d01b23628521b29b5604bbebe991cba4c65.gl.tar.gz 114280 BLAKE2B 08cdbb0d837baf715c42b350f1d1f45416b4ad7aa1fb2bd3be7bcba3045d37b80b96b0a20be251314bdce19daae0b4614da8bda1b80355825fbe3bbd4fee65ae SHA512 83ad47c8452752f50b81cb8a9bc4765504721935500466007f47203fe1d0d476a07c6b5757eb854468a3a43a134256fa2ee047c17b6a29f6555b20df1a43ab43
DIST smithay-20d2dacd71394b5f96f6ace0a70a6f20dc62c0c6.gh.tar.gz 793097 BLAKE2B f02b8a69ad7a942ee181c6f255a16573845763a9ea976ee518e72e2a582a615d1b2547bfdf5cf1b4b0f2f8a9aa3e85787eb9271c28adf2665f341e01cd47971f SHA512 aad183a64d6fc80b3bf2d1f6540ca31e2e79e934c386926befea21e7b1eb6a24fe040a55464f7d275af1c82b34746d1d7ee3ed97ca96b50e2fe645ab8b2e94db

View File

@@ -0,0 +1,150 @@
# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
"
LLVM_COMPAT=( {18..21} )
RUST_MIN_VER="1.82.0"
inherit cargo llvm-r2 optfeature shell-completion systemd
DESCRIPTION="Scrollable-tiling Wayland compositor"
HOMEPAGE="https://github.com/YaLTeR/niri"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/YaLTeR/niri.git"
else
SRC_URI="
https://github.com/YaLTeR/niri/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/YaLTeR/niri/releases/download/v${PV}/${P}-vendored-dependencies.tar.xz
${CARGO_CRATE_URIS}
"
KEYWORDS="~amd64"
# used for version string
export NIRI_BUILD_COMMIT="b35bcae"
fi
LICENSE="GPL-3+"
# Dependent crate licenses
LICENSE+="
Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT MPL-2.0
Unicode-3.0 ZLIB
"
SLOT="0"
IUSE="+dbus screencast systemd"
REQUIRED_USE="
screencast? ( dbus )
systemd? ( dbus )
"
DEPEND="
dev-libs/glib:2
dev-libs/libinput:=
dev-libs/wayland
<media-libs/libdisplay-info-0.4.0:=
media-libs/mesa
sys-auth/seatd:=
virtual/libudev:=
x11-libs/cairo
x11-libs/libxkbcommon
x11-libs/pango
x11-libs/pixman
screencast? ( media-video/pipewire:= )
"
RDEPEND="
${DEPEND}
screencast? ( sys-apps/xdg-desktop-portal-gnome )
"
# libclang is required for bindgen
BDEPEND="
screencast? ( $(llvm_gen_dep 'llvm-core/clang:${LLVM_SLOT}') )
"
ECARGO_VENDOR="${WORKDIR}/vendor"
QA_FLAGS_IGNORED="usr/bin/niri"
pkg_setup() {
llvm-r2_pkg_setup
rust_pkg_setup
}
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
cargo_live_src_unpack
else
cargo_src_unpack
fi
}
src_prepare() {
sed -i 's/git = "[^ ]*"/version = "*"/' Cargo.toml || die
# niri-session doesn't work on OpenRC
if ! use systemd; then
sed -i 's/niri-session/niri --session/' resources/niri.desktop || die
fi
default
}
src_configure() {
local myfeatures=(
$(usev dbus)
$(usev screencast xdp-gnome-screencast)
$(usev systemd)
)
cargo_src_configure --no-default-features
}
src_compile() {
cargo_src_compile
"$(cargo_target_dir)"/niri completions bash > niri || die
"$(cargo_target_dir)"/niri completions fish > niri.fish || die
"$(cargo_target_dir)"/niri completions zsh > _niri || die
}
src_install() {
cargo_src_install
dobin resources/niri-session
systemd_douserunit resources/niri{.service,-shutdown.target}
insinto /usr/share/wayland-sessions
doins resources/niri.desktop
insinto /usr/share/xdg-desktop-portal
doins resources/niri-portals.conf
dobashcomp niri
dofishcomp niri.fish
dozshcomp _niri
}
src_test() {
# tests create a wayland socket in the xdg runtime dir
local -x XDG_RUNTIME_DIR="${T}/xdg"
mkdir "${XDG_RUNTIME_DIR}" || die
chmod 0700 "${XDG_RUNTIME_DIR}" || die
# bug 950626
# https://yalter.github.io/niri/Packaging-niri.html#running-tests
local -x RAYON_NUM_THREADS=2
local skip=(
# requires surfacesless EGL to be available
--skip=::egl
)
cargo_src_test -- --test-threads=2 "${skip[@]}"
}
pkg_postinst() {
optfeature "Default application launcher" "gui-apps/fuzzel"
optfeature "Default status bar" "gui-apps/waybar"
optfeature "Default terminal" "x11-terms/alacritty"
optfeature "Xwayland support" "gui-apps/xwayland-satellite"
}

View File

@@ -24,6 +24,9 @@ else
${CARGO_CRATE_URIS}
"
KEYWORDS="~amd64"
# used for version string
export NIRI_BUILD_COMMIT="b35bcae"
fi
LICENSE="GPL-3+"
@@ -66,6 +69,11 @@ ECARGO_VENDOR="${WORKDIR}/vendor"
QA_FLAGS_IGNORED="usr/bin/niri"
pkg_setup() {
llvm-r2_pkg_setup
rust_pkg_setup
}
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
@@ -75,11 +83,6 @@ src_unpack() {
fi
}
pkg_setup() {
llvm-r2_pkg_setup
rust_pkg_setup
}
src_prepare() {
sed -i 's/git = "[^ ]*"/version = "*"/' Cargo.toml || die
# niri-session doesn't work on OpenRC
@@ -99,9 +102,6 @@ src_configure() {
}
src_compile() {
if [[ ${PV} != 9999 ]]; then
local -x NIRI_BUILD_COMMIT="01be0e6"
fi
cargo_src_compile
"$(cargo_target_dir)"/niri completions bash > niri || die