blob: 5e0c5ca5953e30c70e1f2bca6bf9c7a31f705c42 (
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( lua5-{1..4} luajit )
inherit cmake desktop lua-single pax-utils
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/awesomeWM/${PN}.git"
else
SRC_URI="https://github.com/awesomeWM/awesome-releases/raw/master/${P}.tar.xz"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="A dynamic floating and tiling window manager"
HOMEPAGE="https://awesomewm.org/"
LICENSE="GPL-2"
SLOT="0"
IUSE="dbus doc gnome test"
REQUIRED_USE="${LUA_REQUIRED_USE}"
# Doesn't play nicely with the sandbox + requires an active D-BUS session
RESTRICT="test"
RDEPEND="${LUA_DEPS}
dev-libs/glib:2
dev-libs/libxdg-basedir
$(lua_gen_cond_dep 'dev-lua/lgi[${LUA_USEDEP}]')
x11-libs/cairo[X,xcb(+)]
x11-libs/gdk-pixbuf:2
x11-libs/libxcb[xkb]
x11-libs/pango[introspection]
x11-libs/startup-notification
x11-libs/xcb-util
x11-libs/xcb-util-cursor
x11-libs/xcb-util-keysyms
x11-libs/xcb-util-wm
x11-libs/xcb-util-xrm
x11-libs/libXcursor
x11-libs/libxkbcommon[X]
x11-libs/libX11
dbus? ( sys-apps/dbus )"
DEPEND="${RDEPEND}
x11-base/xcb-proto
x11-base/xorg-proto
test? (
x11-base/xorg-server[xvfb]
$(lua_gen_cond_dep '
dev-lua/busted[${LUA_USEDEP}]
dev-lua/luacheck[${LUA_USEDEP}]
')
)"
# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
# ldoc is used by invoking its executable, hence no need for LUA_SINGLE_USEDEP.
# On the other hand, it means that we should explicitly depend on a version
# migrated to Lua eclasses so that during the upgrade from unslotted
# to slotted dev-lang/lua, the package manager knows to emerge migrated
# ldoc before migrated awesome.
BDEPEND="app-text/asciidoc
media-gfx/imagemagick[png]
virtual/pkgconfig
doc? ( >=dev-lua/ldoc-1.4.6-r100 )
test? (
app-shells/zsh
x11-apps/xeyes
)"
# Skip installation of README.md by einstalldocs, which leads to broken symlink
DOCS=()
PATCHES=(
"${FILESDIR}"/${PN}-4.0-convert-path.patch # bug #408025
"${FILESDIR}"/${PN}-xsession.patch # bug #408025
"${FILESDIR}"/${PN}-4.0-cflag-cleanup.patch # bug #509658
)
src_configure() {
# Compression of manpages is handled by portage.
# WITH_DBUS uses AutoOption.cmake which currently does not
# understand yes/no (or indeed any values other than ON, OFF
# or AUTO).
local mycmakeargs=(
-DSYSCONFDIR="${EPREFIX}"/etc
-DCOMPRESS_MANPAGES=OFF
-DWITH_DBUS=$(usex dbus ON OFF)
-DGENERATE_DOC=$(usex doc)
-DAWESOME_DOC_PATH="${EPREFIX}"/usr/share/doc/${PF}
-DLUA_INCLUDE_DIR="$(lua_get_include_dir)"
-DLUA_LIBRARY="$(lua_get_shared_lib)"
)
cmake_src_configure
}
src_test() {
# awesome's test suite starts Xvfb by itself, no need for virtualx eclass
HEADLESS=1 cmake_build check -j1
}
src_install() {
cmake_src_install
rm "${ED}"/usr/share/doc/${PF}/LICENSE || die
pax-mark m "${ED}"/usr/bin/awesome
exeinto /etc/X11/Sessions
newexe "${FILESDIR}"/${PN}-session ${PN}
# GNOME-based awesome
if use gnome; then
# GNOME session
insinto /usr/share/gnome-session/sessions
newins "${FILESDIR}"/${PN}-gnome-3.session ${PN}-gnome.session
# Application launcher
domenu "${FILESDIR}"/${PN}-gnome.desktop
# X Session
insinto /usr/share/xsessions
doins "${FILESDIR}"/${PN}-gnome-xsession.desktop
fi
# This directory contains SVG images which we don't want to compress
use doc && docompress -x /usr/share/doc/${PF}/doc
}
pkg_postinst() {
# bug #447308
if use gnome; then
elog "You have enabled the gnome USE flag."
elog "Please note that quitting awesome won't kill your gnome session."
elog "To really quit the session, you should bind your quit key"
elog "to the following command:"
elog " gnome-session-quit --logout"
elog "For more info visit"
elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
fi
# bug #440724
elog "If you are having issues with Java application windows being"
elog "completely blank, try installing"
elog " x11-misc/wmname"
elog "and setting the WM name to LG3D."
elog "For more info visit"
elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
}
|