So now we install a specific version of Node.js and use the packages required for Debian Bookworm. For consistency, we're also making them similar to the Ubuntu instructions and installing rbenv instead of RVM. Since we now suggest rbenv in both cases as well as in the macOS instructions, we're also listing rbenv as the first option in the generic local installation instructions.
104 lines
2.4 KiB
Markdown
104 lines
2.4 KiB
Markdown
# 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 <your_username> 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)!
|