summaryrefslogtreecommitdiff
blob: cfe6135d4eeabf3d291c67bb8944102bdd754a97 (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
# Copyright 1999-2002 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.0.4-r2.ebuild,v 1.2 2002/11/04 19:21:25 hannes Exp $
inherit kde-dist

IUSE="ldap pam motif encode oggvorbis cups ssl opengl samba"

DESCRIPTION="KDE $PV - base packages: the desktop, panel, window manager, konqueror..."

KEYWORDS="x86 ppc alpha"

newdepend ">=media-sound/cdparanoia-3.9.8
	ldap? ( >=net-nds/openldap-1.2 )
	pam? ( >=sys-libs/pam-0.73 )
	motif? ( >=x11-libs/openmotif-2.1.30 )
	encode? ( >=media-sound/lame-3.89b )
	oggvorbis? ( >=media-libs/libvorbis-1.0_beta1 )
	cups? ( net-print/cups )
	ssl? ( >=dev-libs/openssl-0.9.6b )
	opengl? ( virtual/opengl )
	samba? ( net-fs/samba )" 
#	lm_sensors? ( ?/lm_sensors ) # ebuild doesn't exist yet

DEPEND="$DEPEND sys-apps/gzip"

myconf="$myconf --with-dpms --with-cdparanoia"

use ldap	&& myconf="$myconf --with-ldap" 	|| myconf="$myconf --without-ldap"
use pam		&& myconf="$myconf --with-pam"		|| myconf="$myconf --with-shadow"
use motif	&& myconf="$myconf --with-motif"	|| myconf="$myconf --without-motif"
use encode	&& myconf="$myconf --with-lame"		|| myconf="$myconf --without-lame"
use cups	&& myconf="$myconf --with-cups"		|| myconf="$myconf --disable-cups"
use oggvorbis 	&& myconf="$myconf --with-vorbis"	|| myconf="$myconf --without-vorbis"
use opengl	&& myconf="$myconf --with-gl"		|| myconf="$myconf --without-gl"
use ssl		&& myconf="$myconf --with-ssl"		|| myconf="$myconf --without-ssl"
use pam		&& myconf="$myconf --with-pam=yes"	|| myconf="$myconf --with-pam=no --with-shadow"

pkg_setup() {

	# It should generally be considered bad form to touch files in the
	# live filesystem, but we had a broken Xft.h out there, and to expect
	# all users to update X because of it is harsh.  Also, there is no
	# official fix to xfree for this issue as of writing.  See bug #9423
	# for more info.
	cd /usr/X11R6/include/X11/Xft
	if patch --dry-run -p0 < ${FILESDIR}/${P}-xft_h-fix.diff > /dev/null
	then
		einfo "Patching Xft.h to fix missing defines..."
		patch -p0 < ${FILESDIR}/${P}-xft_h-fix.diff > /dev/null || die
	fi
}

src_unpack() {
    
    base_src_unpack

    # Enable this local USE flag to allow nspluginviewer to compile with qt 3.1.x.
    # It will patch nsplugins/viewer dir to cvs HEAD status.
    # THIS MAY BE UNSTABLE AND YOU SHOULD NOT USE IT UNLESS YOU REALLY HAVE TO
    # USE KDE 3.0.4 WITH QT >=3.1.X!
    # Also note that kdebase 3.0.3 will compile just fine with all version of QT.
    # However kdebase 3.0.4 introduced an nspluginviewer fix that necessitates this
    # additional patch to work with qt 3.1.

	# is also needed for qt-3.0.5 (#10062), so i uncommented the use qt31patch.
	
    #if [ -n "`use qt31patch`" ]; then
	cd $S
	/bin/zcat "$FILESDIR/$P-nspluginviewer-qt31.diff.gz" | patch -p0 --
    #fi

	# Apply this only if we are using a hacked Xft-1.1 Xft.h.
	if [ -n "`grep "End of Gentoo hack" /usr/X11R6/include/X11/Xft/Xft.h`" ]
	then
		cd ${S}; patch -p1 < ${FILESDIR}/${P}-xft1.1-fix.diff || die
	fi
}

src_compile() {

    kde_src_compile myconf configure
    kde_remove_flag kdm/kfrontend -fomit-frame-pointer
    kde_src_compile make

}

src_install() {

    kde_src_install

    # cf bug #5953
    insinto /etc/pam.d
    newins ${FILESDIR}/kscreensaver.pam kscreensaver
    newins ${FILESDIR}/kde.pam kde

    # startkde script
    cd ${D}/${KDEDIR}/bin
    patch -p0 < ${FILESDIR}/startkde-${PVR}-gentoo.diff || die
    mv startkde startkde.orig
    sed -e "s:_KDEDIR_:${KDEDIR}:" startkde.orig > startkde
    rm startkde.orig
    chmod a+x startkde

    # x11 session script
    cd ${T}
    echo "#!/bin/sh
${KDEDIR}/bin/startkde" > kde-${PV}
    chmod a+x kde-${PV}
    # old scheme - compatibility
    exeinto /usr/X11R6/bin/wm
    doexe kde-${PV}
    # new scheme - for now >=xfree-4.2-r3 only
    exeinto /etc/X11/Sessions
    doexe kde-${PV}

    cd ${D}/${PREFIX}/share/config/kdm || die
    mv kdmrc kdmrc.orig
    sed -e "s:SessionTypes=:SessionTypes=kde-${PV},:" \
	-e "s:Session=${PREFIX}/share/config/kdm/Xsession:Session=/etc/X11/xdm/Xsession:" kdmrc.orig > kdmrc
    rm kdmrc.orig

    #backup splashscreen images, so they can be put back when unmerging 
    #mosfet or so.
    if [ ! -d ${KDEDIR}/share/apps/ksplash.default ]
    then
        cd ${D}/${KDEDIR}/share/apps
        cp -rf ksplash/ ksplash.default
    fi
    
    # Show gnome icons when choosing new icon for desktop shortcut
    mkdir -p ${D}/usr/share/pixmaps
    mv ${D}/${KDEDIR}/share/apps/kdesktop/pics/* ${D}/usr/share/pixmaps/
    rm -rf ${D}/${KDEDIR}/share/apps/kdesktop/pics/
    cd ${D}/${KDEDIR}/share/apps/kdesktop/
    ln -sf /usr/share/pixmaps/ pics

    rmdir ${D}/${KDEDIR}/share/templates/.source/emptydir

}

pkg_postinst() {
    mkdir -p ${KDEDIR}/share/templates/.source/emptydir
}