summaryrefslogtreecommitdiff
blob: 7bb86f006c6e536e06398a64a5eda6c2b4666c91 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

inherit meson xdg-utils

DESCRIPTION="Enlightenment window manager"
HOMEPAGE="https://www.enlightenment.org/"
SRC_URI="https://download.enlightenment.org/rel/apps/${PN}/${P}.tar.xz"

LICENSE="BSD-2"
SLOT="0.17/${PV%%_*}"
KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86"

E_CONF_MODS=(
	applications bindings dialogs display
	interaction intl menus paths
	performance randr shelves theme
	window-manipulation window-remembers
)

E_NORM_MODS=(
	appmenu backlight battery bluez4
	clock conf cpufreq everything
	fileman fileman-opinfo gadman geolocation
	ibar ibox lokker luncher
	mixer msgbus music-control notification
	packagekit pager pager-plain quickaccess
	shot start syscon sysinfo
	systray tasks teamwork temperature
	tiling time vkbd winlist
	wireless wizard wl-buffer wl-desktop-shell
	wl-drm wl-text-input wl-weekeyboard wl-wl
	wl-x11 xkbswitch xwayland
)

IUSE_E_MODULES=(
	${E_CONF_MODS[@]/#/enlightenment_modules_conf-}
	${E_NORM_MODS[@]/#/enlightenment_modules_}
)

IUSE="acpi connman doc nls pam systemd udisks wayland ${IUSE_E_MODULES[@]/#/+}"

RDEPEND="
	>=dev-libs/efl-1.20.5[eet,X]
	virtual/udev
	x11-libs/libXext
	x11-libs/libxcb
	x11-libs/xcb-util-keysyms
	x11-misc/xkeyboard-config
	acpi? ( sys-power/acpid )
	connman? ( net-misc/connman )
	pam? ( sys-libs/pam )
	systemd? ( sys-apps/systemd )
	udisks? ( sys-fs/udisks:2 )
	wayland? (
		dev-libs/efl[drm,wayland]
		>=dev-libs/wayland-1.12.0
		x11-libs/libxkbcommon
		x11-libs/pixman
	)
"
DEPEND="
	${RDEPEND}
	virtual/pkgconfig
	nls? ( sys-devel/gettext )
"

src_prepare() {
	default

	xdg_environment_reset

	sed -i 's/Categories=Audio/Categories=AudioVideo/g' src/modules/mixer/emixer.desktop || die
}

src_configure() {
	local emesonargs=(
		-D device-udev=true
		-D install-sysactions=false
		-D mount-udisks=$(usex udisks true false)
		-D connman=$(usex connman true false)
		-D nls=$(usex nls true false)
		-D pam=$(usex pam true false)
		-D systemd=$(usex systemd true false)
		-D wayland=$(usex wayland true false)
	)

	local u c
	for u in ${IUSE_E_MODULES[@]} ; do
		c=${u#enlightenment_modules_}

		case ${c} in
		wl-*|xwayland)
			if ! use wayland ; then
				emesonargs+=( -D ${c}=false )
				continue
			fi

		;;
		esac

		emesonargs+=( -D ${c}=$(usex ${u} true false) )

	done

	meson_src_configure
}

src_install() {
	insinto /etc/enlightenment
	newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf

	if use doc ; then
		local HTML_DOCS=( doc/. )
	fi

	meson_src_install
}

pkg_postinst() {
	xdg_desktop_database_update
	xdg_mimeinfo_database_update
}

pkg_postrm() {
	xdg_desktop_database_update
	xdg_mimeinfo_database_update
}