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
16 %define gfgroup gforge
18 %define httpduser apache
19 %define httpdgroup apache
21 %define fforge_admin fforgeadmin
23 %define FORGE_DIR %{_datadir}/gforge
24 %define FORGE_CONF_DIR %{_sysconfdir}/gforge
25 %define FORGE_LANG_DIR %{_datadir}/locale
26 %define FORGE_VAR_LIB %{_var}/lib/gforge
28 %define reloadhttpd() /etc/init.d/httpd httpd reload >/dev/null 2>&1
30 # Disable debug binary detection & generation to speed up process.
31 %global debug_package %{nil}
34 Summary: FusionForge Collaborative Development Environment
40 Group: Development/Tools
41 Source0: %{name}-%{version}.tar.bz2
42 URL: http://www.fusionforge.org/
43 BuildRoot: %{_tmppath}/%{name}-%{version}-root
44 Packager: Alain Peyrat <aljeux@free.fr>
46 Requires: httpd, mod_dav_svn, mod_ssl, php, php-pgsql, php-gd, php-mbstring, mailman
47 Requires: postgresql >= 8.3
48 Requires: postgresql-server >= 8.3
49 Requires: postfix, openssh, inetd, which
51 Requires: /bin/sh, /bin/bash
52 Requires: perl, perl-DBI, perl-HTML-Parser, perl-Text-Autoformat, perl-Mail-Sendmail, perl-Sort-Versions
54 #Requires: libnss-pgsql >= 1.4
56 Requires: php-htmlpurifier >= 4.0.0
59 Requires: /usr/bin/newaliases
60 Requires: php-pear-HTTP_WebDAV_Server
61 Requires: php-pecl-zip
63 # BuildRequires: sed, perl
65 %define INSTALL_LOG %{_var}/log/gforge/install-%{version}.log
66 %define UPGRADE_LOG %{_var}/log/gforge/upgrade-%{version}.log
68 Provides: gforge = %{version}
71 FusionForge provides many tools to aid collaboration in a
72 development project, such as bug-tracking, task management,
73 mailing-lists, SCM repository, forums, support request helper,
74 web/FTP hosting, release management, etc. All these services are
75 integrated into one web site and managed through a web interface.
77 %package plugin-admssw
78 Summary: ADMS.SW profiles for projects URLs for FusionForge
79 Group: Development/Tools
80 Requires: %{name} >= %{version}, php, postgresql, plugin-doaprdf
81 %description plugin-admssw
82 This plugin will provide content-negociation means to export RDF+XML ADMS.SW profiles for projects on /projects URLs,
83 in addition to the content already provided by doaprdf.
84 ADMS.SW stands for Asset Description Metadata Schema for Software.
85 See https://joinup.ec.europa.eu/asset/adms_foss/description for more details.
87 %package plugin-aselectextauth
88 Summary: A-select external authentication for FusionForge
89 Group: Development/Tools
90 Requires: %{name} >= %{version}, php, postgresql
91 %description plugin-aselectextauth
92 A system plugin for authenticating users in fusionforge. A-Select is a framework
93 where users can be authenticated by several means with Authentication
96 %package plugin-authcas
97 Summary: External CAS authentication plugin for FusionForge.
98 Group: Development/Tools
99 Requires: %{name} >= %{version}, php, postgresql
100 %description plugin-authcas
101 External CAS authentication plugin for FusionForge.
103 %package plugin-authhttpd
104 Summary: External HTTPD authentication plugin for FusionForge.
105 Group: Development/Tools
106 Requires: %{name} >= %{version}, php, postgresql
107 %description plugin-authhttpd
108 External HTTPD authentication plugin for FusionForge.
110 # %package plugin-authopenid
111 # Summary: External OpenID authentication plugin for FusionForge.
112 # Group: Development/Tools
113 # Requires: %{name} >= %{version}, php, postgresql
114 # %description plugin-authopenid
115 # External OpenID authentication plugin for FusionForge.
117 %package plugin-ckeditor
118 Summary: CKEditor plugin for FusionForge
119 Group: Development/Tools
120 Requires: %{name} >= %{version}, php, ckeditor
121 %description plugin-ckeditor
122 CKEditor is a WYSIWYG text editor that displays within a web browser.
124 %package plugin-cvssyncmail
125 Summary: Provides email notifications of changes to CVS repositories
126 Group: Development/Tools
127 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, python, php
128 %description plugin-cvssyncmail
129 This plugin adds the capability to notify users of changes to CVS repositories
132 %package plugin-compactpreview
133 Summary: Provides a preview mecanism
134 Group: Development/Tools
135 Requires: %{name} >= %{version}, php
136 %description plugin-compactpreview
137 This plugin adds support for user and project compact-preview
138 (popups) compatible with the OSLC specifications.
140 %package plugin-cvstracker
141 Summary: Links CVS log messages to trackers and tasks.
142 Group: Development/Tools
143 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, php, postgresql
144 %description plugin-cvstracker
145 This is a fusionforge plugin that allows linking CVS log messages to
146 trackers and tasks. It will review all commits in a project and search for
147 specific string to know which task or tracker is related.
149 %package plugin-doaprdf
150 Summary: DOAP RDF for projects
151 Group: Development/Tools
152 Requires: %{name} >= %{version}, php
153 %description plugin-doaprdf
154 DOAP RDF for projects
156 %package plugin-externalsearch
157 Summary: external search plugin for FusionForge
158 Group: Development/Tools
159 Requires: %{name} >= %{version}, php
160 %description plugin-externalsearch
161 This plugin adds a new search engine to your FusionForge site. It allows
162 your users to search your FusionForge site through external search engines
163 which have indexed it. You can define search engines you want to use in
164 the configuration file.
166 %package plugin-extsubproj
167 Summary: external sub project plugin for FusionForge
168 Group: Development/Tools
169 Requires: %{name} >= %{version}, php
170 %description plugin-extsubproj
171 Manages links to external subprojects on remote forges.
173 # %package plugin-forumml
174 # Summary: Mailman to forums plugin for FusionForge
175 # Group: Development/Tools
176 # Requires: %{name} >= %{version}, php
177 # %description plugin-forumml
178 # ForumML integes mailing lists as forums in FusionForge
180 %package plugin-fckeditor
181 Summary: FCKEditor plugin for FusionForge
182 Group: Development/Tools
183 Requires: %{name} >= %{version}, php
184 %description plugin-fckeditor
185 FCKEditor is a WYSIWYG text editor that displays within a web browser.
187 %package plugin-foafprofiles
188 Summary: FOAF profile for forge users
189 Group: Development/Tools
190 Requires: %{name} >= %{version}, php
191 %description plugin-foafprofiles
192 The foafprofile plugin manages the generation of a FOAF profile for forge users.
194 %package plugin-gravatar
195 Summary: Gravatar plugin for FusionForge
196 Group: Development/Tools
197 Requires: %{name} >= %{version}, php
198 %description plugin-gravatar
199 This plugin adds faces images to FusionForge users using the gravatar service.
201 %package plugin-headermenu
202 Summary: Headermenu plugin for FusionForge
203 Group: Development/Tools
204 Requires: %{name} >= %{version}, php
205 %description plugin-headermenu
206 This plugin adds capability to add links right to login/logout.
208 %package plugin-hudson
209 Summary: Hudson continous integration plugin for FusionForge
210 Group: Development/Tools
211 Requires: %{name} >= %{version}, php
212 %description plugin-hudson
213 This plugin adds hudson integration to FusionForge.
215 %package plugin-authldap
216 Summary: external LDAP authentication for FusionForge plugin
217 Group: Development/Tools
218 Requires: %{name} >= %{version}, php, php-ldap
219 %description plugin-authldap
220 This plugin provides LDAP authentication capability for FusionForge.
222 %package plugin-mediawiki
223 Summary: Mediawiki plugin for FusionForge
224 Group: Development/Tools
225 Requires: %{name} >= %{version}, php, mediawiki
226 %description plugin-mediawiki
227 This is a plugin to integrate MediaWiki within FusionForge.
229 %package plugin-moinmoin
230 Summary: MoinMoinWiki plugin for FusionForge
231 Group: Development/Tools
232 Requires: %{name} >= %{version}, php, postgresql, moin
233 %description plugin-moinmoin
234 This is a plugin to integrate MoinMoin wiki within FusionForge.
236 %package plugin-message
237 Summary: Global Information Message plugin for FusionForge
238 Group: Development/Tools
239 Requires: %{name} >= %{version}, php
240 %description plugin-message
241 This is a plugin to add a global announce message for FusionForge.
242 It can be used to warn users for planned or current outage.
244 %package plugin-online_help
245 Summary: online_help plugin for FusionForge
246 Group: Development/Tools
247 Requires: %{name} >= %{version}, php
248 %description plugin-online_help
249 This is a online_help plugin within FusionForge.
251 # %package plugin-oslc
252 # Summary: OSLC plugin for FusionForge
253 # Group: Development/Tools
254 # Requires: %{name} >= %{version}, php, php-ZendFramework > 1.10
255 # %description plugin-oslc
256 # OSLC-CM compatible plugin for FusionForge tracker system.
257 # OSLC-CM is a standard specification for APIs in Change Management
258 # applications. It is based on Web technologies such as REST, RDF, or AJAX.
259 # This package provides an OSLC-CM V2 compatible plugin for FusionForge
262 # %package plugin-projectimport
263 # Summary: Project Import plugin for FusionForge
264 # Group: Development/Tools
265 # Requires: %{name} >= %{version}, php
266 # %description plugin-projectimport
267 # Project import plugin for FusionForge
268 # This plugin allows the import of a project data previously exported
269 # with ForgePlucker, or a compatible tool.
271 # %package plugin-projects-hierarchy
272 # Summary: projects-hierarchy plugin for FusionForge
273 # Group: Development/Tools
274 # Requires: %{name} >= %{version}, php
275 # %description plugin-projects-hierarchy
276 # This is a projects-hierarchy plugin within FusionForge.
278 %package plugin-quota_management
279 Summary: quota_management plugin for FusionForge
280 Group: Development/Tools
281 Requires: %{name} >= %{version}, php
282 %description plugin-quota_management
283 This is a quota_management plugin within FusionForge.
285 %package plugin-scmarch
286 Summary: Arch version control plugin for FusionForge
287 Group: Development/Tools
288 Requires: %{name} >= %{version}, php, arch
289 %description plugin-scmarch
290 This is a plugin to integrate Arch version control system with FusionForge
292 %package plugin-scmbzr
293 Summary: Bazaar version control plugin for FusionForge
294 Group: Development/Tools
295 Requires: %{name} >= %{version}, php, bazaar
296 %description plugin-scmbzr
297 This is a plugin to integrate Bazaar version control system with FusionForge
299 %package plugin-scmdarcs
300 Summary: DARCS version control plugin for FusionForge
301 Group: Development/Tools
302 Requires: %{name} >= %{version}, php, darcs
303 %description plugin-scmdarcs
304 This is a plugin to integrate DARCS version control system with FusionForge
306 %package plugin-scmgit
307 Summary: Git version control plugin for FusionForge
308 Group: Development/Tools
309 Requires: %{name} >= %{version}, php, git, gitweb
310 %description plugin-scmgit
311 This is a plugin to integrate Git version control system with FusionForge
313 %package plugin-scmhg
314 Summary: Mercurial (hg) version control plugin for FusionForge
315 Group: Development/Tools
316 Requires: %{name} >= %{version}, php, mercurial
317 %description plugin-scmhg
318 This is a plugin to integrate Mercurial (hg) version control system with FusionForge
320 %package plugin-scmhook
321 Summary: Source Code Hooks plugin
322 Group: Development/Tools
323 Requires: %{name} >= %{version}
324 %description plugin-scmhook
325 This plugin provide a simple hook system for various version control system.
326 It allows project admins to activate/desactivate predefined hooks on their
329 %package plugin-scmccase
330 Summary: Clear Case plugin for FusionForge
331 Group: Development/Tools
332 Requires: %{name} >= %{version}, php
333 %description plugin-scmccase
334 This is the Clear Case plugin for FusionForge. It creats Clear Case repositories
335 for projects within FusionForge.
337 %package plugin-scmcvs
338 Summary: CVS plugin for FusionForge
339 Group: Development/Tools
340 Requires: %{name} >= %{version}, php, cvs
341 %description plugin-scmcvs
342 FusionForge is a web-based Collaborative Development Environment offering
343 easy access to CVS, mailing lists, bug tracking, message
344 boards/forums, task management, permanent file archival, and total
345 web-based administration.
347 This RPM installs SCM CVS plugin for FusionForge and provides CVS support
350 It also provides a specific version of CVSWeb wrapped in FusionForge.
352 %package plugin-scmsvn
353 Summary: Subversion plugin for FusionForge
354 Group: Development/Tools
355 Requires: %{name} >= %{version}, php, subversion, viewvc
356 %description plugin-scmsvn
357 This RPM installs SCM SVN plugin for FusionForge and provides svn support
360 %package plugin-blocks
361 Summary: Blocks plugin for FusionForge
362 Group: Development/Tools
363 Requires: %{name} >= %{version}
364 %description plugin-blocks
365 HTML blocks plugin for FusionForge.
368 Summary: Wiki plugin for FusionForge
369 Group: Development/Tools
370 Requires: %{name} >= %{version}, php, postgresql, units
371 %description plugin-wiki
372 Wiki plugin for FusionForge. Allows for one wiki per project, integrated search,
373 page edits displayed on activity tab, and multi-project wiki preferences.
375 %package plugin-projectlabels
376 Summary: Labels plugin for FusionForge
377 Group: Development/Tools
378 Requires: %{name} >= %{version}, php, postgresql
379 %description plugin-projectlabels
380 Project Labels plugin for FusionForge.
382 %package plugin-contribtracker
383 Summary: contribtracker plugin for FusionForge
384 Group: Development/Tools
385 Requires: %{name} >= %{version}, php, postgresql
386 %description plugin-contribtracker
387 contribtracker plugin for FusionForge.
389 %package plugin-globalsearch
390 Summary: globalsearch plugin for FusionForge
391 Group: Development/Tools
392 Requires: %{name} >= %{version}, php, postgresql
393 %description plugin-globalsearch
394 globalsearch plugin for FusionForge.
396 # %package plugin-mailman
397 # Summary: Mailman plugin for FusionForge
398 # Group: Development/Tools
399 # Requires: %{name} >= %{version}, php
400 # %description plugin-mailman
401 # Mailman plugin for FusionForge.
403 # %package plugin-mantisbt
404 # Summary: mantisbt plugin for FusionForge
405 # Group: Development/Tools
406 # Requires: %{name} >= %{version}, php, postgresql
407 # %description plugin-mantisbt
408 # mantisbt plugin for FusionForge.
410 # %package plugin-oauthprovider
411 # Summary: oauthprovider plugin for FusionForge
412 # Group: Development/Tools
413 # Requires: %{name} >= %{version}, php, postgresql
414 # %description plugin-oauthprovider
415 # oauthprovider plugin for FusionForge.
417 %package plugin-webanalytics
418 Summary: webanalytics plugin for FusionForge
419 Group: Development/Tools
420 Requires: %{name} >= %{version}, php, postgresql
421 %description plugin-webanalytics
422 webanalytics plugin for FusionForge.
428 # empty build section
431 %{__rm} -rf $RPM_BUILD_ROOT
433 # creating required directories
434 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
435 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
436 %{__install} -m 755 -d $RPM_BUILD_ROOT/bin
437 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}
438 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/vendor
439 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www
440 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins
441 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}
442 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d
443 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d
444 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d
445 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins
446 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_LANG_DIR}
447 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}
448 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/upload
449 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmtarballs
450 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmsnapshots
451 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/homedirs
452 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/dumps
453 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/etc
454 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/svn
455 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/cvs
456 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/plugins/mediawiki
457 %{__install} -m 755 -d $RPM_BUILD_ROOT/home/groups
458 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_var}/log/gforge
459 # mock mediawiki directory because we symlink GForge skin to Monobook
460 %{__install} -m 755 -d $RPM_BUILD_ROOT/usr/share/mediawiki/skins
462 # we define a search and replace function, we'll be using this a lot
463 # to fix several parts of the installation
466 /usr/bin/find . -type f | xargs grep -l ${1} | xargs %{__sed} -i -e "s+${1}+${2}+g"
469 # we need to fix up the fusionforge-install-3-db.php script to ref %{FORGE_DIR}
470 search_and_replace "/opt/gforge" "%{FORGE_DIR}"
473 %{__cp} -a * $RPM_BUILD_ROOT/%{FORGE_DIR}/
475 # Create project vhost space symlink
476 %{__ln_s} /home/groups $RPM_BUILD_ROOT/%{FORGE_VAR_LIB}/homedirs/groups
477 # install restricted shell for cvs accounts
478 %{__cp} -a plugins/scmcvs/bin/cvssh.pl $RPM_BUILD_ROOT/bin/
480 # Apache configuration file
481 %{__cp} -a etc/httpd.conf.d-fhsrh/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
482 %{__cp} -a etc/config.ini.d/defaults.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
483 %{__cp} -a etc/config.ini-fhsrh $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
484 %{__cp} -a etc/httpd.conf-fhsrh $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
485 #%{__cp} -a etc/gforge-httpd.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
486 #%{__sed} -i -e 's|.*php_value[[:space:]]*include_path.*$|\tphp_value\tinclude_path ".:/usr/share/gforge/www/include:/usr/share/gforge:/etc/gforge:/usr/share/gforge/common:/usr/share/gforge/www:/usr/share/gforge/plugins"|' $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
488 %{__sed} -i -e 's!www-data!apache!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
489 %{__sed} -i -e 's!lists.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
490 %{__sed} -i -e 's!scm.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
491 %{__sed} -i -e 's!users.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
492 %{__sed} -i -e 's!use_webdav = no!use_webdav = yes!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
493 %{__sed} -i -e 's!use_shell = yes!use_shell = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
494 %{__sed} -i -e 's!use_ftp = yes!use_ftp = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
495 %{__sed} -i -e 's!use_people = yes!use_people = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
496 %{__sed} -i -e 's!use_project_vhost = yes!use_project_vhost = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
497 %{__sed} -i -e 's!use_snippet = yes!use_snippet = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
498 %{__sed} -i -e 's!use_ratings = yes!use_ratings = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
500 # install fusionforge crontab
501 %{__sed} -e 's/\$FFUSER/%{gfuser}/g' packaging/cron.d/cron.fusionforge > $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
503 # Install locale files in Redhat standard location
504 %{__cp} -a locales/* $RPM_BUILD_ROOT/%{FORGE_LANG_DIR}/
506 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/utils/fusionforge-shell-postgresql.spec
508 # Identify this FusionForge version
509 # keep type intact and change forge in derivates,
510 # unless there are deep changes (type is used for
511 # the Forge-Identification meta header)
512 WHICH_TYPE=FusionForge
513 WHICH_FORGE=FusionForge
514 WHICH_VERSION=%{version}-%{release}
516 -e "s!@PKGNAME@!${WHICH_FORGE}!g" \
517 -e "s!@PKGVERSION@!${WHICH_VERSION}!g" \
518 -e "s!@PLUCKERNAME@!${WHICH_TYPE}!g" \
519 <$RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific/pkginfo.inc.php \
520 >$RPM_BUILD_ROOT/%{FORGE_DIR}/common/pkginfo.inc.php
522 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/COPYING.php
523 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/packaging
524 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific
525 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/rpm-specific
526 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/packaging
527 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/*.spec
531 for i in $(utils/list-enabled-plugins.sh --disabled) ; do
532 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/$i
535 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
536 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/cron.d/* $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
537 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/httpd.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d/
538 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/httpd.conf.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
539 %{__cp} -rp $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/plugins/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins/
541 # plugin: authbuiltin (internal plugin)
542 %{__ln_s} ../../plugins/authbuiltin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authbuiltin
545 %{__ln_s} ../../plugins/authcas/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authcas
548 %{__ln_s} ../../plugins/authhttpd/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authhttpd
551 # %{__ln_s} ../../plugins/authopenid/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authopenid
553 # plugin: compactpreview
554 %{__ln_s} ../../plugins/compactpreview/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/compactpreview
556 # plugin: cvssyncmail
559 %{__ln_s} ../../plugins/cvstracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/cvstracker
561 # plugin: externalsearch
564 %{__ln_s} ../../plugins/extsubproj/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extsubproj
567 %{__ln_s} ../../plugins/fckeditor/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/fckeditor
570 # %{__ln_s} ../../plugins/forumml/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/forumml
573 %{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
576 %{__ln_s} ../../plugins/mediawiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mediawiki
577 %{__ln_s} /usr/share/mediawiki/api.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
578 %{__ln_s} /usr/share/mediawiki/extensions $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
579 %{__ln_s} /usr/share/mediawiki/img_auth.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
580 %{__ln_s} /usr/share/mediawiki/includes $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
581 %{__ln_s} /usr/share/mediawiki/index.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
582 %{__ln_s} /usr/share/mediawiki/languages $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
583 %{__ln_s} /usr/share/mediawiki/maintenance/ $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
584 %{__ln_s} /usr/share/mediawiki/opensearch_desc.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
585 %{__ln_s} /usr/share/mediawiki/profileinfo.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
586 %{__ln_s} /usr/share/mediawiki/redirect.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
587 %{__ln_s} /usr/share/mediawiki/StartProfiler.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
588 %{__ln_s} /usr/share/mediawiki/thumb.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
589 %{__ln_s} /usr/share/mediawiki/trackback.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
590 %{__ln_s} /usr/share/mediawiki/skins $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
591 %{__ln_s} /usr/share/mediawiki $RPM_BUILD_ROOT/var/lib/gforge/plugins/mediawiki/master
592 %{__ln_s} /usr/share/gforge/plugins/mediawiki/mediawiki-skin/FusionForge.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
593 %{__ln_s} /usr/share/gforge/plugins/mediawiki/mediawiki-skin/fusionforge $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
596 %{__ln_s} ../../plugins/moinmoin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/moinmoin
599 %{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
601 # plugin: online_help
602 %{__ln_s} ../../plugins/online_help/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/online_help
604 # plugin: projects-hierarchy
605 # %{__ln_s} ../../plugins/projects-hierarchy/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projects-hierarchy
607 # plugin: quota_management
608 %{__ln_s} ../../plugins/quota_management/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/quota_management
617 %{__ln_s} ../../plugins/scmcvs $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmcvs
618 %{__install} -m 644 plugins/scmcvs/cron.d/%{name}-plugin-scmcvs $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
623 # this is pre-activated, so create the config symlink
624 %{__ln_s} ../../plugins/scmsvn/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmsvn
627 %{__ln_s} ../../plugins/scmgit/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmgit
628 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin
629 %{__ln_s} /usr/share/gitweb/gitweb.cgi $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin/gitweb.cgi
630 %{__ln_s} /usr/share/gitweb/static/gitweb.css $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.css
631 %{__ln_s} /usr/share/gitweb/static/gitweb.js $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.js
636 %{__ln_s} ../../plugins/blocks/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/blocks
639 %{__ln_s} ../../plugins/headermenu/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/headermenu
642 %{__ln_s} ../plugins/wiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/wiki
645 #%{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
647 # plugin : projectimport
648 # %{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
650 # plugin: projectlabels
651 %{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
653 # plugin: contribtracker
654 %{__ln_s} ../../plugins/contribtracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/contribtracker
656 # plugin: globalsearch
657 %{__ln_s} ../../plugins/globalsearch/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/globalsearch
660 # %{__ln_s} ../../plugins/mailman/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mailman
663 # %{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
665 # plugin: oauthprovider
666 #%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
668 # plugin: webanalytics
669 %{__ln_s} ../../plugins/webanalytics/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/webanalytics
671 ### END OF PLUGIN SETUP ###
674 [ -d %{_var}/log/gforge ] || mkdir -p %{_var}/log/gforge
676 if [ ! -d "/var/lib/pgsql/data/base" ]; then
677 /sbin/service postgresql initdb >>%{INSTALL_LOG} 2>&1
680 # we will need postgresql to be running. we start it, even if it already is running
681 # this won't hurt anything, just ensure we have a running database
682 /sbin/service postgresql start >>%{INSTALL_LOG} 2>&1
684 if [ "$1" -eq "1" ]; then
685 # setup user/group for gforge
686 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -eq 0 ] ; then
687 /usr/sbin/groupadd -r %{gfgroup}
688 /usr/sbin/useradd -r -g %{gfgroup} -d %{FORGE_DIR} -s /bin/bash -c "FusionForge User" %{gfuser}
693 if [ "$1" -eq "1" ]; then
694 # check to see if the database already exists. if not, we proceed to create it.
695 # if so, we print a warning message.
696 echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
698 if [ $ret -ne 0 ] ; then
700 FFORGE_USER=%{dbuser}
701 if [ "x${FFORGE_ADMIN_USER}" = "x" ]
703 FFORGE_ADMIN_USER=%{fforge_admin}
705 if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
707 FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
709 export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
710 %{FORGE_DIR}/install-ng --config --database >>%{INSTALL_LOG} 2>&1
712 echo "Database %{dbname} already exists. Will not proceed with database setup." >>%{INSTALL_LOG} 2>&1
713 echo "Please see %{FORGE_DIR}/install-ng --database and run it manually" >>%{INSTALL_LOG} 2>&1
714 echo "if deemed necessary." >>%{INSTALL_LOG} 2>&1
715 %{FORGE_DIR}/install-ng --config >>%{INSTALL_LOG} 2>&1
718 HOSTNAME=`hostname -f`
719 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
720 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/z-gforge.conf
721 [ -d %{FORGE_VAR_LIB}/etc ] || mkdir %{FORGE_VAR_LIB}/etc
722 touch %{FORGE_VAR_LIB}/etc/httpd.vhosts
724 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
726 mv %{FORGE_CONF_DIR}/httpd.conf.d/ssl-really-on.inc %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
727 %{__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
728 %{__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
730 /etc/init.d/httpd restart >>%{INSTALL_LOG} 2>&1
732 chkconfig postgresql on >>%{INSTALL_LOG} 2>&1
734 # generate random hash for session_key
735 HASH=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
736 #%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{FORGE_CONF_DIR}/local.inc
738 # Mailman initial setup
739 /usr/lib/mailman/bin/newlist -q mailman $FFORGE_ADMIN_USER@$HOSTNAME $FFORGE_ADMIN_PASSWORD >>%{INSTALL_LOG} 2>&1
740 chkconfig mailman on >>%{INSTALL_LOG} 2>&1
741 /etc/init.d/mailman restart >>%{INSTALL_LOG} 2>&1
743 # add noreply mail alias
744 echo "noreply: /dev/null" >> /etc/aliases
745 /usr/bin/newaliases >>%{INSTALL_LOG} 2>&1
747 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{INSTALL_LOG} 2>&1
748 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{INSTALL_LOG} 2>&1
750 if [ $ret -ne 0 ] ; then
751 # display message about default admin account
753 echo "You can now connect to your FusionForge installation using:"
755 echo " http://$HOSTNAME/"
757 echo "The FusionForge administrator account and password is:"
759 echo "Account Name = $FFORGE_ADMIN_USER"
760 echo "Password = $FFORGE_ADMIN_PASSWORD"
761 #echo "Please change it to something appropriate upon initial login."
762 # give user a few seconds to read the message
766 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{UPGRADE_LOG} 2>&1
767 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{UPGRADE_LOG} 2>&1
773 if [ "$1" -eq "0" ]; then
775 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
776 echo "Removing fusionforge user..."
777 /usr/sbin/userdel %{gfuser}
780 if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
781 echo "Removing fusionforge group..."
782 /usr/sbin/groupdel %{gfgroup}
786 %post plugin-aselectextauth
787 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/install_aselectextauth.psql
789 %preun plugin-aselectextauth
790 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/uninstall_aselectextauth.psql
793 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
796 %defattr(-, root, root)
797 %doc AUTHORS* CHANGES COPYING* INSTALL* NEWS README*
799 #%attr(0660, %{httpduser}, gforge) %config(noreplace) %{FORGE_CONF_DIR}/local.inc
800 #%attr(0640, %{httpduser}, %{httpdgroup}) %config(noreplace) %{_sysconfdir}/httpd/conf.d/z-gforge.conf
801 %attr(0644, root, root) %{_sysconfdir}/cron.d/%{name}
802 %attr(0775, %{httpduser}, %{httpdgroup}) %dir %{FORGE_VAR_LIB}/upload
803 %attr(755, root, %{httpdgroup}) %dir %{FORGE_DIR}
804 # Files under %{FORGE_DIR}
805 %{FORGE_DIR}/AUTHORS*
807 %{FORGE_DIR}/COPYING*
808 %{FORGE_DIR}/INSTALL*
809 %{FORGE_DIR}/Makefile
812 %{FORGE_DIR}/fusionforge.spec
813 %{FORGE_DIR}/install-ng
814 %{FORGE_DIR}/plugins/README
815 # Directories under %{FORGE_DIR}
818 #%{FORGE_DIR}/contrib
819 %{FORGE_DIR}/cronjobs
823 %{FORGE_DIR}/image-sources
826 %{FORGE_DIR}/translations
830 %dir %{FORGE_DIR}/www
831 # files under %{FORGE_DIR}/www
832 %{FORGE_DIR}/www/*.php
833 %{FORGE_DIR}/www/users
834 %{FORGE_DIR}/www/favicon.ico
835 %{FORGE_DIR}/www/projects
836 # directories under %{FORGE_DIR}/www
837 %{FORGE_DIR}/www/account
838 %{FORGE_DIR}/www/activity
839 %{FORGE_DIR}/www/admin
840 %{FORGE_DIR}/www/developer
841 %{FORGE_DIR}/www/docman
843 %{FORGE_DIR}/www/export
844 %{FORGE_DIR}/www/forum
846 %{FORGE_DIR}/www/images
847 %{FORGE_DIR}/www/include
849 %{FORGE_DIR}/www/mail
852 %{FORGE_DIR}/www/news
853 %{FORGE_DIR}/www/people
854 %{FORGE_DIR}/www/plugins
856 %{FORGE_DIR}/www/project
857 %{FORGE_DIR}/www/register
858 %{FORGE_DIR}/www/reporting
860 %{FORGE_DIR}/www/scripts
861 %{FORGE_DIR}/www/search
862 %{FORGE_DIR}/www/snippet
863 %{FORGE_DIR}/www/soap
864 %{FORGE_DIR}/www/softwaremap
865 %{FORGE_DIR}/www/squal
866 %{FORGE_DIR}/www/stats
867 %{FORGE_DIR}/www/support
868 %{FORGE_DIR}/www/survey
869 %{FORGE_DIR}/www/tabber
870 %{FORGE_DIR}/www/themes
872 %{FORGE_DIR}/www/tracker
873 %{FORGE_DIR}/www/trove
874 %{FORGE_DIR}/www/widgets
875 #%{FORGE_DIR}/www/plugins/online_help
876 #%{FORGE_DIR}/www/plugins/projects-hierarchy
877 #%{FORGE_DIR}/www/plugins/quota_management
878 %dir %{FORGE_DIR}/plugins
879 %{FORGE_DIR}/plugins/env.inc.php
880 #%{FORGE_DIR}/plugins/online_help
881 #%{FORGE_DIR}/plugins/projects-hierarchy
882 #%{FORGE_DIR}/plugins/quota_management
884 %dir %{FORGE_CONF_DIR}
885 #%config(noreplace) %{FORGE_CONF_DIR}/httpd.secrets
886 %dir %{FORGE_CONF_DIR}/httpd.d
887 %dir %{FORGE_CONF_DIR}/httpd.conf.d
888 %{FORGE_CONF_DIR}/httpd.conf.d/*
889 %{_sysconfdir}/httpd/conf.d/z-gforge.conf
890 %{FORGE_CONF_DIR}/config.ini.d/defaults.ini
891 %{FORGE_CONF_DIR}/config.ini
892 %dir %attr(0775,root,%{httpdgroup}) %{FORGE_CONF_DIR}/plugins
893 %dir %{FORGE_VAR_LIB}/scmtarballs
894 %dir %{FORGE_VAR_LIB}/scmsnapshots
895 %dir %{FORGE_VAR_LIB}/dumps
896 %{FORGE_VAR_LIB}/homedirs
897 %dir %{_var}/log/gforge
900 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
901 %{FORGE_DIR}/plugins/authbuiltin
904 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/admssw.ini
905 %{FORGE_DIR}/plugins/admssw
907 %files plugin-aselectextauth
908 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
909 %{FORGE_DIR}/plugins/aselectextauth
911 %files plugin-authcas
912 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
913 %{FORGE_DIR}/plugins/authcas
914 %{FORGE_DIR}/www/plugins/authcas
916 %files plugin-authhttpd
917 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
918 %{FORGE_DIR}/plugins/authhttpd
919 %{FORGE_DIR}/www/plugins/authhttpd
921 # %files plugin-authopenid
922 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
923 # %{FORGE_DIR}/plugins/authopenid
925 %files plugin-ckeditor
926 %{FORGE_DIR}/plugins/ckeditor
927 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-ckeditor.inc
929 %files plugin-cvssyncmail
930 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
931 %{FORGE_DIR}/plugins/cvssyncmail
933 %files plugin-cvstracker
934 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvstracker.ini
935 %{FORGE_DIR}/plugins/cvstracker
936 %{FORGE_DIR}/www/plugins/cvstracker
937 %attr(-,%{httpduser},%{httpdgroup}) %{FORGE_CONF_DIR}/plugins/cvstracker
939 %files plugin-compactpreview
940 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/compactpreview.ini
941 %{FORGE_DIR}/plugins/compactpreview
943 %files plugin-doaprdf
944 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
945 %{FORGE_DIR}/plugins/doaprdf
947 %files plugin-externalsearch
948 %config(noreplace) %{FORGE_CONF_DIR}/plugins/externalsearch/
949 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
950 %{FORGE_DIR}/plugins/externalsearch
952 %files plugin-extsubproj
953 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extsubproj.ini
954 %{FORGE_DIR}/plugins/extsubproj
956 %files plugin-fckeditor
957 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/fckeditor.ini
958 %{FORGE_DIR}/plugins/fckeditor
959 %{FORGE_DIR}/www/plugins/fckeditor
961 %files plugin-foafprofiles
962 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/foafprofiles.ini
963 %{FORGE_DIR}/plugins/foafprofiles
965 # %files plugin-forumml
966 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/forumml.ini
967 # %{FORGE_DIR}/plugins/forumml
968 # %{FORGE_DIR}/www/plugins/forumml
970 %files plugin-gravatar
971 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/gravatar.ini
972 %{FORGE_DIR}/plugins/gravatar
974 %files plugin-headermenu
975 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/headermenu.ini
976 %{FORGE_DIR}/plugins/headermenu
977 %{FORGE_DIR}/www/plugins/headermenu
980 %config(noreplace) %{FORGE_CONF_DIR}/plugins/hudson/
981 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/hudson.ini
982 %{FORGE_CONF_DIR}/httpd.d/62plugin-hudson
983 %{FORGE_DIR}/plugins/hudson
984 %{FORGE_DIR}/www/plugins/hudson
986 %files plugin-authldap
987 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
988 %{FORGE_DIR}/plugins/authldap
990 %files plugin-mediawiki
991 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
992 %{_sysconfdir}/cron.d/fusionforge-plugin-mediawiki
993 %{FORGE_CONF_DIR}/httpd.d/61plugin-mediawiki
994 %{FORGE_DIR}/plugins/mediawiki/
995 %{FORGE_DIR}/www/plugins/mediawiki
996 %{FORGE_VAR_LIB}/plugins/mediawiki
997 /usr/share/mediawiki/skins/FusionForge.php
998 /usr/share/mediawiki/skins/fusionforge
1000 %files plugin-moinmoin
1001 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/moinmoin.ini
1002 %config(noreplace) %{FORGE_CONF_DIR}/plugins/moinmoin/
1003 %{FORGE_DIR}/plugins/moinmoin/
1004 %{FORGE_DIR}/www/plugins/moinmoin
1006 %files plugin-message
1007 %{FORGE_DIR}/plugins/message
1008 %{FORGE_DIR}/www/plugins/message
1010 %files plugin-online_help
1011 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
1012 %{FORGE_DIR}/plugins/online_help
1013 %{FORGE_DIR}/www/plugins/online_help
1015 # %files plugin-oslc
1016 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/oslc/
1017 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oslc.ini
1018 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1019 # %{FORGE_DIR}/plugins/oslc
1020 # %{FORGE_DIR}/www/plugins/oslc
1022 # %files plugin-projectimport
1023 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/projectimport/
1024 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
1025 # %{FORGE_DIR}/plugins/projectimport
1026 # %{FORGE_DIR}/www/plugins/projectimport
1028 # %files plugin-projects-hierarchy
1029 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects-hierarchy.ini
1030 # %{FORGE_DIR}/plugins/projects-hierarchy
1031 # %{FORGE_DIR}/www/plugins/projects-hierarchy
1033 %files plugin-quota_management
1034 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/quota_management.ini
1035 %{FORGE_DIR}/plugins/quota_management
1036 %{FORGE_DIR}/www/plugins/quota_management
1038 %files plugin-scmarch
1039 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmarch.ini
1040 %{FORGE_DIR}/plugins/scmarch
1042 %files plugin-scmbzr
1043 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmbzr/
1044 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmbzr.ini
1045 %{FORGE_DIR}/plugins/scmbzr
1047 %files plugin-scmdarcs
1048 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmdarcs.ini
1049 %{FORGE_DIR}/plugins/scmdarcs
1051 %files plugin-scmgit
1052 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmgit.ini
1053 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-scmgit-dav.inc
1054 %{FORGE_DIR}/plugins/scmgit
1055 %{FORGE_DIR}/www/plugins/scmgit
1058 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhg.ini
1059 %{FORGE_DIR}/plugins/scmhg
1061 %files plugin-scmhook
1062 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhook.ini
1063 %{FORGE_DIR}/plugins/scmhook
1065 %files plugin-scmccase
1066 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmccase.ini
1067 %{FORGE_DIR}/plugins/scmccase
1069 %files plugin-scmcvs
1070 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmcvs/
1071 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmcvs.ini
1072 %{_sysconfdir}/cron.d/%{name}-plugin-scmcvs
1073 %{FORGE_CONF_DIR}/httpd.d/30virtualcvs
1074 %{FORGE_CONF_DIR}/httpd.d/31virtualcvs.ssl
1075 %{FORGE_DIR}/plugins/scmcvs
1076 %{FORGE_DIR}/www/plugins/scmcvs
1077 %{FORGE_VAR_LIB}/chroot/scmrepos/cvs
1079 %files plugin-scmsvn
1080 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmsvn/
1081 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmsvn.ini
1082 %{FORGE_DIR}/plugins/scmsvn
1083 %{FORGE_DIR}/www/plugins/scmsvn
1084 %{FORGE_VAR_LIB}/chroot/scmrepos/svn
1086 %files plugin-blocks
1087 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/blocks.ini
1088 %{FORGE_DIR}/plugins/blocks
1089 %{FORGE_DIR}/www/plugins/blocks
1092 %config(noreplace) %{FORGE_CONF_DIR}/plugins/wiki/
1093 %{_sysconfdir}/cron.d/%{name}-plugin-wiki
1094 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-wiki.inc
1095 %{FORGE_DIR}/plugins/wiki
1096 %{FORGE_DIR}/www/wiki
1098 %files plugin-projectlabels
1099 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectlabels.ini
1100 %{FORGE_DIR}/plugins/projectlabels
1101 %{FORGE_DIR}/www/plugins/projectlabels
1103 %files plugin-contribtracker
1104 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/contribtracker.ini
1105 %{FORGE_DIR}/plugins/contribtracker
1106 %{FORGE_DIR}/www/plugins/contribtracker
1108 %files plugin-globalsearch
1109 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/globalsearch.ini
1110 %{FORGE_DIR}/plugins/globalsearch
1111 %{FORGE_DIR}/www/plugins/globalsearch
1113 # %files plugin-mailman
1114 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mailman/
1115 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mailman.ini
1116 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1117 # %{FORGE_CONF_DIR}/httpd.d/62plugin-list-mailman
1118 # %{FORGE_CONF_DIR}/httpd.d/200list.vhost
1119 # %{FORGE_CONF_DIR}/httpd.d/20list
1120 # %{FORGE_CONF_DIR}/httpd.d/20zlist.vhost
1121 # %{FORGE_CONF_DIR}/httpd.d/21list.vhost.ssl
1122 # %{FORGE_DIR}/plugins/mailman
1123 # %{FORGE_DIR}/www/plugins/mailman
1125 # %files plugin-mantisbt
1126 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mantisbt/
1127 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantisbt.ini
1128 # %{FORGE_DIR}/plugins/mantisbt
1129 # %{FORGE_DIR}/www/plugins/mantisbt
1131 # %files plugin-oauthprovider
1132 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
1133 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/oauthprovider/
1134 # %{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
1135 # %{FORGE_DIR}/plugins/oauthprovider
1137 %files plugin-webanalytics
1138 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/webanalytics.ini
1139 %{FORGE_DIR}/plugins/webanalytics
1140 %{FORGE_DIR}/www/plugins/webanalytics
1143 * Thu Jun 07 2012 - Alain Peyrat <aljeux@free.fr> - 5.1.90-1
1144 - Adapted for 5.2 with new install scripts.
1146 * Tue May 17 2011 - Thorsten Glaser <t.glaser@tarent.de> - 5.0.50-2
1147 - Adapted for versioning of the forge via the packaging
1149 * Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
1150 - Ported to 5.1 tree.
1151 - Reworked logic with rights on configuration files.
1152 - Adapted to changes like scm refactoring.
1153 - Adapted to changes to .ini configuration file.
1154 - Lots of new plugins added.
1156 * Tue May 13 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-2
1157 - fixed plugin symlinks and plugin directory permissions
1158 - patched mediawiki, webcalendar plugins
1159 - patch to fix various references to global variables
1160 - add symlinks to use mediawiki Monobook skin as GForge
1161 - patch to replace ereg_replace() with preg_replace()
1162 - added jpgraph symlink
1163 - setup httpd.secrets
1164 - delete obsolete mediawiki plugin code
1166 * Fri Apr 16 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-1
1167 - My first packaging of fusionforge 4.8.3-1 and plugins