Today, we will be discussing how to install Pico on your EndeavourOS operating system. Pico is a fast and lightweight content management system that is built with PHP. It's suitable for small to medium-sized websites or blogs.
Before we proceed with the installation, please ensure that you have the following:
sudo
privilegesThe first thing we want to do is update our system to ensure that we have the latest software updates that are available to us. Please open the terminal and run the following command:
sudo pacman -Syu
This command will check for all available updates and will prompt you to proceed with the update process. If prompted, please enter y
to continue, and wait for the system to complete the update process.
To run Pico, we need an Apache web server, a PHP server-side scripting language, and MariaDB database management system. Please run the following command to install all necessary packages:
sudo pacman -S apache php php-apache mariadb
This command will download and install the following packages:
apache
: Web server software that will serve the Pico website to the clientsphp
: A server-side scripting language that will enable us to run Pico on the serverphp-apache
: An Apache PHP module that will integrate PHP scripts with the Apache web servermariadb
: A Database management system that will be used to store data generated by PicoOnce the installation is complete, we can verify if Apache is running by accessing the URL http://localhost
in our web browser. If everything is working correctly, we should see the Apache welcome page.
Now we can proceed with downloading and installing Pico. Please run the following command to download the latest version of Pico:
wget https://github.com/picocms/Pico/releases/download/v2.1.1/pico-release-v2.1.1.tar.gz
This command will download the Pico tarball to your current directory. Next, we need to extract the tarball to our web server's root directory. Please run the following command to extract the tarball:
sudo tar -xvf pico-release-v2.1.1.tar.gz -C /srv/http/
This command will extract the tarball in the directory /srv/http/
. We can now navigate to the Pico directory by running the following command:
cd /srv/http/pico-release-v2.1.1/
Once we are in the Pico directory, we need to create a content
directory and set its permissions to ensure that Apache can modify the directory if needed. Please run the following command to create the content
directory:
sudo mkdir content
After creating the content
directory, run the following command to set its permissions:
sudo chown -R http:http content
With this, we have successfully installed Pico.
Now that we have Pico installed, we need to set up a database to store the website's data. Please run the following command to configure MariaDB:
sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
Once the installation is complete, we can enable MariaDB to start at boot time by running the following command:
sudo systemctl enable mariadb
We can now start the MariaDB service by running the following command:
sudo systemctl start mariadb
After starting the service, we need to secure it by running the following command:
sudo mysql_secure_installation
This command will prompt you to set the MariaDB root password, remove anonymous users, disallow root login remotely, remove test databases, and reload privilege tables.
Now that MariaDB is secure, we can proceed to create a new database and user for Pico. Please log in to the MariaDB server by running the following command:
sudo mysql -u root -p
This command will prompt you to enter the MariaDB root password. After entering the password, run the following SQL command to create a new database:
CREATE DATABASE pico;
Next, let's create a new user and grant them access to the pico
database. Run the following SQL commands:
CREATE USER 'pico'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON pico.* TO 'pico'@'localhost';
Note: Please replace password
with a secure password.
Now that we have created a database and user, we need to configure Pico to connect to the database. Please navigate to the Pico directory by running the following command:
cd /srv/http/pico-release-v2.1.1/
Then, we need to edit the Pico config.yml
file by running the following command:
sudo nano config/config.yml
This command will open the config.yml
file in the nano
text editor. Next, look for the following lines:
# Enable to use SQLite instead of MySQL - comment this line to use MySQL
# databaseConfig: db/pico.db
We need to uncomment the databaseConfig
line and add the following lines:
databaseConfig:
type: mysql
server: localhost
username: pico
password: password
database: pico
Note: Please replace password
with the password you set for the pico
user in Step 5.
After making these changes, save the file by pressing Ctrl+O
, then Ctrl+X
to exit the editor.
We are now ready to start using Pico. Please restart the Apache server by running the following command:
sudo systemctl restart httpd
Now, we can access Pico by navigating to the URL http://localhost/pico-release-v2.1.1
in our web browser. If everything set up correctly, we should see the Pico welcome page.
Congratulations! You have successfully installed Pico on EndeavourOS Latest.
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!