A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

Source: Machine Heart

At the end of May, the Raspberry Pi 4 announced its latest upgrade: a new 8GB RAM version, priced at $75. Is this new Raspberry Pi worth it?
To answer this question, a YouTuber named Jeff Geerling had a bold idea: on a workday, he unplugged his MacBook Pro and plugged in the newly purchased 8GB Raspberry Pi 4 as his main work computer to see what it felt like at the end of the day.

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

We know that a workday is not just about blogging and remote coding. If it were just that, any Chromebook, tablet, or cheap old laptop would do. Besides these, the workday content Jeff Geerling referred to also includes:
  • Using dedicated apps to browse Twitter;

  • Using Slack (the memory used by Slack is more than most other applications Jeff Geerling runs combined at any given time);

  • Recording and editing audio and video;

  • Using Docker, Ansible, and Kubernetes for some infrastructure automation.

He recorded the entire process and uploaded it to YouTube, where it has already gained thousands of views.
After one day, Jeff Geerling found that if your daily work involves a lot of command line work, programming, using git, and occasionally browsing the web, Raspberry Pi OS is indeed a cost-effective choice.However, using it as a true work computer is still a bit painful, so he gave up this idea after one day (initially planning to stick with it for a few more days).
He wrote a blog about his implementation steps for that day, let’s experience it together.
Jeff Geerling: My Day Replacing MacBook Pro with 8GB Raspberry Pi

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

Step 1: Plugging in the Device
The primary task for the day was to unplug the MacBook Pro from my CalDigit TS3 Plus Thunderbolt 3 hub and figure out how to plug everything needed into the Raspberry Pi.
I plugged in an AmazonBasics powered USB 3.0 hub to the Raspberry Pi. I chose a powered hub to prevent the Raspberry Pi’s internal bus from having to power all the devices, which include:
  • A Kensington 240 GB SSD in an Inateck USB 3.0 SATA enclosure.

  • Apple Magic Keyboard.

  • Apple Magic Trackpad.

  • Behringer U-Phoria USB 3.0 audio interface.

  • Logitech C920 webcam.

You may not realize how many messy cables can arise from changing computers.

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

I plugged in the official Raspberry Pi 4 USB-C power supply and a micro HDMI to HDMI adapter, which was plugged into my LG 4K 27-inch monitor, and then waited for the Raspberry Pi to boot up!
Step 2: Resetting
The first thing I did was spend nearly 30 minutes figuring out how to achieve consistent font sizes in 4K quality across all applications and system controls (at 30Hz, the Raspberry Pi cannot output 60Hz through its HDMI connection).
The settings in the appearance preferences seemed to apply to some window chrome and buttons but not to the internal applications. Therefore, at 4K resolution, when I increased the font size, the main window text in the file manager became readable. However, to make filenames and other lists readable, I had to go into the file manager’s settings and increase the font size.
Next, I enabled the “Pixel Doubling” feature so that the original 1 pixel would be built in 2×2 pixel blocks, making all content sizes exactly double, allowing the Raspberry Pi to run on a 4K monitor.
If you want to play games or watch videos, this is sufficient, though there will be some minor tearing when watching videos at 4K settings. Other content on the computer will be displayed at 1080p resolution.
Finally, after a long setup time, I decided to stick with the original 1080p resolution, even though it made my monitor look a bit outdated. I did this to:
  • Reduce the load on the Raspberry Pi’s GPU (thus less tearing);

  • Allow the Raspberry Pi’s GPU to apply anti-aliasing features;

  • Allow a 60Hz refresh rate, which makes it more comfortable for my eyes when watching 60fps videos.

During this time, I also had to give up using the Apple Magic Trackpad because, even after adjusting many settings, the tracking was not very precise. It felt like the trackpad was drunk.
I plugged it directly into the Raspberry Pi but still encountered the same issue. So, I switched to an old Logitech mouse I used in the office, which worked better.
Step 3: Workflow and Apps
I started looking for alternatives to the apps I use daily, with mixed results. Chromium is a decent browser and works fine. VSCodium is a good code editor that can replace my favorite Sublime Text 3. Sublime Text 3 has a Linux version, but it’s not available for ARM64, and many apps have this issue.
I tried to compile Dropbox on the Pi OS beta but failed. So, I installed Rclone to achieve many goals.

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

