Magellan Linux

Contents of /branches/R11-stable/extras/kdebase-workspace/kdebase-workspace-4.10.5-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 18819 - (show annotations) (download)
Wed Aug 14 13:01:44 2013 UTC (10 years, 8 months ago) by niro
File size: 8135 byte(s)
-release branches/R11-stable
1 # $Id$
2
3 PNAME="kdebase-workspace"
4 PVER="4.10.5"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="libkworkspace kdm kdebase-workspace"
8
9 # todo:
10 # - google-gadgets
11 # - libgps
12 # - lm_sensors support
13 COMMON_DEPEND="== kde-base/kdelibs-${PVER}"
14 LIBKWORKSPACE_DEPEND="${COMMON_DEPEND}"
15
16 WORKSPACE_DEPEND="${COMMON_DEPEND}
17 == kde-base/kdepimlibs-${PVER}
18 == kde-base/kdepim-runtime-${PVER}
19 == kde-base/kactivities-${PVER}
20 == kde-base/kde-wallpapers-${PVER}
21 == kde-base/kde-base-artwork-${PVER}
22 >= virtual/phonon
23 >= dev-libs/polkit-qt-0.103
24 >= kde-base/polkit-kde-kcmodules-0.99
25 >= kde-base/polkit-kde-agent-0.99
26 >= dev-libs/glib2-2.36
27 >= dev-libs/libusb-compat-0.1
28 >= dev-libs/soprano-2.9
29 >= dev-libs/shared-desktop-ontologies-0.11
30 >= media-libs/fontconfig-2.10
31 >= media-libs/freetype-2.4
32 >= media-libs/prison-1
33 >= sys-apps/pciutils-3.1
34 >= sys-libs/libraw1394-2.1
35 >= sci-libs/libqalculate-0.9.7
36 >= x11-apps/xprop-1.2
37 >= x11-apps/xrandr-1.3
38 >= x11-apps/xrdb-1
39 >= x11-apps/xset-1.2
40 >= x11-apps/xsetroot-1.1
41 >= x11-libs/libxkbfile-1.0.7
42 >= x11-libs/libXcomposite-0.4
43 >= x11-libs/libXdamage-1.1
44 >= x11-libs/libXfixes-5
45 >= x11-libs/libXft-2.2
46 >= x11-libs/libXinerama-1.1
47 >= x11-libs/libXScrnSaver-1
48 >= x11-libs/libXrender-0.9
49 >= x11-libs/libXres-1
50 >= x11-libs/libXrandr-1.3
51 >= x11-libs/xcb-util-image-0.3.9
52 >= x11-libs/xcb-util-renderutil-0.3.8
53 >= virtual/opengl"
54
55 KDM_DEPEND="${COMMON_DEPEND}
56 >= kde-base/qimageblitz-0.0.6
57 >= sys-apps/dbus-1.6
58 >= sys-libs/pam-1.1
59 >= x11-libs/libX11-1.4
60 >= x11-libs/libXtst-1.2
61 >= x11-apps/xinit-1.3
62 >= x11-apps/xmessage-1"
63
64 SDEPEND=">= dev-libs/boost-1.53
65 >= dev-python/pyqt4-4.10
66 == dev-python/pykde4-${PVER}
67 >= net-misc/networkmanager-0.9.8
68 >= x11-proto/compositeproto-1
69 >= x11-proto/damageproto-1
70 >= x11-proto/fixesproto-5
71 >= x11-proto/randrproto-1.3
72 >= x11-proto/renderproto-0.11
73 >= x11-proto/scrnsaverproto-1
74 >= x11-proto/xineramaproto-1"
75
76 SRCFILE="kde-workspace-${PVER}.tar.xz"
77 SRCDIR="${BUILDDIR}/kde-workspace-${PVER}"
78
79 # no meta-package required
80 KDE4_GENERATE_META_PACKAGE=0
81 sminclude kde4-split-2
82
83 # script/pam revisions
84 KDE_PAMD=kde.pamd-systemauth
85 KDE_NP_PAMD=kde-np.pamd-systemauth
86 KDM_REV=1.2
87 AGENT_STARTUP_REV=1.2
88 AGENT_SHUTDOWN_REV=1.2
89
90 SRC_URI=(
91 ${SRC_URI[*]}
92 mirror://${PNAME}/kde.desktop
93 mirror://${PNAME}/${KDE_PAMD}
94 mirror://${PNAME}/${KDE_NP_PAMD}
95 mirror://${PNAME}/agent-startup.sh-${AGENT_STARTUP_REV}
96 mirror://${PNAME}/agent-shutdown.sh-${AGENT_SHUTDOWN_REV}
97 mirror://${PNAME}/kdm.logrotate
98 mirror://${PNAME}/kdm.service-${KDM_REV}
99 mirror://${PNAME}/${PNAME}-4.9.4-rootprivs.patch
100 mirror://${PNAME}/${PNAME}-4.9.4-battery-plasmoid-showremainingtime.patch
101 mirror://${PNAME}/${PNAME}-4.9.4-kdm-plymouth.patch
102 mirror://${PNAME}/${PNAME}-4.9.4-xsession-errors-O_APPEND.patch
103 mirror://${PNAME}/${PNAME}-4.9.4-fix-reboot.patch
104 mirror://${PNAME}/${PNAME}-4.9.4-systemd-displaymanager.patch
105 )
106
107 UP2DATE="updatecmd -listonly http://download.kde.org/stable/ | grep 'stable/[0-9]' | sed -n 's:.*/\([0-9].*\)/:\1:;$ p'"
108
109 split_info_libkworkspace()
110 {
111 DESCRIPTION="A library for KDE desktop applications."
112 DEPEND="${LIBKWORKSPACE_DEPEND}"
113 }
114
115 split_info_kdm()
116 {
117 DESCRIPTION="KDE4 login manager."
118 DEPEND="${KDM_DEPEND}
119 == kde-base/libkworkspace-${PVER}"
120 PROVIDE="virtual/windowmanager"
121 }
122
123 split_info_kdebase-workspace()
124 {
125 DESCRIPTION="The KDE4 workspace."
126 DEPEND="${WORKSPACE_DEPEND}
127 == kde-base/kdm-${PVER}"
128 }
129
130 src_prepare()
131 {
132 munpack ${SRCFILE} || die
133 cd ${SRCDIR}
134
135 # allow systemsettings to enter an administrative mode
136 mpatch ${PNAME}-4.9.4-rootprivs.patch || die
137
138 # show remaing battery time by default
139 mpatch ${PNAME}-4.9.4-battery-plasmoid-showremainingtime.patch || die
140
141 # improved plymouth support
142 mpatch ${PNAME}-4.9.4-kdm-plymouth.patch || die
143
144 # add missing O_APPEND
145 mpatch ${PNAME}-4.9.4-xsession-errors-O_APPEND.patch || die
146
147 # systemd fix kdm restart/shutdown does not work
148 mpatch ${PNAME}-4.9.4-fix-reboot.patch || die
149
150 # fully support systemd
151 mpatch ${PNAME}-4.9.4-systemd-displaymanager.patch || die
152 }
153
154 src_compile()
155 {
156 cd ${SRCDIR}
157
158 # no consolekit anymore, use systemd-logind
159 kde4_configure \
160 $(cmake_with Akonadi) \
161 $(cmake_with Boost) \
162 $(cmake_with GLIB2) \
163 $(cmake_with NetworkManager) \
164 $(cmake_with OpenGL) \
165 $(cmake_with PAM) \
166 $(cmake_with PyKDE4) \
167 $(cmake_with PythonLibrary) \
168 $(cmake_with Qalculate) \
169 $(cmake_with RAW1394) \
170 $(cmake_with SIP) \
171 $(cmake_with Soprano) \
172 $(cmake_with USB) \
173 $(cmake_with XKB) \
174 $(cmake_without Googlegadgets) \
175 $(cmake_without Sensors) \
176 $(cmake_without Xmms) \
177 $(cmake_without libgps) \
178 $(cmake_without CkConnector) \
179 || die
180
181 mmake || die
182 }
183
184 src_install_libkworkspace()
185 {
186 cd ${SRCDIR}
187 kde4-split_src_install_wrapper libs/kworkspace || die
188 }
189
190 src_install_kdm()
191 {
192 cd ${SRCDIR}
193
194 local module="kdm"
195
196 # generate a valid kdm configuration
197 minstalldir ${KDEDIR}/share/config/kdm || die
198 export GENKDMCONF_FLAGS="--no-old --no-backup"
199 kde4-split_src_install_wrapper ${module} || die
200 kde4-split_src_install_wrapper libs/${module} || die
201 kde4-split_src_install_wrapper doc/${module} || die
202
203 # workaround a dm bug the the xserver is not restarted
204 # see: https://bugs.kde.org/show_bug.cgi?id=202629#c13
205 sed -i -e '/#TerminateServer=/s/^.*$/TerminateServer=true/' \
206 -e '/#ServerTimeout=/s/^.*$/ServerTimeout=30/' \
207 ${BINDIR}/usr/share/config/kdm/kdmrc || die
208
209 # install gnome session
210 minstalldir /usr/share/xsessions || die
211 minstallexec -s kde.desktop /usr/share/xsessions || die
212
213 # install pam related stuff
214 minstallpam ${KDE_PAMD} kde || die
215 minstallpam ${KDE_NP_PAMD} kde-np || die
216
217 # systemd unit
218 minstallunit kdm.service-${KDM_REV} kdm.service || die
219
220 # kdm logrotate
221 minstalllog kdm.logrotate kdm || die
222
223 # kdm run dir
224 mkeepdir /var/lib/kdm || die
225 mchown root:kdm /var/lib/kdm || die
226 mchmod 1770 /var/lib/kdm || die
227 }
228
229 src_install_kdebase-workspace()
230 {
231 cd ${SRCDIR}
232
233 # to find all candifates search for 'cmake_install.cmake'
234 local module
235 # libs
236 for module in kephal ksysguard oxygen taskmanager plasmaclock plasmagenericshell solid
237 do
238 kde4-split_src_install_wrapper libs/${module} || die
239 done
240 # progs
241 for module in cursors freespacenotifier kcheckpass kcminit kcontrol khotkeys kinfocenter klipper \
242 kmenuedit krunner kscreensaver ksmserver ksplash kstartupconfig kstyles ksysguard kwin kwrited \
243 plasma powerdevil qguiplatformplugin_kde statusnotifierwatcher solid ksystraycmd systemsettings
244 do
245 kde4-split_src_install_wrapper ${module} || die
246 done
247 # cmake
248 kde4-split_src_install_wrapper cmake || die
249 # missing docs
250 kde4-split_src_install_wrapper doc/kfontview || die
251 kde4-split_src_install_wrapper doc/plasma-desktop || die
252
253 # install missing files which are in the source root dir and not catched by the above
254 # minstallexec startkde ${KDEDIR}/bin || die
255 # minstalldir ${KDEDIR}/$(mlibdir)/cmake/KDE4Workspace || die
256 # minstallfile KDE4WorkspaceConfig.cmake ${KDEDIR}/$(mlibdir)/cmake/KDE4Workspace || die
257 # minstallfile KDE4WorkspaceConfigVersion.cmake ${KDEDIR}/$(mlibdir)/cmake/KDE4Workspace || die
258 # minstallfile CMakeFiles/Export/_*/$(mlibdir)/cmake/KDE4Workspace/KDE4WorkspaceLibraryTargets.cmake ${KDEDIR}/$(mlibdir)/cmake/KDE4Workspace || die
259 # minstallfile CMakeFiles/Export/_*/$(mlibdir)/cmake/KDE4Workspace/KDE4WorkspaceLibraryTargets-release.cmake ${KDEDIR}/$(mlibdir)/cmake/KDE4Workspace || die
260 # try a hack
261 cd ${BUILDDIR}/build
262 DESTDIR=${BINDIR} cmake -DCMAKE_INSTALL_LOCAL_ONLY='ON' -P cmake_install.cmake || die
263 cd ${SRCDIR}
264
265 # install global agent startup and shutdown scripts
266 minstalldir ${KDEDIR}/env || die
267 minstallfile -s agent-startup.sh-${AGENT_STARTUP_REV} ${KDEDIR}/env/agent-startup.sh || die
268 minstalldir ${KDEDIR}/shutdown || die
269 minstallfile -s agent-shutdown.sh-${AGENT_SHUTDOWN_REV} ${KDEDIR}/shutdown/agent-shutdown.sh || die
270 }
271
272 preinstall_kdm()
273 {
274 # kdm now requires a user
275 ${MLIBDIR}/mgroupadd -o "-g 135" kdm
276 ${MLIBDIR}/museradd -o "-u 135 -g kdm -d /var/lib/kdm -s /bin/false" kdm
277 }
278
279 postinstall_kdm()
280 {
281 mreloadunit dbus.service
282 mstartunit kdm.service
283 }
284
285 postremove_kdm()
286 {
287 mstopunit kdm.service
288 mreloadunit dbus.service
289 }