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.
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-fhs/* $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-fhs $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
508 %{__cp} -a etc/httpd.conf-fhs $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
589 # delete stuff that is clearly outdated/obsolete so we don't package this and confuse others
590 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/httpd.conf
591 %{__rm} -f $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/Makefile
592 %{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/cvstracker/rpm-specific
594 # plugin: externalsearch
597 %{__ln_s} ../../plugins/extsubproj/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extsubproj
600 %{__ln_s} ../../plugins/fckeditor/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/fckeditor
603 # %{__ln_s} ../../plugins/forumml/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/forumml
606 %{__ln_s} ../../plugins/headermenu/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/headermenu
609 %{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
612 %{__ln_s} ../../plugins/mediawiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mediawiki
613 %{__ln_s} /usr/share/mediawiki/api.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
614 %{__ln_s} /usr/share/mediawiki/extensions $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
615 %{__ln_s} /usr/share/mediawiki/img_auth.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
616 %{__ln_s} /usr/share/mediawiki/includes $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
617 %{__ln_s} /usr/share/mediawiki/index.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
618 %{__ln_s} /usr/share/mediawiki/languages $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
619 %{__ln_s} /usr/share/mediawiki/maintenance/ $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
620 %{__ln_s} /usr/share/mediawiki/opensearch_desc.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
621 %{__ln_s} /usr/share/mediawiki/profileinfo.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
622 %{__ln_s} /usr/share/mediawiki/redirect.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
623 %{__ln_s} /usr/share/mediawiki/StartProfiler.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
624 %{__ln_s} /usr/share/mediawiki/thumb.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
625 %{__ln_s} /usr/share/mediawiki/trackback.php $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
626 %{__ln_s} /usr/share/mediawiki/skins $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/www/
627 %{__ln_s} /usr/share/mediawiki $RPM_BUILD_ROOT/var/lib/gforge/plugins/mediawiki/master
628 %{__ln_s} /usr/share/gforge/src/plugins/mediawiki/mediawiki-skin/FusionForge.php $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
629 %{__ln_s} /usr/share/gforge/src/plugins/mediawiki/mediawiki-skin/fusionforge $RPM_BUILD_ROOT/usr/share/mediawiki/skins/
632 %{__ln_s} ../../plugins/moinmoin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/moinmoin
635 %{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
637 # plugin: online_help
638 %{__ln_s} ../../plugins/online_help/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/online_help
640 # plugin: projects-hierarchy
641 # %{__ln_s} ../../plugins/projects-hierarchy/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projects-hierarchy
643 # plugin: quota_management
644 %{__ln_s} ../../plugins/quota_management/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/quota_management
653 %{__ln_s} ../../plugins/scmcvs $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmcvs
654 %{__install} -m 644 plugins/scmcvs/cron.d/%{name}-plugin-scmcvs $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
659 # this is pre-activated, so create the config symlink
660 %{__ln_s} ../../plugins/scmsvn/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmsvn
663 %{__ln_s} ../../plugins/scmgit/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/scmgit
664 %{__install} -m 755 -d $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin
665 %{__ln_s} /usr/share/gitweb/gitweb.cgi $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/cgi-bin/gitweb.cgi
666 %{__ln_s} /usr/share/gitweb/static/gitweb.css $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.css
667 %{__ln_s} /usr/share/gitweb/static/gitweb.js $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/scmgit/www/gitweb.js
671 # plugin: svncommitemail
674 %{__ln_s} ../../plugins/svntracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/svntracker
676 %{__install} -m 644 plugins/svntracker/rpm-specific/cron.d/gforge-plugin-svntracker $RPM_BUILD_ROOT%{_sysconfdir}/cron.d
679 %{__ln_s} ../../plugins/blocks/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/blocks
682 %{__ln_s} ../../plugins/extratabs/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/extratabs
685 %{__ln_s} ../plugins/wiki/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/wiki
688 %{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
690 # plugin : projectimport
691 %{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
693 # plugin: projectlabels
694 %{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
696 # plugin: contribtracker
697 %{__ln_s} ../../plugins/contribtracker/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/contribtracker
699 # plugin: globalsearch
700 %{__ln_s} ../../plugins/globalsearch/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/globalsearch
703 # %{__ln_s} ../../plugins/mailman/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mailman
706 # %{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
708 # plugin: oauthprovider
709 #%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
711 # plugin: webanalytics
712 %{__ln_s} ../../plugins/webanalytics/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/webanalytics
714 ### END OF PLUGIN SETUP ###
717 [ -d %{_var}/log/gforge ] || mkdir -p %{_var}/log/gforge
719 if [ ! -d "/var/lib/pgsql/data/base" ]; then
720 /sbin/service postgresql initdb >>%{INSTALL_LOG} 2>&1
723 # we will need postgresql to be running. we start it, even if it already is running
724 # this won't hurt anything, just ensure we have a running database
725 /sbin/service postgresql start >>%{INSTALL_LOG} 2>&1
727 if [ "$1" -eq "1" ]; then
728 # setup user/group for gforge
729 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -eq 0 ] ; then
730 /usr/sbin/groupadd -r %{gfgroup}
731 /usr/sbin/useradd -r -g %{gfgroup} -d %{FORGE_DIR} -s /bin/bash -c "FusionForge User" %{gfuser}
736 if [ "$1" -eq "1" ]; then
737 # check to see if the database already exists. if not, we proceed to create it.
738 # if so, we print a warning message.
739 echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
741 if [ $ret -ne 0 ] ; then
743 FFORGE_USER=%{dbuser}
744 if [ "x${FFORGE_ADMIN_USER}" = "x" ]
746 FFORGE_ADMIN_USER=%{fforge_admin}
748 if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
750 FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
752 export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
753 %{FORGE_DIR}/install-ng --config --database >>%{INSTALL_LOG} 2>&1
755 echo "Database %{dbname} already exists. Will not proceed with database setup." >>%{INSTALL_LOG} 2>&1
756 echo "Please see %{FORGE_DIR}/install-ng --database and run it manually" >>%{INSTALL_LOG} 2>&1
757 echo "if deemed necessary." >>%{INSTALL_LOG} 2>&1
758 %{FORGE_DIR}/install-ng --config >>%{INSTALL_LOG} 2>&1
761 HOSTNAME=`hostname -f`
762 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
763 #%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/z-gforge.conf
764 [ -d %{FORGE_VAR_LIB}/etc ] || mkdir %{FORGE_VAR_LIB}/etc
765 touch %{FORGE_VAR_LIB}/etc/httpd.vhosts
767 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
768 %{__sed} -i -e "s/^Include/#Include/" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
770 %{__sed} -i -e "s/^#ServerName (.*):80/ServerName $HOSTNAME:80/" /etc/httpd/conf/httpd.conf
771 %{__sed} -i -e "s/^Include/#Include/" %{FORGE_CONF_DIR}/httpd.conf.d/ssl-on.inc
773 /etc/init.d/httpd restart >>%{INSTALL_LOG} 2>&1
775 chkconfig postgresql on >>%{INSTALL_LOG} 2>&1
777 # generate random hash for session_key
778 HASH=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
779 #%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{FORGE_CONF_DIR}/local.inc
781 # Mailman initial setup
782 /usr/lib/mailman/bin/newlist -q mailman $FFORGE_ADMIN_USER@$HOSTNAME $FFORGE_ADMIN_PASSWORD >>%{INSTALL_LOG} 2>&1
783 chkconfig mailman on >>%{INSTALL_LOG} 2>&1
784 /etc/init.d/mailman start >>%{INSTALL_LOG} 2>&1
786 # add noreply mail alias
787 echo "noreply: /dev/null" >> /etc/aliases
788 /usr/bin/newaliases >>%{INSTALL_LOG} 2>&1
790 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{INSTALL_LOG} 2>&1
791 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{INSTALL_LOG} 2>&1
793 if [ $ret -ne 0 ] ; then
794 # display message about default admin account
796 echo "You can now connect to your FusionForge installation using:"
798 echo " http://$HOSTNAME/"
800 echo "The FusionForge administrator account and password is:"
802 echo "Account Name = $FFORGE_ADMIN_USER"
803 echo "Password = $FFORGE_ADMIN_PASSWORD"
804 #echo "Please change it to something appropriate upon initial login."
805 # give user a few seconds to read the message
809 /usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>%{UPGRADE_LOG} 2>&1
810 /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>%{UPGRADE_LOG} 2>&1
816 if [ "$1" -eq "0" ]; then
818 if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
819 echo "Removing fusionforge user..."
820 /usr/sbin/userdel %{gfuser}
823 if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
824 echo "Removing fusionforge group..."
825 /usr/sbin/groupdel %{gfgroup}
829 %post plugin-aselectextauth
830 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/install_aselectextauth.psql
832 %preun plugin-aselectextauth
833 /usr/bin/psql -U %{dbuser} %{dbname} -f %{FORGE_DIR}/plugins/aselectextauth/db/uninstall_aselectextauth.psql
836 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
839 %defattr(-, root, root)
840 %doc AUTHORS* CHANGES COPYING INSTALL* NEWS README*
842 #%attr(0660, %{httpduser}, gforge) %config(noreplace) %{FORGE_CONF_DIR}/local.inc
843 #%attr(0640, %{httpduser}, %{httpdgroup}) %config(noreplace) %{_sysconfdir}/httpd/conf.d/z-gforge.conf
844 %attr(0644, root, root) %{_sysconfdir}/cron.d/%{name}
845 %attr(0775, %{httpduser}, %{httpdgroup}) %dir %{FORGE_VAR_LIB}/upload
846 %attr(755, root, %{httpdgroup}) %dir %{FORGE_DIR}
847 # Files under %{FORGE_DIR}
848 %{FORGE_DIR}/AUTHORS*
851 %{FORGE_DIR}/INSTALL*
852 %{FORGE_DIR}/Makefile
855 %{FORGE_DIR}/fusionforge.spec
856 %{FORGE_DIR}/install-ng
857 # Directories under %{FORGE_DIR}
860 #%{FORGE_DIR}/contrib
861 %{FORGE_DIR}/cronjobs
865 %{FORGE_DIR}/image-sources
870 %{FORGE_DIR}/translations
873 %dir %{FORGE_DIR}/www
874 # files under %{FORGE_DIR}/www
875 %{FORGE_DIR}/www/*.php
876 %{FORGE_DIR}/www/users
877 %{FORGE_DIR}/www/favicon.ico
878 %{FORGE_DIR}/www/projects
879 # directories under %{FORGE_DIR}/www
880 %{FORGE_DIR}/www/account
881 %{FORGE_DIR}/www/activity
882 %{FORGE_DIR}/www/admin
883 %{FORGE_DIR}/www/developer
884 %{FORGE_DIR}/www/docman
886 %{FORGE_DIR}/www/export
887 %{FORGE_DIR}/www/forum
889 %{FORGE_DIR}/www/images
890 %{FORGE_DIR}/www/include
892 %{FORGE_DIR}/www/mail
895 %{FORGE_DIR}/www/news
896 %{FORGE_DIR}/www/people
897 %{FORGE_DIR}/www/plugins
899 %{FORGE_DIR}/www/project
900 %{FORGE_DIR}/www/register
901 %{FORGE_DIR}/www/reporting
903 %{FORGE_DIR}/www/scripts
904 %{FORGE_DIR}/www/search
905 %{FORGE_DIR}/www/snippet
906 %{FORGE_DIR}/www/soap
907 %{FORGE_DIR}/www/softwaremap
908 %{FORGE_DIR}/www/squal
909 %{FORGE_DIR}/www/stats
910 %{FORGE_DIR}/www/support
911 %{FORGE_DIR}/www/survey
912 %{FORGE_DIR}/www/tabber
913 %{FORGE_DIR}/www/themes
915 %{FORGE_DIR}/www/tracker
916 %{FORGE_DIR}/www/trove
917 %{FORGE_DIR}/www/widgets
918 #%{FORGE_DIR}/www/plugins/online_help
919 #%{FORGE_DIR}/www/plugins/projects-hierarchy
920 #%{FORGE_DIR}/www/plugins/quota_management
921 %dir %{FORGE_DIR}/plugins
922 %{FORGE_DIR}/plugins/env.inc.php
923 #%{FORGE_DIR}/plugins/online_help
924 #%{FORGE_DIR}/plugins/projects-hierarchy
925 #%{FORGE_DIR}/plugins/quota_management
927 %dir %{FORGE_CONF_DIR}
928 #%config(noreplace) %{FORGE_CONF_DIR}/httpd.secrets
929 %dir %{FORGE_CONF_DIR}/httpd.d
930 %dir %{FORGE_CONF_DIR}/httpd.conf.d
931 %{FORGE_CONF_DIR}/httpd.conf.d/*
932 %{_sysconfdir}/httpd/conf.d/z-gforge.conf
933 %{FORGE_CONF_DIR}/config.ini.d/defaults.ini
934 %{FORGE_CONF_DIR}/config.ini
935 %dir %attr(0775,root,%{httpdgroup}) %{FORGE_CONF_DIR}/plugins
936 %dir %{FORGE_VAR_LIB}/scmtarballs
937 %dir %{FORGE_VAR_LIB}/scmsnapshots
938 %dir %{FORGE_VAR_LIB}/dumps
939 %{FORGE_VAR_LIB}/homedirs
940 %dir %{_var}/log/gforge
943 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
944 %{FORGE_DIR}/plugins/authbuiltin
947 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/admssw.ini
948 %{FORGE_DIR}/plugins/admssw
950 %files plugin-aselectextauth
951 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
952 %{FORGE_DIR}/plugins/aselectextauth
954 %files plugin-authcas
955 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
956 %{FORGE_DIR}/plugins/authcas
957 %{FORGE_DIR}/www/plugins/authcas
959 %files plugin-authhttpd
960 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
961 %{FORGE_DIR}/plugins/authhttpd
962 %{FORGE_DIR}/www/plugins/authhttpd
964 # %files plugin-authopenid
965 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
966 # %{FORGE_DIR}/plugins/authopenid
968 %files plugin-ckeditor
969 %{FORGE_DIR}/plugins/ckeditor
971 %files plugin-cvssyncmail
972 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
973 %{FORGE_DIR}/plugins/cvssyncmail
975 %files plugin-cvstracker
976 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvstracker.ini
977 %{FORGE_DIR}/plugins/cvstracker
978 %{FORGE_DIR}/www/plugins/cvstracker
979 %attr(-,%{httpduser},%{httpdgroup}) %{FORGE_CONF_DIR}/plugins/cvstracker
981 %files plugin-compactpreview
982 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/compactpreview.ini
983 %{FORGE_DIR}/plugins/compactpreview
985 %files plugin-doaprdf
986 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
987 %{FORGE_DIR}/plugins/doaprdf
989 %files plugin-externalsearch
990 %config(noreplace) %{FORGE_CONF_DIR}/plugins/externalsearch/
991 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
992 %{FORGE_DIR}/plugins/externalsearch
994 %files plugin-extsubproj
995 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extsubproj.ini
996 %{FORGE_DIR}/plugins/extsubproj
998 %files plugin-fckeditor
999 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/fckeditor.ini
1000 %{FORGE_DIR}/plugins/fckeditor
1001 %{FORGE_DIR}/www/plugins/fckeditor
1003 %files plugin-foafprofiles
1004 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/foafprofiles.ini
1005 %{FORGE_DIR}/plugins/foafprofiles
1007 # %files plugin-forumml
1008 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/forumml.ini
1009 # %{FORGE_DIR}/plugins/forumml
1010 # %{FORGE_DIR}/www/plugins/forumml
1012 %files plugin-gravatar
1013 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/gravatar.ini
1014 %{FORGE_DIR}/plugins/gravatar
1016 %files plugin-headermenu
1017 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/headermenu.ini
1018 %{FORGE_DIR}/plugins/headermenu
1019 %{FORGE_DIR}/www/plugins/headermenu
1021 %files plugin-hudson
1022 %config(noreplace) %{FORGE_CONF_DIR}/plugins/hudson/
1023 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/hudson.ini
1024 %{FORGE_CONF_DIR}/httpd.d/62plugin-hudson
1025 %{FORGE_DIR}/plugins/hudson
1026 %{FORGE_DIR}/www/plugins/hudson
1028 %files plugin-authldap
1029 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
1030 %{FORGE_DIR}/plugins/authldap
1032 %files plugin-mediawiki
1033 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
1034 %{_sysconfdir}/cron.d/fusionforge-plugin-mediawiki
1035 %{FORGE_CONF_DIR}/httpd.d/61plugin-mediawiki
1036 %{FORGE_DIR}/plugins/mediawiki/
1037 %{FORGE_DIR}/www/plugins/mediawiki
1038 %{FORGE_VAR_LIB}/plugins/mediawiki
1039 /usr/share/mediawiki/skins/FusionForge.php
1040 /usr/share/mediawiki/skins/fusionforge
1042 %files plugin-moinmoin
1043 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/moinmoin.ini
1044 %{FORGE_DIR}/plugins/moinmoin/
1045 %{FORGE_DIR}/www/plugins/moinmoin
1047 %files plugin-message
1048 %{FORGE_DIR}/plugins/message
1049 %{FORGE_DIR}/www/plugins/message
1051 %files plugin-online_help
1052 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
1053 %{FORGE_DIR}/plugins/online_help
1054 %{FORGE_DIR}/www/plugins/online_help
1057 %config(noreplace) %{FORGE_CONF_DIR}/plugins/oslc/
1058 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oslc.ini
1059 %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1060 %{FORGE_DIR}/plugins/oslc
1061 %{FORGE_DIR}/www/plugins/oslc
1063 %files plugin-projectimport
1064 %config(noreplace) %{FORGE_CONF_DIR}/plugins/projectimport/
1065 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
1066 %{FORGE_DIR}/plugins/projectimport
1067 %{FORGE_DIR}/www/plugins/projectimport
1069 # %files plugin-projects-hierarchy
1070 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects-hierarchy.ini
1071 # %{FORGE_DIR}/plugins/projects-hierarchy
1072 # %{FORGE_DIR}/www/plugins/projects-hierarchy
1074 %files plugin-quota_management
1075 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/quota_management.ini
1076 %{FORGE_DIR}/plugins/quota_management
1077 %{FORGE_DIR}/www/plugins/quota_management
1079 %files plugin-scmarch
1080 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmarch.ini
1081 %{FORGE_DIR}/plugins/scmarch
1083 %files plugin-scmbzr
1084 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmbzr/
1085 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmbzr.ini
1086 %{FORGE_DIR}/plugins/scmbzr
1088 %files plugin-scmdarcs
1089 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmdarcs.ini
1090 %{FORGE_DIR}/plugins/scmdarcs
1092 %files plugin-scmgit
1093 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmgit.ini
1094 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-scmgit-dav.inc
1095 %{FORGE_DIR}/plugins/scmgit
1096 %{FORGE_DIR}/www/plugins/scmgit
1099 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhg.ini
1100 %{FORGE_DIR}/plugins/scmhg
1102 %files plugin-scmhook
1103 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmhook.ini
1104 %{FORGE_DIR}/plugins/scmhook
1106 %files plugin-scmccase
1107 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmccase.ini
1108 %{FORGE_DIR}/plugins/scmccase
1110 %files plugin-scmcvs
1111 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmcvs/
1112 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmcvs.ini
1113 %{_sysconfdir}/cron.d/%{name}-plugin-scmcvs
1114 %{FORGE_CONF_DIR}/httpd.d/30virtualcvs
1115 %{FORGE_CONF_DIR}/httpd.d/31virtualcvs.ssl
1116 %{FORGE_DIR}/plugins/scmcvs
1117 %{FORGE_DIR}/www/plugins/scmcvs
1118 %{FORGE_VAR_LIB}/chroot/scmrepos/cvs
1120 %files plugin-scmsvn
1121 %config(noreplace) %{FORGE_CONF_DIR}/plugins/scmsvn/
1122 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/scmsvn.ini
1123 %{FORGE_DIR}/plugins/scmsvn
1124 %{FORGE_DIR}/www/plugins/scmsvn
1125 %{FORGE_VAR_LIB}/chroot/scmrepos/svn
1127 %files plugin-svncommitemail
1128 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svncommitemail.ini
1129 %{FORGE_DIR}/plugins/svncommitemail
1131 %files plugin-svntracker
1132 %config(noreplace) %{FORGE_CONF_DIR}/plugins/svntracker/
1133 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/svntracker.ini
1134 %{_sysconfdir}/cron.d/gforge-plugin-svntracker
1135 %{FORGE_DIR}/plugins/svntracker
1136 %{FORGE_DIR}/www/plugins/svntracker
1138 %files plugin-blocks
1139 %config(noreplace) %{FORGE_CONF_DIR}/plugins/blocks/
1140 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/blocks.ini
1141 %{FORGE_DIR}/plugins/blocks
1142 %{FORGE_DIR}/www/plugins/blocks
1144 %files plugin-extratabs
1145 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/extratabs.ini
1146 %{FORGE_DIR}/plugins/extratabs
1147 %{FORGE_DIR}/www/plugins/extratabs
1150 %config(noreplace) %{FORGE_CONF_DIR}/plugins/wiki/
1151 %{_sysconfdir}/cron.d/cron.wiki
1152 %{FORGE_CONF_DIR}/httpd.conf.d/plugin-wiki.inc
1153 %{FORGE_DIR}/plugins/wiki
1154 %{FORGE_DIR}/www/wiki
1156 %files plugin-projectlabels
1157 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectlabels.ini
1158 %{FORGE_DIR}/plugins/projectlabels
1159 %{FORGE_DIR}/www/plugins/projectlabels
1161 %files plugin-contribtracker
1162 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/contribtracker.ini
1163 %{FORGE_DIR}/plugins/contribtracker
1164 %{FORGE_DIR}/www/plugins/contribtracker
1166 %files plugin-globalsearch
1167 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/globalsearch.ini
1168 %{FORGE_DIR}/plugins/globalsearch
1169 %{FORGE_DIR}/www/plugins/globalsearch
1171 # %files plugin-mailman
1172 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mailman/
1173 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mailman.ini
1174 # %{FORGE_CONF_DIR}/httpd.d/plugin-oslc.inc
1175 # %{FORGE_CONF_DIR}/httpd.d/62plugin-list-mailman
1176 # %{FORGE_CONF_DIR}/httpd.d/200list.vhost
1177 # %{FORGE_CONF_DIR}/httpd.d/20list
1178 # %{FORGE_CONF_DIR}/httpd.d/20zlist.vhost
1179 # %{FORGE_CONF_DIR}/httpd.d/21list.vhost.ssl
1180 # %{FORGE_DIR}/plugins/mailman
1181 # %{FORGE_DIR}/www/plugins/mailman
1183 # %files plugin-mantisbt
1184 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/mantisbt/
1185 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantisbt.ini
1186 # %{FORGE_DIR}/plugins/mantisbt
1187 # %{FORGE_DIR}/www/plugins/mantisbt
1189 # %files plugin-oauthprovider
1190 # %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
1191 # %config(noreplace) %{FORGE_CONF_DIR}/plugins/oauthprovider/
1192 # %{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
1193 # %{FORGE_DIR}/plugins/oauthprovider
1195 %files plugin-webanalytics
1196 %config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/webanalytics.ini
1197 %{FORGE_DIR}/plugins/webanalytics
1198 %{FORGE_DIR}/www/plugins/webanalytics
1201 * Thu Jun 07 2012 - Alain Peyrat <aljeux@free.fr> - 5.1.90-1
1202 - Adapted for 5.2 with new install scripts.
1204 * Tue May 17 2011 - Thorsten Glaser <t.glaser@tarent.de> - 5.0.50-2
1205 - Adapted for versioning of the forge via the packaging
1207 * Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
1208 - Ported to 5.1 tree.
1209 - Reworked logic with rights on configuration files.
1210 - Adapted to changes like scm refactoring.
1211 - Adapted to changes to .ini configuration file.
1212 - Lots of new plugins added.
1214 * Tue May 13 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-2
1215 - fixed plugin symlinks and plugin directory permissions
1216 - patched mediawiki, webcalendar plugins
1217 - patch to fix various references to global variables
1218 - add symlinks to use mediawiki Monobook skin as GForge
1219 - patch to replace ereg_replace() with preg_replace()
1220 - added jpgraph symlink
1221 - setup httpd.secrets
1222 - delete obsolete mediawiki plugin code
1224 * Fri Apr 16 2010 - Bond Masuda <bond.masuda@JLBond.com> - 4.8.3-1
1225 - My first packaging of fusionforge 4.8.3-1 and plugins