2 # RPM spec file for FusionForge
4 # Initial work for 4.8 by JL Bond Consulting
5 # Reworked for 5.1 by Alain Peyrat <aljeux@free.fr>
7 # Copyright (C) 2010 Alain Peyrat
15 %define gfgroup gforge
17 %define httpduser apache
18 %define httpdgroup apache
20 %define fforge_admin fforgeadmin
22 %define FORGE_DIR %{_datadir}/gforge
23 %define FORGE_CONF_DIR %{_sysconfdir}/gforge
24 %define FORGE_LANG_DIR %{_datadir}/locale
25 %define FORGE_VAR_LIB %{_var}/lib/gforge
27 %define reloadhttpd() /etc/init.d/httpd httpd reload >/dev/null 2>&1
30 Summary: FusionForge Collaborative Development Environment
36 Group: Development/Tools
37 Source0: %{name}-%{version}.tar.bz2
38 Source1: README.mediawiki.jlbond
39 Source2: LocalSettings.php
40 Patch1: fusionforge-4.8.3-mediawiki.patch
41 Patch2: fusionforge-4.8.3-register_globals.patch
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, postgresql-libs, postgresql-server, postgresql-contrib
48 Requires: postfix, openssh, inetd, which
50 Requires: /bin/sh, /bin/bash
51 Requires: perl, perl-DBI, perl-HTML-Parser, perl-Text-Autoformat, perl-Mail-Sendmail, perl-Sort-Versions
54 Requires: /var/www/jpgraph-1.19/jpgraph.php
55 #Requires: libnss-pgsql >= 1.4
57 Requires: php-htmlpurifier >= 4.0.0
60 Requires: /usr/bin/newaliases
61 Requires: php-pear-HTTP_WebDAV_Server
62 Requires: php-pecl-zip
64 # BuildRequires: sed, perl
66 Provides: gforge = %{version}
69 FusionForge provides many tools to aid collaboration in a
70 development project, such as bug-tracking, task management,
71 mailing-lists, SCM repository, forums, support request helper,
72 web/FTP hosting, release management, etc. All these services are
73 integrated into one web site and managed through a web interface.
75 %package plugin-aselectextauth
76 Summary: A-select external authentication for FusionForge
77 Group: Development/Tools
78 Requires: %{name} >= %{version}, php, postgresql
79 %description plugin-aselectextauth
80 A system plugin for authenticating users in fusionforge. A-Select is a framework
81 where users can be authenticated by several means with Authentication
84 %package plugin-authcas
85 Summary: External CAS authentication plugin for FusionForge.
86 Group: Development/Tools
87 Requires: %{name} >= %{version}, php, postgresql
88 %description plugin-authcas
89 External CAS authentication plugin for FusionForge.
91 %package plugin-authhttpd
92 Summary: External HTTPD authentication plugin for FusionForge.
93 Group: Development/Tools
94 Requires: %{name} >= %{version}, php, postgresql
95 %description plugin-authhttpd
96 External HTTPD authentication plugin for FusionForge.
98 %package plugin-authopenid
99 Summary: External OpenID authentication plugin for FusionForge.
100 Group: Development/Tools
101 Requires: %{name} >= %{version}, php, postgresql
102 %description plugin-authopenid
103 External OpenID authentication plugin for FusionForge.
105 %package plugin-cvssyncmail
106 Summary: Provides email notifications of changes to CVS repositories
107 Group: Development/Tools
108 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, python, php
109 %description plugin-cvssyncmail
110 This plugin adds the capability to notify users of changes to CVS repositories
113 %package plugin-cvstracker
114 Summary: Links CVS log messages to trackers and tasks.
115 Group: Development/Tools
116 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, php, postgresql
117 %description plugin-cvstracker
118 This is a fusionforge plugin that allows linking CVS log messages to
119 trackers and tasks. It will review all commits in a project and search for
120 specific string to know which task or tracker is related.
122 %package plugin-doaprdf
123 Summary: DOAP RDF for projects
124 Group: Development/Tools
125 Requires: %{name} >= %{version}, php
126 %description plugin-doaprdf
127 DOAP RDF for projects
129 %package plugin-externalsearch
130 Summary: external search plugin for FusionForge
131 Group: Development/Tools
132 Requires: %{name} >= %{version}, php
133 %description plugin-externalsearch
134 This plugin adds a new search engine to your FusionForge site. It allows
135 your users to search your FusionForge site through external search engines
136 which have indexed it. You can define search engines you want to use in
137 the configuration file.
139 %package plugin-forumml
140 Summary: Mailman to forums plugin for FusionForge
141 Group: Development/Tools
142 Requires: %{name} >= %{version}, php
143 %description plugin-forumml
144 ForumML integes mailing lists as forums in FusionForge
146 %package plugin-fckeditor
147 Summary: FCKEditor plugin for FusionForge
148 Group: Development/Tools
149 Requires: %{name} >= %{version}, php
150 %description plugin-fckeditor
151 FCKEditor is a WYSIWYG text editor that displays within a web browser.
153 %package plugin-gravatar
154 Summary: Gravatar plugin for FusionForge
155 Group: Development/Tools
156 Requires: %{name} >= %{version}, php
157 %description plugin-gravatar
158 This plugin adds faces images to FusionForge users using the gravatar service.
160 %package plugin-hudson
161 Summary: Hudson continous integration plugin for FusionForge
162 Group: Development/Tools
163 Requires: %{name} >= %{version}, php
164 %description plugin-hudson
165 This plugin adds hudson integration to FusionForge.
167 %package plugin-authldap
168 Summary: external LDAP authentication for FusionForge plugin
169 Group: Development/Tools
170 Requires: %{name} >= %{version}, php, php-ldap
171 %description plugin-authldap
172 This plugin provides LDAP authentication capability for FusionForge.
174 %package plugin-mediawiki
175 Summary: Mediawiki plugin for FusionForge
176 Group: Development/Tools
177 Requires: %{name} >= %{version}, php, mediawiki
178 %description plugin-mediawiki
179 This is a plugin to integrate MediaWiki within FusionForge.
181 %package plugin-message
182 Summary: Global Information Message plugin for FusionForge
183 Group: Development/Tools
184 Requires: %{name} >= %{version}, php
185 %description plugin-message
186 This is a plugin to add a global announce message for FusionForge.
187 It can be use to warn users for planned or current outage.
189 %package plugin-online_help
190 Summary: online_help plugin for FusionForge
191 Group: Development/Tools
192 Requires: %{name} >= %{version}, php
193 %description plugin-online_help
194 This is a online_help plugin within FusionForge.
197 Summary: OSLC plugin for FusionForge
198 Group: Development/Tools
199 Requires: %{name} >= %{version}, php, php-ZendFramework > 1.10
200 %description plugin-oslc
201 OSLC-CM compatible plugin for FusionForge tracker system.
202 OSLC-CM is a standard specification for APIs in Change Management
203 applications. It is based on Web technologies such as REST, RDF, or AJAX.
204 This package provides an OSLC-CM V2 compatible plugin for FusionForge
207 %package plugin-projectimport
208 Summary: Project Import plugin for FusionForge
209 Group: Development/Tools
210 Requires: %{name} >= %{version}, php
211 %description plugin-projectimport
212 Project import plugin for FusionForge
213 This plugin allows the import of a project data previously exported
214 with ForgePlucker, or a compatible tool.
216 %package plugin-projects_hierarchy
217 Summary: projects_hierarchy plugin for FusionForge
218 Group: Development/Tools
219 Requires: %{name} >= %{version}, php
220 %description plugin-projects_hierarchy
221 This is a projects_hierarchy plugin within FusionForge.
223 %package plugin-quota_management
224 Summary: quota_management plugin for FusionForge
225 Group: Development/Tools
226 Requires: %{name} >= %{version}, php
227 %description plugin-quota_management
228 This is a quota_management plugin within FusionForge.
230 %package plugin-scmarch
231 Summary: Arch version control plugin for FusionForge
232 Group: Development/Tools
233 Requires: %{name} >= %{version}, php, arch
234 %description plugin-scmarch
235 This is a plugin to integrate Arch version control system with FusionForge
237 %package plugin-scmbzr
238 Summary: Bazaar version control plugin for FusionForge
239 Group: Development/Tools
240 Requires: %{name} >= %{version}, php, bazaar
241 %description plugin-scmbzr
242 This is a plugin to integrate Bazaar version control system with FusionForge
244 %package plugin-scmdarcs
245 Summary: DARCS version control plugin for FusionForge
246 Group: Development/Tools
247 Requires: %{name} >= %{version}, php, darcs
248 %description plugin-scmdarcs
249 This is a plugin to integrate DARCS version control system with FusionForge
251 %package plugin-scmgit
252 Summary: Git version control plugin for FusionForge
253 Group: Development/Tools
254 Requires: %{name} >= %{version}, php, git, gitweb
255 %description plugin-scmgit
256 This is a plugin to integrate Git version control system with FusionForge
258 %package plugin-scmhg
259 Summary: Mercurial (hg) version control plugin for FusionForge
260 Group: Development/Tools
261 Requires: %{name} >= %{version}, php, hg
262 %description plugin-scmhg
263 This is a plugin to integrate Mercurial (hg) version control system with FusionForge
265 %package plugin-scmhook
266 Summary: Source Code Hooks plugin
267 Group: Development/Tools
268 Requires: %{name} >= %{version}
269 %description plugin-scmhook
270 This plugin provide a simple hook system for various version control system.
271 It allows project admins to activate/desactivate predefined hooks on their
274 %package plugin-scmccase
275 Summary: Clear Case plugin for FusionForge
276 Group: Development/Tools
277 Requires: %{name} >= %{version}, php
278 %description plugin-scmccase
279 This is the Clear Case plugin for FusionForge. It creats Clear Case repositories
280 for projects within FusionForge.
282 %package plugin-scmcvs
283 Summary: CVS plugin for FusionForge
284 Group: Development/Tools
285 Requires: %{name} >= %{version}, php, cvs
286 %description plugin-scmcvs
287 FusionForge is a web-based Collaborative Development Environment offering
288 easy access to CVS, mailing lists, bug tracking, message
289 boards/forums, task management, permanent file archival, and total
290 web-based administration.
292 This RPM installs SCM CVS plugin for FusionForge and provides CVS support
295 It also provides a specific version of CVSWeb wrapped in FusionForge.
297 %package plugin-scmsvn
298 Summary: Subversion plugin for FusionForge
299 Group: Development/Tools
300 Requires: %{name} >= %{version}, php, subversion
301 %description plugin-scmsvn
302 This RPM installs SCM SVN plugin for FusionForge and provides svn support
305 %package plugin-svncommitemail
306 Summary: subversion commit email plugin for FusionForge
307 Group: Development/Tools
308 Requires: %{name} >= %{version}, php, subversion, perl, %{name}-plugin-scmsvn >= %{version}
309 %description plugin-svncommitemail
310 This RPM installs subversion commit email notification plugin for FusionForge.
312 %package plugin-svntracker
313 Summary: SVNTracker plugin for FusionForge
314 Group: Development/Tools
315 Requires: %{name} >= %{version}, php, subversion, perl, postgresql, %{name}-plugin-scmsvn >= %{version}
316 %description plugin-svntracker
317 SVNTracker plugin allows linking SVN log messages to Trackers and tasks.
318 It will review all commits in a project and search for a specific string
319 to know which task or tracker is related.
321 %package plugin-blocks
322 Summary: Blocks plugin for FusionForge
323 Group: Development/Tools
324 Requires: %{name} >= %{version}
325 %description plugin-blocks
326 HTML blocks plugin for FusionForge.
328 %package plugin-extratabs
329 Summary: extratabs plugin for FusionForge
330 Group: Development/Tools
331 Requires: %{name} >= %{version}
332 %description plugin-extratabs
333 HTML extratabs plugin for FusionForge.
336 Summary: Wiki plugin for FusionForge
337 Group: Development/Tools
338 Requires: %{name} >= %{version}, php, postgresql
339 %description plugin-wiki
340 Wiki plugin for FusionForge. Allows for one wiki per project, integrated search,
341 page edits displayed on activity tab, and multi-project wiki preferences.
343 %package plugin-projectlabels
344 Summary: Labels plugin for FusionForge
345 Group: Development/Tools
346 Requires: %{name} >= %{version}, php, postgresql
347 %description plugin-projectlabels
348 Project Labels plugin for FusionForge.
350 %package plugin-contribtracker
351 Summary: contribtracker plugin for FusionForge
352 Group: Development/Tools
353 Requires: %{name} >= %{version}, php, postgresql
354 %description plugin-contribtracker
355 contribtracker plugin for FusionForge.
357 %package plugin-globalsearch
358 Summary: globalsearch plugin for FusionForge
359 Group: Development/Tools
360 Requires: %{name} >= %{version}, php, postgresql
361 %description plugin-globalsearch
362 globalsearch plugin for FusionForge.
364 %package plugin-mailman
365 Summary: Mailman plugin for FusionForge
366 Group: Development/Tools
367 Requires: %{name} >= %{version}, php
368 %description plugin-mailman
369 Mailman plugin for FusionForge.
371 %package plugin-mantisbt
372 Summary: mantisbt plugin for FusionForge
373 Group: Development/Tools
374 Requires: %{name} >= %{version}, php, postgresql
375 %description plugin-mantisbt
376 mantisbt plugin for FusionForge.
378 %package plugin-oauthprovider
379 Summary: oauthprovider plugin for FusionForge
380 Group: Development/Tools
381 Requires: %{name} >= %{version}, php, postgresql
382 %description plugin-oauthprovider
383 oauthprovider plugin for FusionForge.
392 # empty build section
395 %{__rm} -rf $RPM_BUILD_ROOT
397 # creating required directories
398 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
399 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
400 %{__install} -m 755 -d $RPM_BUILD_ROOT/bin
401 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}
402 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/lib
403 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}
404 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d
405 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d
406 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d
407 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins
408 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_LANG_DIR}
409 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}
410 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/upload
411 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmtarballs
412 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmsnapshots
413 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/homedirs
414 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/dumps
415 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/etc
416 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/svn
417 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/cvs
418 %{__install} -m 755 -d $RPM_BUILD_ROOT/home/groups
419 %{__install} -m 755 -d $RPM_BUILD_ROOT/var/log/gforge
420 # mock mediawiki directory because we symlink GForge skin to Monobook
421 %{__install} -m 755 -d $RPM_BUILD_ROOT/usr/share/mediawiki/skins
423 # we define a search and replace function, we'll be using this a lot
424 # to fix several parts of the installation
427 /usr/bin/find . -type f | xargs grep -l ${1} | xargs %{__sed} -i -e "s+${1}+${2}+g"
430 # we need to fix up the fusionforge-install-3-db.php script to ref %{FORGE_DIR}
431 search_and_replace "/opt/gforge" "%{FORGE_DIR}"
434 %{__cp} -a * $RPM_BUILD_ROOT/%{FORGE_DIR}/
436 # create project vhost space symlink
437 %{__ln_s} /home/groups $RPM_BUILD_ROOT/%{FORGE_VAR_LIB}/homedirs/groups
438 # install restricted shell for cvs accounts
439 %{__cp} -a plugins/scmcvs/bin/cvssh.pl $RPM_BUILD_ROOT/bin/
441 # Fix configuration files entries (various sys_* variables)
442 #%{__cp} -a etc/local.inc.example $RPM_BUILD_ROOT/%{FORGE_CONF_DIR}/local.inc
443 #%{__sed} -i -e "s!/path/to/gforge!%{FORGE_DIR}!g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
444 #%{__sed} -i -e "s!/path/to/jpgraph!/var/www/jpgraph-1.19!g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
445 #%{__sed} -i -e "s/\$sys_dbname=.*/\$sys_dbname='%{dbname}';/g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
446 #%{__sed} -i -e "s/\$sys_dbuser=.*/\$sys_dbuser='%{dbuser}';/g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
447 #%{__sed} -i -e "s/\$sys_apache_user=.*/\$sys_apache_user='%{httpduser}';/g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
448 #%{__sed} -i -e "s/\$sys_apache_group=.*/\$sys_apache_group='%{httpdgroup}';/g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
449 #%{__sed} -i -e "s|\$sys_plugins_path=.*|\$sys_plugins_path=\"%{FORGE_DIR}/plugins\";|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
450 #%{__sed} -i -e "s|\$sys_upload_dir=.*|\$sys_upload_dir=\"\$sys_var_path/upload\";|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
451 #%{__sed} -i -e "s|\$sys_urlroot=.*|\$sys_urlroot=\"%{FORGE_DIR}/www\";|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/local.inc
453 # Replace sys_localinc, sys_gfdbname, sys_gfdbuser
454 #%{__cp} -a etc/httpd.secrets.example $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.secrets
455 #%{__sed} -i -e "s|sys_localinc.*$|sys_localinc %{FORGE_CONF_DIR}/local.inc|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.secrets
456 #%{__sed} -i -e "s|sys_gfdbname.*$|sys_gfdbname %{dbname}|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.secrets
457 #%{__sed} -i -e "s|sys_gfdbuser.*$|sys_gfdbname %{dbuser}|g" $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.secrets
459 # Apache configuration file
460 %{__cp} -a etc/httpd.conf.d-fhs/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
461 %{__cp} -a etc/config.ini.d/defaults.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
462 %{__cp} -a etc/config.ini.d/debug.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
463 %{__cp} -a etc/config.ini-fhs $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
464 %{__cp} -a etc/httpd.conf-fhs $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/gforge.conf
465 #%{__cp} -a etc/gforge-httpd.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/gforge.conf
466 #%{__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/gforge.conf
467 # install fusionforge crontab
468 %{__install} -m 644 packaging/cron.d/cron.fusionforge $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
470 %{__install} -m 644 deb-specific/sqlhelper.pm $RPM_BUILD_ROOT%{FORGE_DIR}/lib/sqlhelper.pm
472 # Install locale files in Redhat standard location
473 %{__cp} -a locales/* $RPM_BUILD_ROOT/%{FORGE_LANG_DIR}/
475 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/utils/fusionforge-shell-postgresql.spec
477 # Identify this FusionForge version
478 # keep type intact and change forge in derivates,
479 # unless there are deep changes (type is used for
480 # the Forge-Identification meta header)
481 WHICH_TYPE=FusionForge
482 WHICH_FORGE=FusionForge
483 WHICH_VERSION=%{version}-%{release}
485 -e "s!@PKGNAME@!${WHICH_FORGE}!g" \
486 -e "s!@PKGVERSION@!${WHICH_VERSION}!g" \
487 -e "s!@PLUCKERNAME@!${WHICH_TYPE}!g" \
488 <$RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific/pkginfo.inc.php \
489 >$RPM_BUILD_ROOT/%{FORGE_DIR}/common/pkginfo.inc.php
491 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/COPYING.php
492 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/packaging
493 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific
494 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/rpm-specific
495 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/packaging
496 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/*.spec
497 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/foafprofiles
500 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
501 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/cron.d/* $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
502 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/httpd.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d/
503 %{__cp} -rp $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/plugins/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins/
504 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/README
506 # plugin: aselectextauth
508 # plugin: authbuiltin (internal plugin)
509 %{__ln_s} ../../plugins/authbuiltin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authbuiltin
512 %{__ln_s} ../../plugins/authcas/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authcas
515 %{__ln_s} ../../plugins/authhttpd/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authhttpd
518 %{__ln_s} ../../plugins/authopenid/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authopenid
520 # plugin: cvssyncmail
523 # delete stuff that is clearly outdated/obsolete so we don't package this and confuse others
524 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/httpd.conf
525 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/Makefile
526 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/rpm-specific
528 # plugin: externalsearch
533 %{__ln_s} ../../plugins/forumml/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/forumml
536 %{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
539 # create symlink for apache configuration for mediawiki plugin
540 ## first, delete the php_admin_value include_path
541 %{__sed} -i -e "/^.*php_admin_value[[:space:]]*include_path.*/d" $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/etc/httpd.d/61plugin-mediawiki
542 %{__ln_s} %{FORGE_DIR}/plugins/mediawiki/etc/httpd.d/61plugin-mediawiki $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d/03mediawiki.conf
543 # this is pre-activated, so create the config symlink
544 #%{__ln_s} %{FORGE_DIR}/plugins/mediawiki/etc/plugins/mediawiki $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins/mediawiki
545 # create symlinks to use MonoBook as the GForge skin
546 %{__ln_s} monobook $RPM_BUILD_ROOT/usr/share/mediawiki/skins/gforge
547 %{__ln_s} MonoBook.deps.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/GForge.deps.php
548 %{__ln_s} MonoBook.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/GForge.php
549 # sort out the GForge skin files and remove obsolete code
550 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/mediawiki-skin
551 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/usr/share/gforge
552 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/usr/share/mediawiki/skins
553 # insert our own LocalSettings.php
554 #%{__cp} -f %{SOURCE2} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/usr/share/mediawiki/LocalSettings.php
555 # insert our own README file
556 %{__cp} -f %{SOURCE1} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/README.jlbond
559 %{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
561 # plugin: online_help
563 # plugin: projects_hierarchy
565 # plugin: quota_management
574 %{__ln_s} ../../plugins/scmcvs $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmcvs
575 %{__install} -m 644 plugins/scmcvs/cron.d/%{name}-plugin-scmcvs $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
580 # this is pre-activated, so create the config symlink
581 %{__ln_s} ../../plugins/scmsvn/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmsvn
584 %{__ln_s} ../../plugins/scmgit/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmgit
585 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin
586 %{__ln_s} /usr/share/gitweb/gitweb.cgi $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin/gitweb.cgi
587 %{__ln_s} /usr/share/gitweb/static/gitweb.css $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.css
588 %{__ln_s} /usr/share/gitweb/static/gitweb.js $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.js
592 # plugin: svncommitemail
596 %{__install} -m 644 plugins/svntracker/rpm-specific/cron.d/gforge-plugin-svntracker $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
599 %{__ln_s} ../../plugins/blocks/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/blocks
602 %{__ln_s} ../../plugins/extratabs/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extratabs
605 %{__ln_s} ../plugins/wiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/wiki
608 %{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
610 # plugin : projectimport
611 %{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
613 # plugin: projectlabels
614 %{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
616 # plugin: contribtracker
617 %{__ln_s} ../../plugins/contribtracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/contribtracker
619 # plugin: globalsearch
620 %{__ln_s} ../../plugins/globalsearch/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/globalsearch
623 %{__ln_s} ../../plugins/mailman/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mailman
626 %{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
628 # plugin: oauthprovider
629 #%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
631 ### END OF PLUGIN SETUP ###
634 # we will need postgresql to be running. we start it, even if it already is running
635 # this won't hurt anything, just ensure we have a running database
636 /sbin/service postgresql start >>/var/log/%{name}-install.log 2>&1
638 if [ "$1" -eq "1" ]; then
639 # setup user/group for gforge
640 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -eq 0 ] ; then
641 echo "Did not find existing fusionforge user. Adding fusionforge group and user..." >>/var/log/%{name}-install.log 2>&1
642 /usr/sbin/groupadd -r %{gfgroup}
643 /usr/sbin/useradd -r -g %{gfgroup} -d %{FORGE_DIR} -s /bin/bash -c "FusionForge User" %{gfuser}
648 if [ "$1" -eq "1" ]; then
649 # check to see if the database already exists. if not, we proceed to create it.
650 # if so, we print a warning message.
651 echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
653 if [ $ret -ne 0 ] ; then
655 FFORGE_USER=%{dbuser}
656 if [ "x${FFORGE_ADMIN_USER}" = "x" ]
658 FFORGE_ADMIN_USER=%{fforge_admin}
660 if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
662 FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
664 export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
665 /usr/bin/php %{FORGE_DIR}/fusionforge-install-3-db.php >>/var/log/%{name}-install.log 2>&1
667 echo "Database %{dbname} already exists. Will not proceed with database setup." >>/var/log/%{name}-install.log 2>&1
668 echo "Please see %{FORGE_DIR}/fusionforge-install-3-db.php and run it manually" >>/var/log/%{name}-install.log 2>&1
669 echo "if deemed necessary." >>/var/log/%{name}-install.log 2>&1
672 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-install.log 2>&1
673 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>/var/log/%{name}-install.log 2>&1
675 HOSTNAME=`hostname -f`
676 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
677 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/gforge.conf
678 [ -d %{FORGE_VAR_LIB}/etc ] || mkdir %{FORGE_VAR_LIB}/etc
679 touch %{FORGE_VAR_LIB}/etc/httpd.vhosts
681 /usr/bin/php %{FORGE_DIR}/fusionforge-install-4-config.php >>/var/log/%{name}-install.log 2>&1
683 /etc/init.d/httpd restart >/dev/null 2>&1
685 chkconfig postgresql on >/dev/null 2>&1
687 # generate random hash for session_key
688 HASH=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
689 #%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{FORGE_CONF_DIR}/local.inc
691 # add noreply mail alias
692 echo "noreply: /dev/null" >> /etc/aliases
693 /usr/bin/newaliases >/dev/null 2>&1
695 if [ $ret -ne 0 ] ; then
696 # display message about default admin account
698 echo "You can now connect to your FusionForge installation using:"
700 echo " http://$HOSTNAME/"
702 echo "The FusionForge administrator account and password is:"
704 echo "Account Name = $FFORGE_ADMIN_USER"
705 echo "Password = $FFORGE_ADMIN_PASSWORD"
706 #echo "Please change it to something appropriate upon initial login."
707 # give user a few seconds to read the message
711 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-upgrade.log 2>&1
717 if [ "$1" -eq "0" ]; then
719 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
720 echo "Removing fusionforge user..."
721 /usr/sbin/userdel %{gfuser}
724 if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
725 echo "Removing fusionforge group..."
726 /usr/sbin/groupdel %{gfgroup}
730 %post plugin-aselectextauth
731 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/install_aselectextauth.psql
733 %preun plugin-aselectextauth
734 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/uninstall_aselectextauth.psql
737 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
740 %defattr(-, root, root)
741 %doc AUTHORS* CHANGES COPYING INSTALL* NEWS README*
743 #%attr(0660, %{httpduser}, gforge) %config(noreplace) %{FORGE_CONF_DIR}/local.inc
744 #%attr(0640, %{httpduser}, %{httpdgroup}) %config(noreplace) %{_sysconfdir}/httpd/conf.d/gforge.conf
745 %attr(0644, root, root) %{_sysconfdir}/cron.d/%{name}
746 %attr(0775, %{httpduser}, %{httpdgroup}) %dir %{FORGE_VAR_LIB}/upload
747 %attr(755, root, %{httpdgroup}) %dir %{FORGE_DIR}
748 # Files under %{FORGE_DIR}
749 %{FORGE_DIR}/AUTHORS*
752 %{FORGE_DIR}/INSTALL*
755 %{FORGE_DIR}/fusionforge.spec
756 %{FORGE_DIR}/fusionforge-install*
757 %{FORGE_DIR}/gforge-restricted.sh
758 %{FORGE_DIR}/install.sh
759 %{FORGE_DIR}/install-common.inc
760 %{FORGE_DIR}/install-ng
761 # Directories under %{FORGE_DIR}
764 #%{FORGE_DIR}/contrib
765 %{FORGE_DIR}/cronjobs
769 %{FORGE_DIR}/image-sources
774 %{FORGE_DIR}/translations
777 %dir %{FORGE_DIR}/www
778 # files under %{FORGE_DIR}/www
779 %{FORGE_DIR}/www/*.php
780 %{FORGE_DIR}/www/users
781 %{FORGE_DIR}/www/favicon.ico
782 %{FORGE_DIR}/www/projects
783 # directories under %{FORGE_DIR}/www
784 %{FORGE_DIR}/www/account
785 %{FORGE_DIR}/www/activity
786 %{FORGE_DIR}/www/admin
787 %{FORGE_DIR}/www/developer
788 %{FORGE_DIR}/www/docman
790 %{FORGE_DIR}/www/export
791 %{FORGE_DIR}/www/forum
793 %{FORGE_DIR}/www/images
794 %{FORGE_DIR}/www/include
795 %{FORGE_DIR}/www/jscook
797 %{FORGE_DIR}/www/mail
800 %{FORGE_DIR}/www/news
801 %{FORGE_DIR}/www/people
803 %{FORGE_DIR}/www/project
804 %{FORGE_DIR}/www/register
805 %{FORGE_DIR}/www/reporting
807 %{FORGE_DIR}/www/scripts
808 %{FORGE_DIR}/www/search
809 %{FORGE_DIR}/www/snippet
810 %{FORGE_DIR}/www/soap
811 %{FORGE_DIR}/www/softwaremap
812 %{FORGE_DIR}/www/squal
813 %{FORGE_DIR}/www/stats
814 %{FORGE_DIR}/www/survey
815 %{FORGE_DIR}/www/tabber
816 %{FORGE_DIR}/www/themes
818 %{FORGE_DIR}/www/tracker
819 %{FORGE_DIR}/www/trove
820 %{FORGE_DIR}/www/widgets
821 #%{FORGE_DIR}/www/plugins/online_help
822 #%{FORGE_DIR}/www/plugins/projects_hierarchy
823 #%{FORGE_DIR}/www/plugins/quota_management
824 %dir %{FORGE_DIR}/plugins
825 %{FORGE_DIR}/plugins/env.inc.php
826 #%{FORGE_DIR}/plugins/online_help
827 #%{FORGE_DIR}/plugins/projects_hierarchy
828 #%{FORGE_DIR}/plugins/quota_management
830 %dir %{FORGE_CONF_DIR}
831 #%config(noreplace) %{FORGE_CONF_DIR}/httpd.secrets
832 %dir %{FORGE_CONF_DIR}/httpd.d
833 %dir %{FORGE_CONF_DIR}/httpd.conf.d
834 %{FORGE_CONF_DIR}/httpd.conf.d/*
835 %{_sysconfdir}/httpd/conf.d/gforge.conf
836 %{FORGE_CONF_DIR}/config.ini.d/defaults.ini
837 %{FORGE_CONF_DIR}/config.ini.d/debug.ini
838 %{FORGE_CONF_DIR}/config.ini
839 %dir %attr(0775,root,%{httpdgroup}) %{FORGE_CONF_DIR}/plugins
840 %dir %{FORGE_VAR_LIB}/scmtarballs
841 %dir %{FORGE_VAR_LIB}/scmsnapshots
842 %dir %{FORGE_VAR_LIB}/dumps
843 %{FORGE_VAR_LIB}/homedirs
847 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
848 %{FORGE_DIR}/plugins/authbuiltin
849 %{FORGE_DIR}/www/plugins/authbuiltin
851 %files plugin-aselectextauth
852 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
853 %{FORGE_DIR}/plugins/aselectextauth
855 %files plugin-authcas
856 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
857 %{FORGE_DIR}/plugins/authcas
858 %{FORGE_DIR}/www/plugins/authcas
860 %files plugin-authhttpd
861 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
862 %{FORGE_DIR}/plugins/authhttpd
863 %{FORGE_DIR}/www/plugins/authhttpd
865 %files plugin-authopenid
866 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
867 %{FORGE_DIR}/plugins/authopenid
868 %{FORGE_DIR}/www/plugins/authopenid
870 %files plugin-cvssyncmail
871 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
872 %{FORGE_DIR}/plugins/cvssyncmail
874 %files plugin-cvstracker
875 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvstracker.ini
876 %{FORGE_DIR}/plugins/cvstracker
877 %{FORGE_DIR}/www/plugins/cvstracker
878 %attr(-,%{httpduser},%{httpdgroup}) %{FORGE_CONF_DIR}/plugins/cvstracker
880 %files plugin-doaprdf
881 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
882 %{FORGE_DIR}/plugins/doaprdf
884 %files plugin-externalsearch
885 %config(noreplace) %{FORGE_CONF_DIR}/plugins/externalsearch/
886 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
887 %{FORGE_DIR}/plugins/externalsearch
889 %files plugin-fckeditor
890 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/fckeditor.ini
891 %{FORGE_DIR}/plugins/fckeditor
892 %{FORGE_DIR}/www/plugins/fckeditor
894 %files plugin-forumml
895 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/forumml.ini
896 %{FORGE_DIR}/plugins/forumml
897 %{FORGE_DIR}/www/plugins/forumml
899 %files plugin-gravatar
900 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/gravatar.ini
901 %{FORGE_DIR}/plugins/gravatar
904 %config(noreplace) %{FORGE_CONF_DIR}/plugins/hudson/
905 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/hudson.ini
906 %{FORGE_CONF_DIR}/httpd.d/62plugin-hudson
907 %{FORGE_DIR}/plugins/hudson
908 %{FORGE_DIR}/www/plugins/hudson
910 %files plugin-authldap
911 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
912 %{FORGE_DIR}/plugins/authldap
914 %files plugin-mediawiki
915 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
916 %config(noreplace) %{FORGE_CONF_DIR}/httpd.d/03mediawiki.conf
917 %{FORGE_CONF_DIR}/httpd.d/61plugin-mediawiki
918 %{FORGE_DIR}/plugins/mediawiki/
919 %{FORGE_DIR}/www/plugins/mediawiki
920 /usr/share/mediawiki/skins/gforge
921 /usr/share/mediawiki/skins/GForge.deps.php
922 /usr/share/mediawiki/skins/GForge.php
924 %files plugin-message
925 %{FORGE_DIR}/plugins/message
926 %{FORGE_DIR}/www/plugins/message
928 %files plugin-online_help
929 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
930 %{FORGE_DIR}/plugins/online_help
931 %{FORGE_DIR}/www/plugins/online_help
934 %config(noreplace) %{FORGE_CONF_DIR}/plugins/oslc/
935 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oslc.ini
936 %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
937 %{FORGE_DIR}/plugins/oslc
938 %{FORGE_DIR}/www/plugins/oslc
940 %files plugin-projectimport
941 %config(noreplace) %{FORGE_CONF_DIR}/plugins/projectimport/
942 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
943 %{FORGE_DIR}/plugins/projectimport
944 %{FORGE_DIR}/www/plugins/projectimport
946 %files plugin-projects_hierarchy
947 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects_hierarchy.ini
948 %{FORGE_DIR}/plugins/projects_hierarchy
949 %{FORGE_DIR}/www/plugins/projects_hierarchy
951 %files plugin-quota_management
952 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/quota_management.ini
953 %{FORGE_DIR}/plugins/quota_management
954 %{FORGE_DIR}/www/plugins/quota_management
956 %files plugin-scmarch
957 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmarch/
958 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmarch.ini
959 %{FORGE_DIR}/plugins/scmarch
962 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmbzr/
963 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmbzr.ini
964 %{FORGE_DIR}/plugins/scmbzr
966 %files plugin-scmdarcs
967 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmdarcs/
968 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmdarcs.ini
969 %{FORGE_DIR}/plugins/scmdarcs
972 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmgit/
973 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmgit.ini
974 %{FORGE_DIR}/plugins/scmgit
975 %{FORGE_DIR}/www/plugins/scmgit
978 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmhg/
979 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhg.ini
980 %{FORGE_DIR}/plugins/scmhg
982 %files plugin-scmhook
983 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhook.ini
984 %{FORGE_DIR}/plugins/scmhook
986 %files plugin-scmccase
987 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmccase/
988 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmccase.ini
989 %{FORGE_DIR}/plugins/scmccase
992 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmcvs/
993 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmcvs.ini
994 %{_sysconfdir}/cron.d/%{name}-plugin-scmcvs
995 %{FORGE_CONF_DIR}/httpd.d/30virtualcvs
996 %{FORGE_CONF_DIR}/httpd.d/31virtualcvs.ssl
997 %{FORGE_DIR}/plugins/scmcvs
998 %{FORGE_DIR}/www/plugins/scmcvs
999 %{FORGE_VAR_LIB}/chroot/scmrepos/cvs
1001 %files plugin-scmsvn
1002 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmsvn/
1003 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmsvn.ini
1004 %{FORGE_DIR}/plugins/scmsvn
1005 %{FORGE_DIR}/www/plugins/scmsvn
1006 %{FORGE_VAR_LIB}/chroot/scmrepos/svn
1008 %files plugin-svncommitemail
1009 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svncommitemail.ini
1010 %{FORGE_DIR}/plugins/svncommitemail
1012 %files plugin-svntracker
1013 %config(noreplace) %{FORGE_CONF_DIR}/plugins/svntracker/
1014 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svntracker.ini
1015 %{_sysconfdir}/cron.d/gforge-plugin-svntracker
1016 %{FORGE_DIR}/plugins/svntracker
1017 %{FORGE_DIR}/www/plugins/svntracker
1019 %files plugin-blocks
1020 %config(noreplace) %{FORGE_CONF_DIR}/plugins/blocks/
1021 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/blocks.ini
1022 %{FORGE_DIR}/plugins/blocks
1023 %{FORGE_DIR}/www/plugins/blocks
1025 %files plugin-extratabs
1026 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extratabs.ini
1027 %{FORGE_DIR}/plugins/extratabs
1028 %{FORGE_DIR}/www/plugins/extratabs
1031 %config(noreplace) %{FORGE_CONF_DIR}/plugins/wiki/
1032 %{_sysconfdir}/cron.d/cron.wiki
1033 %{FORGE_CONF_DIR}/httpd.d/03wiki.conf
1034 %{FORGE_DIR}/plugins/wiki
1035 %{FORGE_DIR}/www/wiki
1037 %files plugin-projectlabels
1038 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectlabels.ini
1039 %{FORGE_DIR}/plugins/projectlabels
1040 %{FORGE_DIR}/www/plugins/projectlabels
1042 %files plugin-contribtracker
1043 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/contribtracker.ini
1044 %{FORGE_DIR}/plugins/contribtracker
1045 %{FORGE_DIR}/www/plugins/contribtracker
1047 %files plugin-globalsearch
1048 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/globalsearch.ini
1049 %{FORGE_DIR}/plugins/globalsearch
1050 %{FORGE_DIR}/www/plugins/globalsearch
1052 %files plugin-mailman
1053 %config(noreplace) %{FORGE_CONF_DIR}/plugins/mailman/
1054 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mailman.ini
1055 %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1056 %{FORGE_CONF_DIR}/httpd.d/62plugin-list-mailman
1057 %{FORGE_CONF_DIR}/httpd.d/200list.vhost
1058 %{FORGE_CONF_DIR}/httpd.d/20list
1059 %{FORGE_CONF_DIR}/httpd.d/20zlist.vhost
1060 %{FORGE_CONF_DIR}/httpd.d/21list.vhost.ssl
1061 %{FORGE_DIR}/plugins/mailman
1062 %{FORGE_DIR}/www/plugins/mailman
1064 %files plugin-mantisbt
1065 %config(noreplace) %{FORGE_CONF_DIR}/plugins/mantisbt/
1066 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantisbt.ini
1067 %{FORGE_DIR}/plugins/mantisbt
1068 %{FORGE_DIR}/www/plugins/mantisbt
1070 %files plugin-oauthprovider
1071 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
1072 %config(noreplace) %{FORGE_CONF_DIR}/plugins/oauthprovider/
1073 %{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
1074 %{FORGE_DIR}/plugins/oauthprovider
1077 * Tue May 17 2011 - Thorsten Glaser <t.glaser@tarent.de> - 5.0.50-2
1078 - Adapted for versioning of the forge via the packaging
1080 * Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
1081 - Ported to 5.1 tree.
1082 - Reworked logic with rights on configuration files.
1083 - Adapted to changes like scm refactoring.
1084 - Adapted to changes to .ini configuration file.
1085 - Lots of new plugins added.
1087 * Tue May 13 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-2
1088 - fixed plugin symlinks and plugin directory permissions
1089 - patched mediawiki, webcalendar plugins
1090 - patch to fix various references to global variables
1091 - add symlinks to use mediawiki Monobook skin as GForge
1092 - patch to replace ereg_replace() with preg_replace()
1093 - added jpgraph symlink
1094 - setup httpd.secrets
1095 - delete obsolete mediawiki plugin code
1097 * Fri Apr 16 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-1
1098 - My first packaging of fusionforge 4.8.3-1 and plugins