← Back to list

Ubuntu, Xorg, and the Apple Studio Monitor

TL;DR: the Apple Studio Monitor makes Ubuntu cry, and upon first install it won’t light up. (Live environment works, installed environment…

Zoey Green · 2024-09-21 05:02 · 1 claps · 5.2 min read
#linux #ubuntu #studio-display
Open on Medium ↗
Wiki topics: 🔓 · Open Source

Ubuntu, Xorg, and the Apple Studio Monitor

TL;DR: the Apple Studio Monitor makes Ubuntu cry, and upon first install it won’t light up. (Live environment works, installed environment doesn’t.) If you’re lucky, you have a second monitor, and you can switch to it on the command line with xrandr and fix the displays in GNOME shell. Unfortunately, I can’t summarize this well, so read on for details (skip ahead to the subheading if my ramble is annoying)…

The previous computer to this beefy white monolith of a PC I have now was a 16-inch MacBook Pro. I actually really like MacOS, and for a couple of years it was my main machine. I attached it to a dock, and it was great driving my two monitors. It’s an expensive machine, yes, but it’s powerful and slick and I’m happy with that purchase.

Then I got an itch… an itch to spend way too much money on fruit hardware. I’ll admit it. I have a problem. I also now have a Studio Display.

Unless you’re really into the visual arts… frankly, it’s not worth it. And when I was docked I couldn’t even play EVE Online on the primary display; with 4x the pixels per pixel, the game ran like garbage unless I put it on my 1440p secondary monitor.

Fast forward a couple of years, and now my main machine is a PC built for speed. And, well, I spent a lot of money on that display, I want to keep using it.

The first solution is to get one of those DisplayPort<->USB-C bidirectional cables; put one end on my graphics card and plug the other end into the display. It has to be bidirectional; found that out the hard way. And it works! In Windows. And none of the other bits of the hardware work.

The Studio Display has an integrated webcam, some damned good speakers, and a great microphone array. It’s not, ahem, studio quality, but it’s very nice to not have extra bits on my desktop. My space is small enough as it is.

But those things only work if the display is hooked to a DP compatible Thunderbolt-3-ish USB-C port.

Luckily enough, I accidentally bought the right motherboard for this application (I forgot about my special monitor when I was picking parts); along with my AM5 Ryzen chip, the whole smash does that redirect-video-over-USB-C thing.

Plugged it in, spun up Windows, and it worked! Sorta. The driver is buggy and the driver crashes taking down the video with it. It resets, but it breaks whatever it was you were doing.

Fine, Windows, I’ll take my ball and go to Linux’s house. Ubuntu, specifically.

Alas, I had a different problem in Linux land. Like… the display won’t even show once you move from boot to graphical login. Which is weird, the Live-USB worked just fine when I installed Ubuntu.

The Problem Is GDM

The difference between the Live environment and your installation of Ubuntu is GDM, the Gnome Display Manager, the thing that does the login screen. It lights up the secondary monitor, but not the Studio Display. Unfortunately, the Studio Display is the primary monitor, and that’s where it shows the login buttons. So you’re stuck.

Got a couple of options here. First, you can blindly log in. If you hit <enter> it’ll probably select your user, then you can type your password, if you didn’t make any mistakes, you might get logged in.

A better option, though, is to tell X to swap your displays, at least for a minute. Needless to say, this only works if you have two monitors connected to your computer. You’ll need a regular monitor at some point; you can modify the fix at the next subheading if you can swap monitors.

Hey, I’ve got two monitors! So let’s continue.

What we want to do is swap the two monitors in X so that the secondary non-Studio monitor is “primary”, while the Studio monitor is “secondary.” There’s a Superuser Question that has an accepted answer that almost solves the problem. Procedure is thus:

Reboot and go into the command line recovery mode for Ubuntu.

Then, find the names of your displays with xrandr

$ xrandr -q | grep connected
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-0 connected 2560x1440+0+0 (normal left inverted right x axis y axis) 595mm x 335mm
HDMI-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-0 connected (normal left inverted right x axis y axis)
DP-1-1 disconnected (normal left inverted right x axis y axis)
DP-1-2 disconnected (normal left inverted right x axis y axis)
DP-1-3 disconnected (normal left inverted right x axis y axis)
DP-1-4 disconnected (normal left inverted right x axis y axis)
DP-1-5 disconnected (normal left inverted right x axis y axis)

On my machine, DisplayPort-0 is the Studio Display, and DP-1–0 is my secondary display. (I’m doing this from notes, so this isn’t the exact output I saw.)

Now, we make the other display the Primary:

$ xrandr --output DP-1-0 --primary

Now, run startx. This will boot up the login interface, and the login screen will show on the secondary monitor. Half way there!

Now, to fix the actual problem.

You don’t want to live life this way. Eventually you’d like to log in like normal. And for some reason beyond me, GNOME-shell can handle the Studio display automatically, while GDM cannot. So here we are.

But another page I had found trying to find the solution above gives the actual fix.

GNOME-shell and GDM use the same config file format to store their display details, but in two different places. I’m sure there’s some use-case where this is useful, it is Linux after all. But what we want is for GDM to use the same display as GNOME-shell, and that’s easy to accomplish.

Now that you have GNOME-shell working, you can put the displays back in the proper order using the Settings menu in the top-right corner system tray menu.

Open Settings and pick Displays. Tinker with the settings until the monitors are the way you want. (For me, that’s with the Studio display as primary and at 1440p; I haven’t gotten GNOME happy with different display resolutions spanning monitors. That’s one expensive feature that doesn’t work with the Studio display on Ubuntu. Yet.)

The key here is that this settings window saves an XML file, which is compatible between GNOME-shell and GDM. So, once your displays are like they should be, copy the config file on top of the gdm3 config file:

sudo cp ~/.config/monitors.xml /var/lib/gdm3/.config/

And… that’s it. Thank you Ubuntu Handbook. Reboot the normal way. GDM reads the config file you created in GNOME-shell and sets up the displays correctly.

Exercises for the Reader

You can also do this from the Live environment in a pinch without dropping into the root shell, probably. I haven’t tried this, but you should be able to do the same cp after setting up the monitors correctly, but you’ll have to mount your hard drive and change the paths. I don’t have procedure for this, but think of it as a Linux learning experience.

So Now It Works, Mostly

Like I said, it’s not perfect. For one, the monitor is at 1440p so you’re not using all those pixels. If it’s your only monitor, you can set it to it’s highest resolution and just set the magnification factor to whatever floats your boat. But with dual monitors, having them at different resolutions just had lots of problems for me, so I didn’t do it. I was just happy to have my webcam, speakers, and microphone all working in Ubuntu. And without those buggy Windows drivers!

Photo by Mohamed Kerroudj on Unsplash

Photo by Mohamed Kerroudj on Unsplash


메타데이터
post_id
08f30a2b309d
slug
ubuntu-xorg-and-the-apple-studio-monitor-08f30a2b309d
url
https://medium.com/@autodmc/ubuntu-xorg-and-the-apple-studio-monitor-08f30a2b309d
canonical_url
https://medium.com/@autodmc/ubuntu-xorg-and-the-apple-studio-monitor-08f30a2b309d
author_url
https://medium.com/@autodmc
status
ok
fetched_at
2026-07-22 19:02:41