Skip to content

Instantly share code, notes, and snippets.

@askdkc
Created November 29, 2023 03:42
Show Gist options
  • Save askdkc/a687a1c171e4141f529a26704f1dd5cc to your computer and use it in GitHub Desktop.
Save askdkc/a687a1c171e4141f529a26704f1dd5cc to your computer and use it in GitHub Desktop.
Laravel Dev Env Setup Script for Debian 12
# PHP
sudo apt -y -V install wget curl php php8.2-fpm php8.2-cli php8.2-dev php8.2-pgsql \
php8.2-sqlite3 php8.2-gd php8.2-curl php8.2-imap php8.2-mysql \
php8.2-mbstring php8.2-xml php8.2-zip php8.2-bcmath php8.2-soap \
php8.2-intl php8.2-readline php8.2-gmp php8.2-redis php8.2-memcached \
php8.2-msgpack php8.2-igbinary
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo apt install -y --force-yes libmagickwand-dev
echo "extension=imagick.so" > /etc/php/8.2/mods-available/imagick.ini
yes '' | apt install php8.2-imagick
# Nginx Setup
sudo apt install -y -V nginx
sudo systemctl enable nginx.service
# Node Setup
sudo apt update
sudo apt install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
NODE_MAJOR=20
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt update
sudo apt install -y -V nodejs
sudo npm install -g pm2
sudo npm install -g gulp
sudo npm install -g yarn
sudo npm install -g bun
# Laravel Valet
sudo apt install -y -V network-manager libnss3-tools jq xsel
composer global require laravel/installer
composer global require cpriego/valet-linux
echo PATH=$PATH:$HOME/.config/composer/vendor/bin >> ~/.bashrc
source ~/.bashrc
mkdir Sites
valet install
cd Sites
valet park
@askdkc
Copy link
Author

askdkc commented Nov 29, 2023

Just run

curl -L https://gist.githubusercontent.com/askdkc/a687a1c171e4141f529a26704f1dd5cc/raw/6ed03303e88f1d5f55bd406668c5e648b93ba3c5/deb12laravel-setup.sh | bash

And you are ready to go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment