blob: 2d148b12a7733d2f3ec470ac4b7eda1260bf4a28 (
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
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-misc/rss-glx/rss-glx-0.7.6.ebuild,v 1.20 2005/07/13 14:34:12 swegener Exp $
inherit flag-o-matic eutils
MY_P=${PN}_${PV}
S=${WORKDIR}/${MY_P}
DESCRIPTION="Really Slick Screensavers using OpenGL for XScreenSaver"
HOMEPAGE="http://rss-glx.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="x86 ppc amd64 ~sparc"
IUSE="kde sse 3dnow openal"
DEPEND="virtual/x11
virtual/opengl
>=media-gfx/imagemagick-5.5.7
kde? ( || ( kde-base/kdeartwork-meta kde-base/kdeartwork ) )
!kde? ( x11-misc/xscreensaver )
openal? ( media-libs/openal )"
src_unpack() {
unpack ${A}
EPATCH_OPTS="-d ${S}" epatch ${FILESDIR}/${PN}-0.7.4-kdedesktop.patch
}
src_compile() {
filter-flags -fPIC
local myconf
myconf="${myconf} --bindir=/usr/lib/xscreensaver" \
myconf="${myconf} --with-configdir=/usr/share/control-center/screensavers/" \
if use kde; then
find . -name '*.desktop' -exec \
sed -i \
-e 's:Exec=kxsrun \(.*\):Exec=kxsrun \1:g' \
-e 's:Exec=kxsconfig \(.*\):Exec=kxsconfig \1:g' \
'{}' \
\; \
|| die "couldnt sed desktop files"
myconf="${myconf} --with-kdessconfigdir=/usr/share/applnk/System/ScreenSavers"
fi
econf \
`use_enable sse` \
`use_enable 3dnow` \
`use_enable openal sound` \
${myconf} || die
emake || die
}
src_install() {
make DESTDIR=${D} install || die "install failed"
dodoc COPYING INSTALL README README.xscreensaver
# symlink to satisfy kde's kxs*
use kde && dosym /usr/share/control-center/screensavers /usr/lib/xscreensaver/config
}
pkg_postinst() {
local XSCREENSAVER_CONF="${ROOT}/usr/X11R6/lib/X11/app-defaults/XScreenSaver"
if [ -f ${XSCREENSAVER_CONF} -a -z "`grep 'Euphoria' ${XSCREENSAVER_CONF}`" ]; then
einfo "Adding Really Slick Screensavers to XScreenSaver"
sed -e '/*programs:/a\
GL: \"Cyclone\" cyclone --root \\n\\\
GL: \"Euphoria\" euphoria --root \\n\\\
GL: \"Fieldlines\" fieldlines --root \\n\\\
GL: \"Flocks\" flocks --root \\n\\\
GL: \"Flux\" flux --root \\n\\\
GL: \"Helios\" helios --root \\n\\\
GL: \"Lattice\" lattice --root \\n\\\
GL: \"Plasma\" plasma --root \\n\\\
GL: \"Skyrocket\" skyrocket --root \\n\\\
GL: \"Solarwinds\" solarwinds --root \\n\\\
GL: \"Colorfire\" colorfire --root \\n\\\
GL: \"Hufos Smoke\" hufo_smoke --root \\n\\\
GL: \"Hufos Tunnel\" hufo_tunnel --root \\n\\\
GL: \"Sundancer2\" sundancer2 --root \\n\\\
GL: \"BioF\" biof --root \\n\\\
GL: \"MatrixView\" matrixview --root \\n\\\
GL: \"Spirographx\" spirographx --root \\n\\\
GL: \"BusySpheres\" busyspheres --root \\n\\' \
-i ${XSCREENSAVER_CONF}
else
einfo "Unable to add these to XScreenSaver configuration"
einfo "Read /usr/share/doc/${PF}/README.xscreensaver.gz for"
einfo "entries to add to your ~/.xscreensaver file to enable these hacks"
fi
}
pkg_postrm() {
local XSCREENSAVER_CONF="${ROOT}/usr/X11R6/lib/X11/app-defaults/XScreenSaver"
has_version x11-misc/rss-glx && return 0
if [ -f ${XSCREENSAVER_CONF} ]; then
einfo "Removing Really Slick Screensavers from XScreenSaver configuration."
sed \
-e '/\"Cyclone\" cyclone/d' \
-e '/\"Euphoria\" euphoria/d' \
-e '/\"Fieldlines\" fieldlines/d' \
-e '/\"Flocks\" flocks/d' \
-e '/\"Flux\" flux/d' \
-e '/\"Helios\" helios/d' \
-e '/\"Lattice\" lattice/d' \
-e '/\"Plasma\" plasma/d' \
-e '/\"Skyrocket\" skyrocket/d' \
-e '/\"Solarwinds\" solarwinds/d' \
-e '/\"Colorfire\" colorfire/d' \
-e '/\"Hufos Smoke\" hufo_smoke/d' \
-e '/\"Hufos Tunnel\" hufo_tunnel/d' \
-e '/\"Sundancer2\" sundancer2/d' \
-e '/\"BioF\" biof/d' \
-e '/\"MatrixView\" matrixview/d' \
-e '/\"Spirographx\" spirographx/d' \
-e '/\"BusySpheres\" busyspheres/d' \
-i ${XSCREENSAVER_CONF}
fi
}
|