summaryrefslogtreecommitdiff
path: root/gui-libs/pixdecor/pixdecor-0.1.0_p20261006-r6.ebuild
blob: 47fefd8692139ee5108b76cb5bd51e11d6387fb9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# Hedronfire (2026-10-29): sculpted inner padding (border_padding) closed by a bead, on top of r5 (SrcUX Sprint 1 decoration defaults)
# Copyright 2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit meson

DESCRIPTION="Wayfire decorator with rounded corners, shadows, and animated effects"
HOMEPAGE="https://github.com/soreau/pixdecor"
# Snapshot of the commit pixdecor-9999-r5 pins (2026-10-06); upstream has no releases.
COMMIT="222e61d971b045a821cf212a6e221367c05d966b"
SRC_URI="https://github.com/soreau/pixdecor/archive/${COMMIT}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${PN}-${COMMIT}"

PATCHES=(
	"${FILESDIR}/${PN}-sculpted-frames.patch"
	"${FILESDIR}/${PN}-shell-theme.patch"
	"${FILESDIR}/${PN}-shade-input.patch"
	"${FILESDIR}/${PN}-render-hook-tracking.patch"
	"${FILESDIR}/${PN}-shade-deco-lifetime.patch"
	"${FILESDIR}/${PN}-shade-output-lifetime.patch"
	"${FILESDIR}/${PN}-theme-ipc-validate.patch"
	"${FILESDIR}/${PN}-corner-resize.patch"
	"${FILESDIR}/${PN}-theme-owner.patch"
	"${FILESDIR}/pixdecor-theme-init.patch"
	"${FILESDIR}/pixdecor-shade-callback-lifetime.patch"
	"${FILESDIR}/pixdecor-srcux-defaults.patch"
	"${FILESDIR}/pixdecor-sculpted-padding.patch"
)

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
# Upstream has no test suite.
RESTRICT="test"

RDEPEND="
	dev-libs/glib:2
	dev-libs/wayland
	gui-libs/wf-config:=
	gui-libs/wlroots:0.20=
	>=gui-wm/wayfire-0.11.0:=[gles3]
	media-libs/libglvnd
	x11-libs/cairo
	x11-libs/pango
	x11-libs/pixman
"
DEPEND="
	${RDEPEND}
	media-libs/glm
	sys-kernel/linux-headers
"
BDEPEND="
	sys-devel/gettext
	virtual/pkgconfig
"

src_install() {
    meson_src_install
    dodoc README.md
}

pkg_postinst() {
	elog "Add pixdecor to the plugins list in the [core] section of wayfire.ini."
	elog "Disable other decoration plugins; Pixdecor owns window frames."
	elog "Frame settings are in WCM -> Pix Decoration -> Window frames."
	elog "Sculpted adds border depth, pinstripe color/opacity and inner padding."
	elog "border_padding (default 0) ends the bevel before the window and closes it with a bead;"
	elog "with an 11 px border, try border_padding = 7 in [pixdecor]."
}