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