If you are planning to contribute to the project, please check out our contribution guide first.
This project is using Python 3 and Django in the most part, but also SASS (Ruby) for easy CSS rendering. Before diving into the project, make sure to have the following packages installed on your system :
- For Python :
python3python-pipvirtualenv
- For Ruby and SASS :
rubyruby-gem(often provided with therubypackage)
**Note : ** If you don’t need to compile SASS, you probably don’t need to install Ruby and its Gems.
Clone the project and set-up the Python environment :
git clone <repo url>virtualenv venvsource venv/bin/activatepip install -r requirements.txt
If needed, set-up the Ruby environment :
gem install bundler
If you get the following warning : You don't have $HOME/.gem/ruby/X.X.X/bin in your PATH, gem executables will not run., you may need to include this very folder at the end of your $PATH variable.
bundlerworks a bit like virtualenv, but it uses a home folder to store your custom environment, you can override this option and store the gems of a bundle in your venv by providing the argument --path=venv/rails when running bundle install.
- Install the project Gems :
bundle install
Once the Ruby setup is done, SASS should be compiled on-the-fly by the Django server.
-
Copy the exemple file
members/localSettings.py.exampletomembers/localSettings.py -
Set your LDAP credentials in
members/localSettings.py -
Review the project settings in
members/settings.py
The script provided in misc/update-network.sh allows to update the DHCP and DNS configuration of a server running Debian Stretch. In production, this script should be executed as a cron job.