Install Apache, PHP, MySQL
You can probably skip this part if you’re going to only use Homestead. Just skip down to Install Composer.
Apache
Add Apache respository
sudo add-apt-repository ppa:ondrej/apache2
Install Apache
sudo apt-get update sudo apt-get install apache2
PHP 5.6
Add repository
sudo add-apt-repository ppa:ondrej/php5-5.6
Install PHP
sudo apt-get update sudo apt-get install php5-cli php5-json php5-curl php5-mcrypt
MySQL 5.6
Add repository
sudo add-apt-repository ppa:ondrej/mysql-5.6
Install MySQL 5.6
sudo apt-get update sudo apt-get install mysql-server
Now, if all went well, you should see the Apache2 default page when you visit http://localhost. To test that things are working, create a new file in /var/www/html/ called info.php (or whatever you want to call it) with the phpinfo function in it:
phpinfo();
Then go to that file at http://localhost/info.php and you should see the php info page. (Remember to add your opening php tag at the top of the file. I couldn’t include it here in the code block because the php tag got stripped.)
Install Composer
curl -sS https://getcomposer.org/installer | php
You should get a message saying that composer was successfully installed to: /home/username/composer.phar. Move it to `/usr/local/bin` so you can just type “composer” to use it.
sudo mv /home/username/composer.phar /usr/local/bin/composer
Now, you should be able to just type “composer” and get the list of commands.
Install Git
Just install Git through the software center. Then set it up.
git config --global user.name "John Doe" git config --global user.email "johndoe@example.com"
If you want to see your settings type
git config --list
Generate your SSH public key if you don’t already have one.
ssh-keygen
When prompted where to save, just hit enter to accept the default. You can leave the passphrase empty if you don’t want to type a password when you use the key.
Create a Test Laravel Project
Create a folder where you want your project to live. I will create a Code folder in my home folder. Then cd into that directory and create a new laravel project with Composer.
composer create-project laravel/laravel name-of-project
Once that has installed, you can test it by booting up the php server.
php -S localhost:8888 -t public
Visit http://localhost:8888 in your browser and you should see the default Laravel start page.
Install Homestead
First, install VirtualBox through the Software Center or download it from the website. I installed it from Software Center but probably should have just downloaded it since I think you get a newer version that way. Next you install Vagrant. I tried installing it from Software Center but I got an old version and wasn’t able to pull in the Laravel box. So then I went to the Vagrant website and just downloaded the Linux Debian 64-bit version and opened it from the Downloads folder. Software Center took over from there and offered an upgrade. Then I was able to pull in the laravel box.
vagrant box add laravel/homestead
Now, install Homestead with Composer.
composer global require "laravel/homestead=~2.0"
Next, you’ll need to add “~/.composer/vendor/bin” to your PATH so you can use the “homestead” executable.
sudo vi ~/.bashrc
Append the following to this file and save it.
export PATH="~/.composer/vendor/bin:$PATH"
Then reload.
source ~/.bashrc
Then check to see if it’s been added correctly.
echo $PATH
Now you should be able to run the `homestead` command. Now, run `homestead init` to create the Homestead.yaml file. Then run `homestead edit` to edit this file and configure Homestead. I actually haven’t been able to get `homestead edit` to work so I just do `sudo vim /home/username/.homestead/Homestead.yaml`
I had a lot of issues getting Homestead up and running so just follow the Laravel docs because I don’t have good instructions for this. Eventually you should be able to do `homestead up` and then `homestead ssh` and be there. If you configured your Homestead.yaml file correctly, you should be able to view the start page of your project in the browser now. Oh, and also edit the hosts file so you can go to ‘http://my-project.dev’ or whatever url you want to use.
Install Chrome Browser
Download this from the Chrome website and open it from Downloads. It should install when you click on it.
Install PHPStorm
Then download PhpStorm from the website and uncompress where you want it to be installed and follow the instructions in the Install-Linux-tar.txt file. Once it’s installed you can open it from the terminal with `pstorm`.