How to Install CoreShop on EndeavourOS Latest

CoreShop is an open-source eCommerce software based on Symfony. It's easy to use, flexible, and customizable. In this tutorial, you'll learn how to install CoreShop on EndeavourOS Latest step-by-step.

Prerequisites

Before starting, make sure your system meets the following requirements:

Installation

Follow the steps below to install CoreShop on EndeavourOS Latest:

Step 1: Install Required PHP Extensions

CoreShop requires some PHP extensions to be installed on your system. Run the following commands to install them:

sudo pacman -S php php-pgsql php-intl php-redis php-gd php-curl

Step 2: Install Composer

Composer is a dependency manager for PHP that allows you to add and manage packages easily. Run the following commands to download and install Composer:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/bin --filename=composer
php -r "unlink('composer-setup.php');"

Step 3: Download and Install CoreShop

Run the following commands to download and install CoreShop:

cd /var/www
sudo git clone https://github.com/coreshop/CoreShop.git
cd CoreShop
sudo composer install

Step 4: Configure Permissions

Set the correct permissions on the CoreShop directory and files:

sudo chown -R http:http /var/www/CoreShop/
sudo chmod -R 775 /var/www/CoreShop/
sudo setfacl -R -m u:http:rwx /var/www/CoreShop/
sudo setfacl -R -d -m u:http:rwx /var/www/CoreShop/

Step 5: Configure Apache or Nginx

Configure Apache

Create a new virtual host configuration file for Apache:

sudo nano /etc/httpd/conf/extra/coreshop.conf

Add the following configuration to the file:

<VirtualHost *:80>
 ServerAdmin admin@example.com
 DocumentRoot "/var/www/CoreShop/public"
 ServerName www.example.com
 ErrorLog "/var/log/httpd/www.example.com-error_log"
 CustomLog "/var/log/httpd/www.example.com-access_log" combined

 <Directory "/var/www/CoreShop/public">
    AllowOverride all
    Require all granted
 </Directory>
</VirtualHost>

Save and close the file. Then, reload Apache for the changes to take effect:

sudo systemctl restart httpd

Configure Nginx

Create a new virtual host configuration file for Nginx:

sudo nano /etc/nginx/sites-available/coreshop.conf

Add the following configuration to the file:

server {
    listen 80;
    listen [::]:80;
    server_name www.example.com; # change to your domain name
    root /var/www/CoreShop/public;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_script_name;
    }

    error_log /var/log/nginx/coreshop_error.log;
    access_log /var/log/nginx/coreshop_access.log;
}

Save and close the file. Then, symlink the file to sites-enabled and restart Nginx:

sudo ln -s /etc/nginx/sites-available/coreshop.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Step 6: Access CoreShop

Finally, access CoreShop by visiting http://localhost or http://localhost/coreshop in your web browser. You should see the CoreShop installation wizard. Follow the instructions to complete the installation.

Conclusion

You have successfully installed CoreShop on EndeavourOS Latest. You can now start building your eCommerce store using CoreShop.

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!