Apple M1/Apple Silicon Day 1 LIVE

Follow up – day 3!

So, overall I’m pretty happy with the 8GB M1 Air. Outstanding issues I have are:

  • ScreenFlow and some Rogue Amoeba audio apps don’t work – I guess these are doing some clever low-level stuff.
  • I’m having issues importing my MySQL databases from backup. This is not really an M1 specific issue, apart from the fact that I can’t use homebrew to install anything other than the latest version of MariaDB.

Some useful links that have helped me out along the way:

I’ll have some write ups – or possibly unstructured brain dumps – on stuff I’ve learned along the way.

22:42

Aside: yarn and npm are the one thing that I’ve noticed it REALLY FREAKING FAST on this machine.

22:32

Yes – I’m still at it – in between other things.

So I’d heard from a friend that lib-sass or node-sass – I don’t recall which – maybe both would fail to work.

And that’s true. And it raises a whole weird load of questions about how Rosetta works.

yarn and npm both seem to work OK. But if I understand correctly, lib-sass was a compiled binary, and it refused to run with the usual webpack/npm/webpack barf, including:

Module build failed: ModuleBuildError: Module build failed: Error: Node Sass does not yet support your current environment: OS X Unsupported architecture (arm64) with Unsupported runtime (88)

So why does everything else seem to run fine under Rosetta, but not this one thing?

Anyway, I eventually found a way to:

  • update node-sass to dart-sass
  • update the sass-loader (v10 is too high – I get more barf and errors – v7.1 seems to work)
  • update the sass-loader config

This then all runs under node 15, which I have compiled for ARM/M1. And…YAY!!! I can successfully build the project I need to put live VERY SOON!!!

20:18

Gosh I have a LOT of software!

This is going pretty well considering. HOWEVER… brew and node are pretty confusing.

I’ve basically got brew working, but it’s giving me this nudge to run it with Rosetta which I have no idea how to do.

And I have node v15 installed using brew install -s node (I had to run it a few times to get it to work)

I can’t get the ‘n‘ node version manager to do anything – it’s installed but won’t list or install any versions.

And I can’t get node@10 or node@12 to install with homebrew.

Next up – can I actually compile a project that uses node?

16:28

While pretty much every download-to-your-applicaitons folder app seems fine, the problems are on command-line.

I’ve got Homebrew installed. And seem to have compiled my own version of PHP with brew install -s php, but I can’t get a build of nodeJs to compile.

Perhaps there’s a better way than homebrew for this?

15:29

To be honest, this is going pretty well. I’ve not got some system utilities like Moom, Better Touch Tool, Bartender and the Harvest time tracking app installed. I’ve yet to set them up properly but they all seem to be working.

I also have Sequel Ace for databases and Wavebox for managing some web apps – this is an Electron app and I thought there was issues with Electron. But seems it’s OK!

Dashdocs, Tweetbot and iTerm are all doing fine now too.

Nice that MacOS now has zsh by default but there’s some dotfiles I’ll need to recover!

14:43

I have a school run to do… back later!

14:17

I also have Homebrew and am attempting a PHP 7.4 install. Not sure what’s gonna happen!

14:15

Tinkerwell and HELO installed. I have iTunes/Music set up. I’ve attempted ClamXAV install but need to get a new license. Hmmm… Hurrying through now.

13:54

Weird – having installed the MacOS command-line tools, Firefox seems much happier! Perhaps extensions need some command line thing installed to work?

Slack is installed and fine.

13:10

In the meantime I have an update from the Apple Service centre about my old MacBook – they can’t do anything. What diagnostics they can do are showing – surprise! – logic board failures.

It’s back to Apple.

13:16

I’m going to have to do some real work now. But just to add:

  • Homebrew not properly supported yet – it says to run it under Rosetta, but I don’t know how you do that from the command line! Work ongoing here. Another dev linked from that issue also has a list of fixes and workarounds for things.
  • PHP 7.3 in installed by default. I have composer running.
  • Git not installed by default? Having to download Apple’s command line utilities – this could take a while!
  • SourceTree is incoming…

Also – I will need to find a way to copy over, or recreate a LOT of configuration from my old machine. Not just dot files, but other stuff too.

A fun few days ahead!

13:07

I’m not able to specifically point to anything wrong with Firefox extensions, but they generally seem broken. I turned them all off, and I could get a couple of them back on, but the Containers extension and React Dev tools seemed to just break Firefox.

This needs sorting FAST!!

12:54

Well, I’m gonna call it: Something in Firefox doesn’t work! It kinda opens tabs, but doesn’t load them. Incognito windows are fine. So it’s probably extension related.

12:06

Blazing through app installs – I have a lot of stuff to install.

Is this my first Apple Silicon issue though? Wow! Not where I expected it!

Operating system error sating "Google Chrome quit unexpectedly"

11:52

Weird that the 1Password APP wouldn’t take a physical security key. That was a test.

Dropbox seems fine.

Firefox and Chrome are incoming.

No issues as yet. How do I know if apps are using Rosetta or are built for ARM?

11:37

So, so far so good. I have 1Password (was a good test of my own security getting in on a new device!). I have Telegram and WhatsApp for chatting to some people. I have Alfred because I’m an option-space person, not a Cmd-space one! I’m downloading Dropbox… argh! Is that going to work?!

11:23

OK – here I am in WordPress in Safari. First step: Get 1Password up and running so I can log in to stuff.

Install from App Store was OK. But then it wouldn’t open. Eventually found a little window asking me to install Rosetta. Surprised 1Password isn’t a universal build yet! But it’s open and working!

11:06

No I’m not “unboxing” it. You don’t care about that. You want to know what software runs on it.

I also have a dongle. You don’t need a photo of that! ?

11:04

Here…

11:00

Here we are then. I have travelled to the stars (OK, to Cirencester) and I have forged new elements (OK, I have a new laptop with Apple Silicon)

The big question is: can I get WordPress on my phone to upload photos?

9:10

I should say that this isn’t some vain, impulse buy. It’s well thought through. I’ve been wanting to upgrade for about two years, but wanted a robust keyboard. That came along from Apple last year. And then Apple Silicon was announced and it’s a call between a) how long before software stops working on Intel and b) how long before it starts working on M1?

I NEED to get a new laptop and I’m trying to play the long game. If I want this machine to be running all my software in 5 or 6 years, the new chips seem to be the right choice. I hope.


8:40

Some people have been warning me about compatibility of software and I do have concerns. But I’ve researched and discussed this with people and let me say where I’m at:

I don’t do much/any virtualisation. I don’t use Docker – which I know doesn’t work. What virtualisation I do is minimal and not mission-critical.

Looks like some software that integrates with the OS at low level like screen recorders and audio tools might struggle.

There seem to have been concerns around Electron apps but I couldn’t find anything concrete. It looks like Electron apps will build. But I’m not sure what specific tools are.

I have concerns about Homebrew, PHP, composer, databases. But these are all Linux things right? Creating ARM binaries – if they don’t already exist – should be OK?

Well – that’s what we’re about to find out!

8:15 am: My late 2013 MacBook Pro has failed. Totally bricked. Others are reporting this failure too and a fix could be weeks away.

I’m normally a risk-averse person. But for some stupid reason I’ve decided to jump in on day 1 with an Apple Silicon M1 MacBook Air that I’m collecting this morning.

Will I sink or swim? I know not everything will work on day 1. But will it be disastrous? Or just mildly annoying?

Follow along and see how it goes. If nothing else it might be an insight into the tools of this full-stack PHP/WordPress/Laravel developer.

I’ll post updates here rather than Twitter. I guess you have to revisit occasionally to see what’s going on!