Bugzilla on ArchLinux

Need a web server and a database engine to run bugzilla, here I choose apache and mysql.

Install apache:

$ pacman -S apache

Refer this wiki page for detailed information about apache installation and configuration.

Install mysql:

$ pacman -S mysql

The above LAMP wiki page also mentions something about mysql installation and configuration, for standalone installation, please refer this wiki page.

Then install bugzilla using:

$ pacman -S bugzilla

It requires a bunch of perl modules to be installed too, but some required modules still need to be installed manually (a little weird, why not include all required perl modules into dependencies?)

Make a module check first:

$ cd /srv/http/bugzilla
$ ./checksetup.pl --check-modules


Check the screen output, you will learn which module is required and which is optional, for missing modules, it will also show you the shell command to install them.

Install all required and optional modules using:

$ perl install-module.pl -all

To make module GD and PerlMagick works, make sure you have gd and imagemagick installed:

$ pacman -S gd imagemagick

Make the module check again, make sure all the required and optional modules are found:

$ ./checksetup.pl --check-modules

(Note: For perl DBD modules, only DBD-mysql is needed in this case, it’s ok if it complains about not found DBD-pg or DBD-Oracle modules)

Next, some more configuration to let bugzilla know how to connect mysql and create initial tables in it.

Run checksetup.pl again, this time without the –check-modules switch:

$ ./checksetup.pl

A file called “localconfig” is generated if everything is ok. Then edit it, modify some parameters there:

$webservergroup = 'http';
$db_driver = 'mysql';
$db_name = 'bugs';
$db_user = 'bugs';
$db_pass = 'YOUR_PASSWORD_HERE';

Create the $db_user with password $db_pass in mysql:

$ mysql -u root -p
mysql> GRANT SELECT, INSERT,
             UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
             CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
             TO bugs@localhost IDENTIFIED BY 'YOUR_PASSWORD_HERE';

mysql> FLUSH PRIVILEGES;

Run checksetup.pl again to create tables and an administrator user:

$ ./checksetup.pl

Tweak mysql to make bugzilla more scalable and usable, refer bugzilla official doc for details:

Allow large attachments and many comments:

[mysqld]
# Allow packets up to 4MB
max_allowed_packet=4M

Allow small words in full-text indexes:

[mysqld]
# Allow small words in full-text indexes
ft_min_word_len=2

Permit attachments table to grow beyond 4GB:

mysql> use bugs;
mysql> ALTER TABLE attachments AVG_ROW_LENGTH=1000000, MAX_ROWS=20000;

Finally, configure apache to run bugzilla using mod_cgi (also can be configured using mod_perl, refer this for details)

Add following lines to /etc/httpd/conf/httpd.conf:

<Directory /srv/http/bugzilla>
  AddHandler cgi-script .cgi
  Options +Indexes +ExecCGI
  DirectoryIndex index.cgi
  AllowOverride Limit
</Directory>

That's it, restart mysql and apache:

$ /etc/rc.d/mysqld restart
$ /etc/rc.d/httpd restart

Access http://server-domain-or-ip/bugzilla/ using your favorite browser to see your work result:)

Attach some screen shots of mine below:

Home page:
bugzilla

Admin page:
bugzilla-admin

Related posts:

5 Comments on "Bugzilla on ArchLinux"

  1. 振国 China Mozilla Firefox Windows says:

    最近发现一个完全兼容windows的开源project,即将有源码下载,不知道能做的怎么样,不过蛮有意思的,因为和linux、unix没有任何关系。

  2. Sunng China Mozilla Firefox Ubuntu Linux says:

    ReactOS我倒是装过,距离能用还很远呐,呵呵

Got something to say? Go for it!

使用新浪微博登陆