Debian installation

  1. Install dependencies
    sudo apt install curl gcc g++ make wget libpq-dev
    
  2. Install Node.js & yarn
    curl -sL https://deb.nodesource.com/setup_18.x | sudo bash -
    sudo apt-get install -y nodejs
    sudo npm install -g yarn
    

    source

Choose you database (sqlite, postgresql, mariadb, mysql)

  1. Setup using postgreSQL (optional)
    sudo apt-get install postgresql
    # Create the database
    su postgres -c psql
    postgres=# create database gancio;
    postgres=# create user gancio with encrypted password 'gancio';
    postgres=# grant all privileges on database gancio to gancio;
    
  2. Setup using MariaDB (optional)
    sudo apt-get install mariadb
    sudo mysql
    MariaDB [(none)]> create database gancio;
    Query OK, 1 row affected (0.001 sec)
    MariaDB [(none)]> create user gancio identified by 'gancio';
    Query OK, 0 rows affected (0.011 sec)
    MariaDB [(none)]> grant all privileges on gancio.* to gancio;
    Query OK, 0 rows affected (0.009 sec)
    
  3. Create a user to run gancio from
    sudo adduser --group --system --shell /bin/false --home /opt/gancio gancio
    
  4. Install Gancio
    sudo yarn global add --network-timeout 1000000000 --silent https://gancio.org/latest.tgz
    

Install another release

You can found old releases at https://gancio.org/releases

Package verification

Distributed packages are signed with this key you can verify the signature using:
gpg --verify latest.tgz.sig

  1. Setup systemd service and reload systemd
    sudo wget http://gancio.org/gancio.service -O /etc/systemd/system/gancio.service
    sudo systemctl daemon-reload
    sudo systemctl enable gancio
    
  2. Start gancio service (this should listen on port 13120)
    sudo systemctl start gancio
    
  3. Setup nginx as a proxy

  4. Point your web browser to your domain :tada:

Upgrade

Backup your data

Backup your data is generally a good thing to do and this is especially true before upgrading. Don’t be lazy and backup your data!

sudo yarn global remove gancio
sudo yarn cache clean
sudo yarn global add --network-timeout 1000000000 --silent https://gancio.org/latest.tgz
sudo systemctl restart gancio