Magellan Linux

Contents of /trunk/extras/kdebase-workspace/kdebase-workspace-4.12.3-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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