# Configuration for development and test environments (Debian GNU/Linux 12 - Bookworm) ## Superuser By default, in Debian no user can use `sudo` if a password for the root user was provided during the installation. So, in order to install the project dependencies, we've got two options. The first option is opening a root shell. Run: ```bash su ``` You'll be asked to introduce the password for the root user. The second option is adding a regular user to the `sudo` group. For that, after opening a root shell, run: ```bash gpasswd -a sudo ``` You'll have to log out and log in again for these changes to take effect. ## System update Run a general system update: ```bash sudo apt update ``` ## Git Git is officially maintained in Debian: ```bash sudo apt install git ``` ## Ruby version manager Ruby versions packaged in official repositories are not suitable to work with Consul Democracy, so we'll have to install it manually. First, we need to install Ruby's development dependencies: ```bash sudo apt install libssl-dev autoconf bison build-essential libyaml-dev libreadline-dev zlib1g-dev libncurses-dev libffi-dev libgdbm-dev ``` The next step is installing a Ruby version manager, like rbenv: ```bash wget -qO- https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-installer | bash source ~/.bashrc ``` ## CMake and pkg-config In order to compile some of the project dependencies, we need CMake and pkg-config: ```bash sudo apt install cmake pkg-config ``` ## Node.js version manager To compile the assets, you'll need a JavaScript runtime. Node.js is the preferred option. To install Node.js, we will install a Node.js version manager, like NVM: ```bash wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash source ~/.bashrc ``` ## PostgreSQL Install postgresql and its development dependencies with: ```bash sudo apt install postgresql libpq-dev ``` You also need to configure a user for your database. As an example, we'll choose the username "consul": ```bash sudo -u postgres createuser consul --createdb --superuser --pwprompt ``` ## Imagemagick Install Imagemagick: ```bash sudo apt install imagemagick ``` ## Chrome or Chromium In order to run the system tests, we need to install Chrome or Chromium. ```bash sudo apt install chromium ``` Now you're ready to go [get Consul Democracy installed](local_installation.md)!