Etebase: Difference between revisions

From NixOS Wiki
imported>Aktaboot
No edit summary
imported>Reeseovine
m typo in example URL
Line 10: Line 10:
       settings = {
       settings = {
         global.secret_file = /path/to/secret;
         global.secret_file = /path/to/secret;
         allowed_hosts.allowed_host1 = "http:/etebase./your.domain/";
         allowed_hosts.allowed_host1 = "http://etebase.your.domain/";
       };
       };
     };
     };

Revision as of 18:12, 19 October 2023

Etebase is an end-to-end encrypted backend as a service. Think Firebase, but encrypted in a way that only your users can access their data.

This is a basic configuration to run the Etebase server:

 services = {
    etebase-server = {
      enable = true;
      port = 8001; 
      settings = {
        global.secret_file = /path/to/secret;
        allowed_hosts.allowed_host1 = "http://etebase.your.domain/";
      };
    };

For the server to accept requests from a remote machine allowed_host1 variable should be set as the server's subdomain/domain name.

The django secret key is preferably a randomly generated key, the use of a secret managing scheme might prove useful. see Comparison_of_secret_managing_schemes.

Admin user

To use the Etebase server, the creation of an admin account is required. This requires manual intervention:

First you need to find where the generated .ini configuration file is located:

ls /nix/store | grep etebase-server.ini


As a super user, run this command: ETEBASE_EASY_CONFIG_INI=/path/to/etebase-server.ini etebase-server createsuperuser and that should prompt you to create a user.

Login with these credentials to http://your.domain/admin and create users for your etebase clients through the GUI.

See also