blob: 74b2ac7bb2c72dfc4d122d55bd44ec3a60d23027 (
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
|
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-irc/quassel/quassel-9999.ebuild,v 1.37 2010/07/02 07:12:50 scarabeus Exp $
EAPI="2"
inherit cmake-utils eutils git
EGIT_REPO_URI="git://git.quassel-irc.org/quassel.git"
EGIT_BRANCH="master"
DESCRIPTION="Qt4/KDE4 IRC client suppporting a remote daemon for 24/7 connectivity."
HOMEPAGE="http://quassel-irc.org/"
LICENSE="GPL-3"
KEYWORDS=""
SLOT="0"
IUSE="ayatana dbus debug kde monolithic phonon postgres +server +ssl webkit X"
SERVER_RDEPEND="
!postgres? ( x11-libs/qt-sql:4[sqlite] dev-db/sqlite[threadsafe] )
postgres? ( x11-libs/qt-sql:4[postgres] )
x11-libs/qt-script:4
"
GUI_RDEPEND="
x11-libs/qt-gui:4
ayatana? ( dev-libs/libindicate-qt )
kde? (
>=kde-base/kdelibs-4.3
>=kde-base/oxygen-icons-4.3
ayatana? ( kde-misc/plasma-widget-message-indicator )
)
phonon? ( || ( media-sound/phonon x11-libs/qt-phonon ) )
webkit? ( x11-libs/qt-webkit:4 )
"
RDEPEND="
dbus? ( x11-libs/qt-dbus:4 )
monolithic? (
${SERVER_RDEPEND}
${GUI_RDEPEND}
)
!monolithic? (
server? ( ${SERVER_RDEPEND} )
X? ( ${GUI_RDEPEND} )
)
ssl? ( x11-libs/qt-core:4[ssl] )
!monolithic? (
!server? (
!X? (
${SERVER_RDEPEND}
${GUI_RDEPEND}
)
)
)
"
DEPEND="${RDEPEND}"
DOCS="AUTHORS ChangeLog README"
pkg_setup() {
if ! use monolithic && ! use server && ! use X ; then
ewarn "You have to build at least one of the monolithic client (USE=monolithic),"
ewarn "the quasselclient (USE=X) or the quasselcore (USE=server)."
echo
ewarn "Enabling monolithic by default."
FORCED_MONO="yes"
fi
}
src_configure() {
local mycmakeargs=(
$(cmake-utils_use_with ayatana LIBINDICATE)
$(cmake-utils_use_want X QTCLIENT)
$(cmake-utils_use_want server CORE)
$(cmake-utils_use_want monolithic MONO)
$(cmake-utils_use_with webkit)
$(cmake-utils_use_with phonon)
$(cmake-utils_use_with kde)
$(cmake-utils_use_with dbus)
$(cmake-utils_use_with ssl OPENSSL)
$(cmake-utils_use_with !kde OXYGEN)
"-DEMBED_DATA=OFF"
)
[[ ${FORCED_MONO} == "yes" ]] && mycmakeargs+=( '-DWANT_MONO=ON' )
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
if use server ; then
# prepare folders in /var/
dodir /var/lib/${PN}/
keepdir /var/lib/${PN}/
fowners ${PN}:${PN} /var/lib/${PN}/
# init scripts
newinitd "${FILESDIR}"/quasselcore.init quasselcore || die "newinitd failed"
newconfd "${FILESDIR}"/quasselcore.conf quasselcore || die "newconfd failed"
# logrotate
insinto /etc/logrotate.d
newins "${FILESDIR}/quassel.logrotate" quassel || die "newins failed"
fi
}
pkg_preinst() {
if use server; then
# create quassel user
enewuser ${PN} -1 -1 /var/lib/${PN} "${PN}"
fi
}
pkg_postinst() {
if use server && use ssl; then
# inform about genreating ssl certificate
elog "If you want to use ssl connection to your core, please generate ssl key, with folowing command:"
elog "# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /var/lib/${PN}/quasselCert.pem -ou"
echo
elog "Also remember that with the above command the key is valid only for 1 year."
fi
if ( use monolithic || [[ ${FORCED_MONO} == "yes" ]] ) && use ssl ; then
echo
elog "Information on how to enable SSL support for client/core connections"
elog "is available at http://bugs.quassel-irc.org/wiki/quassel-irc."
fi
# temporary info mesage
if use server; then
ewarn "Please note that all configuration moved from"
ewarn "/home/\${QUASSEL_USER}/.config/quassel-irc.org/"
ewarn "to: /var/lib/${PN}/."
echo
ewarn "For migration. Stop the core, move the files to new location and then start server again."
fi
}
|