gui-apps/waywallen - 0.4.3 (nest)

Search

Install

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

Package Information

Description:
Dynamic wallpaper manager for Linux
Homepage:
https://github.com/waywallen/waywallen
License:
Apache-2.0 BSD CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 ZLIB

Ebuild Details

Version EAPI Keywords Slot
0.4.3 8 ~amd64 0
View Raw Ebuild
# 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
}

Inherited Eclasses

edo
xdg

Dependencies

DEPEND

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

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

BDEPEND

dev-build/lito

Manifest for 0.4.3

Type File Size Source URLs
DIST lua-5.5.1.tar.gz 398643 bytes https://www.lua.org/ftp/lua-5.5.1.tar.gz
DIST luato-df0c6f2d1cce2051b4711d36067619eda7933683.tar.gz 46066 bytes https://github.com/litocpp/luato/archive/df0c6f2d1cce2051b4711d36067619eda7933683.tar.gz
DIST ncrequest-cdaca8b5c523906fc0c9ed58cd5f2c7981b5a255.tar.gz 81074 bytes https://github.com/hypengw/ncrequest/archive/cdaca8b5c523906fc0c9ed58cd5f2c7981b5a255.tar.gz
DIST qextra-68f752fd38e3d7a923bf36d621f4a94be7b26fd8.tar.gz 39794 bytes https://github.com/hypengw/QExtra/archive/68f752fd38e3d7a923bf36d621f4a94be7b26fd8.tar.gz
DIST rstd-0.1.5.tar.gz 787396 bytes https://github.com/litocpp/rstd/archive/v0.1.5.tar.gz
DIST vvk-0.1.0.tar.gz 389709 bytes https://github.com/litocpp/vvk/archive/v0.1.0.tar.gz
DIST wavsen-529a01c632a28d57daaca2a3c8bd9fc6672df564.tar.gz 102990 bytes https://github.com/hypengw/wavsen/archive/529a01c632a28d57daaca2a3c8bd9fc6672df564.tar.gz
DIST waywallen-0.4.3-crates.tar.xz 29474536 bytes https://github.com/SpiderX/portage-overlay/releases/download/waywallen-0.4.3/waywallen-0.4.3-crates.tar.xz
DIST waywallen-0.4.3.tar.gz 920818 bytes https://github.com/waywallen/waywallen/archive/v0.4.3.tar.gz