Web-Portal is an open-source web application that provides various functionalities and dashboards. It can be installed on your nixOS Latest system in a few simple steps.
Web-Portal is available on GitHub, so you need Git to clone the repository. You also need Nix to manage the installation of the required dependencies. If they are not already installed, run the following command:
sudo nix-env -i git nix
Now, clone the Web-Portal repository in your local system:
git clone https://github.com/enchant97/web-portal.git
Web-Portal requires some dependencies to run, such as Node.js, PostgreSQL, and Redis. To install all these dependencies at once, you can create a Nix shell environment with the shell.nix
file from the Web-Portal repository
cd web-portal
nix-shell
This command may take some time to execute as it will download and install all required packages.
Web-Portal uses PostgreSQL as the database engine. So, you need to create a new database and user for Web-Portal:
sudo -u postgres psql
CREATE USER webportal WITH PASSWORD 'webportal_password';
CREATE DATABASE webportal_db OWNER webportal;
GRANT ALL PRIVILEGES ON DATABASE webportal_db TO webportal;
Then, exit the PostgreSQL prompt by typing:
\q
Web-Portal uses environment variables for configuration. So, you need to copy the .env.example
file to .env
and update the values in the copied file:
cp .env.example .env
Open the .env
file in a text editor and set the values:
DATABASE_URL=postgres://webportal:webportal_password@localhost/webportal_db
REDIS_URL=redis://localhost:6379
SESSION_SECRET=random_string
Replace the random_string
with a random string of your choice.
Finally, you can run the Web-Portal application with the following command:
npm run start
This command will start the application on port 3000
. You can access the application by visiting http://localhost:3000
in your web browser.
Congratulations, you have successfully installed and run Web-Portal on your nixOS Latest system!
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!