How to Install Mobilizon on Fedora Server

Mobilizon is a free, open-source, federated platform for organizing events. This tutorial provides step-by-step instructions for installing Mobilizon on Fedora Server.

Prerequisites:

Before installing Mobilizon, you will need the following:

  • A Fedora Server running on your system
  • Root access

Install Required Dependencies

  1. Login to your server as root.

  2. Install the necessary dependencies for Mobilizon using the following command:

    dnf install git postgresql postgresql-server postgresql-contrib gcc zlib-devel openssl-devel readline-devel libffi-devel sqlite-devel
    
  3. Optionally, you can install the Node.js and Yarn packages from the NodeSource repository:

    curl -sL https://rpm.nodesource.com/setup_14.x | bash -
    curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
    dnf install nodejs yarn
    

Install Mobilizon using Git

  1. Create a new user named "mobilizon" using the following command:

    useradd -d /opt/mobilizon -m mobilizon
    
  2. Switch to the newly created user:

    su - mobilizon
    
  3. Clone the Mobilizon repository using the following command:

    git clone https://github.com/framasoft/mobilizon.git
    
  4. Change to the newly cloned directory:

    cd mobilizon
    
  5. Install Mobilizon dependencies using the following command:

    yarn install --pure-lockfile
    
  6. Build Mobilizon's frontend assets using the following command:

    yarn dev
    
  7. Create a file named .env in the Mobilizon directory and populate it with the following content:

    DATABASE_URL=postgresql://db_user:db_pass@localhost/db_name
    COOKIE_SECRET=your_cookie_secret
    EMAIL_FROM_NAME="Mobilizon"
    EMAIL_FROM_ADDRESS="[email protected]"
    MOBILIZON_URL="https://mobilizon.example.com"
    

    Replace db_user, db_pass, db_name, your_cookie_secret, and https://mobilizon.example.com with your own values.

Setup PostgreSQL

  1. As root, initialize the PostgreSQL database:

    postgresql-setup --initdb
    
  2. Start the PostgreSQL server:

    systemctl start postgresql
    
  3. Create a new database and user for Mobilizon:

    su - postgres
    psql
    CREATE DATABASE mobilizon;
    CREATE USER mobilizon WITH PASSWORD 'your_password_here';
    GRANT ALL PRIVILEGES ON DATABASE mobilizon TO mobilizon;
    \q
    exit
    

Run Mobilizon

  1. Change back to the mobilizon user:

    su - mobilizon
    
  2. Run the Mobilizon server using the following command:

    yarn start
    
  3. Open a web browser and navigate to http://localhost:4000. You should see the Mobilizon login page.

Conclusion

Congratulations! You have successfully installed and configured Mobilizon on Fedora Server. You can now use this platform to manage and organize events.