Magellan Linux

Contents of /branches/R11-unstable/extras/kdebase-workspace/kdebase-workspace-4.11.14-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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