2 # RPM spec file for FusionForge
4 # Initial work for 4.8 by JL Bond Consulting
5 # Reworked for 5.x by Alain Peyrat <aljeux@free.fr>
7 # Copyright (C) 2010-2012 Alain Peyrat
8 # Copyrght 2013, Franck Villaume - TrivialDev
9 # Copyrght 2014, Roland Mas
17 %define gfgroup gforge
19 %define httpduser apache
20 %define httpdgroup apache
22 %define fforge_admin fforgeadmin
24 %define FORGE_DIR %{_datadir}/gforge
25 %define FORGE_CONF_DIR %{_sysconfdir}/gforge
26 %define FORGE_LANG_DIR %{_datadir}/locale
27 %define FORGE_DATA_PATH %{_var}/lib/gforge
28 %define FORGE_CHROOT_PATH %{FORGE_DATA_PATH}/chroot
29 %define FORGE_PLUGINS_LIB_DIR %{FORGE_DIR}/plugins
30 %define FORGE_PLUGINS_CONF_DIR %{FORGE_CONF_DIR}/plugins
32 # If that works, then a better way would be the following:
33 # %define FORGE_DIR %(src/utils/forge_get_config_basic fhsrh source_path)
34 # %define FORGE_CONF_DIR %(src/utils/forge_get_config_basic fhsrh config_path)
35 # %define FORGE_LANG_DIR %{_datadir}/locale
36 # %define FORGE_DATA_PATH %(src/utils/forge_get_config_basic fhsrh data_path)
37 # %define FORGE_CHROOT_PATH %(src/utils/forge_get_config_basic fhsrh chroot)
38 # %define FORGE_PLUGINS_LIB_DIR %(src/utils/forge_get_config_basic fhsrh plugins_path)
39 # %define FORGE_PLUGINS_CONF_DIR %{FORGE_CONF_DIR}/plugins
41 %define reloadhttpd() /etc/init.d/httpd httpd reload >/dev/null 2>&1
43 # Disable debug binary detection & generation to speed up process.
44 %global debug_package %{nil}
47 Summary: FusionForge Collaborative Development Environment
53 Group: Development/Tools
54 Source0: %{name}-%{version}.tar.bz2
55 URL: http://www.fusionforge.org/
56 BuildRoot: %{_tmppath}/%{name}-%{version}-root
57 Packager: Alain Peyrat <aljeux@free.fr>
59 Requires: httpd, mod_dav_svn, mod_ssl, php, php-pgsql, php-gd, php-mbstring, mailman
60 Requires: postgresql >= 8.3
61 Requires: postgresql-server >= 8.3
62 Requires: postfix, openssh, inetd, which
64 Requires: /bin/sh, /bin/bash
65 Requires: perl, perl-DBI, perl-HTML-Parser, perl-Text-Autoformat, perl-Mail-Sendmail, perl-Sort-Versions
67 #Requires: libnss-pgsql >= 1.4
69 Requires: php-htmlpurifier >= 4.0.0
72 Requires: /usr/bin/newaliases
73 Requires: php-pear-HTTP_WebDAV_Server
74 Requires: php-pecl-zip
76 # BuildRequires: sed, perl
78 %define INSTALL_LOG %{_var}/log/gforge/install-%{version}.log
79 %define UPGRADE_LOG %{_var}/log/gforge/upgrade-%{version}.log
81 Provides: gforge = %{version}
84 FusionForge provides many tools to aid collaboration in a
85 development project, such as bug-tracking, task management,
86 mailing-lists, SCM repository, forums, support request helper,
87 web/FTP hosting, release management, etc. All these services are
88 integrated into one web site and managed through a web interface.
90 %package plugin-admssw
91 Summary: ADMS.SW profiles for projects URLs for FusionForge
92 Group: Development/Tools
93 Requires: %{name} >= %{version}, php, postgresql, plugin-doaprdf
94 %description plugin-admssw
95 This plugin will provide content-negociation means to export RDF+XML ADMS.SW profiles for projects on /projects URLs,
96 in addition to the content already provided by doaprdf.
97 ADMS.SW stands for Asset Description Metadata Schema for Software.
98 See https://joinup.ec.europa.eu/asset/adms_foss/description for more details.
100 %package plugin-aselectextauth
101 Summary: A-select external authentication for FusionForge
102 Group: Development/Tools
103 Requires: %{name} >= %{version}, php, postgresql
104 %description plugin-aselectextauth
105 A system plugin for authenticating users in fusionforge. A-Select is a framework
106 where users can be authenticated by several means with Authentication
109 %package plugin-authcas
110 Summary: External CAS authentication plugin for FusionForge.
111 Group: Development/Tools
112 Requires: %{name} >= %{version}, php, postgresql
113 %description plugin-authcas
114 External CAS authentication plugin for FusionForge.
116 %package plugin-authhttpd
117 Summary: External HTTPD authentication plugin for FusionForge.
118 Group: Development/Tools
119 Requires: %{name} >= %{version}, php, postgresql
120 %description plugin-authhttpd
121 External HTTPD authentication plugin for FusionForge.
123 # %package plugin-authopenid
124 # Summary: External OpenID authentication plugin for FusionForge.
125 # Group: Development/Tools
126 # Requires: %{name} >= %{version}, php, postgresql
127 # %description plugin-authopenid
128 # External OpenID authentication plugin for FusionForge.
130 %package plugin-ckeditor
131 Summary: CKEditor plugin for FusionForge
132 Group: Development/Tools
133 Requires: %{name} >= %{version}, php, ckeditor
134 %description plugin-ckeditor
135 CKEditor is a WYSIWYG text editor that displays within a web browser.
137 %package plugin-cvssyncmail
138 Summary: Provides email notifications of changes to CVS repositories
139 Group: Development/Tools
140 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, python, php
141 %description plugin-cvssyncmail
142 This plugin adds the capability to notify users of changes to CVS repositories
145 %package plugin-compactpreview
146 Summary: Provides a preview mecanism
147 Group: Development/Tools
148 Requires: %{name} >= %{version}, php
149 %description plugin-compactpreview
150 This plugin adds support for user and project compact-preview
151 (popups) compatible with the OSLC specifications.
153 %package plugin-cvstracker
154 Summary: Links CVS log messages to trackers and tasks.
155 Group: Development/Tools
156 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, php, postgresql
157 %description plugin-cvstracker
158 This is a fusionforge plugin that allows linking CVS log messages to
159 trackers and tasks. It will review all commits in a project and search for
160 specific string to know which task or tracker is related.
162 %package plugin-doaprdf
163 Summary: DOAP RDF for projects
164 Group: Development/Tools
165 Requires: %{name} >= %{version}, php
166 %description plugin-doaprdf
167 DOAP RDF for projects
169 %package plugin-externalsearch
170 Summary: external search plugin for FusionForge
171 Group: Development/Tools
172 Requires: %{name} >= %{version}, php
173 %description plugin-externalsearch
174 This plugin adds a new search engine to your FusionForge site. It allows
175 your users to search your FusionForge site through external search engines
176 which have indexed it. You can define search engines you want to use in
177 the configuration file.
179 %package plugin-extsubproj
180 Summary: external sub project plugin for FusionForge
181 Group: Development/Tools
182 Requires: %{name} >= %{version}, php
183 %description plugin-extsubproj
184 Manages links to external subprojects on remote forges.
186 # %package plugin-forumml
187 # Summary: Mailman to forums plugin for FusionForge
188 # Group: Development/Tools
189 # Requires: %{name} >= %{version}, php
190 # %description plugin-forumml
191 # ForumML integes mailing lists as forums in FusionForge
193 %package plugin-foafprofiles
194 Summary: FOAF profile for forge users
195 Group: Development/Tools
196 Requires: %{name} >= %{version}, php
197 %description plugin-foafprofiles
198 The foafprofile plugin manages the generation of a FOAF profile for forge users.
200 %package plugin-gravatar
201 Summary: Gravatar plugin for FusionForge
202 Group: Development/Tools
203 Requires: %{name} >= %{version}, php
204 %description plugin-gravatar
205 This plugin adds faces images to FusionForge users using the gravatar service.
207 %package plugin-headermenu
208 Summary: Headermenu plugin for FusionForge
209 Group: Development/Tools
210 Requires: %{name} >= %{version}, php
211 %description plugin-headermenu
212 This plugin adds capability to add links right to login/logout.
214 %package plugin-hudson
215 Summary: Hudson continous integration plugin for FusionForge
216 Group: Development/Tools
217 Requires: %{name} >= %{version}, php
218 %description plugin-hudson
219 This plugin adds hudson integration to FusionForge.
221 %package plugin-authldap
222 Summary: external LDAP authentication for FusionForge plugin
223 Group: Development/Tools
224 Requires: %{name} >= %{version}, php, php-ldap
225 %description plugin-authldap
226 This plugin provides LDAP authentication capability for FusionForge.
228 %package plugin-mediawiki
229 Summary: Mediawiki plugin for FusionForge
230 Group: Development/Tools
231 Requires: %{name} >= %{version}, php, mediawiki
232 %description plugin-mediawiki
233 This is a plugin to integrate MediaWiki within FusionForge.
235 %package plugin-moinmoin
236 Summary: MoinMoinWiki plugin for FusionForge
237 Group: Development/Tools
238 Requires: %{name} >= %{version}, php, postgresql, moin
239 %description plugin-moinmoin
240 This is a plugin to integrate MoinMoin wiki within FusionForge.
242 %package plugin-message
243 Summary: Global Information Message plugin for FusionForge
244 Group: Development/Tools
245 Requires: %{name} >= %{version}, php
246 %description plugin-message
247 This is a plugin to add a global announce message for FusionForge.
248 It can be used to warn users for planned or current outage.
250 %package plugin-online_help
251 Summary: online_help plugin for FusionForge
252 Group: Development/Tools
253 Requires: %{name} >= %{version}, php
254 %description plugin-online_help
255 This is a online_help plugin within FusionForge.
257 # %package plugin-oslc
258 # Summary: OSLC plugin for FusionForge
259 # Group: Development/Tools
260 # Requires: %{name} >= %{version}, php, php-ZendFramework > 1.10
261 # %description plugin-oslc
262 # OSLC-CM compatible plugin for FusionForge tracker system.
263 # OSLC-CM is a standard specification for APIs in Change Management
264 # applications. It is based on Web technologies such as REST, RDF, or AJAX.
265 # This package provides an OSLC-CM V2 compatible plugin for FusionForge
268 # %package plugin-projectimport
269 # Summary: Project Import plugin for FusionForge
270 # Group: Development/Tools
271 # Requires: %{name} >= %{version}, php
272 # %description plugin-projectimport
273 # Project import plugin for FusionForge
274 # This plugin allows the import of a project data previously exported
275 # with ForgePlucker, or a compatible tool.
277 # %package plugin-projects-hierarchy
278 # Summary: projects-hierarchy plugin for FusionForge
279 # Group: Development/Tools
280 # Requires: %{name} >= %{version}, php
281 # %description plugin-projects-hierarchy
282 # This is a projects-hierarchy plugin within FusionForge.
284 %package plugin-quota_management
285 Summary: quota_management plugin for FusionForge
286 Group: Development/Tools
287 Requires: %{name} >= %{version}, php
288 %description plugin-quota_management
289 This is a quota_management plugin within FusionForge.
291 %package plugin-scmarch
292 Summary: Arch version control plugin for FusionForge
293 Group: Development/Tools
294 Requires: %{name} >= %{version}, php, arch
295 %description plugin-scmarch
296 This is a plugin to integrate Arch version control system with FusionForge
298 %package plugin-scmbzr
299 Summary: Bazaar version control plugin for FusionForge
300 Group: Development/Tools
301 Requires: %{name} >= %{version}, php, bazaar
302 %description plugin-scmbzr
303 This is a plugin to integrate Bazaar version control system with FusionForge
305 %package plugin-scmdarcs
306 Summary: DARCS version control plugin for FusionForge
307 Group: Development/Tools
308 Requires: %{name} >= %{version}, php, darcs
309 %description plugin-scmdarcs
310 This is a plugin to integrate DARCS version control system with FusionForge
312 %package plugin-scmgit
313 Summary: Git version control plugin for FusionForge
314 Group: Development/Tools
315 Requires: %{name} >= %{version}, php, git, gitweb
316 %description plugin-scmgit
317 This is a plugin to integrate Git version control system with FusionForge
319 %package plugin-scmhg
320 Summary: Mercurial (hg) version control plugin for FusionForge
321 Group: Development/Tools
322 Requires: %{name} >= %{version}, php, mercurial
323 %description plugin-scmhg
324 This is a plugin to integrate Mercurial (hg) version control system with FusionForge
326 %package plugin-scmhook
327 Summary: Source Code Hooks plugin
328 Group: Development/Tools
329 Requires: %{name} >= %{version}
330 %description plugin-scmhook
331 This plugin provide a simple hook system for various version control system.
332 It allows project admins to activate/desactivate predefined hooks on their
335 %package plugin-scmccase
336 Summary: Clear Case plugin for FusionForge
337 Group: Development/Tools
338 Requires: %{name} >= %{version}, php
339 %description plugin-scmccase
340 This is the Clear Case plugin for FusionForge. It creats Clear Case repositories
341 for projects within FusionForge.
343 %package plugin-scmcvs
344 Summary: CVS plugin for FusionForge
345 Group: Development/Tools
346 Requires: %{name} >= %{version}, php, cvs
347 %description plugin-scmcvs
348 FusionForge is a web-based Collaborative Development Environment offering
349 easy access to CVS, mailing lists, bug tracking, message
350 boards/forums, task management, permanent file archival, and total
351 web-based administration.
353 This RPM installs SCM CVS plugin for FusionForge and provides CVS support
356 It also provides a specific version of CVSWeb wrapped in FusionForge.
358 %package plugin-scmsvn
359 Summary: Subversion plugin for FusionForge
360 Group: Development/Tools
361 Requires: %{name} >= %{version}, php, subversion, viewvc
362 %description plugin-scmsvn
363 This RPM installs SCM SVN plugin for FusionForge and provides svn support
366 %package plugin-blocks
367 Summary: Blocks plugin for FusionForge
368 Group: Development/Tools
369 Requires: %{name} >= %{version}
370 %description plugin-blocks
371 HTML blocks plugin for FusionForge.
374 Summary: Wiki plugin for FusionForge
375 Group: Development/Tools
376 Requires: %{name} >= %{version}, php, postgresql, units
377 %description plugin-wiki
378 Wiki plugin for FusionForge. Allows for one wiki per project, integrated search,
379 page edits displayed on activity tab, and multi-project wiki preferences.
381 %package plugin-projectlabels
382 Summary: Labels plugin for FusionForge
383 Group: Development/Tools
384 Requires: %{name} >= %{version}, php, postgresql
385 %description plugin-projectlabels
386 Project Labels plugin for FusionForge.
388 %package plugin-contribtracker
389 Summary: contribtracker plugin for FusionForge
390 Group: Development/Tools
391 Requires: %{name} >= %{version}, php, postgresql
392 %description plugin-contribtracker
393 contribtracker plugin for FusionForge.
395 %package plugin-globalsearch
396 Summary: globalsearch plugin for FusionForge
397 Group: Development/Tools
398 Requires: %{name} >= %{version}, php, postgresql
399 %description plugin-globalsearch
400 globalsearch plugin for FusionForge.
402 # %package plugin-mailman
403 # Summary: Mailman plugin for FusionForge
404 # Group: Development/Tools
405 # Requires: %{name} >= %{version}, php
406 # %description plugin-mailman
407 # Mailman plugin for FusionForge.
409 # %package plugin-mantisbt
410 # Summary: mantisbt plugin for FusionForge
411 # Group: Development/Tools
412 # Requires: %{name} >= %{version}, php, postgresql
413 # %description plugin-mantisbt
414 # mantisbt plugin for FusionForge.
416 # %package plugin-oauthprovider
417 # Summary: oauthprovider plugin for FusionForge
418 # Group: Development/Tools
419 # Requires: %{name} >= %{version}, php, postgresql
420 # %description plugin-oauthprovider
421 # oauthprovider plugin for FusionForge.
423 %package plugin-webanalytics
424 Summary: webanalytics plugin for FusionForge
425 Group: Development/Tools
426 Requires: %{name} >= %{version}, php, postgresql
427 %description plugin-webanalytics
428 webanalytics plugin for FusionForge.
434 # empty build section
437 %{__rm} -rf $RPM_BUILD_ROOT
439 # creating required directories
440 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
441 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
442 %{__install} -m 755 -d $RPM_BUILD_ROOT/bin
443 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}
444 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/vendor
445 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www
446 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins
447 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}
448 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d
449 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d
450 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d
451 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_PLUGINS_CONF_DIR}
452 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_LANG_DIR}
453 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}
454 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/upload
455 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/scmtarballs
456 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/scmsnapshots
457 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/homedirs
458 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/dumps
459 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/etc
460 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CHROOT_PATH}/scmrepos/svn
461 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CHROOT_PATH}/scmrepos/cvs
462 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/plugins/mediawiki
463 %{__install} -m 755 -d $RPM_BUILD_ROOT/home/groups
464 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_var}/log/gforge
465 # mock mediawiki directory because we symlink GForge skin to Monobook
466 %{__install} -m 755 -d $RPM_BUILD_ROOT/usr/share/mediawiki/skins
468 # we define a search and replace function, we'll be using this a lot
469 # to fix several parts of the installation
472 /usr/bin/find . -type f | xargs grep -l ${1} | xargs %{__sed} -i -e "s+${1}+${2}+g"
475 # we need to fix up the fusionforge-install-3-db.php script to ref %{FORGE_DIR}
476 search_and_replace "/opt/gforge" "%{FORGE_DIR}"
479 %{__cp} -a * $RPM_BUILD_ROOT/%{FORGE_DIR}/
481 # Create project vhost space symlink
482 %{__ln_s} /home/groups $RPM_BUILD_ROOT/%{FORGE_DATA_PATH}/homedirs/groups
483 # install restricted shell for cvs accounts
484 %{__cp} -a plugins/scmcvs/bin/cvssh.pl $RPM_BUILD_ROOT/bin/
486 # Apache configuration file
487 %{__cp} -a etc/httpd.conf.d-fhsrh/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
488 %{__cp} -a etc/config.ini.d/defaults.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
489 %{__cp} -a etc/config.ini-fhsrh $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
490 %{__cp} -a etc/httpd.conf-fhsrh $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
491 #%{__cp} -a etc/gforge-httpd.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
492 #%{__sed} -i -e 's|.*php_value[[:space:]]*include_path.*$|\tphp_value\tinclude_path ".:%{FORGE_DIR}/www/include:%{FORGE_DIR}:%{FORGE_CONF_DIR}:%{FORGE_DIR}/common:%{FORGE_DIR}/www:%{FORGE_PLUGINS_LIB_DIR}"|' $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
494 %{__sed} -i -e 's!www-data!apache!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
495 %{__sed} -i -e 's!lists.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
496 %{__sed} -i -e 's!scm.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
497 %{__sed} -i -e 's!users.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
498 %{__sed} -i -e 's!use_webdav = no!use_webdav = yes!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
499 %{__sed} -i -e 's!use_shell = yes!use_shell = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
500 %{__sed} -i -e 's!use_ftp = yes!use_ftp = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
501 %{__sed} -i -e 's!use_people = yes!use_people = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
502 %{__sed} -i -e 's!use_project_vhost = yes!use_project_vhost = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
503 %{__sed} -i -e 's!use_snippet = yes!use_snippet = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
504 %{__sed} -i -e 's!use_ratings = yes!use_ratings = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
506 # install fusionforge crontab
507 %{__sed} -e 's/\$FFUSER/%{gfuser}/g' packaging/cron.d/cron.fusionforge > $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
509 # Install locale files in Redhat standard location
510 %{__cp} -a locales/* $RPM_BUILD_ROOT/%{FORGE_LANG_DIR}/
512 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/utils/fusionforge-shell-postgresql.spec
514 # Identify this FusionForge version
515 # keep type intact and change forge in derivates,
516 # unless there are deep changes (type is used for
517 # the Forge-Identification meta header)
518 WHICH_TYPE=FusionForge
519 WHICH_FORGE=FusionForge
520 WHICH_VERSION=%{version}-%{release}
522 -e "s!@PKGNAME@!${WHICH_FORGE}!g" \
523 -e "s!@PKGVERSION@!${WHICH_VERSION}!g" \
524 -e "s!@PLUCKERNAME@!${WHICH_TYPE}!g" \
525 <$RPM_BUILD_ROOT/%{FORGE_DIR}/common/pkginfo.inc.php.template \
526 >$RPM_BUILD_ROOT/%{FORGE_DIR}/common/pkginfo.inc.php
528 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/COPYING.php
529 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/packaging
530 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific
531 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/rpm-specific
532 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_PLUGINS_LIB_DIR}/*/packaging
533 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_PLUGINS_LIB_DIR}/*/*.spec
537 for i in $(utils/list-enabled-plugins.sh --disabled) ; do
538 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/$i
541 %{__cp} $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/*/etc/*.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
542 %{__cp} $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/*/etc/cron.d/* $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
543 %{__cp} $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/*/etc/httpd.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d/
544 %{__cp} $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/*/etc/httpd.conf.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
545 %{__cp} -rp $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/*/etc/plugins/* $RPM_BUILD_ROOT%{FORGE_PLUGINS_CONF_DIR}/
547 # plugin: authbuiltin (internal plugin)
548 %{__ln_s} ../../plugins/authbuiltin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authbuiltin
551 %{__ln_s} ../../plugins/authcas/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authcas
554 %{__ln_s} ../../plugins/authhttpd/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authhttpd
557 # %{__ln_s} ../../plugins/authopenid/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authopenid
559 # plugin: compactpreview
560 %{__ln_s} ../../plugins/compactpreview/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/compactpreview
562 # plugin: cvssyncmail
565 %{__ln_s} ../../plugins/cvstracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/cvstracker
567 # plugin: externalsearch
570 %{__ln_s} ../../plugins/extsubproj/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extsubproj
573 # %{__ln_s} ../../plugins/forumml/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/forumml
576 %{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
579 %{__ln_s} ../../plugins/mediawiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mediawiki
580 %{__ln_s} /usr/share/mediawiki/api.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
581 %{__ln_s} /usr/share/mediawiki/extensions $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
582 %{__ln_s} /usr/share/mediawiki/img_auth.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
583 %{__ln_s} /usr/share/mediawiki/includes $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
584 %{__ln_s} /usr/share/mediawiki/index.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
585 %{__ln_s} /usr/share/mediawiki/languages $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
586 %{__ln_s} /usr/share/mediawiki/maintenance/ $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
587 %{__ln_s} /usr/share/mediawiki/opensearch_desc.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
588 %{__ln_s} /usr/share/mediawiki/profileinfo.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
589 %{__ln_s} /usr/share/mediawiki/redirect.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
590 %{__ln_s} /usr/share/mediawiki/StartProfiler.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
591 %{__ln_s} /usr/share/mediawiki/thumb.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
592 %{__ln_s} /usr/share/mediawiki/trackback.php $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
593 %{__ln_s} /usr/share/mediawiki/skins $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/mediawiki/www/
594 %{__ln_s} /usr/share/mediawiki $RPM_BUILD_ROOT%{FORGE_DATA_PATH}/plugins/mediawiki/master
595 %{__ln_s} %{FORGE_PLUGINS_LIB_DIR}/mediawiki/mediawiki-skin/FusionForge.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
596 %{__ln_s} %{FORGE_PLUGINS_LIB_DIR}/mediawiki/mediawiki-skin/fusionforge $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
599 %{__ln_s} ../../plugins/moinmoin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/moinmoin
602 %{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
604 # plugin: online_help
605 %{__ln_s} ../../plugins/online_help/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/online_help
607 # plugin: projects-hierarchy
608 # %{__ln_s} ../../plugins/projects-hierarchy/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projects-hierarchy
610 # plugin: quota_management
611 %{__ln_s} ../../plugins/quota_management/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/quota_management
620 %{__ln_s} ../../plugins/scmcvs $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmcvs
621 %{__install} -m 644 plugins/scmcvs/cron.d/%{name}-plugin-scmcvs $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
626 # this is pre-activated, so create the config symlink
627 %{__ln_s} ../../plugins/scmsvn/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmsvn
630 %{__ln_s} ../../plugins/scmgit/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmgit
631 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/scmgit/www/cgi-bin
632 %{__ln_s} /usr/share/gitweb/gitweb.cgi $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/scmgit/www/cgi-bin/gitweb.cgi
633 %{__ln_s} /usr/share/gitweb/static/gitweb.css $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/scmgit/www/gitweb.css
634 %{__ln_s} /usr/share/gitweb/static/gitweb.js $RPM_BUILD_ROOT%{FORGE_PLUGINS_LIB_DIR}/scmgit/www/gitweb.js
639 %{__ln_s} ../../plugins/blocks/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/blocks
642 %{__ln_s} ../../plugins/headermenu/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/headermenu
645 %{__ln_s} ../plugins/wiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/wiki
648 #%{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
650 # plugin : projectimport
651 # %{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
653 # plugin: projectlabels
654 %{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
656 # plugin: contribtracker
657 %{__ln_s} ../../plugins/contribtracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/contribtracker
659 # plugin: globalsearch
660 %{__ln_s} ../../plugins/globalsearch/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/globalsearch
663 # %{__ln_s} ../../plugins/mailman/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mailman
666 # %{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
668 # plugin: oauthprovider
669 #%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
671 # plugin: webanalytics
672 %{__ln_s} ../../plugins/webanalytics/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/webanalytics
674 ### END OF PLUGIN SETUP ###
677 [ -d %{_var}/log/gforge ] || mkdir -p %{_var}/log/gforge
679 if [ ! -d "/var/lib/pgsql/data/base" ]; then
680 /sbin/service postgresql initdb >>%{INSTALL_LOG} 2>&1
683 # we will need postgresql to be running. we start it, even if it already is running
684 # this won't hurt anything, just ensure we have a running database
685 /sbin/service postgresql start >>%{INSTALL_LOG} 2>&1
687 if [ "$1" -eq "1" ]; then
688 # setup user/group for gforge
689 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -eq 0 ] ; then
690 /usr/sbin/groupadd -r %{gfgroup}
691 /usr/sbin/useradd -r -g %{gfgroup} -d %{FORGE_DIR} -s /bin/bash -c "FusionForge User" %{gfuser}
696 if [ "$1" -eq "1" ]; then
697 # check to see if the database already exists. if not, we proceed to create it.
698 # if so, we print a warning message.
699 echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
701 if [ $ret -ne 0 ] ; then
703 FFORGE_USER=%{dbuser}
704 if [ "x${FFORGE_ADMIN_USER}" = "x" ]
706 FFORGE_ADMIN_USER=%{fforge_admin}
708 if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
710 FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
712 export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
713 %{FORGE_DIR}/install-ng --config --database >>%{INSTALL_LOG} 2>&1
715 echo "Database %{dbname} already exists. Will not proceed with database setup." >>%{INSTALL_LOG} 2>&1
716 echo "Please see %{FORGE_DIR}/install-ng --database and run it manually" >>%{INSTALL_LOG} 2>&1
717 echo "if deemed necessary." >>%{INSTALL_LOG} 2>&1
718 %{FORGE_DIR}/install-ng --config >>%{INSTALL_LOG} 2>&1
721 HOSTNAME=`hostname -f`
722 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
723 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/z-gforge.conf
724 [ -d %{FORGE_DATA_PATH}/etc ] || mkdir %{FORGE_DATA_PATH}/etc
725 touch %{FORGE_DATA_PATH}/etc/httpd.vhosts
727 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
729 mv %{FORGE_CONF_DIR}/httpd.conf.d/ssl-really-on.inc %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
730 %{__sed} -i -e "s!%{FORGE_CONF_DIR}/ssl-cert.pem!/etc/pki/tls/certs/localhost.crt!g" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
731 %{__sed} -i -e "s!%{FORGE_CONF_DIR}/ssl-cert.key!/etc/pki/tls/private/localhost.key!g" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
733 /etc/init.d/httpd restart >>%{INSTALL_LOG} 2>&1
735 chkconfig postgresql on >>%{INSTALL_LOG} 2>&1
737 # generate random hash for session_key
738 HASH=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
739 #%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{FORGE_CONF_DIR}/local.inc
741 # Mailman initial setup
742 /usr/lib/mailman/bin/newlist -q mailman $FFORGE_ADMIN_USER@$HOSTNAME $FFORGE_ADMIN_PASSWORD >>%{INSTALL_LOG} 2>&1
743 chkconfig mailman on >>%{INSTALL_LOG} 2>&1
744 /etc/init.d/mailman restart >>%{INSTALL_LOG} 2>&1
746 # add noreply mail alias
747 echo "noreply: /dev/null" >> /etc/aliases
748 /usr/bin/newaliases >>%{INSTALL_LOG} 2>&1
750 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{INSTALL_LOG} 2>&1
751 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{INSTALL_LOG} 2>&1
753 if [ $ret -ne 0 ] ; then
754 # display message about default admin account
756 echo "You can now connect to your FusionForge installation using:"
758 echo " http://$HOSTNAME/"
760 echo "The FusionForge administrator account and password is:"
762 echo "Account Name = $FFORGE_ADMIN_USER"
763 echo "Password = $FFORGE_ADMIN_PASSWORD"
764 #echo "Please change it to something appropriate upon initial login."
765 # give user a few seconds to read the message
769 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{UPGRADE_LOG} 2>&1
770 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{UPGRADE_LOG} 2>&1
776 if [ "$1" -eq "0" ]; then
778 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
779 echo "Removing fusionforge user..."
780 /usr/sbin/userdel %{gfuser}
783 if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
784 echo "Removing fusionforge group..."
785 /usr/sbin/groupdel %{gfgroup}
789 %post plugin-aselectextauth
790 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_PLUGINS_LIB_DIR}/aselectextauth/db/install_aselectextauth.psql
792 %preun plugin-aselectextauth
793 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_PLUGINS_LIB_DIR}/aselectextauth/db/uninstall_aselectextauth.psql
796 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
799 %defattr(-, root, root)
800 %doc AUTHORS* CHANGES COPYING* INSTALL* NEWS README*
802 #%attr(0660, %{httpduser}, gforge) %config(noreplace) %{FORGE_CONF_DIR}/local.inc
803 #%attr(0640, %{httpduser}, %{httpdgroup}) %config(noreplace) %{_sysconfdir}/httpd/conf.d/z-gforge.conf
804 %attr(0644, root, root) %{_sysconfdir}/cron.d/%{name}
805 %attr(0775, %{httpduser}, %{httpdgroup}) %dir %{FORGE_DATA_PATH}/upload
806 %attr(755, root, %{httpdgroup}) %dir %{FORGE_DIR}
807 # Files under %{FORGE_DIR}
808 %{FORGE_DIR}/AUTHORS*
810 %{FORGE_DIR}/COPYING*
811 %{FORGE_DIR}/INSTALL*
812 %{FORGE_DIR}/Makefile
815 %{FORGE_DIR}/fusionforge.spec
816 %{FORGE_DIR}/install-ng
817 %{FORGE_PLUGINS_LIB_DIR}/README
818 # Directories under %{FORGE_DIR}
821 #%{FORGE_DIR}/contrib
822 %{FORGE_DIR}/cronjobs
826 %{FORGE_DIR}/image-sources
829 %{FORGE_DIR}/translations
833 %dir %{FORGE_DIR}/www
834 # files under %{FORGE_DIR}/www
835 %{FORGE_DIR}/www/*.php
836 %{FORGE_DIR}/www/users
837 %{FORGE_DIR}/www/favicon.ico
838 %{FORGE_DIR}/www/projects
839 # directories under %{FORGE_DIR}/www
840 %{FORGE_DIR}/www/account
841 %{FORGE_DIR}/www/activity
842 %{FORGE_DIR}/www/admin
843 %{FORGE_DIR}/www/developer
844 %{FORGE_DIR}/www/docman
846 %{FORGE_DIR}/www/export
847 %{FORGE_DIR}/www/forum
849 %{FORGE_DIR}/www/images
850 %{FORGE_DIR}/www/include
852 %{FORGE_DIR}/www/mail
855 %{FORGE_DIR}/www/news
856 %{FORGE_DIR}/www/people
857 %{FORGE_DIR}/www/plugins
859 %{FORGE_DIR}/www/project
860 %{FORGE_DIR}/www/register
861 %{FORGE_DIR}/www/reporting
863 %{FORGE_DIR}/www/scripts
864 %{FORGE_DIR}/www/search
865 %{FORGE_DIR}/www/snippet
866 %{FORGE_DIR}/www/soap
867 %{FORGE_DIR}/www/softwaremap
868 %{FORGE_DIR}/www/squal
869 %{FORGE_DIR}/www/stats
870 %{FORGE_DIR}/www/support
871 %{FORGE_DIR}/www/survey
872 %{FORGE_DIR}/www/tabber
873 %{FORGE_DIR}/www/themes
875 %{FORGE_DIR}/www/tracker
876 %{FORGE_DIR}/www/trove
877 %{FORGE_DIR}/www/widgets
878 #%{FORGE_DIR}/www/plugins/online_help
879 #%{FORGE_DIR}/www/plugins/projects-hierarchy
880 #%{FORGE_DIR}/www/plugins/quota_management
881 %dir %{FORGE_PLUGINS_LIB_DIR}
882 %{FORGE_PLUGINS_LIB_DIR}/env.inc.php
883 #%{FORGE_PLUGINS_LIB_DIR}/online_help
884 #%{FORGE_PLUGINS_LIB_DIR}/projects-hierarchy
885 #%{FORGE_PLUGINS_LIB_DIR}/quota_management
887 %dir %{FORGE_CONF_DIR}
888 #%config(noreplace) %{FORGE_CONF_DIR}/httpd.secrets
889 %dir %{FORGE_CONF_DIR}/httpd.d
890 %dir %{FORGE_CONF_DIR}/httpd.conf.d
891 %{FORGE_CONF_DIR}/httpd.conf.d/*
892 %{_sysconfdir}/httpd/conf.d/z-gforge.conf
893 %{FORGE_CONF_DIR}/config.ini.d/defaults.ini
894 %{FORGE_CONF_DIR}/config.ini
895 %dir %attr(0775,root,%{httpdgroup}) %{FORGE_PLUGINS_CONF_DIR}
896 %dir %{FORGE_DATA_PATH}/scmtarballs
897 %dir %{FORGE_DATA_PATH}/scmsnapshots
898 %dir %{FORGE_DATA_PATH}/dumps
899 %{FORGE_DATA_PATH}/homedirs
900 %dir %{_var}/log/gforge
903 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
904 %{FORGE_PLUGINS_LIB_DIR}/authbuiltin
907 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/admssw.ini
908 %{FORGE_PLUGINS_LIB_DIR}/admssw
910 %files plugin-aselectextauth
911 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
912 %{FORGE_PLUGINS_LIB_DIR}/aselectextauth
914 %files plugin-authcas
915 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
916 %{FORGE_PLUGINS_LIB_DIR}/authcas
917 %{FORGE_DIR}/www/plugins/authcas
919 %files plugin-authhttpd
920 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
921 %{FORGE_PLUGINS_LIB_DIR}/authhttpd
922 %{FORGE_DIR}/www/plugins/authhttpd
924 # %files plugin-authopenid
925 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
926 # %{FORGE_PLUGINS_LIB_DIR}/authopenid
928 %files plugin-ckeditor
929 %{FORGE_PLUGINS_LIB_DIR}/ckeditor
930 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-ckeditor.inc
932 %files plugin-cvssyncmail
933 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
934 %{FORGE_PLUGINS_LIB_DIR}/cvssyncmail
936 %files plugin-cvstracker
937 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvstracker.ini
938 %{FORGE_PLUGINS_LIB_DIR}/cvstracker
939 %{FORGE_DIR}/www/plugins/cvstracker
940 %attr(-,%{httpduser},%{httpdgroup}) %{FORGE_PLUGINS_CONF_DIR}/cvstracker
942 %files plugin-compactpreview
943 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/compactpreview.ini
944 %{FORGE_PLUGINS_LIB_DIR}/compactpreview
946 %files plugin-doaprdf
947 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
948 %{FORGE_PLUGINS_LIB_DIR}/doaprdf
950 %files plugin-externalsearch
951 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/externalsearch/
952 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
953 %{FORGE_PLUGINS_LIB_DIR}/externalsearch
955 %files plugin-extsubproj
956 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extsubproj.ini
957 %{FORGE_PLUGINS_LIB_DIR}/extsubproj
959 %files plugin-foafprofiles
960 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/foafprofiles.ini
961 %{FORGE_PLUGINS_LIB_DIR}/foafprofiles
963 # %files plugin-forumml
964 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/forumml.ini
965 # %{FORGE_PLUGINS_LIB_DIR}/forumml
966 # %{FORGE_DIR}/www/plugins/forumml
968 %files plugin-gravatar
969 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/gravatar.ini
970 %{FORGE_PLUGINS_LIB_DIR}/gravatar
972 %files plugin-headermenu
973 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/headermenu.ini
974 %{FORGE_PLUGINS_LIB_DIR}/headermenu
975 %{FORGE_DIR}/www/plugins/headermenu
978 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/hudson/
979 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/hudson.ini
980 %{FORGE_CONF_DIR}/httpd.d/62plugin-hudson
981 %{FORGE_PLUGINS_LIB_DIR}/hudson
982 %{FORGE_DIR}/www/plugins/hudson
984 %files plugin-authldap
985 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
986 %{FORGE_PLUGINS_LIB_DIR}/authldap
988 %files plugin-mediawiki
989 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
990 %{_sysconfdir}/cron.d/fusionforge-plugin-mediawiki
991 %{FORGE_CONF_DIR}/httpd.d/61plugin-mediawiki
992 %{FORGE_PLUGINS_LIB_DIR}/mediawiki/
993 %{FORGE_DIR}/www/plugins/mediawiki
994 %{FORGE_DATA_PATH}/plugins/mediawiki
995 /usr/share/mediawiki/skins/FusionForge.php
996 /usr/share/mediawiki/skins/fusionforge
998 %files plugin-moinmoin
999 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/moinmoin.ini
1000 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/moinmoin/
1001 %{FORGE_PLUGINS_LIB_DIR}/moinmoin/
1002 %{FORGE_DIR}/www/plugins/moinmoin
1004 %files plugin-message
1005 %{FORGE_PLUGINS_LIB_DIR}/message
1006 %{FORGE_DIR}/www/plugins/message
1008 %files plugin-online_help
1009 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
1010 %{FORGE_PLUGINS_LIB_DIR}/online_help
1011 %{FORGE_DIR}/www/plugins/online_help
1013 # %files plugin-oslc
1014 # %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/oslc/
1015 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oslc.ini
1016 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1017 # %{FORGE_PLUGINS_LIB_DIR}/oslc
1018 # %{FORGE_DIR}/www/plugins/oslc
1020 # %files plugin-projectimport
1021 # %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/projectimport/
1022 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
1023 # %{FORGE_PLUGINS_LIB_DIR}/projectimport
1024 # %{FORGE_DIR}/www/plugins/projectimport
1026 # %files plugin-projects-hierarchy
1027 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects-hierarchy.ini
1028 # %{FORGE_PLUGINS_LIB_DIR}/projects-hierarchy
1029 # %{FORGE_DIR}/www/plugins/projects-hierarchy
1031 %files plugin-quota_management
1032 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/quota_management.ini
1033 %{FORGE_PLUGINS_LIB_DIR}/quota_management
1034 %{FORGE_DIR}/www/plugins/quota_management
1036 %files plugin-scmarch
1037 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmarch.ini
1038 %{FORGE_PLUGINS_LIB_DIR}/scmarch
1040 %files plugin-scmbzr
1041 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/scmbzr/
1042 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmbzr.ini
1043 %{FORGE_PLUGINS_LIB_DIR}/scmbzr
1045 %files plugin-scmdarcs
1046 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmdarcs.ini
1047 %{FORGE_PLUGINS_LIB_DIR}/scmdarcs
1049 %files plugin-scmgit
1050 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmgit.ini
1051 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-scmgit-dav.inc
1052 %{FORGE_PLUGINS_LIB_DIR}/scmgit
1053 %{FORGE_DIR}/www/plugins/scmgit
1056 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhg.ini
1057 %{FORGE_PLUGINS_LIB_DIR}/scmhg
1059 %files plugin-scmhook
1060 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhook.ini
1061 %{FORGE_PLUGINS_LIB_DIR}/scmhook
1063 %files plugin-scmccase
1064 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmccase.ini
1065 %{FORGE_PLUGINS_LIB_DIR}/scmccase
1067 %files plugin-scmcvs
1068 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/scmcvs/
1069 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmcvs.ini
1070 %{_sysconfdir}/cron.d/%{name}-plugin-scmcvs
1071 %{FORGE_CONF_DIR}/httpd.d/30virtualcvs
1072 %{FORGE_CONF_DIR}/httpd.d/31virtualcvs.ssl
1073 %{FORGE_PLUGINS_LIB_DIR}/scmcvs
1074 %{FORGE_DIR}/www/plugins/scmcvs
1075 %{FORGE_CHROOT_PATH}/scmrepos/cvs
1077 %files plugin-scmsvn
1078 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/scmsvn/
1079 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmsvn.ini
1080 %{FORGE_PLUGINS_LIB_DIR}/scmsvn
1081 %{FORGE_DIR}/www/plugins/scmsvn
1082 %{FORGE_CHROOT_PATH}/scmrepos/svn
1084 %files plugin-blocks
1085 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/blocks.ini
1086 %{FORGE_PLUGINS_LIB_DIR}/blocks
1087 %{FORGE_DIR}/www/plugins/blocks
1090 %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/wiki/
1091 %{_sysconfdir}/cron.d/%{name}-plugin-wiki
1092 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-wiki.inc
1093 %{FORGE_PLUGINS_LIB_DIR}/wiki
1094 %{FORGE_DIR}/www/wiki
1096 %files plugin-projectlabels
1097 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectlabels.ini
1098 %{FORGE_PLUGINS_LIB_DIR}/projectlabels
1099 %{FORGE_DIR}/www/plugins/projectlabels
1101 %files plugin-contribtracker
1102 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/contribtracker.ini
1103 %{FORGE_PLUGINS_LIB_DIR}/contribtracker
1104 %{FORGE_DIR}/www/plugins/contribtracker
1106 %files plugin-globalsearch
1107 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/globalsearch.ini
1108 %{FORGE_PLUGINS_LIB_DIR}/globalsearch
1109 %{FORGE_DIR}/www/plugins/globalsearch
1111 # %files plugin-mailman
1112 # %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/mailman/
1113 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mailman.ini
1114 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1115 # %{FORGE_CONF_DIR}/httpd.d/62plugin-list-mailman
1116 # %{FORGE_CONF_DIR}/httpd.d/200list.vhost
1117 # %{FORGE_CONF_DIR}/httpd.d/20list
1118 # %{FORGE_CONF_DIR}/httpd.d/20zlist.vhost
1119 # %{FORGE_CONF_DIR}/httpd.d/21list.vhost.ssl
1120 # %{FORGE_PLUGINS_LIB_DIR}/mailman
1121 # %{FORGE_DIR}/www/plugins/mailman
1123 # %files plugin-mantisbt
1124 # %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/mantisbt/
1125 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantisbt.ini
1126 # %{FORGE_PLUGINS_LIB_DIR}/mantisbt
1127 # %{FORGE_DIR}/www/plugins/mantisbt
1129 # %files plugin-oauthprovider
1130 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
1131 # %config(noreplace) %{FORGE_PLUGINS_CONF_DIR}/oauthprovider/
1132 # %{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
1133 # %{FORGE_PLUGINS_LIB_DIR}/oauthprovider
1135 %files plugin-webanalytics
1136 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/webanalytics.ini
1137 %{FORGE_PLUGINS_LIB_DIR}/webanalytics
1138 %{FORGE_DIR}/www/plugins/webanalytics
1141 * Thu Jun 07 2012 - Alain Peyrat <aljeux@free.fr> - 5.1.90-1
1142 - Adapted for 5.2 with new install scripts.
1144 * Tue May 17 2011 - Thorsten Glaser <t.glaser@tarent.de> - 5.0.50-2
1145 - Adapted for versioning of the forge via the packaging
1147 * Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
1148 - Ported to 5.1 tree.
1149 - Reworked logic with rights on configuration files.
1150 - Adapted to changes like scm refactoring.
1151 - Adapted to changes to .ini configuration file.
1152 - Lots of new plugins added.
1154 * Tue May 13 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-2
1155 - fixed plugin symlinks and plugin directory permissions
1156 - patched mediawiki, webcalendar plugins
1157 - patch to fix various references to global variables
1158 - add symlinks to use mediawiki Monobook skin as GForge
1159 - patch to replace ereg_replace() with preg_replace()
1160 - added jpgraph symlink
1161 - setup httpd.secrets
1162 - delete obsolete mediawiki plugin code
1164 * Fri Apr 16 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-1
1165 - My first packaging of fusionforge 4.8.3-1 and plugins