the recommended way to install Noosfero for production usage is using the provided
Debian packages on a Debian stable system, following the instructions on HowToInstall
This page contains alternative methods for installing in other systems, and will be of use if you can't or
don't want to use the recommended production setup.
This guide is a compilation of various manuals for different setups. In the source code,
there is a more Debian oriented manual in the file INSTALL.
If you simply want to see Noosfero running or want it to run in a production environment,
take a look at DebianPackage
or others deploy alternatives
But if you want to install Noosfero and understand how it happens
for further modifications and development, then the following
"Source code installation" is the right thing for you.
This guide is intended for advanced users and developers.
1. Get the Code
sudo apt-get install git-core
git clone https://gitlab.com/noosfero/noosfero.git
git checkout stable
More info at GettingStartedWithNoosferoDevelopment
. Prefer the git way to get the code.
Enter the source directory in a shell to run the next steps
(for noosfero >= 0.48)
Using Debian Wheezy
These packages are extracted from
, located in the source code you've just downloaded. You may also use
for dependencies installation.
apt-get install ruby rake po4a libgettext-ruby-util libgettext-ruby1.8 libsqlite3-ruby rcov librmagick-ruby libredcloth-ruby libhpricot-ruby libwill-paginate-ruby iso-codes libfeedparser-ruby libdaemons-ruby thin tango-icon-theme
You may use a virtual machine
or a chrooted
environment to install Debian Stable.
# noosfero deps
sudo apt-get install po4a iso-codes tango-icon-theme pidgin-data curl default-jre
# gems' extensions deps
sudo apt-get install libmagickwand-dev libpq-dev libreadline-dev libsqlite3-dev libxslt1-dev
Then run bundle inside noosfero source directory
sudo gem install bundler
sudo bundle install
For use with RVM, see DepsWithRVMAndGems
Choose one of the options to use as database. You may test
them after configuration using
For development or production, you may use Postgres. Although it is harder
to configure, you get closer to the production environment in your development one.
Due to SQL incompatibilities, since Noosfero 0.43.0, Postgres is the recommended database for development and test environments.
SQLite is a very easy to setup, perfect for the lazy in a development environment. See InstallSQLite
In some rare cases, moving database's data to another DBMS might be useful
4. Populate data
These guides are intended for delivering Noosfero to final users in a production environment.
See the alternatives at Deploy
Will be far more easy to play with Noosfero development if you use a environment build to do it, as you build a environment specific for deploy.
Most of us uses Schroot
environments (a GNU/Linux inside a GNU/Linux)
. You must to try it
, if you are a GNU/Linux user, or get some tips on that topic to build a virtual machine.
, specially about the