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
15 %define gfgroup gforge
17 %define httpduser apache
18 %define httpdgroup apache
20 %define fforge_admin fforgeadmin
22 %define FORGE_DIR %{_datadir}/gforge/src
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
29 # Disable debug binary detection & generation to speed up process.
30 %global debug_package %{nil}
33 Summary: FusionForge Collaborative Development Environment
39 Group: Development/Tools
40 Source0: %{name}-%{version}.tar.bz2
41 URL: http://www.fusionforge.org/
42 BuildRoot: %{_tmppath}/%{name}-%{version}-root
43 Packager: Alain Peyrat <aljeux@free.fr>
45 Requires: httpd, mod_dav_svn, mod_ssl, php, php-pgsql, php-gd, php-mbstring, mailman
46 Requires: postgresql >= 8.3
47 Requires: postgresql-server >= 8.3
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 %define INSTALL_LOG %{_var}/log/gforge/install-%{version}.log
67 %define UPGRADE_LOG %{_var}/log/gforge/upgrade-%{version}.log
69 Provides: gforge = %{version}
72 FusionForge provides many tools to aid collaboration in a
73 development project, such as bug-tracking, task management,
74 mailing-lists, SCM repository, forums, support request helper,
75 web/FTP hosting, release management, etc. All these services are
76 integrated into one web site and managed through a web interface.
78 %package plugin-admssw
79 Summary: ADMS.SW profiles for projects URLs for FusionForge
80 Group: Development/Tools
81 Requires: %{name} >= %{version}, php, postgresql, plugin-doaprdf
82 %description plugin-admssw
83 This plugin will provide content-negociation means to export RDF+XML ADMS.SW profiles for projects on /projects URLs,
84 in addition to the content already provided by doaprdf.
85 ADMS.SW stands for Asset Description Metadata Schema for Software.
86 See https://joinup.ec.europa.eu/asset/adms_foss/description for more details.
88 %package plugin-aselectextauth
89 Summary: A-select external authentication for FusionForge
90 Group: Development/Tools
91 Requires: %{name} >= %{version}, php, postgresql
92 %description plugin-aselectextauth
93 A system plugin for authenticating users in fusionforge. A-Select is a framework
94 where users can be authenticated by several means with Authentication
97 %package plugin-authcas
98 Summary: External CAS authentication plugin for FusionForge.
99 Group: Development/Tools
100 Requires: %{name} >= %{version}, php, postgresql
101 %description plugin-authcas
102 External CAS authentication plugin for FusionForge.
104 %package plugin-authhttpd
105 Summary: External HTTPD authentication plugin for FusionForge.
106 Group: Development/Tools
107 Requires: %{name} >= %{version}, php, postgresql
108 %description plugin-authhttpd
109 External HTTPD authentication plugin for FusionForge.
111 # %package plugin-authopenid
112 # Summary: External OpenID authentication plugin for FusionForge.
113 # Group: Development/Tools
114 # Requires: %{name} >= %{version}, php, postgresql
115 # %description plugin-authopenid
116 # External OpenID authentication plugin for FusionForge.
118 %package plugin-ckeditor
119 Summary: CKEditor plugin for FusionForge
120 Group: Development/Tools
121 Requires: %{name} >= %{version}, php, ckeditor
122 %description plugin-ckeditor
123 CKEditor is a WYSIWYG text editor that displays within a web browser.
125 %package plugin-cvssyncmail
126 Summary: Provides email notifications of changes to CVS repositories
127 Group: Development/Tools
128 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, python, php
129 %description plugin-cvssyncmail
130 This plugin adds the capability to notify users of changes to CVS repositories
133 %package plugin-compactpreview
134 Summary: Provides a preview mecanism
135 Group: Development/Tools
136 Requires: %{name} >= %{version}, php
137 %description plugin-compactpreview
138 This plugin adds support for user and project compact-preview
139 (popups) compatible with the OSLC specifications.
141 %package plugin-cvstracker
142 Summary: Links CVS log messages to trackers and tasks.
143 Group: Development/Tools
144 Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, php, postgresql
145 %description plugin-cvstracker
146 This is a fusionforge plugin that allows linking CVS log messages to
147 trackers and tasks. It will review all commits in a project and search for
148 specific string to know which task or tracker is related.
150 %package plugin-doaprdf
151 Summary: DOAP RDF for projects
152 Group: Development/Tools
153 Requires: %{name} >= %{version}, php
154 %description plugin-doaprdf
155 DOAP RDF for projects
157 %package plugin-externalsearch
158 Summary: external search plugin for FusionForge
159 Group: Development/Tools
160 Requires: %{name} >= %{version}, php
161 %description plugin-externalsearch
162 This plugin adds a new search engine to your FusionForge site. It allows
163 your users to search your FusionForge site through external search engines
164 which have indexed it. You can define search engines you want to use in
165 the configuration file.
167 %package plugin-extsubproj
168 Summary: external sub project plugin for FusionForge
169 Group: Development/Tools
170 Requires: %{name} >= %{version}, php
171 %description plugin-extsubproj
172 Manages links to external subprojects on remote forges.
174 # %package plugin-forumml
175 # Summary: Mailman to forums plugin for FusionForge
176 # Group: Development/Tools
177 # Requires: %{name} >= %{version}, php
178 # %description plugin-forumml
179 # ForumML integes mailing lists as forums in FusionForge
181 %package plugin-fckeditor
182 Summary: FCKEditor plugin for FusionForge
183 Group: Development/Tools
184 Requires: %{name} >= %{version}, php
185 %description plugin-fckeditor
186 FCKEditor is a WYSIWYG text editor that displays within a web browser.
188 %package plugin-foafprofiles
189 Summary: FOAF profile for forge users
190 Group: Development/Tools
191 Requires: %{name} >= %{version}, php
192 %description plugin-foafprofiles
193 The foafprofile plugin manages the generation of a FOAF profile for forge users.
195 %package plugin-gravatar
196 Summary: Gravatar plugin for FusionForge
197 Group: Development/Tools
198 Requires: %{name} >= %{version}, php
199 %description plugin-gravatar
200 This plugin adds faces images to FusionForge users using the gravatar service.
202 %package plugin-headermenu
203 Summary: Headermenu plugin for FusionForge
204 Group: Development/Tools
205 Requires: %{name} >= %{version}, php
206 %description plugin-headermenu
207 This plugin adds capability to add links right to login/logout.
209 %package plugin-hudson
210 Summary: Hudson continous integration plugin for FusionForge
211 Group: Development/Tools
212 Requires: %{name} >= %{version}, php
213 %description plugin-hudson
214 This plugin adds hudson integration to FusionForge.
216 %package plugin-authldap
217 Summary: external LDAP authentication for FusionForge plugin
218 Group: Development/Tools
219 Requires: %{name} >= %{version}, php, php-ldap
220 %description plugin-authldap
221 This plugin provides LDAP authentication capability for FusionForge.
223 %package plugin-mediawiki
224 Summary: Mediawiki plugin for FusionForge
225 Group: Development/Tools
226 Requires: %{name} >= %{version}, php, mediawiki
227 %description plugin-mediawiki
228 This is a plugin to integrate MediaWiki within FusionForge.
230 %package plugin-moinmoin
231 Summary: MoinMoinWiki plugin for FusionForge
232 Group: Development/Tools
233 Requires: %{name} >= %{version}, php, postgresql, moin
234 %description plugin-moinmoin
235 This is a plugin to integrate MoinMoin wiki within FusionForge.
237 %package plugin-message
238 Summary: Global Information Message plugin for FusionForge
239 Group: Development/Tools
240 Requires: %{name} >= %{version}, php
241 %description plugin-message
242 This is a plugin to add a global announce message for FusionForge.
243 It can be used to warn users for planned or current outage.
245 %package plugin-online_help
246 Summary: online_help plugin for FusionForge
247 Group: Development/Tools
248 Requires: %{name} >= %{version}, php
249 %description plugin-online_help
250 This is a online_help plugin within FusionForge.
252 # %package plugin-oslc
253 # Summary: OSLC plugin for FusionForge
254 # Group: Development/Tools
255 # Requires: %{name} >= %{version}, php, php-ZendFramework > 1.10
256 # %description plugin-oslc
257 # OSLC-CM compatible plugin for FusionForge tracker system.
258 # OSLC-CM is a standard specification for APIs in Change Management
259 # applications. It is based on Web technologies such as REST, RDF, or AJAX.
260 # This package provides an OSLC-CM V2 compatible plugin for FusionForge
263 %package plugin-projectimport
264 Summary: Project Import plugin for FusionForge
265 Group: Development/Tools
266 Requires: %{name} >= %{version}, php
267 %description plugin-projectimport
268 Project import plugin for FusionForge
269 This plugin allows the import of a project data previously exported
270 with ForgePlucker, or a compatible tool.
272 # %package plugin-projects-hierarchy
273 # Summary: projects-hierarchy plugin for FusionForge
274 # Group: Development/Tools
275 # Requires: %{name} >= %{version}, php
276 # %description plugin-projects-hierarchy
277 # This is a projects-hierarchy plugin within FusionForge.
279 %package plugin-quota_management
280 Summary: quota_management plugin for FusionForge
281 Group: Development/Tools
282 Requires: %{name} >= %{version}, php
283 %description plugin-quota_management
284 This is a quota_management plugin within FusionForge.
286 %package plugin-scmarch
287 Summary: Arch version control plugin for FusionForge
288 Group: Development/Tools
289 Requires: %{name} >= %{version}, php, arch
290 %description plugin-scmarch
291 This is a plugin to integrate Arch version control system with FusionForge
293 %package plugin-scmbzr
294 Summary: Bazaar version control plugin for FusionForge
295 Group: Development/Tools
296 Requires: %{name} >= %{version}, php, bazaar
297 %description plugin-scmbzr
298 This is a plugin to integrate Bazaar version control system with FusionForge
300 %package plugin-scmdarcs
301 Summary: DARCS version control plugin for FusionForge
302 Group: Development/Tools
303 Requires: %{name} >= %{version}, php, darcs
304 %description plugin-scmdarcs
305 This is a plugin to integrate DARCS version control system with FusionForge
307 %package plugin-scmgit
308 Summary: Git version control plugin for FusionForge
309 Group: Development/Tools
310 Requires: %{name} >= %{version}, php, git, gitweb
311 %description plugin-scmgit
312 This is a plugin to integrate Git version control system with FusionForge
314 %package plugin-scmhg
315 Summary: Mercurial (hg) version control plugin for FusionForge
316 Group: Development/Tools
317 Requires: %{name} >= %{version}, php, hg
318 %description plugin-scmhg
319 This is a plugin to integrate Mercurial (hg) version control system with FusionForge
321 %package plugin-scmhook
322 Summary: Source Code Hooks plugin
323 Group: Development/Tools
324 Requires: %{name} >= %{version}
325 %description plugin-scmhook
326 This plugin provide a simple hook system for various version control system.
327 It allows project admins to activate/desactivate predefined hooks on their
330 %package plugin-scmccase
331 Summary: Clear Case plugin for FusionForge
332 Group: Development/Tools
333 Requires: %{name} >= %{version}, php
334 %description plugin-scmccase
335 This is the Clear Case plugin for FusionForge. It creats Clear Case repositories
336 for projects within FusionForge.
338 %package plugin-scmcvs
339 Summary: CVS plugin for FusionForge
340 Group: Development/Tools
341 Requires: %{name} >= %{version}, php, cvs
342 %description plugin-scmcvs
343 FusionForge is a web-based Collaborative Development Environment offering
344 easy access to CVS, mailing lists, bug tracking, message
345 boards/forums, task management, permanent file archival, and total
346 web-based administration.
348 This RPM installs SCM CVS plugin for FusionForge and provides CVS support
351 It also provides a specific version of CVSWeb wrapped in FusionForge.
353 %package plugin-scmsvn
354 Summary: Subversion plugin for FusionForge
355 Group: Development/Tools
356 Requires: %{name} >= %{version}, php, subversion, viewvc
357 %description plugin-scmsvn
358 This RPM installs SCM SVN plugin for FusionForge and provides svn support
361 %package plugin-svncommitemail
362 Summary: subversion commit email plugin for FusionForge
363 Group: Development/Tools
364 Requires: %{name} >= %{version}, php, subversion, perl, %{name}-plugin-scmsvn >= %{version}
365 %description plugin-svncommitemail
366 This RPM installs subversion commit email notification plugin for FusionForge.
368 %package plugin-svntracker
369 Summary: SVNTracker plugin for FusionForge
370 Group: Development/Tools
371 Requires: %{name} >= %{version}, php, subversion, perl, postgresql, %{name}-plugin-scmsvn >= %{version}
372 %description plugin-svntracker
373 SVNTracker plugin allows linking SVN log messages to Trackers and tasks.
374 It will review all commits in a project and search for a specific string
375 to know which task or tracker is related.
377 %package plugin-blocks
378 Summary: Blocks plugin for FusionForge
379 Group: Development/Tools
380 Requires: %{name} >= %{version}
381 %description plugin-blocks
382 HTML blocks plugin for FusionForge.
384 %package plugin-extratabs
385 Summary: extratabs plugin for FusionForge
386 Group: Development/Tools
387 Requires: %{name} >= %{version}
388 %description plugin-extratabs
389 HTML extratabs plugin for FusionForge.
392 Summary: Wiki plugin for FusionForge
393 Group: Development/Tools
394 Requires: %{name} >= %{version}, php, postgresql, units
395 %description plugin-wiki
396 Wiki plugin for FusionForge. Allows for one wiki per project, integrated search,
397 page edits displayed on activity tab, and multi-project wiki preferences.
399 %package plugin-projectlabels
400 Summary: Labels plugin for FusionForge
401 Group: Development/Tools
402 Requires: %{name} >= %{version}, php, postgresql
403 %description plugin-projectlabels
404 Project Labels plugin for FusionForge.
406 %package plugin-contribtracker
407 Summary: contribtracker plugin for FusionForge
408 Group: Development/Tools
409 Requires: %{name} >= %{version}, php, postgresql
410 %description plugin-contribtracker
411 contribtracker plugin for FusionForge.
413 %package plugin-globalsearch
414 Summary: globalsearch plugin for FusionForge
415 Group: Development/Tools
416 Requires: %{name} >= %{version}, php, postgresql
417 %description plugin-globalsearch
418 globalsearch plugin for FusionForge.
420 # %package plugin-mailman
421 # Summary: Mailman plugin for FusionForge
422 # Group: Development/Tools
423 # Requires: %{name} >= %{version}, php
424 # %description plugin-mailman
425 # Mailman plugin for FusionForge.
427 # %package plugin-mantisbt
428 # Summary: mantisbt plugin for FusionForge
429 # Group: Development/Tools
430 # Requires: %{name} >= %{version}, php, postgresql
431 # %description plugin-mantisbt
432 # mantisbt plugin for FusionForge.
434 # %package plugin-oauthprovider
435 # Summary: oauthprovider plugin for FusionForge
436 # Group: Development/Tools
437 # Requires: %{name} >= %{version}, php, postgresql
438 # %description plugin-oauthprovider
439 # oauthprovider plugin for FusionForge.
441 %package plugin-webanalytics
442 Summary: webanalytics plugin for FusionForge
443 Group: Development/Tools
444 Requires: %{name} >= %{version}, php, postgresql
445 %description plugin-webanalytics
446 webanalytics plugin for FusionForge.
452 # empty build section
455 %{__rm} -rf $RPM_BUILD_ROOT
457 # creating required directories
458 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
459 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
460 %{__install} -m 755 -d $RPM_BUILD_ROOT/bin
461 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}
462 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/lib
463 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www
464 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins
465 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}
466 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d
467 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d
468 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d
469 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins
470 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_LANG_DIR}
471 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}
472 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/upload
473 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmtarballs
474 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/scmsnapshots
475 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/homedirs
476 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/dumps
477 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/etc
478 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/svn
479 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/chroot/scmrepos/cvs
480 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_VAR_LIB}/plugins/mediawiki
481 %{__install} -m 755 -d $RPM_BUILD_ROOT/home/groups
482 %{__install} -m 755 -d $RPM_BUILD_ROOT%{_var}/log/gforge
483 # mock mediawiki directory because we symlink GForge skin to Monobook
484 %{__install} -m 755 -d $RPM_BUILD_ROOT/usr/share/mediawiki/skins
486 # we define a search and replace function, we'll be using this a lot
487 # to fix several parts of the installation
490 /usr/bin/find . -type f | xargs grep -l ${1} | xargs %{__sed} -i -e "s+${1}+${2}+g"
493 # we need to fix up the fusionforge-install-3-db.php script to ref %{FORGE_DIR}
494 search_and_replace "/opt/gforge" "%{FORGE_DIR}"
497 %{__cp} -a * $RPM_BUILD_ROOT/%{FORGE_DIR}/
499 # create project vhost space symlink
500 %{__ln_s} /home/groups $RPM_BUILD_ROOT/%{FORGE_VAR_LIB}/homedirs/groups
501 # install restricted shell for cvs accounts
502 %{__cp} -a plugins/scmcvs/bin/cvssh.pl $RPM_BUILD_ROOT/bin/
504 # Apache configuration file
505 %{__cp} -a etc/httpd.conf.d-fhsrh/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
506 %{__cp} -a etc/config.ini.d/defaults.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
507 %{__cp} -a etc/config.ini-fhsrh $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
508 %{__cp} -a etc/httpd.conf-fhsrh $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
509 #%{__cp} -a etc/gforge-httpd.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/z-gforge.conf
510 #%{__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
512 %{__sed} -i -e 's!www-data!apache!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
513 %{__sed} -i -e 's!/usr/share/jpgraph!/var/www/jpgraph-1.19!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
514 %{__sed} -i -e 's!lists.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
515 %{__sed} -i -e 's!scm.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
516 %{__sed} -i -e 's!users.$core/web_host!$core/web_host!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
517 %{__sed} -i -e 's!use_webdav = no!use_webdav = yes!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
518 %{__sed} -i -e 's!use_shell = yes!use_shell = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
519 %{__sed} -i -e 's!use_ftp = yes!use_ftp = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
520 %{__sed} -i -e 's!use_people = yes!use_people = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
521 %{__sed} -i -e 's!use_project_vhost = yes!use_project_vhost = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
522 %{__sed} -i -e 's!use_snippet = yes!use_snippet = no!g' $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
524 # install fusionforge crontab
525 %{__sed} -e 's/\$FFUSER/%{gfuser}/g' packaging/cron.d/cron.fusionforge > $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
527 %{__install} -m 644 deb-specific/sqlhelper.pm $RPM_BUILD_ROOT%{FORGE_DIR}/lib/sqlhelper.pm
529 # Install locale files in Redhat standard location
530 %{__cp} -a locales/* $RPM_BUILD_ROOT/%{FORGE_LANG_DIR}/
532 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/utils/fusionforge-shell-postgresql.spec
534 # Identify this FusionForge version
535 # keep type intact and change forge in derivates,
536 # unless there are deep changes (type is used for
537 # the Forge-Identification meta header)
538 WHICH_TYPE=FusionForge
539 WHICH_FORGE=FusionForge
540 WHICH_VERSION=%{version}-%{release}
542 -e "s!@PKGNAME@!${WHICH_FORGE}!g" \
543 -e "s!@PKGVERSION@!${WHICH_VERSION}!g" \
544 -e "s!@PLUCKERNAME@!${WHICH_TYPE}!g" \
545 <$RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific/pkginfo.inc.php \
546 >$RPM_BUILD_ROOT/%{FORGE_DIR}/common/pkginfo.inc.php
548 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/COPYING.php
549 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/packaging
550 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/deb-specific
551 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/rpm-specific
552 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/packaging
553 %{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/*.spec
557 for i in $(utils/list-enabled-plugins.sh --disabled) ; do
558 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/$i
561 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
562 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/cron.d/* $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
563 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/httpd.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.d/
564 %{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/httpd.conf.d/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
565 %{__cp} -rp $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/plugins/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/plugins/
566 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/README
568 # plugin: aselectextauth
570 # plugin: authbuiltin (internal plugin)
571 %{__ln_s} ../../plugins/authbuiltin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authbuiltin
574 %{__ln_s} ../../plugins/authcas/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authcas
577 %{__ln_s} ../../plugins/authhttpd/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authhttpd
580 # %{__ln_s} ../../plugins/authopenid/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authopenid
582 # plugin: compactpreview
583 %{__ln_s} ../../plugins/compactpreview/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/compactpreview
585 # plugin: cvssyncmail
588 %{__ln_s} ../../plugins/cvstracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/cvstracker
590 # plugin: externalsearch
593 %{__ln_s} ../../plugins/extsubproj/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extsubproj
596 %{__ln_s} ../../plugins/fckeditor/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/fckeditor
599 # %{__ln_s} ../../plugins/forumml/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/forumml
602 %{__ln_s} ../../plugins/headermenu/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/headermenu
605 %{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
608 %{__ln_s} ../../plugins/mediawiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mediawiki
609 %{__ln_s} /usr/share/mediawiki/api.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
610 %{__ln_s} /usr/share/mediawiki/extensions $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
611 %{__ln_s} /usr/share/mediawiki/img_auth.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
612 %{__ln_s} /usr/share/mediawiki/includes $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
613 %{__ln_s} /usr/share/mediawiki/index.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
614 %{__ln_s} /usr/share/mediawiki/languages $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
615 %{__ln_s} /usr/share/mediawiki/maintenance/ $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
616 %{__ln_s} /usr/share/mediawiki/opensearch_desc.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
617 %{__ln_s} /usr/share/mediawiki/profileinfo.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
618 %{__ln_s} /usr/share/mediawiki/redirect.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
619 %{__ln_s} /usr/share/mediawiki/StartProfiler.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
620 %{__ln_s} /usr/share/mediawiki/thumb.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
621 %{__ln_s} /usr/share/mediawiki/trackback.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
622 %{__ln_s} /usr/share/mediawiki/skins $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
623 %{__ln_s} /usr/share/mediawiki $RPM_BUILD_ROOT/var/lib/gforge/plugins/mediawiki/master
624 %{__ln_s} /usr/share/gforge/src/plugins/mediawiki/mediawiki-skin/FusionForge.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
625 %{__ln_s} /usr/share/gforge/src/plugins/mediawiki/mediawiki-skin/fusionforge $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
628 %{__ln_s} ../../plugins/moinmoin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/moinmoin
631 %{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
633 # plugin: online_help
634 %{__ln_s} ../../plugins/online_help/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/online_help
636 # plugin: projects-hierarchy
637 # %{__ln_s} ../../plugins/projects-hierarchy/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projects-hierarchy
639 # plugin: quota_management
640 %{__ln_s} ../../plugins/quota_management/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/quota_management
649 %{__ln_s} ../../plugins/scmcvs $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmcvs
650 %{__install} -m 644 plugins/scmcvs/cron.d/%{name}-plugin-scmcvs $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
655 # this is pre-activated, so create the config symlink
656 %{__ln_s} ../../plugins/scmsvn/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmsvn
659 %{__ln_s} ../../plugins/scmgit/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmgit
660 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin
661 %{__ln_s} /usr/share/gitweb/gitweb.cgi $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin/gitweb.cgi
662 %{__ln_s} /usr/share/gitweb/static/gitweb.css $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.css
663 %{__ln_s} /usr/share/gitweb/static/gitweb.js $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.js
667 # plugin: svncommitemail
670 %{__ln_s} ../../plugins/svntracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/svntracker
672 %{__install} -m 644 plugins/svntracker/rpm-specific/cron.d/gforge-plugin-svntracker $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
675 %{__ln_s} ../../plugins/blocks/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/blocks
678 %{__ln_s} ../../plugins/extratabs/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extratabs
681 %{__ln_s} ../plugins/wiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/wiki
684 #%{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
686 # plugin : projectimport
687 %{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
689 # plugin: projectlabels
690 %{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
692 # plugin: contribtracker
693 %{__ln_s} ../../plugins/contribtracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/contribtracker
695 # plugin: globalsearch
696 %{__ln_s} ../../plugins/globalsearch/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/globalsearch
699 # %{__ln_s} ../../plugins/mailman/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mailman
702 # %{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
704 # plugin: oauthprovider
705 #%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
707 # plugin: webanalytics
708 %{__ln_s} ../../plugins/webanalytics/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/webanalytics
710 ### END OF PLUGIN SETUP ###
713 [ -d %{_var}/log/gforge ] || mkdir -p %{_var}/log/gforge
715 if [ ! -d "/var/lib/pgsql/data/base" ]; then
716 /sbin/service postgresql initdb >>%{INSTALL_LOG} 2>&1
719 # we will need postgresql to be running. we start it, even if it already is running
720 # this won't hurt anything, just ensure we have a running database
721 /sbin/service postgresql start >>%{INSTALL_LOG} 2>&1
723 if [ "$1" -eq "1" ]; then
724 # setup user/group for gforge
725 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -eq 0 ] ; then
726 /usr/sbin/groupadd -r %{gfgroup}
727 /usr/sbin/useradd -r -g %{gfgroup} -d %{FORGE_DIR} -s /bin/bash -c "FusionForge User" %{gfuser}
732 if [ "$1" -eq "1" ]; then
733 # check to see if the database already exists. if not, we proceed to create it.
734 # if so, we print a warning message.
735 echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
737 if [ $ret -ne 0 ] ; then
739 FFORGE_USER=%{dbuser}
740 if [ "x${FFORGE_ADMIN_USER}" = "x" ]
742 FFORGE_ADMIN_USER=%{fforge_admin}
744 if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
746 FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
748 export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
749 %{FORGE_DIR}/install-ng --config --database >>%{INSTALL_LOG} 2>&1
751 echo "Database %{dbname} already exists. Will not proceed with database setup." >>%{INSTALL_LOG} 2>&1
752 echo "Please see %{FORGE_DIR}/install-ng --database and run it manually" >>%{INSTALL_LOG} 2>&1
753 echo "if deemed necessary." >>%{INSTALL_LOG} 2>&1
754 %{FORGE_DIR}/install-ng --config >>%{INSTALL_LOG} 2>&1
757 HOSTNAME=`hostname -f`
758 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
759 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/z-gforge.conf
760 [ -d %{FORGE_VAR_LIB}/etc ] || mkdir %{FORGE_VAR_LIB}/etc
761 touch %{FORGE_VAR_LIB}/etc/httpd.vhosts
763 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
764 %{__sed} -i -e "s/^Include/#Include/" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
766 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
767 %{__sed} -i -e "s/^Include/#Include/" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
769 /etc/init.d/httpd restart >>%{INSTALL_LOG} 2>&1
771 chkconfig postgresql on >>%{INSTALL_LOG} 2>&1
773 # generate random hash for session_key
774 HASH=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
775 #%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{FORGE_CONF_DIR}/local.inc
777 # Mailman initial setup
778 /usr/lib/mailman/bin/newlist -q mailman $FFORGE_ADMIN_USER@$HOSTNAME $FFORGE_ADMIN_PASSWORD >>%{INSTALL_LOG} 2>&1
779 chkconfig mailman on >>%{INSTALL_LOG} 2>&1
780 /etc/init.d/mailman start >>%{INSTALL_LOG} 2>&1
782 # add noreply mail alias
783 echo "noreply: /dev/null" >> /etc/aliases
784 /usr/bin/newaliases >>%{INSTALL_LOG} 2>&1
786 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{INSTALL_LOG} 2>&1
787 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{INSTALL_LOG} 2>&1
789 if [ $ret -ne 0 ] ; then
790 # display message about default admin account
792 echo "You can now connect to your FusionForge installation using:"
794 echo " http://$HOSTNAME/"
796 echo "The FusionForge administrator account and password is:"
798 echo "Account Name = $FFORGE_ADMIN_USER"
799 echo "Password = $FFORGE_ADMIN_PASSWORD"
800 #echo "Please change it to something appropriate upon initial login."
801 # give user a few seconds to read the message
805 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{UPGRADE_LOG} 2>&1
806 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{UPGRADE_LOG} 2>&1
812 if [ "$1" -eq "0" ]; then
814 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
815 echo "Removing fusionforge user..."
816 /usr/sbin/userdel %{gfuser}
819 if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
820 echo "Removing fusionforge group..."
821 /usr/sbin/groupdel %{gfgroup}
825 %post plugin-aselectextauth
826 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/install_aselectextauth.psql
828 %preun plugin-aselectextauth
829 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/uninstall_aselectextauth.psql
832 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
835 %defattr(-, root, root)
836 %doc AUTHORS* CHANGES COPYING INSTALL* NEWS README*
838 #%attr(0660, %{httpduser}, gforge) %config(noreplace) %{FORGE_CONF_DIR}/local.inc
839 #%attr(0640, %{httpduser}, %{httpdgroup}) %config(noreplace) %{_sysconfdir}/httpd/conf.d/z-gforge.conf
840 %attr(0644, root, root) %{_sysconfdir}/cron.d/%{name}
841 %attr(0775, %{httpduser}, %{httpdgroup}) %dir %{FORGE_VAR_LIB}/upload
842 %attr(755, root, %{httpdgroup}) %dir %{FORGE_DIR}
843 # Files under %{FORGE_DIR}
844 %{FORGE_DIR}/AUTHORS*
847 %{FORGE_DIR}/INSTALL*
848 %{FORGE_DIR}/Makefile
851 %{FORGE_DIR}/fusionforge.spec
852 %{FORGE_DIR}/install-ng
853 # Directories under %{FORGE_DIR}
856 #%{FORGE_DIR}/contrib
857 %{FORGE_DIR}/cronjobs
861 %{FORGE_DIR}/image-sources
865 %{FORGE_DIR}/translations
868 %dir %{FORGE_DIR}/www
869 # files under %{FORGE_DIR}/www
870 %{FORGE_DIR}/www/*.php
871 %{FORGE_DIR}/www/users
872 %{FORGE_DIR}/www/favicon.ico
873 %{FORGE_DIR}/www/projects
874 # directories under %{FORGE_DIR}/www
875 %{FORGE_DIR}/www/account
876 %{FORGE_DIR}/www/activity
877 %{FORGE_DIR}/www/admin
878 %{FORGE_DIR}/www/developer
879 %{FORGE_DIR}/www/docman
881 %{FORGE_DIR}/www/export
882 %{FORGE_DIR}/www/forum
884 %{FORGE_DIR}/www/images
885 %{FORGE_DIR}/www/include
887 %{FORGE_DIR}/www/mail
890 %{FORGE_DIR}/www/news
891 %{FORGE_DIR}/www/people
892 %{FORGE_DIR}/www/plugins
894 %{FORGE_DIR}/www/project
895 %{FORGE_DIR}/www/register
896 %{FORGE_DIR}/www/reporting
898 %{FORGE_DIR}/www/scripts
899 %{FORGE_DIR}/www/search
900 %{FORGE_DIR}/www/snippet
901 %{FORGE_DIR}/www/soap
902 %{FORGE_DIR}/www/softwaremap
903 %{FORGE_DIR}/www/squal
904 %{FORGE_DIR}/www/stats
905 %{FORGE_DIR}/www/support
906 %{FORGE_DIR}/www/survey
907 %{FORGE_DIR}/www/tabber
908 %{FORGE_DIR}/www/themes
910 %{FORGE_DIR}/www/tracker
911 %{FORGE_DIR}/www/trove
912 %{FORGE_DIR}/www/widgets
913 #%{FORGE_DIR}/www/plugins/online_help
914 #%{FORGE_DIR}/www/plugins/projects-hierarchy
915 #%{FORGE_DIR}/www/plugins/quota_management
916 %dir %{FORGE_DIR}/plugins
917 %{FORGE_DIR}/plugins/env.inc.php
918 #%{FORGE_DIR}/plugins/online_help
919 #%{FORGE_DIR}/plugins/projects-hierarchy
920 #%{FORGE_DIR}/plugins/quota_management
922 %dir %{FORGE_CONF_DIR}
923 #%config(noreplace) %{FORGE_CONF_DIR}/httpd.secrets
924 %dir %{FORGE_CONF_DIR}/httpd.d
925 %dir %{FORGE_CONF_DIR}/httpd.conf.d
926 %{FORGE_CONF_DIR}/httpd.conf.d/*
927 %{_sysconfdir}/httpd/conf.d/z-gforge.conf
928 %{FORGE_CONF_DIR}/config.ini.d/defaults.ini
929 %{FORGE_CONF_DIR}/config.ini
930 %dir %attr(0775,root,%{httpdgroup}) %{FORGE_CONF_DIR}/plugins
931 %dir %{FORGE_VAR_LIB}/scmtarballs
932 %dir %{FORGE_VAR_LIB}/scmsnapshots
933 %dir %{FORGE_VAR_LIB}/dumps
934 %{FORGE_VAR_LIB}/homedirs
935 %dir %{_var}/log/gforge
938 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
939 %{FORGE_DIR}/plugins/authbuiltin
942 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/admssw.ini
943 %{FORGE_DIR}/plugins/admssw
945 %files plugin-aselectextauth
946 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
947 %{FORGE_DIR}/plugins/aselectextauth
949 %files plugin-authcas
950 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
951 %{FORGE_DIR}/plugins/authcas
952 %{FORGE_DIR}/www/plugins/authcas
954 %files plugin-authhttpd
955 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
956 %{FORGE_DIR}/plugins/authhttpd
957 %{FORGE_DIR}/www/plugins/authhttpd
959 # %files plugin-authopenid
960 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
961 # %{FORGE_DIR}/plugins/authopenid
963 %files plugin-ckeditor
964 %{FORGE_DIR}/plugins/ckeditor
965 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-ckeditor.inc
967 %files plugin-cvssyncmail
968 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
969 %{FORGE_DIR}/plugins/cvssyncmail
971 %files plugin-cvstracker
972 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvstracker.ini
973 %{FORGE_DIR}/plugins/cvstracker
974 %{FORGE_DIR}/www/plugins/cvstracker
975 %attr(-,%{httpduser},%{httpdgroup}) %{FORGE_CONF_DIR}/plugins/cvstracker
977 %files plugin-compactpreview
978 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/compactpreview.ini
979 %{FORGE_DIR}/plugins/compactpreview
981 %files plugin-doaprdf
982 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
983 %{FORGE_DIR}/plugins/doaprdf
985 %files plugin-externalsearch
986 %config(noreplace) %{FORGE_CONF_DIR}/plugins/externalsearch/
987 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
988 %{FORGE_DIR}/plugins/externalsearch
990 %files plugin-extsubproj
991 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extsubproj.ini
992 %{FORGE_DIR}/plugins/extsubproj
994 %files plugin-fckeditor
995 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/fckeditor.ini
996 %{FORGE_DIR}/plugins/fckeditor
997 %{FORGE_DIR}/www/plugins/fckeditor
999 %files plugin-foafprofiles
1000 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/foafprofiles.ini
1001 %{FORGE_DIR}/plugins/foafprofiles
1003 # %files plugin-forumml
1004 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/forumml.ini
1005 # %{FORGE_DIR}/plugins/forumml
1006 # %{FORGE_DIR}/www/plugins/forumml
1008 %files plugin-gravatar
1009 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/gravatar.ini
1010 %{FORGE_DIR}/plugins/gravatar
1012 %files plugin-headermenu
1013 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/headermenu.ini
1014 %{FORGE_DIR}/plugins/headermenu
1015 %{FORGE_DIR}/www/plugins/headermenu
1017 %files plugin-hudson
1018 %config(noreplace) %{FORGE_CONF_DIR}/plugins/hudson/
1019 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/hudson.ini
1020 %{FORGE_CONF_DIR}/httpd.d/62plugin-hudson
1021 %{FORGE_DIR}/plugins/hudson
1022 %{FORGE_DIR}/www/plugins/hudson
1024 %files plugin-authldap
1025 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
1026 %{FORGE_DIR}/plugins/authldap
1028 %files plugin-mediawiki
1029 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
1030 %{_sysconfdir}/cron.d/fusionforge-plugin-mediawiki
1031 %{FORGE_CONF_DIR}/httpd.d/61plugin-mediawiki
1032 %{FORGE_DIR}/plugins/mediawiki/
1033 %{FORGE_DIR}/www/plugins/mediawiki
1034 %{FORGE_VAR_LIB}/plugins/mediawiki
1035 /usr/share/mediawiki/skins/FusionForge.php
1036 /usr/share/mediawiki/skins/fusionforge
1038 %files plugin-moinmoin
1039 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/moinmoin.ini
1040 %config(noreplace) %{FORGE_CONF_DIR}/plugins/moinmoin/
1041 %{FORGE_DIR}/plugins/moinmoin/
1042 %{FORGE_DIR}/www/plugins/moinmoin
1044 %files plugin-message
1045 %{FORGE_DIR}/plugins/message
1046 %{FORGE_DIR}/www/plugins/message
1048 %files plugin-online_help
1049 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
1050 %{FORGE_DIR}/plugins/online_help
1051 %{FORGE_DIR}/www/plugins/online_help
1053 # %files plugin-oslc
1054 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/oslc/
1055 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oslc.ini
1056 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1057 # %{FORGE_DIR}/plugins/oslc
1058 # %{FORGE_DIR}/www/plugins/oslc
1060 %files plugin-projectimport
1061 %config(noreplace) %{FORGE_CONF_DIR}/plugins/projectimport/
1062 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
1063 %{FORGE_DIR}/plugins/projectimport
1064 %{FORGE_DIR}/www/plugins/projectimport
1066 # %files plugin-projects-hierarchy
1067 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects-hierarchy.ini
1068 # %{FORGE_DIR}/plugins/projects-hierarchy
1069 # %{FORGE_DIR}/www/plugins/projects-hierarchy
1071 %files plugin-quota_management
1072 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/quota_management.ini
1073 %{FORGE_DIR}/plugins/quota_management
1074 %{FORGE_DIR}/www/plugins/quota_management
1076 %files plugin-scmarch
1077 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmarch.ini
1078 %{FORGE_DIR}/plugins/scmarch
1080 %files plugin-scmbzr
1081 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmbzr/
1082 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmbzr.ini
1083 %{FORGE_DIR}/plugins/scmbzr
1085 %files plugin-scmdarcs
1086 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmdarcs.ini
1087 %{FORGE_DIR}/plugins/scmdarcs
1089 %files plugin-scmgit
1090 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmgit.ini
1091 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-scmgit-dav.inc
1092 %{FORGE_DIR}/plugins/scmgit
1093 %{FORGE_DIR}/www/plugins/scmgit
1096 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhg.ini
1097 %{FORGE_DIR}/plugins/scmhg
1099 %files plugin-scmhook
1100 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhook.ini
1101 %{FORGE_DIR}/plugins/scmhook
1103 %files plugin-scmccase
1104 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmccase.ini
1105 %{FORGE_DIR}/plugins/scmccase
1107 %files plugin-scmcvs
1108 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmcvs/
1109 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmcvs.ini
1110 %{_sysconfdir}/cron.d/%{name}-plugin-scmcvs
1111 %{FORGE_CONF_DIR}/httpd.d/30virtualcvs
1112 %{FORGE_CONF_DIR}/httpd.d/31virtualcvs.ssl
1113 %{FORGE_DIR}/plugins/scmcvs
1114 %{FORGE_DIR}/www/plugins/scmcvs
1115 %{FORGE_VAR_LIB}/chroot/scmrepos/cvs
1117 %files plugin-scmsvn
1118 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmsvn/
1119 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmsvn.ini
1120 %{FORGE_DIR}/plugins/scmsvn
1121 %{FORGE_DIR}/www/plugins/scmsvn
1122 %{FORGE_VAR_LIB}/chroot/scmrepos/svn
1124 %files plugin-svncommitemail
1125 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svncommitemail.ini
1126 %{FORGE_DIR}/plugins/svncommitemail
1128 %files plugin-svntracker
1129 %config(noreplace) %{FORGE_CONF_DIR}/plugins/svntracker/
1130 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svntracker.ini
1131 %{_sysconfdir}/cron.d/gforge-plugin-svntracker
1132 %{FORGE_DIR}/plugins/svntracker
1133 %{FORGE_DIR}/www/plugins/svntracker
1135 %files plugin-blocks
1136 %config(noreplace) %{FORGE_CONF_DIR}/plugins/blocks/
1137 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/blocks.ini
1138 %{FORGE_DIR}/plugins/blocks
1139 %{FORGE_DIR}/www/plugins/blocks
1141 %files plugin-extratabs
1142 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extratabs.ini
1143 %{FORGE_DIR}/plugins/extratabs
1144 %{FORGE_DIR}/www/plugins/extratabs
1147 %config(noreplace) %{FORGE_CONF_DIR}/plugins/wiki/
1148 %{_sysconfdir}/cron.d/%{name}-plugin-wiki
1149 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-wiki.inc
1150 %{FORGE_DIR}/plugins/wiki
1151 %{FORGE_DIR}/www/wiki
1153 %files plugin-projectlabels
1154 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectlabels.ini
1155 %{FORGE_DIR}/plugins/projectlabels
1156 %{FORGE_DIR}/www/plugins/projectlabels
1158 %files plugin-contribtracker
1159 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/contribtracker.ini
1160 %{FORGE_DIR}/plugins/contribtracker
1161 %{FORGE_DIR}/www/plugins/contribtracker
1163 %files plugin-globalsearch
1164 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/globalsearch.ini
1165 %{FORGE_DIR}/plugins/globalsearch
1166 %{FORGE_DIR}/www/plugins/globalsearch
1168 # %files plugin-mailman
1169 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mailman/
1170 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mailman.ini
1171 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1172 # %{FORGE_CONF_DIR}/httpd.d/62plugin-list-mailman
1173 # %{FORGE_CONF_DIR}/httpd.d/200list.vhost
1174 # %{FORGE_CONF_DIR}/httpd.d/20list
1175 # %{FORGE_CONF_DIR}/httpd.d/20zlist.vhost
1176 # %{FORGE_CONF_DIR}/httpd.d/21list.vhost.ssl
1177 # %{FORGE_DIR}/plugins/mailman
1178 # %{FORGE_DIR}/www/plugins/mailman
1180 # %files plugin-mantisbt
1181 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mantisbt/
1182 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantisbt.ini
1183 # %{FORGE_DIR}/plugins/mantisbt
1184 # %{FORGE_DIR}/www/plugins/mantisbt
1186 # %files plugin-oauthprovider
1187 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
1188 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/oauthprovider/
1189 # %{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
1190 # %{FORGE_DIR}/plugins/oauthprovider
1192 %files plugin-webanalytics
1193 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/webanalytics.ini
1194 %{FORGE_DIR}/plugins/webanalytics
1195 %{FORGE_DIR}/www/plugins/webanalytics
1198 * Thu Jun 07 2012 - Alain Peyrat <aljeux@free.fr> - 5.1.90-1
1199 - Adapted for 5.2 with new install scripts.
1201 * Tue May 17 2011 - Thorsten Glaser <t.glaser@tarent.de> - 5.0.50-2
1202 - Adapted for versioning of the forge via the packaging
1204 * Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
1205 - Ported to 5.1 tree.
1206 - Reworked logic with rights on configuration files.
1207 - Adapted to changes like scm refactoring.
1208 - Adapted to changes to .ini configuration file.
1209 - Lots of new plugins added.
1211 * Tue May 13 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-2
1212 - fixed plugin symlinks and plugin directory permissions
1213 - patched mediawiki, webcalendar plugins
1214 - patch to fix various references to global variables
1215 - add symlinks to use mediawiki Monobook skin as GForge
1216 - patch to replace ereg_replace() with preg_replace()
1217 - added jpgraph symlink
1218 - setup httpd.secrets
1219 - delete obsolete mediawiki plugin code
1221 * Fri Apr 16 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-1
1222 - My first packaging of fusionforge 4.8.3-1 and plugins