GNU FM is a free/libre web-based platform for broadcasting, collecting and sharing shuffling music broadcasted by users. In this tutorial, we will guide you on how to install GNU FM on Fedora CoreOS Latest.
Before we begin, make sure you have a few things in place:
GNU FM requires the following dependencies to be installed on your system:
Update your system to the latest version and install these dependencies by running:
sudo dnf update -y
sudo dnf install -y nginx mariadb mariadb-server php-fpm php-mysqlnd php-pgsql php-pear php-common wget
Download the latest stable version of GNU FM by running the following command:
wget -O gnufm-latest.tar.gz https://ftp.gnu.org/gnu/gnufm/gnufm-latest.tar.gz
Extract the downloaded tarball to a directory /var/www/html/gnufm
:
sudo mkdir -p /var/www/html/gnufm
sudo tar -xzf gnufm-latest.tar.gz -C /var/www/html/gnufm --strip-components=1
sudo rm gnufm-latest.tar.gz
Log in to your MariaDB or MySQL database server with the following command:
sudo mysql -u root
Create a MariaDB database for GNU FM:
CREATE DATABASE gnufm;
Create a user and grant this user permission to access the newly created database:
CREATE USER 'gnufmuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON gnufm.* TO 'gnufmuser'@'localhost';
FLUSH PRIVILEGES;
exit;
Edit the nginx configuration file /etc/nginx/nginx.conf
and add the following lines in the http{ }
section:
server {
listen 80;
server_name example.com;
root /var/www/html/gnufm;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Replace example.com
with your actual domain name. Save and close the file.
Restart the nginx and php-fpm services:
sudo systemctl restart nginx php-fpm
sudo systemctl enable nginx php-fpm
Edit the config.php
file located in /var/www/html/gnufm/conf
and update the following settings:
$db_type
- Change the value to mysql
$db_host
- Change the value to localhost
$db_name
- Change the value to gnufm
$db_user
- Change the value to gnufmuser
$db_password
- Change the value to the password you set for the gnufmuser
user in Step 3.Save and close the file.
Visit your website in a web browser at the address http://example.com
or your server's IP address. You should see the GNU FM webpage.
That's it! You have successfully installed GNU FM on Fedora CoreOS Latest. You can now start using GNU FM to broadcast, collect, and share your favorite music with friends, family, and fellow music lovers.
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!