For command line interface tasks, the Pi OS Terminal was sufficient.
For chatting, Pidgin and LimeChat worked well on the Raspberry Pi.
At this point, aside from not being able to find pre-built arm64 Docker images for some of my projects, I was able to smoothly do many open-source and foundational tasks.
However, I also encountered many new problems.
Step 4: Discovering Problems
At this point, I discovered an issue: many small things that can be done on a Mac either cannot be done on the Raspberry Pi or the process is quite cumbersome.
For example, I quickly browse dozens of RSS feeds every morning using Reeder. To do this, I had to use a painful web UI because I couldn’t find a Feedly reader that could be compiled on ARM 64.
And generally, people often use Twitter. Cawbird can be installed on the Raspberry Pi, but there are two problems: 1) it frequently encounters transient errors during use; 2) it must be installed using Snap, so… I had to install snapd first and then restart the Raspberry Pi.
Let’s not discuss Snap issues here. The point is that for all the software I wanted to use, I had to spend a lot of time finding versions that could run on Linux and then narrow it down to “running on Linux ARM64”.
I often needed to spend several minutes compiling source code and placing shortcuts in the system to directly open programs.
Step 5: Multimedia Functionality is Hard to Achieve
After a day, I wondered if I could do some audio and video work and create a “day experience” video on the Raspberry Pi.
However, I encountered problems right from the start. I couldn’t get the audio and video devices to work properly.
I opened Zoom, which recognized the Logitech C920 webcam as a video source, but I couldn’t select the microphone as an audio source. I saw the Behringer USB audio interface, but there was still no sound after selecting it.
I tried BlueJeans, but didn’t see the camera or microphone; the only option was “Join by Phone”. But after clicking that option, the BlueJeans interface got locked, and I had to refresh the page!
Google Hangouts Meet recognized the webcam for video but also had no audio.
Later, I used aplay -l to list my audio playback devices, and then the Behringer interface appeared. arecord also listed the webcam and Behringer as valid input devices:
$ arecord --list-devices
**** List of CAPTURE Hardware Devices ****
card 2: U192k [UMC202HD 192k], device 0: USB Audio [USB Audio]
 Subdevices: 1/1
 Subdevice #0: subdevice #0
card 3: C920 [HD Pro Webcam C920], device 0: USB Audio [USB Audio]
 Subdevices: 1/1
 Subdevice #0: subdevice #0
So I spent 30 minutes trying to record using the webcam’s microphone or the Behringer audio interface. After several attempts, I came up with the following two valid FFmpeg commands:
# Gets sound and video from the webcam:
$ ffmpeg -ar 44100 -ac 2 -f alsa -i hw:3,0 -f v4l2 -codec:v h264 -framerate 30 -video_size 1920x1080 -itsoffset 0.5 -i /dev/video0 -copyinkf -codec:v copy -codec:a aac -ab 128k -g 10 -f mp4 test.mp4

# Sound from Behringer, video from webcam:
ffmpeg -ar 44100 -ac 2 -f alsa -acodec pcm_s32le -i hw:2,0 -f v4l2 -codec:v h264 -framerate 30 -video_size 1920x1080 -itsoffset 0.5 -i /dev/video0 -copyinkf -codec:v copy -codec:a aac -ab 128k -g 10 -f mp4 test-webcam-audio.mp4
One more thing to note about recording video: the Raspberry Pi’s processor cannot perform real-time transcoding and encoding at 1080p. Fortunately, the Logitech C920 has built-in hardware H.264 encoding, so you can extract the stream directly from the camera and save it to disk without any rendering.
However, if I were using another camera without a built-in encoder, the Raspberry Pi could only record at 5-8 fps at 1080p/30fps. If I set it to 480p/30fps, the Raspberry Pi would record well and save it in mp4 format.
For pure audio recording, I tried gnome-audio-recorder but found it couldn’t even start recording or find any audio sources, only showing the error “Failed to set the pipeline to recording state”.
Conclusion
After all this, is the 8GB Raspberry Pi 4 worth picking up? The author’s conclusion is: if you want to use it as a general-purpose computer, then definitely not. But for some people, this Raspberry Pi has its unique advantages.
If your computer usage mainly involves browsers, code editors, command lines (like backend web development, infrastructure development, blogging, etc.), then the 8GB Raspberry Pi 4 is completely sufficient. Even if you open a bunch of tabs, Chromium can run well.
All costs add up to about $250, including keyboard, mouse, monitor, external SSD, plus the $75 Raspberry Pi, still offering a significant advantage over low-spec Chromebooks or old laptops. The author mentioned he is considering using the Raspberry Pi 4 as his child’s first computer.
However, if you frequently use media editing software like Final Cut Pro or iMovie, it’s recommended to save up for a MacBook Pro. At least, there are currently no similar tools that run well on the Raspberry Pi unless you’re willing to sacrifice usability and stability.
The author states that he may increasingly use the Raspberry Pi in server applications because each generation of Raspberry Pi is improving in cost-effectiveness and energy efficiency, and it can even rival much more expensive computers in certain workloads.
But he doesn’t think this year is the “Year of the Linux Desktop”. He states that for mainstream users, “Linux on the desktop” will always be a matter of 20 years in the future, just like nuclear fusion.
English:
https://www.jeffgeerling.com/blog/2020/i-replaced-my-macbook-pro-raspberry-pi-4-8gb-day

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

1.Microkernel architecture in the eyes of embedded engineers~

2.Does do{}while(0) only execute once meaninglessly? You might really not understand!

3. Bug terminator, caught live! | Subverting cognition

4.MATLAB is just the tip of the iceberg!

5.“STM32CubeMonitor” has tapped you

6.How to rewrite C++ source code into C code?

A Day with the Raspberry Pi 4: Replacing My MacBook Pro with 8GB

Disclaimer: This article is a network reprint, and the copyright belongs to the original author. If there are any copyright issues, please contact us, and we will confirm copyright based on the copyright certificate you provide and pay remuneration or delete content.

Leave a Comment

×