Install this version:
emerge -a =gui-apps/waywallen-0.4.3
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =gui-apps/waywallen-0.4.3
Or alternatively:
emerge --autounmask-write -a =gui-apps/waywallen-0.4.3
| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 0.4.3 | 8 | ~amd64 | 0 |
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LLVM_COMPAT=( 22 23 )
RUST_MIN_VER="1.88.0"
declare -A GIT_CRATES=(
[mlua-extra]='https://github.com/hypengw/mlua-extra;df1d282170dd1718b8aeff405638c18cedd435ca;mlua-extra-%commit%'
)
inherit cargo edo flag-o-matic llvm-r2 optfeature xdg
LUATO_COMMIT="df0c6f2d1cce2051b4711d36067619eda7933683"
NCREQUEST_COMMIT="cdaca8b5c523906fc0c9ed58cd5f2c7981b5a255"
QEXTRA_COMMIT="68f752fd38e3d7a923bf36d621f4a94be7b26fd8"
WAVSEN_COMMIT="529a01c632a28d57daaca2a3c8bd9fc6672df564"
RSTD_PV="0.1.5"
VVK_PV="0.1.0"
DESCRIPTION="Dynamic wallpaper manager for Linux"
HOMEPAGE="https://github.com/waywallen/waywallen"
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/SpiderX/portage-overlay/releases/download/${P}/${P}-crates.tar.xz
https://github.com/litocpp/luato/archive/${LUATO_COMMIT}.tar.gz -> luato-${LUATO_COMMIT}.tar.gz
https://github.com/hypengw/ncrequest/archive/${NCREQUEST_COMMIT}.tar.gz -> ncrequest-${NCREQUEST_COMMIT}.tar.gz
https://github.com/hypengw/QExtra/archive/${QEXTRA_COMMIT}.tar.gz -> qextra-${QEXTRA_COMMIT}.tar.gz
https://github.com/hypengw/wavsen/archive/${WAVSEN_COMMIT}.tar.gz -> wavsen-${WAVSEN_COMMIT}.tar.gz
https://github.com/litocpp/rstd/archive/v${RSTD_PV}.tar.gz -> rstd-${RSTD_PV}.tar.gz
https://github.com/litocpp/vvk/archive/v${VVK_PV}.tar.gz -> vvk-${VVK_PV}.tar.gz
https://www.lua.org/ftp/lua-5.5.1.tar.gz
${CARGO_CRATE_URIS}"
LICENSE="Apache-2.0 BSD CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 ZLIB"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="dev-qt/qtbase:6
dev-qt/qtdeclarative:6
dev-qt/qtgrpc:6
dev-qt/qttools:6
dev-qt/qtwebsockets:6
media-libs/libva
media-libs/mesa
media-libs/vulkan-loader
media-video/ffmpeg"
DEPEND="${RDEPEND}
dev-libs/QmlMaterial
dev-util/vulkan-headers"
BDEPEND="dev-build/lito"
PATCHES=( "${FILESDIR}/${PN}"-0.4.2-cargo-git-crate.patch
"${FILESDIR}/${PN}"-0.4.2-source-local.patch )
DOCS=( {LOGGING,README}.md )
pkg_setup() {
llvm-r2_pkg_setup
rust_pkg_setup
}
src_prepare() {
ln -s "${WORKDIR}/lua-5.5.1" "${WORKDIR}"/.lua || die
ln -s "${WORKDIR}/luato-${LUATO_COMMIT}" .luato || die
ln -s "${WORKDIR}/ncrequest-${NCREQUEST_COMMIT}" .ncrequest || die
ln -s "${WORKDIR}/QExtra-${QEXTRA_COMMIT}" .qextra || die
ln -s "${WORKDIR}/rstd-${RSTD_PV}" .rstd || die
ln -s "${WORKDIR}/vvk-${VVK_PV}" .vvk || die
ln -s "${WORKDIR}/wavsen-${WAVSEN_COMMIT}" .wavsen || die
ln -s "${WORKDIR}/ncrequest-${NCREQUEST_COMMIT}" \
"${WORKDIR}/QExtra-${QEXTRA_COMMIT}/.ncrequest" || die
eapply --directory="${WORKDIR}/luato-${LUATO_COMMIT}" \
"${FILESDIR}/${PN}"-0.4.2-luato-source-local.patch
eapply --directory="${WORKDIR}/QExtra-${QEXTRA_COMMIT}" \
"${FILESDIR}/${PN}"-0.4.2-qextra-source-local.patch
default
}
src_configure() {
append-cxxflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
cargo_src_configure
}
src_compile() {
edo lito build --profile plain --use-env-flags
}
src_test() {
local args=(
--profile plain
--offline
--use-env-flags
--build-dir "${WORKDIR}/test-build"
)
edo lito test --package waywallen-bridge "${args[@]}"
edo lito test --package waywallen-i18n "${args[@]}"
edo lito test --package waywallen-plugin-i18n "${args[@]}"
}
src_install() {
einstalldocs
local libdir
libdir="$(get_libdir)"
edo lito install --profile plain --no-build --prefix "${ED}/usr"
if [[ ${libdir} != lib ]]; then
edo mv "${ED}/usr/lib" "${ED}/usr/${libdir}"
sed -i "s|^libdir=\${prefix}/lib$|libdir=\${prefix}/${libdir}|" \
"${ED}/usr/${libdir}/pkgconfig/waywallen-bridge.pc" || die
fi
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "additional Wayland display integration" gui-libs/waywallen-display
optfeature "Wallpaper Engine wallpaper support" media-gfx/open-wallpaper-engine
}
dev-qt/qtbase:6 dev-qt/qtdeclarative:6 dev-qt/qtgrpc:6 dev-qt/qttools:6 dev-qt/qtwebsockets:6 media-libs/libva media-libs/mesa media-libs/vulkan-loader media-video/ffmpeg dev-libs/QmlMaterial dev-util/vulkan-headers
dev-qt/qtbase:6 dev-qt/qtdeclarative:6 dev-qt/qtgrpc:6 dev-qt/qttools:6 dev-qt/qtwebsockets:6 media-libs/libva media-libs/mesa media-libs/vulkan-loader media-video/ffmpeg
dev-build/lito