Difference between revisions of "How to build a development environment from source control"

From EPrints Documentation
Jump to: navigation, search
m (Ubuntu 14.04)
(Ubuntu 14.04)
Line 7: Line 7:
Take a clean ubuntu 14.04 build
Take a clean ubuntu 14.04 build
<source style="background-color:#cccccc;" lang="bash">
<div style="background-color:#cccccc;"><source lang="bash">
sudo su
sudo su
apt-get install git libtest-memory-cycle-perl
apt-get install git libtest-memory-cycle-perl
Line 46: Line 46:
bin/epadmin unit_test
bin/epadmin unit_test
==CentOS /RHEL==
==CentOS /RHEL==

Revision as of 15:51, 18 November 2015

This article explains the various ways you can build a development environment for EPrints source contributions. If you have a method not listed here then please add it. Instructions assume familiarity with EPrints and the command line. You can use repositories built in this way to test contributions to EPrints source before pushing them to the git remote.

If you find bugs with any of these instructions please update them

Ubuntu 14.04

Take a clean ubuntu 14.04 build

sudo su
apt-get install git libtest-memory-cycle-perl
echo "deb http://deb.eprints.org/ nightly/
deb-src http://deb.eprints.org/ source/" > /etc/apt/sources.list.d/eprints.nightly.list
apt-get update
apt-get build-dep eprints
ln -s /home/<yourusername>/eprints /usr/share/eprints3
echo "Include /usr/share/eprints3/cfg/apache.conf" > /etc/apache2/sites-available/eprints-git.conf
sudo a2ensite eprints-git
su <yourusername>
cd ~
git clone git@github.com:eprints/eprints.git
echo "package EPrints::SystemSettings;
\$EPrints::SystemSettings::conf =
        'base_path' => '/usr/share/eprints3',
        'version_id' => 'git',
        'version' => 'EPrints (development version)',
        'user' => '$USER',
        'group' => '$USER',
        'smtp_server' => 'smtp',
cd eprints
bin/epadmin create #create a repository in the normal manner
sudo service apache2 restart
bin/epadmin unit_test


User-space EPrints (when EPrints is already installed on the VM)

See: https://github.com/eprints/apache_rhel

> mkdir eprints-github
> git clone https://github.com/eprints/eprints.git
... clones into eprints ...
> cd eprints
> mkdir apache
> git clone https://github.com/eprints/apache_rhel.git apache
... cloning into apache ...
> vi perl_lib/EPrints/SystemSettings.pm
        ##### add the following - setting 'user' and 'group' to your username/group
        package EPrints::SystemSettings;
        $EPrints::SystemSettings::conf =
                'user' => 'john',
                'group' => 'john',
                'smtp_server' => '',
        ### save and quit (:wq)
> bin/epadmin create
... fill in the details ...
... the userspace apache will listen to port 8080 and 8083 (secure) by default ...



See: https://github.com/eprints/apache_debian