Setting up development environment on Ubuntu

Setting up development environment on Ubuntu

Oct 7, 2018·

2 min read

Play this article

I've switched to Ubuntu, this post documents the development tools I'm using and how to install them.


Instead of using the default terminal I'm using Terminator

Terminator supports multiple instances within the same window, this allows you to spit both vertically and horizontally.


sudo apt install terminator



Install PHP 7.2

sudo apt install php7.2

Install Curl

sudo apt install php curl

Install PDO

sudo apt install php7.2-mysql

Install MB String

sudo apt install php-mbstring


GIT and Composer

Install Git

sudo apt install git

Install composer

sudo apt install composer

Composer will need adding to your $PATH to do this open .bash_profile I'll use nano for this

nano ~/.bash_profile

Next, add:

export PATH=~/.composer/vendor/bin:$PATH

Save and exit, you may need to refresh the profile for it to take effect:

source ~/.bash_profile

Installing MySQL

sudo apt install mysql-server

Then run the following to set the password:


i prefer not to have a password for local development in which case you can follow these steps:

Open terminal and type

sudo mysql -u root -p

It will prompt you in MySQL, here you can fire any MySQL commands.
Use MySQL table for change table type so we can use empty password. Bellow is command for it

USE mysql;

Now we change type of table by following command

UPDATE user SET plugin='mysql_native_password' WHERE User='root';

Now we have to flush the privileges because we have used UPDATE. If you use INSERT, UPDATE or DELETE on grant tables directly you need use FLUSH PRIVILEGES in order to reload the grant tables.


Now exit from MySQL by the following command


Now restart MySQL server by the following command

service mysql restart

Source -

For a MySQL client, I'm using DBeaver



Valet has been ported to Linux. It can be installed using composer:

composer global require cpriego/valet-linux

Followed by:

valet install

The default domain for valet is .test I prefer to use .localhost this can be changed like this:

valet domain localhost


Did you find this article valuable?

Support David Carr by becoming a sponsor. Any amount is appreciated!