Pinebook First Impressions

Unboxing the Pinebook

Today I was wonderfully surprised to recieve my Pinebook, it came in a rather simple package, with minimal packaging. In fact is was fairly surprising to see a whole 14 inch laptop come sliding out of such a small shipping container! I'll have to see if I can get the pictures pulled off my phone, but I currently don't have an easy way to do that.
To get an idea of exactly how small this package was, imagine getting mailed a couple of T-shirts or a hoodie, but instead finding a laptop inside. The Pinebook guys have done a fantastic job of utilizing minimalist designs.

 Decided to pull up my own site in a fit of vanity, loaded nice and fast!

Decided to pull up my own site in a fit of vanity, loaded nice and fast!

Yeah that's great, but what's the Pinebook actually like?

To start with, the Pinebook boots relatively quickly, only about 16s to login from a "cold" boot. It's running a recent version of Ubuntu MATE, which I'm sure some people will enjoy. But I'm the kind of user that's been using dwm and herbstluftwm exclusively for the past 2 years, so having to click on things to get them to run is a bit foreign to me, and I'm really not sure which things I'm supposed to click on to "fix" the keymap (since I use dvorak).
Additionally, the preinstalled package list was just ridiculous with 1587 packages reported by:
$ apt list --installed
This amount of preinstalled packages just seems like madness to me, but even on the relatively limited amount of space on the internal eMMC (compared to modern HDDs and SSDs), there's plenty of leftover space for you to use in whatever way you see fit.
The last bit of nitpicking on the out-of-the-box experience is that $EDITOR is set to nano(1) instead of something like vi(1), ed(1), or even vim(1). This is fine for new users, and likely a large amount of people that will end up using this particular device, and of course is trivial to "correct", but it lead to some minor confusion when trying to add my VPS to the hosts file with sudo -e /etc/hosts.

 Gotta show off the usual terminal fun with screenfetch

Gotta show off the usual terminal fun with screenfetch

Onto the slightly more interesting stuff

So, not that it's a particularly high bar at this point, but this sub 100 USD computer still has more I/O than those Macbooks that were "top of the line" until this most recent WWDC, though I'm not sure that they've actually added any more ports or not since I don't follow Apple that closely.
Both Firefox and Chromium come preinstalled, so you can pick whichever browser you prefer on that front. I'm more of a Firefox guy, so that's what I checked out. It performed roughly how one would expect on an SBC inside a laptop case, a little bit of lag, but everything worked well. Due to the limited amount of resources, I highly recommend running with noscript or some other sort of content blocker such as ublock_origin or umatrix, to help keep your browser from eating all the resources on the poor little device.
More along the lines of using the Pinebook itself as a hardware platform, the keyboard's surprisingly similar to that of my Macbook Air, just with stiffer keys and a trackpad that I'm personally happier with. I know that Apple's kinda been the crown ruler of trackpad makers, but I've really enjoyed using the one on the Pinebook more. It's got a bit of texturing to it, and isn't really in the way of me being able to type, so I don't really risk clicking on things accidentally like I do on my Macbook.
The only real shortcomings that I've come across are that the '\' and the 'delete' keys are in a bit of an odd place. This just leads to me wanting to remap them with xmodmap and have it loaded when starting X, since 'delete' is located where '\' is on a normal keyboard, and '\' is located down by Right-Alt.
One thing that may be frustrating for users of certain desktop environments or window managers is that as far as I can tell going off the keylabels, there's no Super key (Windows key, for those unfamiliar with the term). I'm actually happy to not have a Super key, as the only keymap where I've ever found it useful is on the old Sun keyboards (which also have Caps Lock and Left Control swapped).
The last minor issue is that the stereo volume isn't very good, so you'll want to use bluetooth speakers, or a bluetooth headset if you're looking for the best portability. Fortunately, there's also a 3.5mm jack, so those of you out there with a trusty pair of wired headphones won't be left out either when enjoying your media playback.

So Newnix, is this thing worth buying?

I don't want to pretend that I'm some sort of greybeard authority or anything like that, but at this price point, and with the features of this particular machine, you'd be pretty hard-pressed to find many good reasons to not buy a Pinebook when you need a lightweight, endurance device. There's a few small points that I'd love to see improved, like using USB-C instead of a barrel plug for charging, or at least providing a longer cable to provide some flexibility in where you charge it.
Honestly, my biggest issue with this product is that it came with Linux instead of something like FreeBSD, HardenedBSD, OpenBSD, or NetBSD. I don't have much faith in the abilities of EXT4 to hold onto my data, and would rather be using ZFS, HAMMER (unfortunately only available on DragonFly BSD and thus limited to AMD64 machines), or even UFS to store my data, even on a Pinebook.
Filesystems aside, I use serial connections a lot in my day job, and Linux doesn't seem to have an easy way to connect to serial consoles, unlike *BSD where you have tip(1) and cu(1) to connect to serial consoles through definitions in /etc/remote. It'd also be nice to have an Ethernet port, but getting a USB -> Ethernet adaptor isn't such a big deal.
So all in all, this is far and away better than any (bastardised) Gentoo powered Chromebook that I've tried using in the past, since there's nothing to unlock, all that needs to be done is verify that you can boot the OS image you want to use, and actually install it to the internal eMMC.
If you're in the market for a low powered machine, this is probably the best bang for your buck, so go sign up, tell your nerdy friends about it, all that cool stuff to spread the word, because not only is RISC good, but so is a nicely put together RISC laptop. You can sign up for one here if you feel so inclined.

 And a shot of me being told to get screenshots by one of the IRC channels I hang out in, so I happily obliged

And a shot of me being told to get screenshots by one of the IRC channels I hang out in, so I happily obliged

Pinebook System Info

Just to give you a peek under the hood, so you know what sort of equipment you'd be working with:

$ cat /proc/cpuinfo
Processor : AArch64 Processor rev 4 (aarch64)
processor : 0
processor : 1
processor : 2
processor : 3
Features : fp asimd aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: AArch64
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
Hardware : sun50iw1p1

zram0 253:0 4096 4096 disk 248.7M
zram1 253:1 4096 4096 disk 248.7M
zram2 253:2 4096 4096 disk 248.7M
zram3 253:3 4096 4096 disk 248.7M
mmcblk0boot0 179:8 512 512 disk 4M
mmcblk0boot1 179:16 512 512 disk 4M
mmcblk0 179:0 512 512 disk 14.5G
├─mmcblk0p1 179:1 BOOT vfat 512 512 part 50M
└─mmcblk0p2 179:2 rootfs ext4 512 512 part 14.4G

I'd include the full package list, but I don't think that adding a few thousand lines to this post for no significant reason does anyone any good. The default image is Ubuntu MATE with some theming for the Pinebook project.

Closing Thoughts

I'm going to be looking into how U-boot works, and what steps are necessary to get *BSD running on this delightful little device, so if that's the sort of thing you'd be into as well, feel free to shoot me some links with documentation on U-boot that would be helpful in setting up a new system install or just keep an eye out for the inevitable follow up toots on where I'm either really happy about things or venting my frustration in trying to get everything to work. Assuming everything goes well, I'll get a writeup posted here as well on the process of switching to whichever BSD I'm able to be happy with first.