This tutorial will guide you through the process of installing RosarioSIS on NixOS Latest. RosarioSIS is a free and open-source Student Information System that can be used for managing schools, teachers, students, grades, attendance, and more. NixOS is a Linux distribution that is known for its declarative approach to system configuration management.
Before we begin, make sure you have the following prerequisites:
$ sudo nix-channel --add https://nixos.org/channels/nixpkgs-unstable
$ sudo nix-channel --update
$ sudo nix-env -iA nixpkgs.apache php php_packages.php-mysql php_packages.php-pdo_mysql php_packages.php-mbstring
$ mysql -u root -p
mysql> CREATE DATABASE rosariosis;
mysql> CREATE USER 'rosariosis'@'localhost' IDENTIFIED BY 'yourpassword';
mysql> GRANT ALL PRIVILEGES ON rosariosis.* TO 'rosariosis'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> exit
$ wget https://github.com/francoisjacquet/rosariosis/archive/master.zip
$ unzip master.zip
$ mv rosariosis-master /var/www/rosariosis
$ sudo chown -R www-data:www-data /var/www/rosariosis
$ sudo nano /etc/apache2/sites-available/rosariosis.conf
Add the following content:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/rosariosis
ServerName rosariosis.loc
<Directory /var/www/rosariosis>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/rosariosis_error.log
CustomLog ${APACHE_LOG_DIR}/rosariosis_access.log combined
</VirtualHost>
Enable the virtual host:
$ sudo a2ensite rosariosis.conf
$ sudo systemctl restart apache2
Open your browser and go to http://localhost/
. You should see the login screen for RosarioSIS.
Login using the default username and password:
And that's it! You have successfully installed RosarioSIS on NixOS Latest. You can now start managing your school with this powerful Student Information 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!