Hi again, i’m trying to do a new website using radicle and when i try to install in wls ubuntu 24.04 gives me this error. this is a fresh installation, only npm, yarn, php 8.3, apache2 and mysql installed
80/135 [================>-----------] 59% Skipped installation of bin bin/paratest.bat for package brianium/paratest: name conflicts with an existing file
Hi Ben, i’ve installed a blank new ubuntu wsl, installed php 8.3, mysql, apache and npm, then downloaded radicle (just noticed my description was wrong, not trellis, but radicle installation) and inside the folder ran composer install … then it died at 59% with the bin/paratest.bat error
previously tried on older versions of ubuntu and debian, all on wsl with no luck. (i really miss my apple days when everything worked with 2 clicks…)
tested the clearcache solution but ditn’t worked… also after reading about Pest, something is wrong with the installation too, since several packages depends on phpunit. i’m using the latest radicle (1.4)
ended trashing my wsl installation, and did a new one from scratch.
FINALLY. it worked. this is my whole recipe using ubuntu 22.04. i hope this can help some users that struggle with putting things to work. PS: im not sysop. dont killme if i’m doing something wrong. this is the way it worked for me, i hope someone can perfect this as a recipe for succeeding in making a dev environment with WSL in a safer/decent way.
wsl --install --d Ubuntu-22.04
sudo apt update
sudo apt upgrade
sudo apt install apache2
sudo apt install mariadb-server mariadb-client
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';
FLUSH PRIVILEGES;
exit;
sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2
//composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
composer -v
//need any php plugin?
apt search php- | less
//install plugins
sudo apt install [plugin name]
//install packages
sudo apt install -y php8.2-<module-name>
//permissions
sudo chown -R $USER:$USER /var/www
//your domain directory
sudo mkdir /var/www/your_domain
sudo chown -R $USER:$USER /var/www/your_domain
sudo nano /etc/apache2/sites-available/your_domain.conf
/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
ServerName your_domain
ServerAlias www.your_domain
ServerAdmin webmaster@localhost
DocumentRoot /var/www/your_domain
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
sudo a2ensite your_domain //adds your site
sudo a2dissite 000-default //removes default
sudo apache2ctl configtest //checks config
sudo systemctl reload apache2 //reload changes
//install node LTS , at the moment the current version is 20.x
curl -sL https://deb.nodesource.com/setup_20.x -o /tmp/nodesource_setup.sh
sudo bash /tmp/nodesource_setup.sh
sudo apt-get install nodejs -y
//yarn
sudo corepack enable
sudo apt-get install php-mysql
sudo apt-get update
sudo apt-get install php8.2-mysql
(sudo a2enmod php8.2 in case of mysqli error)
//in case of cache errors
sudo chmod -R 755 /var/www/html/storage/framework/cache
sudo chown -R www-data:www-data /var/www/html/storage/framework/cache
//if more cache errors, just 777 all the cache xD
//to start-stop the server
- sudo service apache2 stop
- sudo service apache2 start
- sudo service mysql start
//need ip?
curl http://icanhazip.com (returns IP)