[HN Gopher] Cocoa-Way - Native macOS Wayland compositor for runn...
___________________________________________________________________
Cocoa-Way - Native macOS Wayland compositor for running Linux apps
seamlessly
Author : OJFord
Score : 286 points
Date : 2026-03-28 10:06 UTC (12 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| Imustaskforhelp wrote:
| Very interesting, can this run something like android using
| waydroid within Orbstack too?
|
| It would then essentially run android on macos as well, I do feel
| like it should be possible.
| cyanmagenta wrote:
| Forgive the naivety, but what graphical Linux apps are people
| trying to run that don't have native MacOS builds? In my
| experience, Linux GUIs are generally written in Qt or GTK, both
| of which are multi-platform.
|
| I don't doubt that they exist, I'm just struggling to think of a
| popular example.
| xlmnxp wrote:
| I want to use KDE Plasma instead of Mac OS ugly (in my opinion)
| interface
| vovavili wrote:
| This is possibly the first time in human history this opinion
| has been stated.
| sersi wrote:
| I mean Apple hasn't done itself any favours with Macos
| Tahoe.
| drob518 wrote:
| "Liquid Ass" as some people say.
| polshaw wrote:
| I don't want KDE but I would much prefer gnome to macos
| desktop, I think it's both prettier and more functional,
| and that's not a tahoe thing. I hate finder too, and don't
| see any way to properly use an alternative.
| Imustaskforhelp wrote:
| To be honest, I agree a little bit because I remember from
| my time at customizing KDE that everyone wanted it to make
| it look like Mac OS
|
| but it feels a bit of peer-pressure/cool-factor, people
| _used_ to like how Mac OS look but after Tahoe, I feel like
| most people don 't.
|
| To be honest, I am on mac right now but I really like
| Niri/Hyprland and to a degree KDE as well. I definitely
| feel like those were immensely more customizable and I miss
| that customizability, even if some people might use that
| customizability to make it look like MacOS default.
| layer8 wrote:
| Similar opinions are voiced in about every recent macOS UI
| thread, and even occasionally in Windows threads.
| hnlmorg wrote:
| It really isn't. There are a great many people who use macs
| for work but who do not like Apples design choices. And
| that number has skyrocketed even further since Liquid Glass
| was pushed onto people.
|
| In fact one of the front page articles today is literally
| calling macOS "ugly" in the title.
| ozgrakkurt wrote:
| not sure about the looks but I also find KDE much better in
| usability
| bityard wrote:
| I've been using Linux on the desktop for decades at this
| point. KDE Plasma is my current favorite and I've been
| using it for a few years now. It has everything you'd want
| in a desktop (maybe a bit more), looks great, and is very
| fast even on modest hardware.
|
| My current job has me using MacOS on an M3 Pro Macbook and
| I find it barely tolerable compared to KDE. Usually when I
| want to do something new or change some configuration,
| either there is no way to do it, or it's hidden behind some
| key combination that I never would have guessed. I would
| describe the overall feel of MacOS as "syrupy." When using
| the mouse or typing, there is almost always some kind of
| barely-perceptible latency. Nothing is ever crisp and
| instant. (This isn't specific to this machine, it feels the
| same way on every Mac I've borrowed.) It's sort of like
| someone decided that the only way to make it smooth was to
| also make it slow.
| baq wrote:
| Sir I'm here stuck on somewhat workable Sonoma, dread the
| day enterprise IT forces the push of Tahoe and would take a
| kde box in a heartbeat.
| heavyset_go wrote:
| Go through my post history and you'll see I've been saying
| the same, or similar, for years :)
|
| Plasma can be configured to rhyme with macOS' GUI. Not as
| in shitty macOS themes, but button placement, docks, global
| menus, widgets, Spotlight, Stage Manager, hot corners,
| keyboard shortcuts, Preview in Finder, etc.
|
| I have Plasma configured to take advantage of my decade+ of
| macOS muscle memory without having to put up with Finder
| and the abysmal task-switching and window management
| experience on macOS.
|
| Whenever I have to use macOS, I am reminded of how much
| better Plasma is. I'd might even buy a Mac again if I could
| use it instead of the default UI.
| kombine wrote:
| I was given the latest MacBook Pro at my new job not long
| ago, but I forced them to exchange it for Alan HP laptop
| just so I could use Linux on it. Unfortunately it's Ubuntu
| and not Plasma, but even so I'm happy I don't have to use
| Apple's software.
| mkl wrote:
| You can easily install Plasma on Ubuntu.
| coldtea wrote:
| Then you want to run KDE on Linux. This is not going to
| replace your native mac desktop environment.
| MarsIronPI wrote:
| Honest question: why use MacOS at all then? If you prefer
| KDE, why not run a system that KDE natively supports? Is it a
| particular MacOS application? Or is it that Linux support on
| Mac hardware is not good enough?
| TingPing wrote:
| Linux has good support for m1 and m2, so for newer devices
| running a custom desktop would be neat.
| audunw wrote:
| Popular apps? Probably not many.
|
| But in the field of integrated circuit design there's lots of
| apps that are Linux-only. I've tried to run some of them in
| containers on Mac. But XQuartz is awful.
|
| If they ever transitioned to Wayland perhaps this would let us
| run these apps on Mac in a nice way.
|
| On the other hand some of them have started getting ARM builds
| (for running simulations on certain cloud environments) so
| maybe native Mac GUI builds could happen someday soon.
| MBCook wrote:
| What about this plus XWayland? Would that do it?
| addaon wrote:
| > But XQuartz is awful.
|
| What issues are you seeing with it? I use it pretty heavily
| and have no complaints...
| OJFord wrote:
| It's not necessarily something only available for Linux, but
| something that you want to containerise. (And then it's
| inherently running on Linux.)
| boschetto wrote:
| I think there are many use cases for this software.
|
| For example, you may not want to run some graphical
| applications directly on your Mac for security, isolation or
| testing purposes.
|
| If this software turns out to be lower latency than RDP and
| CRD, I could also see it being very useful for accessing a
| remote graphical workstation (e.g.: running heavy software on
| an beefy machine in a data center instead of taking up
| resources on my skinny laptop).
| jon-wood wrote:
| This is very interesting to me for two reasons:
|
| 1. I'd really like to run my development environment for things
| under Siri for its tiling window management but for better or
| worse I'm deeply embedded in the Apple ecosystem for everything
| else, this looks like it could be a really nice way of doing it
| (possibly once multi monitor support is in).
|
| 2. There are still a few applications which have supported
| Linux builds but no support for macOS (Iridium's Niagara
| Workbench application for configuration of building management
| systems springs to mind here). Since Apple ended support for
| Quartz this has been a bit of a pain to deal with.
| ubercow13 wrote:
| Apart from just running Linux apps, you can use this to run
| graphical applications remotely on a Linux server, like X11
| forwarding.
| pkaeding wrote:
| I thought Wayland was different from X11, and didn't allow
| this. But I'm far from an expert on this topic so I'd like to
| learn more.
| chrismorgan wrote:
| https://github.com/neonkore/waypipe proxies Wayland over a
| network. It's straightforward enough in theory: Wayland
| core is just a communications protocol plus shared memory;
| so you just need to forward the messages, and detect and
| send changes in the shared memory. Not the cheapest thing,
| but perfectly tractable. Of course, there are also more
| difficult extensions, like GPU integration, but that sort
| of thing was a problem for X as well.
| TingPing wrote:
| This is how modern x11 worked too since nobody uses
| software rendering with x primitives anyway.
| functional_dev wrote:
| here is Wayland vs X11 visualised.. it might help -
| https://vectree.io/c/compositing-window-management-
| architect...
| amelius wrote:
| According to that page Wayland's architecture is simpler
| than X11.
| dsr_ wrote:
| If you put everything into a monolith, it looks simpler
| than if you have components that have to speak protocols
| to each other.
| anthk wrote:
| Rio and its predecesor in Unix v8/v10 did it better than
| X. In some cases we got the worst:
|
| - POSIX bloat vs Plan9's simple C and even simpler API
|
| - ioctl's vs everything it's a file
|
| - Complex socket spawning vs open() and dial() under
| Plan9/Go
|
| - ALSA vs tuned up OSSv4, or plaing audio/mixerfs under
| 9front
|
| - find -which syntax is huge- vs walk -f (or -d for dirs)
| | grep
|
| - RDP/VNC/SSH/NFS/SMB vs just rcpu+auth (9p) and run
| rio(4) and for files... 9fs which does a simple bind()
|
| - Symlinks and hard links vs bind and namespaces.
|
| - GDB and SSH vs importing a remote /proc in a rio window
| and remote-debugging your damn remote machine as if it
| were your own. How cool is that? Ditto with devices.
| Import sound cards, network cards with the whole IP
| stack. NAT you say? No more.
|
| - FFSv2 (hello OpenBSD) vs current GeFS under 9front
| which is like a miracle over what OBSD it's trying, the
| bad ZFS license or BTRFS not being ready on GNU yet.
| Probably the Hurd people will port GeFS to Hurd/Mach
| first, before BTRFS gets even ready...
|
| - Dynamic vs static linking. 9front, a suite of multiarch
| compilers. Set $objtype, compile, link, deploy a
| standalone binary. Ready, as if it were a Go binary under
| Unix, but without glibc oddities. ARM binaries from 386?
| Done. You need a crazy long i686-gnu-foo-bar and the rest
| of crazyness? Not anymore. These come in src form,
| compile and install them, no internet required. Literal
| two damn commands to do so, from any to any arch.
|
| - SH/KSH/Bash. Complexity ridden shells. Here's rc. No
| aliases there, just functions. No complex escaping, just
| () for strings, ^ to concat, ' ' for quoting. Problem
| solved. Even the conditonal words' syntax it's like
| throwing down all the complexity giving you a weirdly
| simple shell.
|
| - PCRE and ex commands under vi/nvi/vim (bloat) vs Sam
| and structural regexes. Sam it's like a graphical vi,
| period, there's nothing alien of it. Imagine a modeless
| vi with a small frame to input commands with an easier
| syntax: x/lookup/c/replace
|
| These can be chained with ease.
| adastra22 wrote:
| Wayland natively isn't built for forwarding the way X11 is.
| Waypipe fixes this, providing an X11 protocol equivalent
| for Wayland. This project is a waypipe client for macOS.
| hrmtst93837 wrote:
| Try building Inkscape or GIMP from source on macOS and see how
| "multi-platform" those GTK apps feel in practice. Even when a
| Mac build exists, it is often skinned oddly or lags because
| somebody has to carry Mac patches against an old fork.
|
| This is for the long tail. The compositor path dodges a pile of
| volunteer-port churn and runs the Linux build directly, which
| is a lot more appealing for niche GUI tools and dev apps that
| barely get maintained on Linux, never mind macOS.
| pajko wrote:
| PuTTY
| coldtea wrote:
| That's a Windows app.
| alt219 wrote:
| PuTTY is absolutely available for Linux. On Debian-based
| distros it's just a `sudo apt install putty` away. But why?
| asveikau wrote:
| One possibility is to run its terminal emulation
| somewhere else. But of course terminal emulators are a
| dime a dozen on Linux.
| okayokay123 wrote:
| Emacs runs much faster and better on Linux VMs. And I have a VM
| for each client I work with.
| fny wrote:
| That's not the use case. The use case is running apps from a
| remote Linux host as a local window. A performant VNC for
| specific windows if you will.
|
| For example, you could run VS Code on that machine as a window
| on your Mac. A more real world example is people accessing guis
| (e.g. matlab) on lab clusters.
|
| The closest set up for x11 would be to use x11 forwarding with
| xpra.
| adastra22 wrote:
| Or running applications within fully sandboxed VMs on the
| local machine, but with native-ish forwarded GUI. Great for
| dev.
| QuantumNomad_ wrote:
| > The closest set up for x11 would be to use x11 forwarding
| with xpra.
|
| Older versions of macOS even had an X server distributed by
| Apple that you could install on your machine, and if memory
| serves right you were then easily able to forward X11 from a
| remote Linux host (or other operating systems running X11
| applications) using ssh and have it render to your macOS
| desktop.
|
| From a quick google search there is apparently still an Apple
| supported third-party open source project called XQuartz one
| can use.
|
| https://en.wikipedia.org/wiki/XQuartz
|
| X11 forwarding with ssh and XQuartz looks to work the same
| way that I remember using the Apple distributed X server in
| the past. Install the X server and then use the -X flag of
| ssh. Same way that you forward X11 between two Linux
| computers, or Sun workstations or whatever with an X11
| desktop, over ssh.
|
| https://docs.cse.lehigh.edu/xforwarding/xforwarding-mac/
| LeFantome wrote:
| This is Wayland. You could use xprs
| vasvir wrote:
| wprs? Does not work for mac yet IIRC...
| semi-extrinsic wrote:
| We run TurboVNC from macOS to beefy Linux servers on the
| daily. Just tunnel the connection over SSH. It's been solid
| for 5+ years.
| varispeed wrote:
| Isn't better to run native VS Code and have remote SSH
| session? It very much works as if it was local (on fast low
| latency network). Only issue is moving files.
| LeFantome wrote:
| This is Wayland. You could use xprs (or Waypipe).
|
| Sorry, I responded to the wrong comment.
| bigyabai wrote:
| Native GTK apps on macOS are often more broken than running it
| in a VM or Parallels, in my experience. I used to use Gitg on
| macOS and it was a terrible experience all around.
| addaon wrote:
| There's a bunch of old Fortran stuff I use regularly (AVL,
| XFoil), but that's all X, not Wayland, and XQuartz has worked
| great for decades.
| LeFantome wrote:
| The first thing I wondered about was running GUI apps in a
| Linux container.
| anArbitraryOne wrote:
| Now if we could switch MacOS to use Win/Linux keyboard commands,
| MacOS wouldn't be so insufferable
| p-e-w wrote:
| I mean, you can simply use Linux and save yourself all those
| hacks...
| anArbitraryOne wrote:
| Absolutely. I went through great lengths to install Asahi on
| my work M1, only to have most things not work (RTFM). So when
| one is forced to use MacOS, may it round corners in hell, for
| work...
| ubercow13 wrote:
| Maybe try this: https://ke-complex-
| modifications.pqrs.org/#pc_shortcuts
| IshKebab wrote:
| Yeah I've used Karabiner to get windows-style shortcuts
| (home/end, etc.) and it works very well.
| drob518 wrote:
| Aside: the new, large radius Liquid Ass corners that make
| some parts of the window basically unusable are really
| annoying me.
| rick_dalton wrote:
| Super key for most keybinds is much nicer than windows in my
| opinion, where it is entirely wasted on opening the start menu.
| On Linux it gains a few functions based on the desktop
| environment but not much.
| layer8 wrote:
| The use of the Windows key extends far beyond the start menu.
| Builtin functions include window management, invoking
| programs on the taskbar, locking the computer, invoking
| Explorer and Settings, invoking and controlling accessibility
| functions like Magnifier. The Microsoft Power Toys add a lot
| of functions using the Windows key by default as well, like
| screen snipping, screen OCR, color picking, enhanced
| clipboard, and many more.
| daveidol wrote:
| That's still like 10 uses vs unlimited uses on macOS
| freedomben wrote:
| It may be ten uses, but it's ten uses I use constantly
| throughout the day.
| layer8 wrote:
| Even just the window management category is more than ten
| uses. And it is unlimited uses, as you can assign
| additional shortcuts however you like.
| drob518 wrote:
| You must not use MacOS. Command gets used all over the
| place, even during editing. And in Emacs it gets used as
| Super, which opens up some options.
| rick_dalton wrote:
| My problem is that I don't use the majority of these
| functions at all. Command I can use for almost everything
| no matter how frequent or infrequent. It also replaces most
| "ctrl+shift" binds which is a great plus for me.
| jurmous wrote:
| Many of the keyboard commands are configurable in settings,
| complete with switching cmd and ctrl keys around. Or you can
| get used in a week or two when switching, this is what I did
| years ago and now for me Win/Linux is confusing and find the
| location of the command key more ergonomic on a Mac.
|
| Here some history on how the command key came to be
| https://www.folklore.org/Swedish_Campground.html
| https://en.wikipedia.org/wiki/Command_key
| SuperManifolds wrote:
| Incredibly L take. macOS keyboard commands are great for
| working in the terminal since system shortcuts use a different
| key and don't interfere with control codes
| drob518 wrote:
| Exactly. You don't have the terminal itself fight with
| whatever is running on the other side of the term.
| throwaway613746 wrote:
| As someone that switches between MacOS (dayjob) and Linux (my
| own PCs) workstations daily - I wish I could do the opposite
| for Linux. MacOS keyboard shortcuts are just way more intuitive
| to me, and they are way more consistent across applications.
| cpuguy83 wrote:
| Sorry having to use ctrl+shift for in a terminal is absolutely
| awful. macOS keyboard shortcuts are king.
| dagi3d wrote:
| agree. I guess it's a force of habit, but I am so used to the
| cmd+<whatever> (specially copy & paste) shortcuts, that I
| configured them into my linux desktop to behave the same way
| drob518 wrote:
| Being limited to just control and alt definitely cuts down on
| the options. Conversely, having MacOS command key act as
| "super" in Emacs opens up some possibilities.
| IshKebab wrote:
| Neat, but wouldn't it be better to have the windows as
| "seamless"? I.e. not contained within another window.
| jbverschoor wrote:
| Perfect.. this will allow me to run GUI apps in a container.
|
| I did a similar thing with X11, but I didn't like so much.
|
| Bit by bit, Apple is loosing it's Desktop position. It all starts
| at the developers. At soon, every person will be a "developer".
| jbverschoor wrote:
| In reply to then throwaway.
|
| Anything I want sandboxed or "grouped".
|
| Work on a project -> open the relevant container.
|
| Similar to parallels window integration mode.
|
| It's all from shortcomings to have a hierarchical view on your
| data and applications.
|
| Goal: isolation. Security-wise, and focus-wise
| kelnos wrote:
| > _Bit by bit, Apple is loosing it 's Desktop position._
|
| Apple never really had much of a desktop position to start
| with.
|
| And their desktop position has always been a higher share than
| Linux, so I don't really see how this changes much in that
| regard.
| tsuru wrote:
| Wow. Would this allow a macos-based wayland-client to create an
| EGL surface?
| BirAdam wrote:
| Now, if only macOS still had the ability to drop to a Darwin
| shell without a GUI at all... we could just have a nice UNIX with
| something like KDE or COSMIC, brew as our package manager... what
| a dream.
| MarsIronPI wrote:
| But why MacOS then? If you take away the interface what
| differentiates Darwin from FreeBSD or GNU?
| komali2 wrote:
| Performance on apple chipsets!
| BirAdam wrote:
| That it will actually run on Apple Silicon.
|
| TBH, I would love to install GNU or BSD on my M4 Max Mac
| Studio. What I really wanted is a modern UNIX workstation. My
| Studio's price/performance was the best available, so that's
| what I bought. Now, I am happy with that purchase except for
| the constant diminution in software quality from Apple.
| esseph wrote:
| If I could buy modern apple hardware and run the Linux of my
| choice, I probably would. I have 0 interest in the apple
| ecosystem.
| MarsIronPI wrote:
| I wish I could get an Apple SoC in a 2013 Thinkpad chassis.
| krackers wrote:
| On intel macs there used to be single user mode, but even then
| I don't think you ever had control over the framebuffer.
| gf000 wrote:
| Yeah, why stick to the inferior kernel used by macs with a
| worse package manager? Like something like nix is just superior
| in every sense.
| kogasa240p wrote:
| Wonder if this will bring at least a tiny amount of interest to
| GNUstep.
| skrrtww wrote:
| This looks like slop? The README is full of emojis and kind of
| incoherent, there are no implementation details, there claims to
| be a Metal backend that doesn't seem to exist, etc.
|
| The dependency list is also...something:
| https://github.com/J-x-Z/cocoa-way/tree/main/vendor
| jhatemyjob wrote:
| This is definitely not worth using. It doesn't even say what
| hypervisor its using. Is it using QEMU? Docker? Podman? Lima?
| Colima?
|
| And also this chart is super weird: Solution
| Latency HiDPI Native Integration Setup Complexity
| Cocoa-Way Low Yes Native windows Easy
| XQuartz High Partial X11 quirks Medium
| VNC High No Full screen Medium
| VM GUI High Partial Separate window Complex
|
| A standard VM will always be the easiest to set up by far. And
| latency should be the same across all 4. I mean after all it's
| a VM running on your local machine. Honestly I don't even know
| what it means when it says "Latency".
|
| I also looked at some of the code and it's using OpenGL 3.3
| Core which is... super old. But it makes sense in the context
| of this being LLM-generated since most of its training data is
| probably OpenGL 3.3 Core code....
|
| Overall this project is very strange. It makes me feel more
| confident in my skills, AI isn't all that great. It's all hype.
| You can get to the frontpage of HN. And if you're Peter
| Steinberger you can get acquired by OpenAI for a billion
| dollars. But that's about it. The code isn't getting any
| better.
|
| This reminds me of that C-compiler-in-Rust publicity stunt by
| Anthropic. There's no substance. It's just a headline.
| lights0123 wrote:
| While I agree with the rest of your comment, they do mention
| they use OrbStack as their hypervisor in their demo video.
| jhatemyjob wrote:
| Gotcha thanks for that info. Yeah that's insane. You have
| to read the description of a YouTube video to understand
| what a project on Github is doing. There is no architecture
| here.
| jFriedensreich wrote:
| I need something like this for android, termux-x11 is a good
| start but if termux gets wayland support or there is a way to
| expose wayland sockets from the android native linux VM, the only
| thing missing is a native rendering compositor for a smoother
| experience
| LoganDark wrote:
| Server-side decorations "with shadows and focus indicators" -- is
| it not using macOS's native window chrome? Pass... Add OpenGL
| instead of Metal, and hard pass.
___________________________________________________________________
(page generated 2026-03-28 23:00 UTC)