Friday, I received a snazzy new M1 Macbook Pro in the mail. This article outlines how I was able to set it up for doing web development. We'll set up Homebrew, PHP, MySQL, Composer, and Laravel Valet. Let's jump in!
The previous article outlines first impressions from the perspective of someone upgrading from a 2013 mac.
- Setting up an M1 mac for PHP development is not much different than other macs. Unless you're using Docker, which doesn't work on the new ARM processor (yet — they're working on it). I expected to have way more problems being an early adopter, but Apple has done a.
- Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries.
- Installing Redis on Mac Installing Redis using Homebrew on Mac. Homebrew is a package manager for Mac OS similar to apt-get in Linux for installing any software. If you don't have it installed on your Mac then you can follow this guide to install Homebrew. Once, installed you can execute below command on the termonal. Brew install redis.
Free download Redis Redis for Mac OS X. Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. The program relates to Developer Tools. The actual developer of this free Mac application is antirez. The size of the latest downloadable setup file is 1.7 MB. Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams.
Setting up an M1 mac for PHP development is not much different than other macs. Unless you're using Docker, which doesn't work on the new ARM processor (yet — they're working on it). I expected to have way more problems being an early adopter, but Apple has done a wonderful job with their Rosetta 2 translation layer. It mostly feels invisible, so (except for a few terminal commands like homebrew) you hardly even notice it is there.
Homebrew
First, we'll need to install Homebrew. They don't have an ARM-compatible build ready yet, so this is where we'll need to use some Rosetta flags on the command line.
Install Rosetta on the command line with the following:
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
Next, add this function to your .zshrc
file. It makes a nice arm
alias for running commands with x86_64 architecture flags. Perhaps calling it x86
would be better? Shoutout to Matt Stauffer for posting this.
You'll need to run the homebrew commands with this prefix for now. We can copy the script from their site, add our arm
prefix, and homebrew should install!
PHP, MySQL, and Composer
Now that homebrew is installed, the rest of the Valet install is pretty much stock (except for Redis, which we'll get to in the next section).
PHP
Just run arm brew install php
— it's that easy! You may want to restart your terminal after this.
MySQL
Normal besides the arm
prefix again.
Composer
Run the download script from Composer's website, then move the PHAR file to the bin folder. Also we'll add the global composer vendor folder to our system path.
Redis Tool For Mac High Sierra
Now add the following line to your .zshrc
file
Valet and Redis
Installing Valet should work as normal now. Run the following commands:
After that, I also ran cd ~/Code && valet park
.
Installing Redis
Redis presented the only real speed bump I've encountered thus far. It installs via brew, but starting the Redis server doesn't work correctly (even though brew says it does). Until then, we can start the server manually.
First, run arm brew install redis
to install it.
Next, install the Redis PHP extension with PECL — pecl install redis
.
Starting the Server
Normal besides the arm
prefix again.
Composer
Run the download script from Composer's website, then move the PHAR file to the bin folder. Also we'll add the global composer vendor folder to our system path.
Redis Tool For Mac High Sierra
Now add the following line to your .zshrc
file
Valet and Redis
Installing Valet should work as normal now. Run the following commands:
After that, I also ran cd ~/Code && valet park
.
Installing Redis
Redis presented the only real speed bump I've encountered thus far. It installs via brew, but starting the Redis server doesn't work correctly (even though brew says it does). Until then, we can start the server manually.
First, run arm brew install redis
to install it.
Next, install the Redis PHP extension with PECL — pecl install redis
.
Starting the Server
Normally you'd use arm brew services start
to start Redis (and at login), but it's not working yet. That command just runs redis-server
under the hood. For some reason, this command only works with sudo right now. Adobe acrobat 9 crack amtlibwrapper.dll special version. The workaround is to run this to start Redis server as a daemon:
Install Redis Mac
Cleaning up after PECL (optional)
By default, PECL plops a new extension='redis.so'
line at the top of the main php.ini
file. I prefer to move this line to its own extension file. These steps are optional, but it's more in line with how extensions should be loaded in modern php versions.
Remove the extension='redis.so'
line that PECL added at the top of /usr/local/etc/php/7.4/php.ini
.
Mac Os Install Redis
Then create a file at /usr/local/etc/php/7.4/conf.d/ext-redis.ini
with these contents:
Redis Gui Tool For Mac Free
After doing all of this, I'd recommend running valet restart
. Enjoy developing Laravel apps on your new mac!
Mac Install Redis Cli
If you encounter any problems or have any thoughts about this process, reach out to me on Twitter, I'd love to hear about them!