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
|
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/gnome-extra/gnome-screensaver/gnome-screensaver-2.30.2-r1.ebuild,v 1.10 2012/05/05 06:25:24 jdhore Exp $
EAPI="2"
inherit eutils gnome2 multilib autotools
DESCRIPTION="Replaces xscreensaver, integrating with the desktop."
HOMEPAGE="http://live.gnome.org/GnomeScreensaver"
SRC_URI="${SRC_URI}
branding? ( http://www.gentoo.org/images/gentoo-logo.svg )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
KERNEL_IUSE="kernel_linux"
IUSE="branding debug doc libnotify opengl pam $KERNEL_IUSE"
RDEPEND=">=gnome-base/gconf-2.6.1:2
>=x11-libs/gtk+-2.14.0:2
>=gnome-base/gnome-desktop-2.29.0:2
>=gnome-base/gnome-menus-2.12:0
>=dev-libs/glib-2.15:2
>=gnome-base/libgnomekbd-0.1
>=dev-libs/dbus-glib-0.71
libnotify? ( x11-libs/libnotify )
opengl? ( virtual/opengl )
pam? ( virtual/pam )
!pam? ( kernel_linux? ( sys-apps/shadow ) )
x11-libs/libX11
x11-libs/libXext
x11-libs/libXrandr
x11-libs/libXScrnSaver
x11-libs/libXxf86misc
x11-libs/libXxf86vm"
DEPEND="${RDEPEND}
virtual/pkgconfig
>=dev-util/intltool-0.40
doc? (
app-text/xmlto
~app-text/docbook-xml-dtd-4.1.2
~app-text/docbook-xml-dtd-4.4 )
x11-proto/xextproto
x11-proto/randrproto
x11-proto/scrnsaverproto
x11-proto/xf86miscproto
gnome-base/gnome-common"
DOCS="AUTHORS ChangeLog HACKING NEWS README TODO"
pkg_setup() {
G2CONF="${G2CONF}
$(use_enable doc docbook-docs)
$(use_enable debug)
$(use_with libnotify)
$(use_with opengl gl)
$(use_enable pam)
--enable-locking
--with-xf86gamma-ext
--with-kbd-layout-indicator
--with-xscreensaverdir=/usr/share/xscreensaver/config
--with-xscreensaverhackdir=/usr/$(get_libdir)/misc/xscreensaver"
}
src_prepare() {
# libnotify support was removed from trunk, so not needed for next release
epatch "${FILESDIR}/${P}-libnotify-0.7.patch"
# The dialog uses libxklavier directly, so link against it, upstream bug #634949
epatch "${FILESDIR}/${P}-libxklavier-configure.patch"
# Fix QA warning, upstream bug #637676
epatch "${FILESDIR}/${P}-popsquares-header.patch"
# Fix fading on nvidia setups, upstream bugs #610294 and #618932
epatch "${FILESDIR}/${P}-nvidia-fade.patch"
epatch "${FILESDIR}/${P}-nvidia-fade2.patch"
# Don't run twice, upstream bug #642462
epatch "${FILESDIR}/${P}-prevent-twice.patch"
# Don't user name owner proxies for SessionManager, upstream bug #611207
epatch "${FILESDIR}/${P}-name-manager.patch"
# Fix intltoolize broken file, see upstream #577133
sed "s:'\^\$\$lang\$\$':\^\$\$lang\$\$:g" -i po/Makefile.in.in \
|| die "sed failed"
intltoolize --force --copy --automake || die "intltoolize failed"
eautoreconf
gnome2_src_prepare
}
src_install() {
gnome2_src_install
# Install the conversion script in the documentation
dodoc "${S}/data/migrate-xscreensaver-config.sh"
dodoc "${S}/data/xscreensaver-config.xsl"
# Conversion information
sed -e "s:\${PF}:${PF}:" < "${FILESDIR}/xss-conversion-2.txt" \
> "${S}/xss-conversion.txt" || die "sed failed"
dodoc "${S}/xss-conversion.txt"
# Non PAM users will need this suid to read the password hashes.
# OpenPAM users will probably need this too when
# http://bugzilla.gnome.org/show_bug.cgi?id=370847
# is fixed.
if ! use pam ; then
fperms u+s /usr/libexec/gnome-screensaver-dialog
fi
if use branding ; then
insinto /usr/share/pixmaps/
doins "${DISTDIR}/gentoo-logo.svg" || die "doins 1 failed"
insinto /usr/share/applications/screensavers/
doins "${FILESDIR}/gentoologo-floaters.desktop" || die "doins 2 failed"
fi
}
pkg_postinst() {
gnome2_pkg_postinst
if has_version "<x11-base/xorg-server-1.5.3-r4" ; then
ewarn "You have a too old xorg-server installation. This will cause"
ewarn "gnome-screensaver to eat up your CPU. Please consider upgrading."
echo
fi
if has_version "<x11-misc/xscreensaver-4.22-r2" ; then
ewarn "You have xscreensaver installed, you probably want to disable it."
ewarn "To prevent a duplicate screensaver entry in the menu, you need to"
ewarn "build xscreensaver with -gnome in the USE flags."
ewarn "echo \"x11-misc/xscreensaver -gnome\" >> /etc/portage/package.use"
echo
fi
elog "Information for converting screensavers is located in "
elog "/usr/share/doc/${PF}/xss-conversion.txt.${PORTAGE_COMPRESS}"
}
|