Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
RavynOS – Finesse of macOS, freedom of FreeBSD (ravynos.com)
769 points by behnamoh on Aug 17, 2022 | hide | past | favorite | 363 comments



This looks like not a reskin of an existing FreeBSD or Linux windows system, but an actual reimplementation of macOS. Very interesting if they can pull it off!

I wonder though, why start with old Objective-C cocoa APIs instead of Swift?


Objective-C is the ABI of all UI-related macOS frameworks and it would probably always be. Even if you're writing in Swift, as long as you're using AppKit, you're using Objective-C classes under the hood. There's no such thing as "Swift Cocoa APIs". And SwiftUI is an abstraction layer on top of, again, AppKit/UIKit/WatchKit, which are themselves all written in Objective-C.



Then a question: how does one call these APIs from another language? You can use Objective-C frameworks from anything that can call C functions, by manually doing objc_msgSend and all the related stuff. But will you have to write a Swift wrapper for these?


I would guess that's the linker's job?

I don't need to do that in my day to day job, but I do remember that as part of an OS class at school (some 20+ years ago) one of the tasks we were assigned was that we had to work in pairs of teams, where one team would implement a function and another team would implement code that called that function, the only requirement being that both teams had to use different languages. The point of the exercise was to show how, provided you had a defined API, thanks to linking you could use the best language for each job.


In many languages you need to somehow define the symbols you import before the linker comes into play. How would you define Swift symbols for C++? For Java? For Rust? And that's provided their linkers would actually know what the Swift ABI is — and they most probably don't. So I guess your only option would be to descend all the way down to assembly and shove the right things into the right registers and then jump to the right place.


Yes, just like on Android you will need to write Java or Kotlin, and the NDK only exposes game development APIs.

Objective-C is done, see WWDC 2022.


On macOS, the Swift ABI is stable. It is different from the C or C++ ABI. Somebody would need to implement the Swift ABI for another language. Which is kinda tricky because Swift has many features that other languages don’t have. Rust could probably do it, or C++ with a ton of templates I guess.


The greater bulk of the macOS userland is still written in Objective-C.


Yeah but they expose the same ABI. If you can write in Objective-C, you could write it Swift and externally it'd be no different. And since they're reimplementing this stuff from scratch, I'm surprised they didn't just do that.

(I'm saying this as someone who would be more inclined to contribute if it was written in Swift.)


I imagine they are using either GNUStep or Cocotron as the basis for their Cocoa support, not starting fully from scratch.


Looks like they have copied and pasted large amounts of code from Cocotron.


It's a BSD. (Knowing that, you probably wouldn't ask them, "Why C and not C++?") As a language (and ecosystem*) Objective-C is mature and lacks complexity in a way that doesn't apply to Swift.

* They definitely did not start with Objective-C and a blank slate here; they're folding in monumental amounts of third-party code


I wonder if Cocoa is that language specific or if it’s become legacy tech. When Swift was announced and when I explored it for personal projects, I was very much calling Cocoa APIs. They definitely catered to ObjC-isms, but my impression was that all of the underlying UI frameworks were being preserved even if they might gain additive APIs to be used less awkwardly in Swift.


This year Apple made the point Objective-C is done, time to move on, for those that were still wondering.

Around minute 4, or go through the transcript.

https://developer.apple.com/videos/play/wwdc2022/102/


“Objective-C is done, time to move on” … except for Apple themselves, where we still see a steep rise in ObjC year over year with no visible sign of slowing that incline.

Likewise for AppKit.

Apple, the “do as we say, not as we do” company.


All new projects I was involved in over the past three years or more were in Swift. I would say it is considered in bad form to start a new project in anything other than Swift.

Further, I saw many legacy projects move from Objective-C to Swift (Podcasts comes to mind). (Some legacy Objective-C apps like iTunesU, sadly, were "sunsetted".)

Until recently, I believe there were issues with frameworks written natively in Swift so I saw a few smaller frameworks thrown together in Objective-C. I believe that, whatever the issues were, are no longer pertinent.

I can say too that there are many engineers that don't even know how to code in Objective-C. The younger engineers learned on Swift and are even hostile to writing in Objective-C (ha ha).

Of course Apple is a big company and I can't speak for the whole of engineering - only the teams/orgs I was involved with. And since I left Apple last year I can only guess at the current state. But the direction was clearly away from Objective-C.

As you can imagine, the biggest hurdle to 100% adoption is going to be bringing over legacy projects. Porting to Swift will probably always take a back seat to features, bug fixes. If the pace at Apple were more leisurely, not a suite of new OS releases every year, perhaps we could have our cake and eat it.


Except several systems have been rewritten in Swift for Ventura, also mentioned in other talks.

Besides this is nothing new in the industry, some Android business units and Windows ones, are quite adverse to touch anything besides C++, regardless of the guidelines to the rest of us.


It’s also funny to think of companies like Apple, MS, etc. as having 1 opinion or even tactic.

I know they say it. But they’re made up of 100s-1000s of groups. And at Apple especially, many of these groups are not allowed to talk to each other.

From the outside it’s easy to see companies that way. But if you’ve ever been inside a large company, you know what I’m talking about. That’s not unique to tech, either.

And rewriting software in a new language is always going to get back burnered by delivering new features. Until there’s a fundamental change they want that justifies a rewrite, a codebase is staying in its current language due to inertia.

Heck, companies will lie to themselves about these things. My favorite is this pattern

Execs: We’re all going to X!

Crowd: Yaaay. [Some project leads look at each other with a mix of sarcasm and fear.]

Initiative kicks off. Swag is distributed. Projects are identified.

Exec: [Looks at $] Well, except this one. And that one… Ok, we’ll replace all of these [waves arms] in 3-5 years.

Narrator: 3-5 years continues to be relative to the current date.


.net being a good example of this

I'm sure I still have CD case with 'Windows .net' printed on it which contains Windows 2000 and SQL Server... .net?

The marketers really went to town on that one, would have loved to be in the creative pitch meetings for that swag.

'.net, what is it??'

'Who knows??! But if we print .net in multicolour on enough stuff, somebody might figure it out!'


> The marketers really went to town on that one,

To be fair, the developers at Microsoft went to town on it as well, adopting C# for parts of Windows Blackcomb, including the File Manager, the Desktop Manager, and (some of) WinFS. It turned into a fiasco and the .NET adoption was mostly dropped, as far as I remember, when they did the "reset" and pivoted to Vista.


Because the WinDev team sabotaged, the effort, instead of doing an Android or ChromeOS with everyone roaming into the same managed direction, they made sure they pretty Windows APIs would win..

So since Vista all new APIs follow Longhorn ideas, while using COM, followed by Windows Runtime, with the caveat that tooling is just as bad as before .NET was invented, but hey they are happy fellows on their little turf.


While there are parts of Swift that I like, I am more and more convinced as time goes on that Swift in general, and specific sub areas of Swift (like SwiftUI or Swift Charts) are destined to follow the trajectory of .NET as decried by Spolsky in How Microsoft Lost The API War [1]. To the extent this is true, it is likely smarter long term to avoid Swift except in cases where Apple has enforced its usage (like the watch).

For problem areas where Apple's frameworks provide a useful or necessary solution, accessing them from Objective-C instead of Swift is more stable. Examples like Accelerate, HealthKit, and StoreKit come to mind.

For problem areas where Apple has no advantage but you want to ship code there, oft derided but broadly usable solutions like C++ (which connects to Objective-C better than it does to Swift) or Javascript dominate.

Even Apple appears to struggle at drinking its own koolaid, given the recent criticism of the Settings port to SwiftUI. [2]

[1]: https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost...

[2]: https://daringfireball.net/linked/2022/08/15/ventura-system-...


The more I use Swift, the more I miss Objective-C. I tend to like opinionated languages that take firm stances - all method calls are messages, everything really is an object, fail early, etc.

Swift seems to be more and more a kitchen sink language. Compile time linking, v-tables, and dynamic dispatch? Sure! There’s so much syntactic sugar masking seemingly unchangeable implementation details (throws/try/catch) and odd implementation choices (protocols associated types vs structs and classes generics). Builder methods are just plain weird, imho.

I had a lot of hope for Swift early on, but it seems like a rudderless ship.


They can't be the ones to turn the lights off if they're not the last ones in the room. iTunes was famously Carbon for long after Apple said "use Cocoa now", but it came around. It's fine to tell everyone else "stop doing ObjC now", then to slowly strangle it out of their code as well.


Interesting, I wonder if that is for technical reasons (low level stuff; performance?) or just inertia?


Mostly inertia, the only new subsystem where Objective-C plays a major role is Metal, and even there most examples make use of the Swift bindings.


SwiftUI is an intermediate step in this transition. Expect the UIKit/AppKit bits to eventually disappear.


Except SwiftUI is itself built on top of AppKit/UIKit.


Many of the views are, but some do not bind to AppKit/UIKit and instead are drawn directly (I think maybe Image is one?). The idea is you could keep SwiftUI's API stable while deprecating AppKit/UIKit piecemeal underneath.


This is what I meant


I really hope they build some kind of application registry, including listing projects that don't yet work on RavynOS, so that the community can see which packages are most in-demand, what % of apps that people want are supported, reviews from others on stability for the platform, etc.

Could bootstrap this by looking at everything in Homebrew (including casks) and sharing whether it seems to work on RavynOS yet (or whether it's ambiguous, and how you can help disambiguate).


The biggest gap from developers will be the lack of docker on freebsd.


Personally, I find that to be an asset not a failure.


You could do what docker does on the mac, put it in a linux vm.


This may be an issue for some developers, but not all. I’m a developer and I never use Docker.


GNU/Linux developers.


> lack of docker on freebsd

I'm using sysutils/docker on FreeBSD with DOCKER_HOST env var set to "ssh://user@linuxvm" where linuxvm is a local VM running on bhyve[1]. Part of local FreeBSD filesystem is shared with the Linux VM via virtio-9p passthrough. Everything plays together nicely.

nerdctl[2] works with sysutils/containerd. You can't run Linux images on FreeBSD kernel (Linux jails may be an option) but there are FreeBSD images. Pkgbase[3] aims to make FreeBSD more modular, divided in chunks smaller than "base", "ports", "src"; feasible for containers.

[1] https://wiki.freebsd.org/bhyve

[2] https://github.com/containerd/nerdctl

[3] https://wiki.freebsd.org/PkgBase


Has anyone packaged this into a single, easy-to-use command/application? (Like "Docker for Mac")


Personally I find this kind of idea to be a dead end, since so much of what makes macOS special is really beyond the capabilities of anyone other than Apple. For example, total vertical integration, e.g. calling up kernel team and ask them to make a change for WebKit. SerenityOS also does this because Andreas Kling worked at Apple, realising that vertical integration is fundamental. But then there are other things, like incredible hardware integration with things like the trackpad and CoreAudio, as well as precise control over the CPU and power. I'll be interested to see if this goes anywhere but in my opinion there are better places to go, such as for example SerenityOS, which I think is a kind of operating system that is far more suitable for the space of people who don't want to buy Apple.

I'm generally a bit sceptical of this "copy macOS" idea. It isn't a particularly amazing operating system, it is mainly just very well supported by third parties considering that it is a unix. You won't have that if you recreate it in this way, and I'm not sure if you will be left with a very good experience.


Agree. Also I see some video on SerenityOS and I find a very good teaching environment/gym to see a such vertical integration.

Last but not least HaikuOS deserves some forward look


Looks like this is a rebrand from the Airyx project that was posted before [1]

[1] https://news.ycombinator.com/item?id=28068542


Thanks! Macroexpanded:

A macOS-like operating system based on FreeBSD - https://news.ycombinator.com/item?id=28087092 - Aug 2021 (67 comments)

Airyx OS - https://news.ycombinator.com/item?id=28068542 - Aug 2021 (254 comments)


They had a trademark issue because there is a German company called Airyx that uses an almost identical domain on top of that (airyx.com vs airyx.de)


Thanks, yeah that slightly confused me because the screenshots on the sight all talk about Airxy, rather than RavynOS.

Other than that it looks interesting, a sorta-Mac-aesthetic sorta-BSD.


Hmm. I'm not sure what to think of all this special build stuff. I moved from macOS to FreeBSD + KDE mainly because I felt that macOS was becoming too dumbed down.

And I actually like the UI and configurability of KDE.

So no, I'm not going to use it but it probably could have made me move to FreeBSD a few years earlier. But with this kind of 'copycat' I always wonder if they manage to support a large enough ecosystem to make it work well. After all the biggest selling point of macOS is traditionally the 'just works' principle. Using FreeBSD as a daily driver I know the hardware/driver side needs a lot of tinkering. Which I don't mind, but macOS users would.

I also wonder about their business model, it seems to be a company?


I tried running this last night on an i7-8550u, and eh, I didn’t get far. I got it to boot to a GUI, but nothing else loaded, not even an installer. And because the screen was 4k, my cursor (and everything else) was tiny. I think this is a cool project but just worth noting that this is a proof of concept right now rather than a complete thing. Best of luck to the RavynOS team.


Can it get the font rendering to the level that macOS or iOS have? If yes, then it's getting there. The few things that scream to me that I'm not using a mac:

1. Antialiasing of fonts, how crisp and clear does it look on my screen? Windows has struggled with this especially after ClearType.

2. Alignment of elements in various applications. The traffic light window controls look way too far into the app's header. Find a happy medium, copy macOS's spacing.

3. Is the contrast in colors strong enough to tell me this was designed by someone who has some design (hopefully color theory background) or was it just an attempt to use many colors?


It's basically impossible to have crisp fonts without a high DPI integer scaled monitor. The target monitor hardware for Windows and MacOS is vastly different.


> The traffic light window controls look way too far into the app's header. Find a happy medium, copy macOS's spacing.

I noticed that too on the screenshots page. And it's weird cause it looks right under the "features you'd love" section on the main page. It looks like most of those images (the traffic light buttons, global menus, folder icons) are faked to look like macOS but then the screenshots don't actually look like that.


There used to be Infinitaly that somewhat helped with that.

If you find your fonts rendered to thin compared to macOS you may try changing some of the freetype settings, such as:

    FREETYPE_PROPERTIES="truetype:interpreter-version=35 autofitter:no-stem-darkening=0 cff:no-stem-darkining=0"


1. Doesn't macOS turn off font antialiasing for retina displays? I believe retina displays (with desktop scaling) is the real solution to crispy fonts.


apple was using grayscale shape-acxurate smoothing, it works on any display with any arrangement of subpixels

windows clear type is using pixel-accurate subpixel smoothing, it works only in one direction with correct subpixel pattern

what people (including me) dislike about windows fonts is aggressive hinting, that is snapping font shape to pixel grid, it made sense in displays around VGA (640x480) but does not make sense on FHD screen


I think what you are used to has a big impact. I use a 22" 1200p screen and still like the aggressive hinting; I've tuned my fontconfig to be more like windows. Mac style rendering just looks fuzzy to me.

As an aside the PPI of my screen isn't that different from the PPI of my 15" CRT running 1024x768 (both are about 100). Note that there was less than 15" of usable space since CRTs were rated based on the tube size, not the visible size.


It is interesting how you only have purely visual "signs" on your list ). It can't be only this for a tech crowd. There is so much more about the way software is shipped, configured & used.

Also, the hardware. (It is much harder to make it work reasonably well across so many platforms without an army of full time devs.)


Do you mean that for a tech crowd, you'd expect people to have a more robust list of desires?

That's a genuine question, I just read yours in a few different ways.

However, I'd argue that relatively small details just fall into the category of overall interface polish. Not just aesthetic people polish, but the category of things that make you put your hands to your face and scream in frustration.

But yes, there are definitely important details in other layers that are worth considering. I think that when people make comparison's though, beetween macOS' level of finesse and something else, that finesse is defined by polish at most levels of interface with that hardware and so on.


Some of the words in the screenshots make it sound like this is a skinned version of KDE. Konsole, Kate, Plasma for example:

https://ravynos.com/screenshots.html


> PLEASE NOTE: On 2022-02-14, we decided to abandon the current path of using X11/KDE desktop components and write from scratch a new UI that will align better with our goals. A very early UI on the new WindowServer is starting to take shape as of 2022-07-27. Thanks for your patience as we work to make ravynOS the best possible version.


Oh, the good old "rewrite the world" approach.

Good luck to the developers!


This is one instance where that approach probably pays dividends, if they can pull it off. Most macOS-like clones that I've tried fall short, due to there being only so much you can do to paper-over the Linux desktop experience. A sort of uncanny valley that I just can't get over and adjust to using.


To have the full experience they also need to clone the Objective-C and Swift frameworks, and IDE tooling.


The GNUStep project has already done much of the ObjC framework cloning. I wonder if they're using that. Not sure about Swift frameworks, though.


They mention in the faq that they do not use GNUStep's implementation of the frameworks, but they do use GNUStep's implementation of the libobjc2 runtime. There's licensing and goal issues. Apparently their Cocoa implementation comes from "the same source" as Darling's, but I don't know what that means. (Cross referencing with Darling's faq, I guess it's The Cocotron.)


GNUStep is GPL though, and one of the stated goals of ravynOS is to be BSD and MIT licensed. On the FAQ page they address this, even saying they might be willing to use it despite the licensing.


If what you understand by macOS is how Panther used to be.


> If what you understand by macOS is how Panther used to be.

That's a bit old for me (I started with Tiger), but I would definitely be all over an option to go back to OS X (where, I felt, the paradigm was that users should be presented with the best possible default experience, but also should be trusted to tinker if they chose to do so) before they started pushing this macOS = iOS integration (where the paradigm should be that users should be protected, even against themselves, from any need or ability to tinker).


That is mostly what GNUStep managed to be compatible with before running out of steam.


It's hundreds of person-years of work so no, they can't pull it off.


See also Linux, and Firefox, neither of which got pulled off.

Snark aside, sure, it starts small. But it's so much easier to pitch in if there's some code base to work with. It snowballs.


> Oh, the good old "rewrite the world" approach. Good luck to the developers!

Yes, they definitely need some good luck, but sometimes rewriting the world is necessary to one day invent something new, or just eliminate architectural issues that are too entrenched in the old code to be easily circumvented without adding bloat and/or bugs. The price to pay is lagging behind the competition, with a potential bigger payoff only later, for those who persist. I see roughly a similar approach with the PinePhone: they probably went like "the heck with reverse engineering other phones, we make our own one from scratch!"; the result as of today is a ~90% working slow phone that very few among non tech users would want, but we see the much bigger potential if and when they'll reach hardware performance at least comparable to known brands. It takes courage, perseverance, and luck.


I will never understand the people think you can never do a fresh start (in software, but not limited to it). Many very successful projects started as a green field. Sometimes I would even go so far as saying they would have failed if the had tried to build onto the existing code base. Also important to note: there is no "start from 0" most likely the work will be based on existing work, the ideas, code, or parts, modules, graphics can be reused. I see everyday in my job how this kind of thinking leads to code with parts that are over 20 years old, and are not changed because of fear that something could break.


“Write one to throw away” was a concept in one of the tech books I read. Perhaps The Pragmatic Programmer or maybe The Mythical Man Month.


If your goal is to replicate the UI quality of MacOS, then just reskinning the work of others will only result in inconsistent jank.


Sure, a certain amount of good luck is always required.

I've been involved in two rewrites during the past 5 years. While the rewrites were not by choice (one was forced by Flash EOL), in both cases there were multiple, very obvious (after the fact) benefits:

- Better, modern technology top to bottom

- Better dev process, facilitated by the better technology

- An excuse to focus functionally, and rethink. We couldn't possibly reproduce a heap of legacy features and were forced to focus on what mattered, and managed to offer those key features in a far superior way.

Done right, a rewrite can be fantastic. And sure, rewrites often happen for the wrong reasons and at the wrong time.


Today's KDE can be almost identical to a MacOS desktop, if you customize it properly.

I'm a KDE user since 2010 and a week ago I purchased an M1 Pro (hopefully to install Asahi in the future). My desktop was basically a top bar with global menu, a few widgets and Latte Dock.

If I didn't know that Mac came up with the functionality before, I would think that it is Mac that feels like a skinned KDE


Nice project, however I’m worried about their scope (reimplementing the MacOs APIs?) being too large for their team, to achieve that level of ‘finessse’ a billion-worth company has made decades achieving.

Moreover in my opinion the contributor pool might be thin, most potentially interested users would prefer using MacOs, and most linux users being notoriously not fond of the lack of configuration. Happy to be proven wrong!


I'd concur on that last part, for sure. As a Linux user, the fit and finish of MacOS really doesn't appeal to me. The hardware, on the other hand...


How is this going to have a better future than GNUStep, while being up to date with macOS frameworks?


How does this compare to Hello System? [1]

[1] https://hellosystem.github.io/docs/


From the FAQ[0]

----------------

helloSystem: We have been in fact working with helloSystem! As some people have noticed, Release 0.2.X was basically helloSystem. (That was the second PoC. The first had been built on vanilla FreeBSD and had no GUI at all.) Under the hood, however, release 0.2.2 has a partial implementation of Cocoa, a modified compiler & linker that support frameworks, and several other additions that make it distinct. We have similar philosophies, and share technology and cooperate where it makes sense (e.g. Filer), but the project goals are quite different.

helloSystem wants to create a computer that is simple to use, open, elegant, small and fast. Older Mac OS X and Classic are an inspiration to what that might look like, but they are not explicitly trying to create an open-source Mac. In fact, they're mostly avoiding Objective-C and XML plists and other Mac technology in favor of simpler and/or more modern ways (e.g. Qt, C++, JSON).

ravynOS is explicitly trying to be compatible with Mac software at a source and eventually a binary level, without losing support for FreeBSD/X11 software, and to implement a very similar experience on the desktop and at the command line. For example, on ravynOS you can type open -a MyApp image.jpg and have image.jpg open in MyApp. You will find things in (mostly) the same directories as a Mac, like ~/Library or /System/Library/Fonts. This project is not as concerned about keeping the OS as small and simple as possible, and more concerned about making it clean, secure, performant, and compatible - implementing many of the features I use daily in macOS while skipping the lock-in and "tabletization" of the computer.

Some of the more technical differences between ravynOS and hello are:

- ravynOS uses a patched kernel with support for Mach, just like xnu, and a compiler suite that supports Frameworks and has preliminary support for Mach-O as well as

- ravynOS has a package repo with software built to "standard" paths like /System, /etc, and /usr instead of the FreeBSD repos which are built into /usr/local

- ravynOS desktop is being written from scratch with Cocoa, Mach, and OpenGL on a Wayland compositor, where hello's desktop is based on openbox, Menu and Filer (originally from LXQt) plus other lightweight services for notifications (dunst), screen color temperature (redshift) etc

- helloSystem uses a simplified .app structure whereas ravynOS uses real Bundles for .app

- helloSystem tends to use typical Unix paths and files, while ravynOS is moving towards typical Mac paths and files

- ravynOS tries to provide the same APIs as macOS

[0] https://ravynos.com/faq.html


I hope it sticks around. If it's around long enough, it can be an alternative in its own right. Ever since ElementaryOS lost momentum (or really never found it, rather) I have been looking for a "third way". RavynOS could be a great way to develop Mac apps and also target the apps for RavynOS. Could be great for music appliances and whatnot.


Oh, so ravynOS would kind of be for macOS what ReactOS is for Windows?


I'm curious to know why they have chosen to use FreeBSD as a base as opposed to Darwin/XNU on which macOS itself is based.

Nothing against FreeBSD (happy user here) so there's probably some good reasoning behind this.


From the FAQ:

The short answer is "hardware support". ravynOS should run on most commodity x86_64 hardware using FreeBSD's very stable and performant drivers.

The longer answer is that plus I don't see any real advantage to using xnu. We have merged in Mach support now (big thanks to NetBSD, NextBSD and the iX Systems folks for that) so the xnu approach just seems to add complexity and the effort of writing and maintaining drivers.

Considering how big this project is already, I opted to stick with the BSD kernel - at least for now


Regarding hardware support, will this run on actual Apple silicon? If not, it seems like Linux would have been the better choice for maximizing hardware support, if only for Asahi Linux's work.

(btw, I don't know much about this kind of work, so I have no idea if it's feasible to port the drivers from Asahi to FreeBSD, or if they'll have to start mostly from scratch)


I know nothing about the project apart from the website, but the front page says they aren't a fan of the "ever-closing hardware", so I guess Apple silicon might not be a priority.


> We have merged in Mach support now

Mach the kernel, the IPC system, or the binary format?


Probably because Darwin is half abandoned, while FreeBSD is actively maintained and with plenty of drivers


Darwin is still open sourced, but mainly because of drivers and differences in certain other things (threads maybe, Mach ports / IPC, etc) that don’t have the integration or implementation with existing software is a major headwind to attempting a full encompassing Darwin OS.

PureDarwin was (is?) an attempt that hasn’t been able to break through those headwinds.


Is Darwin used for something other than research? I'd really love to see some homebrew stuff with this kernel.


There's https://www.puredarwin.org/ which is probably great for partial OSX/iOS emulation efforts. That's it as far as I can tell, though.


Possibly driver support. But I would feel better if at some point they co-operate with PureDarwin to run on real XNU.


I don't know why the mobile version crawls when I scroll past the images on my high-end Samsung.


Same on MacOS and Firefox with a 4K screen ans same on Firefox and a Pixel 6, scrolling lags hard on the section with pictures. Making a bad first impression of this new OS.


> Making a bad first impression of this new OS.

This is more than a little ridiculous and you know it.


There is a subtle translucency effect applied to the top bar that picks up and scatters the large svg’s behind it. I haven’t seen how it’s implemented, but it might not be performant on all web engines.


Same with my Pixel 5 and FF mobile.


Running FF for Android on a mid range Samsung tablet and it seems to work fine for me. Maybe it's a GPU driver thing?


Chrome on pixel 5 has no issue. Ff is slow for me as well. Maybe specifically an FF issue?


Runs smooth with FF for Android here.

Maybe the issue is something else entirely?


The images are svgs. Probably heavy processing from that.


The challenge of course will always be hardware—notice the evolution of Asahi Linux on Apple hardware and how difficult it is. Then, throw in the device driver hellscape (wifi cards, drives, sound, video, etc.)

This OS sounds like a dream for me, but I have to imagine it will take many years and a lot of willing experimenters to make it usable. I wish I had that kind of time.


I don't get it. The landing page promises finesse and then the very first screenshot displays horror typography and UI a-la linux 1998.

https://ravynos.com/images/airyx_0.3_installer_confirm.png


The website didn't actually claim they had implemented those features yet, just that it's their goals.


Those are screenshots from the old GUI which used X11/KDE. They are working on a new one which do not have any screenshots up yet.


For the page:

> You will need real hardware to run it.

Why doesn't it work in a VM?


It is strange. Just downloaded and tried to boot in a KVM+Qemu VM targeting FreeBSD 13 (virsh). Booted but kernel hung with an obscure launchd dispatching job message. I haven't used FreeBSD consistently since the 4.x days so I have no idea what this means.

Looks interesting enough to play around with but for such an ambitious project VM support should be one of the first dev priorities not only for dev and testing but for users wanting to take it for a spin.


I’m going to do some good old Hacker News bike-shedding here…

Whenever I see something that looks like a poor copy of something else, it has an immediate (negative) effect on me from quite deep down.

It’s a variation of the uncanny valley I think.

The UI screenshots on the landing page all look like “best effort” copies of macOS UI elements but are just slightly off and that “slightly off” feeling really sits badly with me. This is not a intellectual judgement but an instinctive gut reaction.

I totally get what they’re trying to do, but I think it would be worth creating just a tiny bit more distance from the macOS design language because if you try to be a direct carbon copy of macOS, it’s just going to fail at at that.

It’s a bit like when you see cheap knock-off products replicating those of mainstream brands. The knock-offs could actually be quite well made but because they’re imitating other products they just don’t ever look right, and the failed imitation aspect overshadows everything else.

I wonder what others think (especially the macOS users amongst us).

Aside from that, I think the idea of the project is cool. It just needs more of its own identity I think.


> built with our core technologies of Cocoa, Qt, and Mach

Does this mean a mach emulation layer on top of or in the freebsd kernel?


> ravynOS uses a patched kernel with support for Mach, just like xnu, and a compiler suite that supports Frameworks and has preliminary support for Mach-O


I like the honest, modest, realistic goals of this project. Looks interesting.


Hi, I just wanted to let you know that the ravynos.com's top part of the page performs very poorly under Firefox, most likely due to some animation overload. Was firefox considered in the tests?


It's due to the use of the blur backdrop-filter which seems to have been enabled by default on release builds of Firefox relatively recently.

Interestingly, it's a feature introduced to CSS way back in 2015. There must have been some major blockers on getting that out the door if it took ~7 years.


Neat idea, hopefully they are successful!


Thanks for your work, i like the design choices you made.

I believe that a bigger factor today is the third party support for your system.

stuff like teams not working, or netflix not being able to stream in 4k makes me still keep my windows machine, even though at this point its basically a firefox / vscode terminal with extra apps and of course a system level integration of docker.

Im pretty sure there is enough room for a true developer OS but it still needs to do all the "little" things that we have grown accustomed to.


>we decided to abandon the current path of using X11/KDE desktop components and write from scratch a new UI that will align better with our goals. A very early UI on the new WindowServer is starting to take shape as of 2022-07-27.

I get the desire to avoid X11, but why write a GUI from scratch instead of using Wayland?


My guess is that it would take a lot of work to get Wayland working with FreeBSD.


That still sounds like less work than writing the whole thing from scratch.


This is a very cool project and I wish them success.

From a technical standpoint, maybe it won't matter, but I am concerned about the fact that they're using (at this time) a Wayland compositor. I have read that Wayland has some problematic technical design decisions (which were not known when it was conceived) and now today we have the awful situation where most apps in my experience run better in X.org and some are ok in Wayland. From an eyestrain perspective, I find x.org less straining to look at than Wayland. This may have something to do with the drivers but the compositor plays a role for sure. I don't use Wayland by choice. Name a widely used app? Sure, Firefox web browser. Turn on "Use autoscrolling" in the preferences and see how it is. On X.org it is smooth, on Wayland it uses XWayland instead and is not smooth. Both projects are years old. Every single X11 app requires programmers to re-write/convert them to native Wayland. It should have just broken compatibility from day 1 and started from scratch.

BSD DRI drivers are copied over from Linux, just older versions of them, so I don't have a lot of hope that there will be new drivers or a new compositor (likely years away).

Apple, while Darwin is a direct descendant of FreeBSD, Apple is not using Linux DRI drivers, they have enough NDA access that they have their own closed drivers, and instead of using X11, they made their own GUI stack.

I want to say what should be done is to do what Apple did, make a brand new gui stack on top, but that's incredibly difficult with limited resources. With Apple or MS you have endless amounts of money and developers, with X.org & Wayland you have years and years of incremental development. It's tough.


Wayland doesn't have broken technical decisions, they're just different and require applications to adapt.

A typical examples is global hotkeys. On X11, any application can monitor all keystrokes at any time. On Wayland, applications only get keyboard events if they're in foreground. Global hotkeys must be done via a separate compositor API. This breaks applications which expect to be able to detect keystrokes when they're in background, but the "feature" they relied on also allows any random application to include a keylogger. Such applications need to update.

You mention Firefox uses XWayland. Firefox also has native Wayland support (I'm writing on it right now!). This is likely a mis-configuration at some level, or maybe the Firefox version is too old.

OTOH, things like scaling are completely broken on X11, and while the hacks around it improve over the years using a HiDPI display will likely never be as smooth as on Wayland. And if you have a laptop with a HiDPI display and a LowDPI external monitor, one of them is going to suck forever on Xorg.

We are, of course, on a transitional period. A lot of applications still need refinement. Qt in particular still has lots of bugs on Wayland. But these can be fixed, there's no broken design decision which makes them unfixable.


Nice to see more options for polished and user friendly Linux distros! Another one that has those qualities, and which I use often: https://zorin.com/

Edit: my mistake, RavynOS isn't a Linux distro!


RavynOS is not a Linux distro.


Does it also mimic the macOS command meta key? Ie cmd+c for copy, cmd+v for paste etc?


Finesse? This is one of the least attractive MacOS rip off builds I've seen.


Does it run Better Touch Tool? I use it to resize and move windows with trackpad moves (no click) and modifier keys and also to disable openapple-Q. Does it work well with an apple trackpad?


I'm curious to see how performative this will manage to actually be... Itd be interesting if it could eventually run audio software and AU plugins at a low latency.


Technically interesting, but I don't see many people using it.

Why? Because it will always be (far-ish) behind macOS features.


ElementaryOS had similar goals on the desktop experience side.

You may also want to take a look at OpenStep and Window Maker.


This looks promising but I can't get the installer to load. Would love to get updates on progress.


If they nail drag-drop .app installs, that's pretty cool.

Otherwise, Elementary GUI on Gnustep is pretty much it.


I was recently searching for something "EndeavourOS" like to try FreeBSD. Thi looks nice!


Interesting that they decided not to just spin Pantheon onto BSD but develop their own DE.


"Can I run Photoshop?"


> Can I run macOS apps on ravynOS? > No - not yet. This is a major goal and we're working towards it. So far, some trivial "hello world" binaries in C and Objective-C have been compiled on macOS Big Sur and the resulting Mach-O binaries ran on ravynOS using our in-dev Hybrid linker without any Frameworks or tools from macOS. Source code of some simple Cocoa AppKit-based applications have been built on ravynOS and run as native applications (e.g. Install ravynOS.app). While this is all very exciting, you will have to wait a bit longer to run Photoshop or Xcode.

first question, https://ravynos.com/faq.html


Awesome - thank you for the comprehensive response. Best of luck to you and the project.


I always thought GNUstep was cool and deserved more development and use.


Great effort and idea. Don't forget to find a replacement foe OSX Quartz engine.


Why not pick up where Elementary OS left off, instead of starting from scratch?


I would argue picking up where GNUStep+Etoile left off, over Elementary.

Elementary is just a nice skin with some particular tweaks and add-ons. Etoile’s goal was more akin to what they’re trying to achieve here, an actual Objective-C+Cocoa user space with a Mac compatible open library,


Do you mean having huge useless toolbars eating valuable screen real state?

It seriously had worse UI design decisions than Gnome 3.


no KDE/GTK, no system-d

global menu

swift as a first class language

swiftUI like API

and you get my support! i'll donate


The website looks better than the actual OS...


KDE is a better desktop environment than MacOS, by far. I have had so many usability issues with my Mac that does not exist in KDE/Linux. E.g. Apple confining the GUI and not including basic functionality.

Specifically:

- I really miss a decent address bar in finder that can be edited directly

- some windows on mac are always on top, preventing access to other windows. E.g. Password dialogs for encrypted hard drives.

- "Cut" does not work for files in finder, severely complicating moving files

- The Maximize button does not maximize, but instead enters full screen, meaning that I never use it

- There is a delay of ~100ms when pushing caps lock on the keyboard that can not be turned off without installing karabiner elements

- Pressing enter in Finder renames a file instead of opening it, an action that is rarely needed and extremely unintuitive – this erroneous behaviour can also be corrected with karabiner elements

- Sometimes audio balance will randomly shift to the left or right with bluetooth headphones, had to install yet another app to auto-fix it every time it happens because Apple is too daft to fix the bug.

- There is no delete key on the Mac keyboard, meaning that deleting a file is suddenly a two- key shortcut combo, whereas it is much easier on Windows/Linux (hit delete). Sigh.


None of those are bugs, just differences. sounds like you tried for a day and were annoyed it's not exactly as you are used to. Most of your issues simply work differently on macos, and many have been since before kde existed.

Sure some could be better, but changing these would upset the whole user base. (And mac users could claim those things broken in kde in the same way)

I have used windows, gnome2, gnome3, xfce, mac and so on and dislike kde, and gnome3, and all the others. Even mac is really dumb sometimes, but macos is the most polished by far.


And what about all the bugs Apple seems to add on a daily basis and not fixing them than for month, years, or actually ever?

I can read in the news more or less every day that fundamental things like input devices, monitors, audio, or basic GUI features are messed up or bluntly broken in macOS. People already "joking" that one needs to way at least two or three point releases before trying out major updates. That's even worse than the situation on Windows by now (and MS is also breaking things with every update).

As a Linux user that uses a "perpetual beta" distri (Debian Testing) I'm horrified about such news. Comparable breakage does happen on my OS maybe 2 times in a decade on average, and when some catastrophe like that happens (monitor stops working, no audio, USB not working, or such) it's usually fixed within hours!


The alternative for "maximize" on Mac is to simply double click the Window, although some Windows do not have much of a "title" or "bar" to click on, because of modern simplification of GUIs, and this can cause accidents to happen. Still, I will argue it is incorrect to have the maximize button do something that I hardly ever need to do, that is, enter full screen for the given window.

Both Gnome and KDE are better desktop environments, heck even Windows 11 has done a better job (although they ruined the taskbar now).

The mere fact that you can not change things to your liking on Mac proves my point. You have to buy- and install third party applications from developers that you do not know or trust, and that is just to fix some of the most basic issues. Microsoft recently also decided to go down this route, and have now sabotaged their own Taskbar, preventing users from moving it.

It has nothing to do with "not being used to the Mac-way" – these things are just worse on Mac. There is nothing good about not having direct access to the location address in your File Manager, or not being able to change this stupid default behaviour of various keys and UI elements.

The ability to use "cut" on files, and actually change location by a text-based address bar are both to be considered core features. It is entirely brainless and inconvenient that we have to hold in "option" just to get a "move files" option to show up in the right click context menu.


> You have to buy- and install third party applications from developers that you do not know or trust, and that is just to fix some of the most basic issues.

That's one of the biggest jokes on the Mac, indeed.

On Windows it's not much different besides one detail: You also need a shitload of tools and gadgets only to make basic things usable. But at least those tools are mostly free (like in beer) or even OpenSource. On the Mac instead you have to pay ridiculous amounts of money only to get some basic options (like for example, I think it was ~30 bucks, only to be able to configure the acceleration of the mouse cursor).

The usability on the Mac is very broken, but people knowing how to "milk" other people created a whole market for laughable expensive apps out of it only to fix the most annoying things. That's just sooo ridiculous! I personally have no clue why people are buying this kind of stuff. It's like they want to be treated like -peep-. Imho the "jokes" about Stockholm syndrome victims are no jokes any more. That's bitter reality.

BTW:

https://www.digitaltrends.com/computing/apple-causes-religio...

https://www.researchgate.net/publication/276887293_iReligion...

https://www.researchgate.net/publication/233647272_The_Cult_...

https://www.itproportal.com/2015/08/13/the-religion-of-apple...

By now it's a quite irrefutable scientific fact that hardcore Apple users are brainwashed sect members.

Should be obvious anyway. Just look how they behave and what they keep saying when confronted with critique…


Most entries in posters list are complaints with how things work. Two of these seem like bugs.

> Sometimes audio balance will randomly shift to the left or right with bluetooth headphones

> There is a delay of ~100ms when pushing caps lock

Another seems objective not subjective

> Pressing enter in Finder renames a file instead of opening it

Who thinks the enter to rename is reasonable?


> Who thinks the enter to rename is reasonable?

Decades of MacOS users?


Audio balance seems like a bug. Caps Lock delay seems like accidental activation prevention. Who thinks F2 to rename is reasonable?


Having it delayed by a portion of a second can never in any way shape or form prevent accidental activation as you don't have time to notice and correct the matter. It IS just enough to prevent several characters from being entered in the correct case.

Users expect actions to match the sequence of inputs. If the user can type CAPS and "TITLE" and get "tITLE" its a bug.

Basically 50 years of computer interfaces of all kids across all OS across planet earth use enter or return for activation. This includes Mac in all other contexts.

F2 to rename dates back to windows 3.1 with environments like KDE using the same key that is familiar to windows users. Like many things it is an arbitrary choice without any inherently correct answer. The nice thing about it is in dolphin is that one can easily discover this by right clicking a file or folder and noting the shortcut listed beside the action so you can both complete the task visually immediately and learn the hotkey easily.


Older MacBooks activate Caps Lock instantly. Recent MacBooks activate Caps Lock after the key is held long enough.

Bugs are when systems don't work as intended. Intent you don't like isn't a bug.

Enter or return does different things in different contexts. Its most frequent functions are go to a new line or end text entry. Saying it means activate and implying activate means open is trying to find consistency where it isn't. And what it does in Finder is what it does in other text fields.

Return for rename is older than Windows 3.1. The error rate for pressing F2 is high for something so common as rename.


> Audio balance seems like a bug

A long standing one actually. I remember having it in Mojave/El Capitan already on my 2102 MBP.

The others are annoyances from not being familiar with the UI, some more motivated than others. But let’s recall the sad story of the thumbnails in GNOME’s file picker, for a second…


Coming from the Windows and Linux worlds, I had similar frustrations with the primitive Mac UI. Mostly a better keyboard shortcuts/window timer fixed them for me (Magnet). There are still some issues but they are relatively minor.

What made me stick with the platform though was never having to worry about drivers, and updates being polite and patient, and not being bombarded with a billion ads everywhere like in Windows or Ubuntu. Also not having to drop into the command line to change monitor settings is nice. And the M1 is just soooo nice, fast and quiet and cool, no x86 laptop is even remotely close anymore. They put the ThinkPads, my previous favorite, to shame.

So yeah, to your point, the dumbed down UI is a pain, but the rest of the experience is so much nicer now. I'd take needing a few extra apps over having to go back to desktop Linux...


> Also not having to drop into the command line to change monitor settings is nice.

I can't remember the last time I had to do this on Linux. Sometime in the the 90's, I think.


I had to do it multiple times with hidpi monitors just a few years back. Not sure about ultrawide, hdr, high refresh rate, gsync, etc.


Linux works with M1


Absolutely not ready for production environments. A lot of driver support is lacking. Audio is disabled since it could blow up the speakers. Wifi doesn't always work (for me at least). And that's without talking about GPU support or even Thunderbolt support.


Is this relevant to the submission, or simply a spot you’ve interpreted as a convenient one to air all of your grievances about Macs? I guess not only air them, but state them in a way where only your approach is correct (“erroneous” is inappropriate to apply to a UI decision that differs from your preference, for example)


If you pay attention, you will note the authors of this decided to Ditch KDE and apparently design their own UI, which would be more like Mac. My point is, power users do not really want Mac desktop environment – it is just a "necessary" evil that we are stuck with.


Their point is your preferences are your preferences. Not obejctive tests for power user status.


100% with you. KDE is the only desktop environment, all platforms confounded, that hasn't sacrificed power user functionality on the altar of streamlined / dumbed-down "design".

It's like a race to the bottom to please an elusive lowest common denominator class of users that doesn't exist. I find these other "modern" UIs incredibly condescending.

Instead, discoverability should be #1, creating soft, natural learning curve that welcomes new users without capping or hiding advanced functionality.


Note that you can do "Cut" in Finder by doing "Copy (Cmd-C)" but then using "Alt-Cmd-V". It'll move the file instead of copying.

Also, you can also fix the "caps lock" issue by remapping it to "control". Completely fixes the "caps lock" button. It works on Linux too! ;)


It only just dawned on me reading this—Windows doesn't actually "cut" files, does it? The behavior's different from "cutting" text. The files remain until you paste, right? Mac's choice makes a ton more sense, in that case, since actually cutting files is probably a bad idea (if you forget to paste, they're gone)


I am aware of that, but the fact is that this is less convenient than a standard "cut", as on other systems, so I honestly never use that. What I do instead is I have two windows open, and then I drag and drop between them. Also less convenient, but better than having to keep an extra hand on the keyboard constantly.

And of course, a "always on top" flag would have been really nice for dragging and dropping between windows. That option is really nice in KDE, but missing on both Mac and Windows.


This way of doing copy or move makes a lot of sense since it allows you to change your mind without having to go back to the original file and cut/copy again. Instead, it defers that decision until you get to your destination, where moving the file just takes an extra modifier on top of the usual paste shortcut.


> I really miss a decent address bar in finder that can be edited directly

Press Command-Shift-G and it will appear as a small window. (I haven't figured out how to do this in a "Open/Save File" dialog, so if anyone can chime in, greatly aprreciated)

> "Cut" does not work for files in finder, severely complicating moving files

It's annoying that there is no shortcut equivalent, but if you need to actually move a file either drag and drop it, or press Option while right-clicking in the target Finder window - the menu entry will change from "copy here" to "move here".

> The Maximize button does not maximize, but instead enters full screen, meaning that I never use it

Yuck, yeah. Very irritating. Use SizeUp, well worth the 13 US$.


Command-Shift-G is new to me, but it is too inconvenient, being forced to keep and extra hand on the keyboard for such simple operations.

It breaks my normal work-flow when I am on my mac, which is most the time nowadays.

There also is a shortcut for moving files, but I do not care about that.


> always on top, preventing access to other windows. E.g. Password dialogs for encrypted hard drives.

this is something that should be done everywhere, if it isn't, it's a potential security issue.


Supposedly the security issue is about copying and pasting passwords.

Trust me, the alternative is much, much worse. You do not want users using the same password everywhere.

I use a password manager, passwords are encrypted and only briefly available doing the copy / paste operation. It also has an auto-fill option which further limits the attack surface.

KDE is much more respectful towards users, because you can actually remove/add the "always on top" flag as needed, and that IS the way it should be.


> - "Cut" does not work for files in finder, severely complicating moving files

Luckily macos is extensible so you can create your own service for that.


Mac has a different workflow for this. You copy and then "paste and move" at the destination, instead of the standard cut. But same result.


I was used to Ctrl+X, Ctrl+V to move files on Windows.

What is the shortcut for "paste and move"?


⌘+C for copy

⌘+V for paste

⌘+⇧+V for paste and move


thanks!


You have to press and hold the option key while the context menu is open. It is just inconvenient compared to other systems.


Agreed. I hate it too.


I find the Mouse is typically more convenient for cut on files, unless I happen to have my other hand on the keyboard. The shortcut keys on mac are often a two, three or even four combination whereas on GNU/Linux or Windows it will be a one or two-key operation.

The way Mac handles copying and pasting text is also horrendous, because it also copies the styling, something I actually never need to do. The way to paste text without styling is a horrendous long, and inconvenient keyboard combo.

Other system does that too, but it is just less often an issue. Typically what I do instead is I have a plain text window open, paste my text in that, then copy it again, and finally paste it in the intended destination. It is piss annoying


>we’re not a fan

Oh, ok :)


Ex graphic designer here, but don't (and never have) used Mac. I highly respect this project and initiative, and the following is more a commentary on my own reaction than your product.

I read the title--finesse of MacOS. I open the link, and the first thing I see at the top is the circular raven logo vertically misaligned with the header on mobile.

That made me think, okay let's try desktop version instead, so I switched to desktop render (still on mobile browser) -- this time the logo is vertically aligned but the padding / margin on top and bottom are lower than on the left.

This is of course nitpicking in the larger scheme of things--I haven't tried the OS, but the screenshots look great and definitely look like MacOS. However, with the title setting up expectations and the first impression being of a misaligned logo made me (unfairly) dismiss the project since I felt you were trying to claim a level of finesse that might not be there.

I don't use Linux, so I'll never really use this product, but it's interesting to me--why do people / projects/teams (in general--not just this product) try to emulate the "finesse" of Apple products? To me, it sets up unrealistic expectations from that product, and I might dismiss an otherwise excellent solution if it doesn't live up to that comparison.


I'm not sure that caring about the design of a desktop environment and website are equivalent - if nothing else, they're different skills to implement. And in any event, it's an early-stage project; that their goals aren't realized yet is hardly surprising.


> but the screenshots look great and definitely look like MacOS

Some do, but many look quite janky -- for example, check out the grey menu bar with Windows-98-style underlined shortcut keys in this one: https://ravynos.com/images/airyx_0.3.0pre_about.png

Perhaps I'm missing something, but this doesn't seem particularly visually different than the "aqua skins" that have been available on *nix for years.



> why do people / projects/teams (in general--not just this product) try to emulate the "finesse" of Apple products

Because people like them. Why do all sedans look kind of alike? Why are there dozens knock-off chairs that emulate the Aeron? Some people, myself included, really like the look and feel of macOS, but may want to run *nix instead. Enough of those people got together and made an OS.


Moacos is a posix compatible Unix.


Sedans mostly look alike because of safety regulations. There’s only one basic shape that can meet all the regs and is plausible to manufacture.


> I don't use Linux, so I'll never really use this product

Isn't it FreeBSD?


Yeah it’s a common misconception.

This is closer to macOS than it is to Linux.


From a product marketing standpoint, they could have picked a better name. My brain keeps going "Rav-yin" instead of "Raven".

I know why these kinds of pseudo words are chosen for products, they're unique and easy to search. But there are better ways to do this IMO. FreeBSD is a prime example of a great product name.


I noticed the logo misalignment but the rest of the website was pretty good so I figured it was a one-off issue (rather than representative of a trend).

Was there other issues that bothered you?


I didn't notice the misaligned logo until you pointed it out (but I'm a guy who prefers 'ugly things that work ' rather than 'unusable junk that looks good')

What I did notice though was th first screenshot with the red, yellow, green buttons of osx window titles.

I think this is a really bad design, and I don't understand how people can like this.

Sure, nice round "buttons", but very unclear what their purpose is.

I think this is something of a red line through Mac/iOS: The preference of unclear user interface that "looks good" instead of a clear interface that communicates with the user.

I've used Mac for years, and still don't know what the yellow button does.

I like the idea of this new OS, but please make better design choices that Apple :-)


> I've used Mac for years, and still don't know what the yellow button does.

Minimize. That’s what the yellow button does. It’s as simple as clicking it once.


Kind of unrelated to the actual discussion but I just realised that I never minimize things on mac. I know what the yellow bubble does, never once clicked it, neither used the shortcut whatever it is.

Is this common? I used it on windows but for years now, I have a ton of windows on top of each other or I just cmd+w my way out of one.

Maybe this is the idiomatic way and I’m not an outlier though. Is it?


I've been using Macs since 1984 and I almost never minimize a window. I find that I generally don't need to since I can maximize a window properly. In macOS the Maximize function (which you need to use option to get from the green button) makes the window the largest size that makes sense for the content and fits on the screen. On Windows, the maximize button in MDI windows makes the window essentially full-screen which I personally never want. I can have multiple maximized windows on macOS and access them all by either just clicking between them or using Cmd-`. I have no need to minimize unless a window's maximized size is essentially full-screen.


or, mousing over it and seeing the little minimize line.


I’d propose going all the way back to NEXTSTEP and taking that as inspiration. It’s similar enough to OS X that it would feel familiar to Mac users, but without the 20 years of being "function follows form"ed to death.


In terms of an interface designed for clarity, I think the epitome was Windows 95.

But that involved portable thousands of hours interviewing and videotaping regular people trying to use Windows and then addressing issues found.


> I think this is a really bad design, and I don't understand how people can like this.

What do you think would be better? Can you give an example?


Widgets that indicates purpose.

It can be tricky to make everything self explanatory, but at least if you use icons or text rather than just colour you give the brain something to help you recognize.


Okay, can you give an example of how that would look?


To be fair, I remember the apple website rendering pretty badly on mobile device for a long time, at some point it actually made me feel like this company had really low UI standards. (I think it was the versions between 2007 and 2017 and didn't used their products at that time)


I struggle with chasing after the MacOS appearance.

It feels in passing like a lot of work to build a skin/UI that will always be a few generations of the design language behind and not quite there, just given the volume of staff at Apple and them being the ones defining where their design language goes.

Like a choice between a Porsche and, according to Google a Zotye -- they'll look close but one will be the obvious "genuine article."

Would it not be better to take all that talent and consider a fresh approach to the user experience of a personal computer?


> given the volume of staff at Apple

Unrelated to RavynOS, but I see the size of the Apple staff more like a weakness not a strength. They became terribly inefficient in the recent years.


And still they will perform better than any FOSS attempt to clone their work.


Yeah, FOSS culture is unfortunately neither very good at design, nor attracting good designers for collaboration. Many engineers don't even respect design and/or designers.


That is because designers usually tend to push for "making stuff easy for users" by removing options, whereas engineers tend to like to expose everything configurable so that power users can customize the application to their optimal experience.

I think that "old school Windows" aka Win95-Win7 (where you could still use the classic Windows UI) and "old school MS Office" was the perfect balance between "keep it easy enough for users to get started, with clear visual distinction to aid them" and "allow power users to work as well", and that was a large part of why MS Windows and MS Office became so utterly dominant. Only when MS started to go bonkers with Vista and then the disasters that followed from a design perspective, users suddenly started to look for alternatives.


> That is because designers usually tend to push for "making stuff easy for users" by removing options

Yeah, although I think product managers are worse offenders. I think neither extreme is good. Customization is important but hard to get right, and creates rigidity and burdens for developers as well. One thing that engineers ignore, is the cost of mandatory customization or learning curves. Most users, even technical ones, may never get around to customizing so the defaults are more important than the full set of options. And engineers often underestimate the importance of sensible defaults. Google, for instance, had entire products that people didn't know about because they couldn't make users aware of them, despite them being free and good.

> "old school MS Office" was the perfect balance between "keep it easy enough for users to get started, with clear visual distinction to aid them"

I think that was an extremely cluttered UI, far more than saturation the attention of a new user. But otherwise I agree that hiding everything in menus or omitting features is not the solution either.


I find Gnome has been doing quite nicely with design (despite the haters).


If FOSS culture is bad at design, then one could imagine it being beneficial to just blindly copy an existing good design


Yeah, and there's no shame in that. Better copy something good than create something terrible. However, if you can only copy, you're limited to creating copycats of commercial software. In many cases, FOSS has strengths that others lack, where design and UX can be the difference between success and failure.


Except they only copy the look, not the feel, nor the development experience.


As with code, imitate first, improve upon later seems like a reasonable approach.


Does MacOS really have that finesse they try to emulate? First thing I noticed when I started using a mac is that double clicking the Finder titlebar only expands it vertically while every other app expands both vertically and horizontally. Second thing, when I close a window and then press Cmd+tab, the icon is still there, and if I select it nothing shows up. There's more of these everyday things that work sloppy so I wonder why does the mac have that image of finesse when I don't really see it.


> double clicking the Finder titlebar only expands it vertically while every other app expands both vertically and horizontally

For me it fits-to-content both vertically and horizontally. I just tested in both list- and icon-view. Mac OS 12.

> When I close a window and then press Cmd+tab, the icon is still there

This is because the Mac UI application/document conceptual model, which has been consistent since at least the 1980s. An application is either open or not. If you have multiple documents open, they are open within a single instance of the application. You can also have zero documents open. The application doesn't quit automatically when you close the last document.

Other operating systems flatten these two concepts into one, such that each new document appears as a new instance of the application.

I'm not suggesting one is better than the other. Just that I don't consider this a lack-of-finesse since it's been my mental model for 25+ years.

I'm also not disagreeing with your overall point. I can think of plenty of inconsistencies and lack-of-finesse in modern Mac OS UI, to be sure!


Just a note, if you are in the context of a particular application command+`/~ will cycle you through the applications windows.


It's not "sloppy" it is just a different approach.

It drives me nuts on Windows that when I close FireFox the entire APPLICATION closes! I just wanted to close the window. Now when I start it again / open a new window, I have to enter my LastPass credentials. And pay the boot penalty.

IMHO, a multi-window app should not exit when I close the last window.

Linux Desktops and Windows both do this, macOS does not.


> IMHO, a multi-window app should not exit when I close the last window. Linux Desktops and Windows both do this, macOS does not.

On Linux' Firefox, this does not seem to be the case. I just confirmed by closing a window with a few dozen tabs, and my other windows were perfectly fine. Same goes for VS Code, IDEA, Ghidra, Tilix, etc. This might be Wayland-specific behavior, but closing one window does not appear to take the rest of the apps with it (unless they were a child process).


You are correct, with a subtle modification: there are a "Close Window" and "Exit Application" mode in some popular X-based windowed apps (see: VSCode). Some apps, like Eclipse, solve this by hosting the child windows in a parent container. But then you lose screen real estate.

But you always need ONE child window open or it will exit entirely.

MacOS has a different approach, where the application top level process keeps running, even if it has no windows, but this requires some sort of GUI element to communicate with application.


When you close all open firefox windows is firefox still running? On MacOS it is. On windows and Linux it isn't. It has nothing to do with "other apps"


How can you make it behave like Linux and Windows? I don't want my applications to persist when their visual presence is gone, it's disingenuous to the user.


it's disingenuous to the user

That is nonsense. It is just a different model and the model Mac users have been used to since the 80ies. When I close a window/document, I often want to another document with the same application, so why close it? If I want to close an applications, I can use Cmd-q. Moreover, their visual presence is not gone, such an application is still in the Dock and in the app switcher.

And why do I care if an application continues running? If it hasn't been used for some time, macOS compresses its pages. And inactive native applications will be put in App Nap, which freezes the application, so that it doesn't use system resources until it is activated again.


Uh oh: Haven't you ever typed "ps aux"? :)

There is a third space on mac, different from a menubar, called "dock". In the old days it was integrated into the main persistent menu bar, but was removed maybe in the early 2000's. Personally I prefer one menubar, but at least I can hide the dock.

EDIT: "dock" not "launchpad". Duh.


I'm the complete other way. First thing I did when setting up MacOS was to install RedQuits. I think it stopped working sometime after an update. I never liked my dock crowding up with things.

And with Firefox, it would make the "Restore all tabs on open" not work, since clicking X didn't close the app, and thus pressing Firefox again would just create a new empty window. For it to work, I had to not use the red button, but cmd + q or the menu bar.


Double click on the titlebar on MacOS means "expand as much as possible to fit all content". Not "maximise".

Of course, I'd argue that maximise is the intuitive thing to expect, but the behaviour is not strictly broken, just... odd.


Strictly speaking it’s just different.

The behavior is inherited from the classic Mac OS which initially predates and was developed contemporaneously with Windows. Apple assigned one behavior and Microsoft assigned another. To the extent that one is “more intuitive” it’s because your expectations as to what should happen is different, and “maximize” is a lot easier to behaviorally define, describe and program than “zoom” so GUI programmers preferred it, or knew it better because the behavior and conventions they mimicked in X window managers were taken from what Microsoft was doing at the time.

When screen resolutions are 640x480 or 800x600 or even 1024x768, maybe you just want maximize all the time; but maximize is an anti-feature to me on anything bigger.


That's where window snapping comes into play. Maximize + Snapping is a much better system that "a hundred arbitrarily sized and arbitrarily overlapping windows". It's very much the opposite of finesse.


I disagree, but I respect your opinion. Overlapping arranged windows is exactly what I’ve become accustomed to and like using. Side-by-side or “snapped” windows are not my cup of tea.


Agreed.


> […] double-clicking the Finder titlebar only expands it vertically […]

This behavior is called “Zoom”, and it’s defined per-application by that application. You could change that system-wide to minimize.

> […] when I close a window and then press Cmd+tab, the icon is still there, and if I select it nothing shows up.

Yes, the application hasn’t quit. You’ve only closed its last window.


> Yes, the application hasn’t quit. You’ve only closed its last window.

To further expand on this, this is also application-defined behaviour. The application can choose whether it wants to stay open or close. This is no different from Windows (e.g. closing a Spotify window will just minimize it to taskbar), it's just that Cmd+Tab by default shows all running applications, whereas Win+Tab/Alt+Tab on Windows by default shows open windows.


Unlike Windows, there's a separation of concepts between "application" and "windows" on Mac. Closing all the windows of an app doesn't imply closing the app. I actually think the Windows way is sloppy (and I came from Windows). I want that kind of granular control. So many times back in the day, I'd accidentally close all my Internet Explorer windows, and have to pay the time-cost of reopening the app from scratch. It's less annoying now with SSDs, but reopening an app is still more expensive than opening a new window for an already running process.

If I want the app closed, cmd+q / alt+f4. Repeated cmd+w / ctrl+w shouldn't also close the app (IMO).


On the contrary, leaving so many apps open can make my machine feel like it's "dragging" when I really push it, mostly because I have software open that I'm not using. Especially on Macs, where memory comes at an extreme premium, I find myself frequently frustrated by the number of applications I have open. This also happens on Windows with tray-minimized apps, but to a much lesser extent.

In either case, I find both implementations sloppy. Apple's solution is complete but redundant, and Windows' solution is simple but lacking. I have to give it to KDE and GNOME, both desktops manage to 'fix' this problem by encouraging people to minimize apps they aren't using. Your (X) icon still has the magic power to kill processes, and you get to keep your precious applications when you're done using them. Boom, no need for ultra-complex Application/Window/Form/Dialog hierarchy for the user to wrap their mind around. Simple solution to a simple problem.


I've seen this on Linux too, specifically with this VPN application https://github.com/yuezk/GlobalProtect-openconnect

Closing it via the "x" will minimize to tray and hide (which is the behavior I want, but an example nonetheless)


Windows has a similar distinction between applications that have one window per open document (SDI for Single Document Interface) and applications that have one window with tiny windows inside for each document (MDI for multiple document interference).


Your second point is by design. macOS lets apps run without windows. Hold Option while once you select the app via Cmd+tab and it’ll open a new window.


Being able to CMD+c to copy things in a terminal is one of my favorite things about programming on a Mac. Ctrl+c to copy everywhere, except the terminal (there it instead is an interrupt) is a major annoyance working in Linux


If it helps, the vast majority of linux terminal emulators support rebinding ctrl-c to copy and ctrl-v to paste. Or simply copying to clipboard on select: https://wiki.archlinux.org/title/Copying_text_from_a_termina...

The default is usually ctrl-shift-c to copy and ctrl-c to send sigint - but setting the copy command to ctrl-c will usually flip them, making sigint ctrl-shift-c.

I enable this on basically all the terminals I use. I also immediately rebind cmd to ctrl in mac, since I can't stand the RSI inducing placement of the cmd key.


Ctrl-v was SIGINT long before it was a shortcut for paste (first added in Windows 3.1). Although it can be switched now, it hasn't always been so. Of all the things that desktops (I'm not going to say Linux, as it isn't a Linux issue as it affect every system that uses KDE/GNOME and the like) designed to run on top of *nix like systems that were copied from Windows, this one really boggles my mind.


I don't use a Mac. How does one interrupt a program if Ctrl+C is bound to copy? At this point when I'm in a terminal Ctrl+C is muslce memory for interrupting a running program.


On Mac, ctr+c is not bound to copy. cmd+c is bound to copy. ctr+c will interrupt in a terminal.

On Windows, ctr+c in a terminal will interrupt a running process, or, if text is highlighted, will copy that text instead of interrupting.

It works really well, and took me a long time of doing this without issues to realize what I was actually doing.


I have used Windows all my life, and I learned this just now. No one ever told me that!


Macs have a Meta key called Command that can be dedicated to the shortcuts defined in GUI applications while leaving Ctrl free to be used by console stuff. So all the GUI copy/paste/windowing etc controls use Command key shortcuts.

The original 1984 Mac keyboard did not even have a Ctrl key, it was added to later keyboards as people wanted access to terminal applications.


Of course! Sorry, I did know this but I always forget macs have Cmd and Control


Ctrl-C is still bound to an interrupt — it’s Cmd-C (i.e. Super-C / Win-C) that is bound to copy. Most things that a regular user can think of (paste, print, select all, to name a few) that would be control mapped in user facing programs are typically mapped to the “command” key instead.


On Macs, Cmd+C to copy and Ctrl+C to interrupt in the terminal i.e. they’re different.


It isn't an annoyance for me: just select text and paste it with middle click? Why bother with ctrl+c ?


Then you can select other text to paste over.


The difference being that on linux you are for the most part free to implement the keybindings you want.

Example on Kitty, my current preferred terminal emulator this is just a few map directives away in the config:

map ctrl+c copy_to_clipboard

map ctrl+v paste_from_clipboard

map ctrl+shift+c send_text all \x03


At this point, "Consistent shortcuts" is the main "feature" keeping me on MacOS.

Cmd+, opens preferences in every app.

Cmd+[ or ] goes "back" and "forward", in every app that has those concepts

Cmd+Shift+[ or ] switches tabs, in every app that has tabs, except a handful of stupid chat apps who think they're too good for it.

Cmd+W always closes the current tab, if the app has tabs, (or current window, if the app has no tabs), and does not quit the app – that's what Cmd+Q is for.

Etc.

Also notice how PageUp / PageDn, keys that my keyboard doesn't even have, are not used for crucial shortcuts like these.

Seemingly small things, but absolutely maddening when developers don't respect the common convention, or when a common convention does not exist.

I always thought this consistency was a feature of the app ecosystem and app developer attitudes rather than the OS itself, so I'm not sure what RavynOS can do to make third party apps obey their idea of consistent shortcuts? The wiki doesn't mention anything about shortcuts despite the language on the home page.


"Consistent shortcuts" is the main "feature" keeping me on KDE.

Cmd+Shift+, opens preferences in every app.

Alt+Left or Right (or Back or Forward) goes "back" and "forward", in every app that has those concepts

Cmd+Tab or Cmd+Shift-Tab switches tabs, in every app that has tabs.

Cmd+W closes the current tab by default, if the app has tabs, (or current window, if the app has no tabs)

Cmd+Q quits the app.

Etc.

What's again so special about macOS?

One needs only to avoid GTK stuff, Electron, and Windows Software, and one gets perfectly consistent behavior.

And those behaviors can be "even" configured globally! (That's something to mention specially of course when talking to Mac users as such an advanced feature like "configurability" is notoriously missing in the Apple universe).


> One needs only to avoid GTK stuff, Electron, and Windows Software, and one gets perfectly consistent behavior.

So as long as one avoids all the inconsistencies then one gets consistent shortcuts? ;) Only using Qt apps on Linux is very hard. A lot of good apps are GTK or Electron. On macOS there is no GTK & Qt divide and Electron apps are very good at implementing macOS shortcuts. Hence you get more consistent bindings.

Also, many bindings are absent even in Qt app. For instance, on macOS you have Emacs-style bindings in every app (Ctrl+a, Ctrl+p, Ctrl+k, etc.). Those are very useful. You can get them on Linux (at leasts in GTK apps) but it's very hacky and it conflicts with a bunch of stuff, whereas they fit right in on macOS. Cmd+Shift+/ to search all menus is also super useful and I don't think you can do that on KDE.

> And those behaviors can be "even" configured globally! (That's something to mention specially of course when talking to Mac users as such an advanced feature like "configurability" is notoriously missing in the Apple universe).

If you don't think macOS can be configured then you are mistaken. It can't be configured to the extend that KDE can that is true (some of us consider that to be a feature). But a lot is still possible. As an example, kindaVim adds vim-style keybindings to every app which is kinda cool.


> Only using Qt apps on Linux is very hard.

There are even whole distris doing that… ;-)

https://kaosx.us/

I have hardly any GTK app installed and I would not know what I'm missing. (Firefox uses GTK but it has it's own UI anyway). Electron? That's the plague of modern times. Besides VSCode (which I will switch away in a blink as soon as the alternatives are ready) I don't use any Electron peep. Also here I would not know what I'm missing.

But of course, it's only me. YMMV

> Cmd+Shift+/ to search all menus is also super useful and I don't think you can do that on KDE.

Global menu is of course integrated in KDE. You can even use it form KRunner (of course with fuzzy search).

https://libreddit.northboot.xyz/r/kde/comments/r85jcz/tip_yo...

I think the idea of using a "HUD" in KDE is actually even older than the macOS feature.

https://github.com/Zren/plasma-hud/

> If you don't think macOS can be configured then you are mistaken.

Apple products are made for the mass market. That's one of the reasons they actually follow the same philosophy as Gnome. What this means regarding options everybody knows I guess:

Options are hard to maintain and "confuse the user".

So Apple products are dumbed down even more with every release. (They even replace perfectly fine working software with "touch-ware" in the attempt to make everything more tailored to the causal users).


I'm glad you like KDE and by all means keep using it. It sounds like it's the right DE for you.

That being said, your statements about macOS sounds like they are coming from someone who's never used it and are making a fairly uninformed straw-man opinions about it. For instance, the statement "Apple products are dumbed down even more with every release" is just demonstrably false. Apple products gets more features with every release. For instance, the last macOS release got Shortcuts, Focus Modes, and Universal Control. All of which are power user features.


How do you get Firefox to respect Cmd (Meta) consistently? I find it's been half broken since Quantum.


This funny "windows key" has any use in Firefox? I didn't know.

Firefox is a mess! (On every OS I think). I'm already happy to have proper looking dialogs by now…

There is a feature request hanging around to be able to configure shortcuts in FF. Nothing happened until now. Since many many years…

That's the problem if there is no choice.

You can only use Mozilla crap, or Google spy-ware.

Imho a replacement for the whole insanity that "the web" is is long overdue. But I guess nothing will ever happen. (Except maybe if our future AI-Overlords would show mercy).


In Firefox, setting ui.key.accelKey to 91 used to work properly. Now, it doesn't on some pages.


> Cmd+Shift+/ to search all menus is also super useful and I don't think you can do that on KDE.

Not sure if this is what you're talking about, but KDE now has KCommandBar (or some name like that?), a HUD menu that can be invoked with Ctrl+Alt+I.

Though I as a KDE fan concede that the need for some GTK stuff is kinda disappointing, for me Firefox and Inkscape (can't care less about Electron stuff, though). Inkscape AppImages have turned out very handy, but alas the Firefox ones don't bundle GTK so you can't have a GTK-free system if you want to use Firefox.

Still though I don't think something as configurable as keyboard bindings are too much of a deal to promote or convince people about a DE or a OS.


Yes, KCommandBar seems to do the same thing. Cool! Thanks for sharing.


Which is true on MacOS too. Emacs doesn't care about Mac keybindings. Even worse, the MacOS "Emacs keybindings" for things like text fields aren't totally consistent with actual Emacs. Oh and Emacs was until super recently bundled into the OS too so even out of the box it wasn't totally consistent.

I'm sure there's other programs on MacOS that don't follow the global key bindings.


I switch between linux, windows and mac on a daily basis. Mac short cuts are far more consistent.

Now, copy and paste. It is cmd-c in mac, in ubuntu you can’t tell me unless I tell you if I am in a terminal or not.

But most of all, readline shortcuts ctrl-a goes to the beginning of a line in nearly ever mac app. Not so in linux.


I find Mac less consistent, especially around home/end key behavior. In some places, home goes to the start of a page, in others, the start of a line. In addition, the key combinations and gui behavior are annoying. Ever try to cmd+tab to a minimized window? You have to do finger gymnastics to add an extra key to get that window to open. Other than the cli, I've seen little benefit in using a Mac vs. a decent PC with just about any Linux distro or Windows.


Since you mention GTK, I assume that must be the root of my problem – I keep trying Ubuntu and some other GNOME distros, haven't tried KDE. Ubuntu was definitely a mess when it comes to consistent shortcuts when I last tried it (a couple years ago).


Yes, the lacking usability of GTK (3 and later) apps is the root of all problems with GTK desktops.

But the issues aren't Linux specific of course.

KDE is by now one of the most lightweight¹, stable, and usable desktops by far.

And KDE is completely configurable regarding look&feel. You can make it by now even look and behave like any other desktop with one click using global "themes" (the feature switches more than the theme; that's why I've put the term in quotes).

https://store.kde.org/browse?cat=121&ord=rating

¹ KDE beats mostly everything in this point, except maybe raw WMs and LXQt. Yes, it's more lightweight than say the GTK3 based Xfce by now… The "magic" lies to one part in Qt that gets optimized for embedded applications now for many years, and all the work in optimizing KDE itself after it got bad rep one and half decade ago for being bloated (which was indeed true back than; but they learned the lesson; only the internet FUD never dies).


Cmd+` to switch windows within an app.

For those more familiar with Windows and probably most Linux conventions, Home/End won’t behave how you want but they move to the start/end of a scrollable view (which IMO is more useful).

In most any app ^a will be your Home equivalent and ^e will be your End equivalent. If that sounds weird or weirdly familiar… a subset of emacs key bindings are built in for basically all native macOS text inputs. If you get weird and hook up a full keyboard to iOS devices, works pretty much the same!

(I personally use ^t quite a lot because I accidentally rtanspose letters while typing all too frequently)


Woah, I love this thread. I didn't know about the tab or preference shortcuts. And I used ^A and ^E in terminal but didn't know it worked in other apps. Are these all documented somewhere?


Besides the documentation linked by sibling comment, I believe you can also still customize them per user in ~/Library/KeyBindings/DefaultKeyBinding.dict, and reference the system defaults in /System/Library/KeyBindings/DefaultKeyBinding.dict.



I'm less impressed by MacOS shortcuts than you are.

Out of the box, several short-cuts conflicts.

Moreover, on non-US keyboards, many MacOS shortcuts are simply not reachable.


The non-US keyboard thing is frankly ridiculous, on my layout I cannot even switch between windows of an app... Quelle finesse!


Some of the offenders surprisingly include newer Apple apps like Books. Some of the commands are not included with shortcuts. Seems like they weren't thinking too much about desktop users when they ported it from iOS.


On a similar note, it's pretty damn handy that just about every text box in macOS implements readline keyboard shortcuts.

Also, having ctrl and cmd be separate keys is a godsend. No, I don't want to kill the running app, I want to copy some text.


For me it's word erase (Ctrl-W). CUA was a mistake, and ‘desktop Linux’ slavishly imitating Windows was a mistake.


Really what I want is to define my shortcuts globally somewhere like github and just have every machine/piece of software I ever use refer to that.


For the tabs Ctrl+tab/Ctrl+shift+tab is the standard on Windows and Linux, so i can see how some apps can forget about macOS' specialness.


Speaking of this specialness... having the main system shortcut modifier – Cmd – physically located under both your thumbs is priceless.

In contrast, the Ctrl keys are usually located such that they're best accessed with your pinkies. Who thought that making people use their weakest fingers for the most common shortcuts is a good idea?

Could you remap your keys to have Ctrl keys under the thumbs in Windows / Linux? Yes, but then:

1) It will become hard to use Ctrl-based text navigation shortcuts (such as Ctrl+left to navigate one word left) with one hand, and

2) Ctrl+Tab will now use the same physical keys as Alt+Tab used to, and your brain will never heal from this (at least mine refuses to).


It's also worth considering changing your keyboard itself. I use a Pinky4 and have all the modifiers easily reachable by thumb. Backspace and space as well. There is a gap of no keys in the corners that means the furthest left thumb key on the left half is still as far right as alt/command on traditional keyboards.


> 1) It will become hard to use Ctrl-based text navigation shortcuts (such as Ctrl+left to navigate one word left) with one hand

Why would it be any different than on macOS?

> 2) Ctrl+Tab will now use the same physical keys as Alt+Tab used to, and your brain will never heal from this (at least mine refuses to).

So why not switch this also? Where's the problem?

At least on Linux there are no issues. It's mostly clicking one checkbox, and changing "Alt-Tab" to "Ctrl-Tab".


> Why would it be any different than on macOS?

Because in MacOS those arrow-based text shortcuts are Alt-based, not Ctrl-based, and right Alt is already located right next to the arrow keys where it's most convenient for those particular shortcuts. It does not need any remapping since in MacOS the Alt key is not used for most other system shortcuts, unlike the Ctrl key on Windows/Linux.

> At least on Linux there are no issues. It's mostly clicking one checkbox, and changing "Alt-Tab" to "Ctrl-Tab".

Been there tried that, on Ubuntu, last attempt a couple years ago. Does not work, many apps have Ctrl+tab hard coded to switch between their tabs, so if you make Ctrl+tab the system shortcut for switching apps, you can't switch tabs in those hardcoding apps anymore.


> Because in MacOS those arrow-based text shortcuts are Alt-based, not Ctrl-based, and right Alt is already located right next to the arrow keys where it's most convenient for those particular shortcuts.

Where's the problem to tick a checkbox and change that?

> Been there tried that, on Ubuntu, last attempt a couple years ago. Does not work, many apps have Ctrl+tab hard coded to switch between their tabs, so if you make Ctrl+tab the system shortcut for switching apps, you can't switch tabs in those hardcoding apps anymore.

Once again, that are GTK problems.

Just avoid GTK (v3 and later) and Electron and there are no usability issues. Simple as that. But I'm repeating myself.


> Where's the problem to tick a checkbox and change that?

What checkbox do you mean? (I understood the one about ctrl+tab, but not this one)

I'll give KDE a shot next time, but I think some apps I use heavily are actually GTK apps (such as Firefox), we'll see how it goes.


> What checkbox do you mean? (I understood the one about ctrl+tab, but not this one)

Maybe I'm confused, but I have an right Ctrl and a right Alt. Both keys are left to the arrow keys. I thought you wanted to switch around also those two keys. That would be ticking a checkbox in the keyboard config afik.

> I'll give KDE a shot next time, but I think some apps I use heavily are actually GTK apps (such as Firefox), we'll see how it goes.

I also use Firefox. It uses GTK. But this makes no difference as Firefox does its own thing anyway. It uses GTK only under the hood.

The two most annoying things with Firefox are solvable: You can use custom.css to switch around the OK / Cancel buttons in dialogs (thankfully they don't use "real" GTK dialogs but some XUL, otherwise you would need to patch the GTK libs) and one can have proper file-dialogs by now through the desktop-portal interface. So Firefox remains its own thing but at least the GTK parts don't creep up anymore.

Oh, and global menu does not work in FF (even it works for "normal" GTK apps). Also they still didn't manage to make keyboard shortcuts configurable. But that are FF issues on any desktop or OS…


> Maybe I'm confused, but I have an right Ctrl and a right Alt. Both keys are left to the arrow keys. I thought you wanted to switch around also those two keys. That would be ticking a checkbox in the keyboard config afik.

Same layout here. I want the key that's used for arrow-based text navigation shortcuts (Alt on MacOS, Ctrl elsewhere) to be physically the rightmost key, right next to the arrow keys, then I can press it with my index finger and press the arrow with another finger. Otherwise, if that key is farther from the arrow keys, I find it hard to press those shortcuts. At the same time, I want the key that's used for most system shortcuts such as Ctrl+N / Cmd+N to be under my right thumb because it's the strongest and otherwise underused finger.

So, on non-MacOS systems I end up wanting right Ctrl to be in two different places at once, since those systems use Ctrl for both types of shortcuts mentioned above. So unless I have a big enough keyboard to have two *right* Ctrl keys on my keyboard, I can't just remap the keys to solve this.

Whereas on MacOS it's fine as-is because it uses Alt for arrow-based and Cmd for other system shortcuts respectively, and those keys are already where I want them to be.

Anyways, this is getting too much about me, I doubt it's interesting to anyone. Cheers.


Maybe I'm the only one, but I remapped Cmd to Ctrl. After a lifetime of Windows and Linux using Ctrl as the main modifier key, this made things much easier for me. Having it be pinkie based has never been an issue. At least not for me. Others will vary, of course.


Have you tried mapping Ctrl to your CapsLock key? Pressed without any combination - Esc, with some other key(s) - Ctrl. It is under pinky, but in a very comfortable position, just like Enter.


I use Karabiner-Elements to remap right option to right control. Apple should have made this key a control key IMO.


re: “priceless”, i mean i agree and set alt to ctrl for the same vibe on linux and windows

but otoh ppl have strong opinions for the exact same reasons (hand/finger dexterity) by assigning ctrl to caps lock

less weird-pinky/hand-rotation does feel like a win, though


Consistency????

"[" on AZERTY french keyboard requires to type Option+Shift+5

"]" on AZERTY french keyboard requires to type Option+Shift+)

I can't even imagine how the equivalent of Cmd+[ could be a "shortcut".


The big one for me is that Cmd+C and Cmd+V do the exact same thing in Terminal as they do everywhere else, unlike with terminal emulators under Linux. Copy and paste are too ingrained from decades of Mac/Win use to fight against muscle memory for that one exception.


The one thing keeping me on MacOS is that it is "*nix that works". I have never found Ubuntu / Linux to be as stable; worrying about updates breaking things, updates indeed breaking things, drivers randomly stopping working, googling in desperation for half-baked fixes online, randomly trying different options in some dotfile until stuff works etc. Mac just works; maybe there are features that Linux would give me, but as I spend my time between the terminal and the browser, I'm not sure I'd notice much.

I think I'm not alone in this approach; I wonder if this project has the change to be as rock-solid as Apple's offerings. If not, I'm guessing it's not for me.


I agree but the *nix part became less and less significant. Bundled Unix tools are ancient. Compiling your own kernel is almost an anathema (it is possible but you will have nonstop hurdles, you will lose a lot of features and you will have to fight the security system too many times to remain sane).

Even the UI conventions that let you use the keyboard instead of the mouse are now often broken by Apple itself (it impacts power users more than impaired people since accessibility features are still good).

And no containers - those require you to run a different kernel on a VM.

Frankly I feel that macOS went back to being like Mac OS 9 in a lot of aspects - it's just enormously bigger and has a proper foundation but the UI is again mouse centric and proprietary and the system is more tightly coupled than ever with the hardware


I don't know what is the last time you used linux but lately there is great improvements in user experience. I know non-techie people using Linux Mint/ubuntu without any hassels.


I'm writing this from my Ubuntu desktop (LTE). Just a few months ago some update broke everything (graphics). Then somehow I fixed it, but it broke again on restart. It took best part of a week for me to fix.

You might say it wasn't the best distribution for reliability, or that graphics with NVidia are always an issue etc. but the fact remains that, for me, for an OS to "just work out of the box", MacOS is much better.

[I'm also not a Linux n00b, been using it for over a decade, though not an expert for sure]


So basically you played with fire(nvidia) and got burned.

There is one way to run nvidia stuff on Linux and have a decent experience: run a distro that actually support and has partnership with nvidia, which mean a distro like Redhat Enterprise Linux. It has long term support too.

It is the same with Apple or windows if you start using shitty drivers from a shady brand you will run into issues at some point.


Well, that's one way to look at it: you need to carefully pick your distro, make sure it's compatible with your hardware, and so on.

My way is rather: I don't want to even pollute my brain cache with that. I want a Computer with an Operating System that Just Work. Because for me tinkering with the setup of my desktop is not fun, the fun bit is what I do with a properly working computer. I'll pay a premium to Apple for that (though, mind you, MBP is competitively priced with similarly-performant laptops), and I'd pay that same premium to a laptop+Linux provider.

Except... my confidence in the latter working well is lower. Because apart from fixing broken graphics drivers, I've also had to, in my days, debug:

- package managers that somehow got themselves into a bad state

- fight with linkers when trying to build fairly benign stuff on my desktop

- don't even mention printing

and many other things I don't even remember anymore.


>- don't even mention printing

Sounds strange because both Linux and MacOS share the same Cups software for printing. AFAIK Cups main developpers are employed by Apple.

I haven't run into any hiccups these last 15 years. Everytime I was in the market for a printer I just verified it was supported well on openprinting.org. On my current printer I just needed to install one rpm.

Compare that to all the crappy software that was installed on my gf windows 10 laptop, involving a reboot, annoying popups telling you about ink level on every print and an app loading up at startup to stay in systray.

I like to mention that I used for 18 years a scanner on linux and bsd perfectly while it was out of support in Mac and windows since 2001. It wasn't even a device that would have used very old connectors impossible to find on modern hardware. It was using USB! In that particular case I don't think that Mac really accounts for what you'd call a "Just Work" experience.


I've had more luck printing from Linux than any other operating system, funnily enough. It just seems to work, no 3GB of driver software or manual browsing for INF files required. The UI is a bit clunky when you want to configure advanced settings but it's no worse than your average HP driver in my opinion.

My experiments with macOS actually had the same problems you list, though I haven't tried printing more than once. MacOS comes with ancient Unix tools and you end up downloading half a Linux install over Brew when you try to compile stuff, and now you have added an external package manager you need to deal with to as system that doesn't really support one.

Mg experience with package managers is that if you ignore the warnings (adding --force to overrule errors, adding external repositories that replace system libraries or aren't maintained, mess with config files to override same defaults, mix package managers (apt+global pip = hell)) you won't see them break themselves. I've broken Windows installs by messing with my system in similar ways, though there never seems to be a solution when this happens other than a reinstall. Trouble mostly comes from outdated, misguided guides found on Google that'll ignore any best practices for your opersting system and set things up Their Way, turning your install into a ticking time bomb when the writers have long had to reinstall their operating system without ever updating their guides.

All operating systems I've tried are bad in their own way. Windows worked great until 8 came out. MacOS works well enough if you don't mind Apple's control/decisions/limitations and accept the risk of buying a faulty device that the company will deny all the way up to class lawsuit settlements. Linux works well if you're lucky with your hardware. The BSDs work well if you don't plan on doing all that many things the OS isn't equipped to do out of the box and if you don't have any weird hardware.


>Well, that's one way to look at it: you need to carefully pick your distro, make sure it's compatible with your hardware, and so on. > >My way is rather: I don't want to even pollute my brain cache with that. I

That is exactly what you did by choosing Apple.

If you go on the redhat website and choose certified system you can pick your hardware from any vendor the same way you choose your Apple machine on the Apple store.


nvidia is the bane of my Linux desktop as well but "just don't buy the most popular, compatible, best bang-for-the-buck GPU" isn't really advice that'll help anyone. I'd love for developers and researchers to stop using CUDA but the problem lies upstream. When the hardware and drivers work well enough on Windows the root cause may be that nvidia is a terrible vendor but that doesn't improve the user experience in any way.

With partial open sourcing efforts I predict that the nvidia situation will improve a lot the coming years, luckily. Until then, don't blame people who try Linux for nvidia's problems; there is no user friendly guide to find what hardware is supported how well for Linux and its kernel updates.

Furthermore, even supported drivers are a mess sometimes. There was a bug in the Linux kernel for months where the kernel would freeze up less than a second after boot if you had an Intel GPU and were using a second screen through DisplayPort. My laptop didn't have audio on anything but a beta driver package when I bought it. Ubuntu and friends simply couldn't use modern Intel graphics with multiple displays or hardware acceleration because the drivers were never backported to an LTS supported kernel. One in five times, my Manjaro install kernel panics on boot when switching from text mode to graphics mode, with no obvious way to debug; I was advised to get two USB to serial port adapters to debug the issue which would likely help, but I don't want to bother to be honest.

The world of Linux is full of driver issues, mostly graphics and sometimes audio, that are impossible to even debug without a second computer and a few years of Linux experience. Many common peripherals lack any kind of Linux support as well. The "shitty drivers" come from every brand on every product range and the only guaranteed method to work with you at stuff you'll find is to never ever upgrade your install once you get everything working.

I want Linux to be better for everyone, but overlooking its obvious flaws and blaming users won't get that done.


I'm the de facto IT support for my family and neighbours. They are using Pop OS for about 3 years now. It has been great from both their UX and my maintenance perspective.

My father even did the 20.10 to 21.04 LTS upgrade himself! I highly doubt if windows would've been as smooth an experience.

(Macs are out of question for us since none of us are rich!)


Windows upgrades go so smoothly they've been repackaged as updates. They're also highly fault resistant by default with automated rollbacks out of the box.

I'm not saying Pop is bad, but Windows upgrades are super easy and user friendly (if you ignore the privacy risks that come with using Windows). I wish common Linux distros would pack something like system restore by default already! I know these tools (based on BTRFS/ZFS snapshots) exist and work great, but they need to be set up manually and most people won't.


Interesting - my experience has actually been the exact opposite. I always hesitate to update my Mac OS machine as it will inevitably break or misbehave, whereas I rarely run into issues upgrading my Ubuntu machine.


Crazy how much experiences vary… been riding the wave of macOS updates for years, always running the latest and breakage is rare, temporary, third party in nature, and is usually a result of the dev of the app in question not moving off of some deprecated API despite warnings that it would be getting removed in the near future.


In my experience, even betas are generally well-behaved. My MBA is only a "personal" machine, but none of the beta bugs I've encountered in either Monterey or Ventura have been debilitating. Standard OS updates have been virtually unnoticeable for me.


I hear a lot of people saying that. What I find out mostly is their last experience of linux on a desktop dates back to the early 2000 and or crappy distros like ubuntu.


What distro works more reliably than ubuntu?


Literally every one, including Fedora, openSUSE (both Leap and Tumbleweed), Debian, Linux Mint, Manjaro, Void, Arch and Gentoo with their respective derivatives.

Ubuntu is a mess that introduces config-breaking changes every release and rides the already existing market. If Canonical tried to release their products nowadays without their track record and existing user base, they would never succeed.

The peak Linux experience for a Just Werx focused end user is probably openSUSE Tumbleweed on KDE or XFCE. Batteries included, fast and extremely hard to break package manager, YaST2 configuration manager, and lots of user repositories.


Definitely not my experience. I install an Ubuntu LTS release and I get 5 years of support with updates that never break anything. No doubt people have issues, but I've never encountered a problem during a security update that was not caused by my own previous mucking around. Rolling releases, on the other hand, are a nightmare for this, and smaller distros never work out of the box in my experience.

If you're saying upgrading between releases causes problems.. well that's true but not how I read the original statement, and not something I particularly care about. Each release is a different product and there's no reason to update until support is dropped on the one you're currently using.


Linux was my main desktop OS for about a decade. About four years of that on Gentoo, so yes, I do actually know what I'm doing, didn't just pointy-clicky install to an Ubuntu desktop and never learn how to actually use or configure it. I dropped Linux around 2012 for macOS (OSX, at the time) after I was forced to use that at work and, after about a month of getting used to it, realized what I'd been missing.

I try desktop Linux again every year or two[0]. It's always just as bad as it's always been. Way more application crashes than I'm used to on macOS, jankiness galore, all the stuff I used to avoid doing out of habit because it often breaks things on Linux (and to some extent also on Windows) but am now used to doing because it's fine on macOS is still often a bad on Linux (e.g. drag-n-drop actions). Lots of little annoyances like the default US English keyboard layout being crap for no reason on most distros, which, sure, I can change it, but why not have a good default? Still nothing as good as Preview on any platform other than macOS, AFAIK, which hurts quite a bit.

I think there was about a two-year high point in the late '00s when Ubuntu was just curating good defaults and smoothing things out and the future looked really bright, then Ubuntu rapidly deteriorated and it's back to how it had been before then, now, just shinier because of all the mostly-mediocre-or-bad GUI changes in the major DEs since then.

My next attempt, I'll probably just shoot for the holy grail of FreeBSD on the desktop. Linux seems like a lost cause at this point. May not be any better but a lot about it sure is way saner than Linux-land, so, worth a shot. Great on servers, certainly. Not expecting much because it's mostly the same as Linux in the GUI department, though.

[0] Last time: Ubuntu and Fedora (I don't like rpm-based distros, but thought I'd give them another shot), plus tried Void for the first time which was pretty great actually but I just don't enjoy fiddling with configs anymore so, it's a no for me.


NixOS - it either works and you have a new generation, or it doesn't work and you keep the same state. If the new generation has some problems, you can switch to the previous one via a single command or select the previous one from the GRUB menu when booting.


I am confused. Domain and headline and frontpage says RayvnOS but by the screen shots it says airyxOS?


They rebranded due to legal reasons - https://twitter.com/ravynsoft/status/1520779114336071680


[flagged]


You do realize that Netflix uses FreeBSD, right? That a good chunk of NAS builds, diy or not, use FreeBSD? That high performance network solutions often use FreeBSD because of what is commonly seen as a better/more mature network stack?

Having a smaller user base than the world's most used kernel (Linux) doesn't mean it has a small user base in absolute terms. And being a smaller kernel in lines of code is certainly a positive thing.

This pattern repeats, with OS's smaller than FreeBSD having good reason to be chosen in production.

Fun fact: Apple used NetBSD on their Airport product series.


I'm not sure you should plainly compare FreeBSD on a limited choice of Hardware doing server things with "a general purpose GUI desktop OS".

OP didn't say FreeBSD was bad in my reading, but as a somewhat irregular user you just notice 1000 papercuts (which are not the OS's fault per se for the most part) but which detract from the overall experience. Every nth software package you use for the first time needs a (small, 3-line) patch which is mostly because the people develop on Linux. Sometimes it's better if they develop on OSX, sometimes it doesn't matter.


OP was bashing FreeBSD as having no userbase, comparing it to a hobby project with no known bugs because it has no users to find them.

FreeBSD isn't run on a limited choice of hardware.


Not to mention the PlayStation 4 OS as well - not a small number of installs there.


The OS on every Sony game console since the PlayStation 3 is forked from FreeBSD as well


From Wikipedia:

> Today, FreeBSD is used by many IT companies such as IBM, Nokia, Juniper Networks, and NetApp to build their products.[16][17] Certain parts of Apple's Mac OS X operating system are based on FreeBSD.[18] Both the PlayStation 3 and Nintendo Switch operating system also borrow certain components from FreeBSD,[7][8] while the PlayStation 4 operating system is derived from FreeBSD 9.[19] Netflix,[20] WhatsApp,[21] and FlightAware[22] are also examples of large, successful and heavily network-oriented companies which are running FreeBSD.


As that quote clearly puts out, it is mostly cherry picked components, and not a proper FreeBSD distribution.


Juniper gear runs JunOS that's almost pure FreeBSD, with added device drivers for their hardware and a CLI layer on top.


The next version of JunOS, JunOS evolved, is moving to Linux though.


Like every Android or embedded linux?


Linux is only a kernel, unlike FreeBSD which is a whole OS.


I was talking about Gnu/Linux and you know it.

And hint, that's why the playstation etc has "just" parts of FreeBSD....they don't need tar and llvm in it.

Your comment makes no sense in that regard.


Software that everybody uses can be affected by terrible bugs - Heartbleed couldn't have happened otherwise - so what is the magic level of usage needed to avoid bugs and be stable?


Yes.. but FreeBSD is used by a lot of people! It’s used on a lot of servers. Netflix’ CDN for example runs FreeBSD.


And FreeNAS/TrueNAS probably the most used selfmade NAS.


Enough of those half-assed attempts at an "OS".

Either use Windows with WSL2, or Debian, or FreeBSD with some GUI, or MacOS.

Regardless of what OS you use - you will be using a Browser, Terminal, File Manager and VS Code/Rider/Visual Studio, emacs/vim. GASP

Enough of this distro hopping - it is the moder-day procrastination.


This distro will implement Cocoa and a Mach-O ELF loader...


Lawsuit from apple incoming in 3 ... 2 ...


Hmm, looking at the screenshots and comparing with my current Gnome on Wayland, the latter is way more beautiful and with better utility.


This is a great idea, but I think they'd be better off aiming for Linux.

One of the main benefits of macOS is perfect hardware support. Linux has a definite edge on all other free software kernels here.

I hope they succeed, regardless of technical decisions.


> One of the main benefits of macOS is perfect hardware support.

Insofar as you have perfect support for the very small subset of hardware that computers running macOS can have. I'm sure you could get similarly perfect hardware support on Linux by being careful about which hardware you run it on.


Nobody did this for Linux on the small subset of Apple-branded macOS-capable x64 machines before, much to my chagrin.

I donated to marcan in the hopes that someone now will.

There should be a free software OS installer that is as easy to use and supports as much hardware with full functionality as the Apple OS installer. Apple has already done the heavy lifting of a well defined hardware target.


Their target is existing MacOS users. Thats a BSD derived kernel and OS API and the model is quite different. Making a Linux kernel look right, is a path ?Gentoo? took some time ago, and I am unsure you can call it an unqualified success.

"does it run homebrew" is my lead question


> "does it run homebrew" is my lead question

Or even better, a better package manager that isn't slow as hell and understands semver.


Heh. Or even “Xpm install ___” doesn’t mean I want to update thousands of unrelated packages I’ve installed directly or transitively. Regardless of their semver compatibilities.

Edit for people using macOS: if you want to install one thing without waiting to update unfold numbers of other things, hilariously Cakebrew (a GUI frontend for homebrew) will let you do that with homebrew as the package manager.


You can also set the HOMEBREW_NO_INSTALL_UPGRADE environment variable to avoid upgrades.


It will also break stuff for you. Homebrew doesn’t have versioned dependencies, so I had, for example, my nodejs broken for me when libicu got updated from 69 to 70 without also updating nodejs. Homebrew index doesn’t take such things into account at all.


Existing macOS users have Apple hardware. Does FreeBSD support recent x64 Apple gear well? Last I looked even Linux had less than perfect support.

The situation is even more Linux-centric on Mx.


There is a huge community who port MacOS onto Intel architecture laptops with special set-aside hacks on the Apple .ISO files.

I think, thats the target. not 'run it on my mac' but 'be like a mac, running on my Lenovo PC, which already supports FreeBSD well[*]'

[*] does not always work well with blob demanding devices == 802.11/GPU


I looks worthless to me.

If you’re doing this kind of things, you’d better be producing and selling your reference laptop/desktop computer too.

Otherwise all I expect from seeing the FreeBSD logo is 2005-ish hardware support nightmares (thanks but no thanks, I’m not a teenager anymore).


Looks like lots of efforts to recreate the crappy MacOS X UI and user experience. I mean it was fine and less a mess than windows has ever been but it barely evolved since Nextstep in term of UI paradigm and feels dated nowadays.

The interesting part in Apple products is mostly the hardware.


Not everyone feels this way about macOS.


My UI experience is very limited (Windows and Linux only, I currently use XFCE4). What do you consider to be the best UI(s) currently offered (in an operating system)?


I feel gnome3 is a much better/faster/ergonomic. It works great regardless if you are a keyboard, mouse or touchscreen heavy user.

My only gripe is I wish firefox would integrate it better instead with an UI similar to (now defunct?) Eolie web browser.

Also I haven't spend enough time with it recently but I think kde plasma has the flexibility to be probably as good as gnome. I just don't like the default settings and have always been too lazy to dig deep into it. I used to love kde3.


>Gnome3

When people way gnome3 do they really mean gnome3 or gnome3..gnome43?

I really like Gnome 42 and improvement that can be seen in 43, but I didn't like gnome3 at all


The earlier versions weren't as polished as what we have right now and it felt like we were missing features that were working fine on the latest gnome 2 release but this is all in the past. It happened in 2011.

Ironically the same happened in the kde world a few years before. I had been a very happy user of kde 3.x and kde 4.x happened to be a crashy pos and it only really got better with kde5.


Unironically gnome 38 for me, I'm on 41 and it seems a bit buggier


The killer feature I saw in the last years was the HUD in that custom desktop environment Ubuntu had for a while before going back to gnome.

The ability to just type and search through all menu items saved me so much time!


You probably mean the Unity desktop, which now seems to be maintained separately from what I can tell: https://ubuntuunity.org/

While I think that your take on Apple UI/UX not being good is rather contrarian (given that many quote them as some of the best in the industry), I agree that using Ubuntu with Unity was actually a reasonably pleasant experience, at least in the later years when they had addressed most of the quirks that the earlier versions struggled with.

Then again, I'm the kind of person who is also served perfectly well by something as simple as XFCE or LXQt, so maybe I'm a bit biased and my standards aren't the highest. Yet, I really appreciate a UI that's functional and feels snappy.


That's highly subjective point of view. I've used windows since high school (about 4-5y) until Win7, then Ubuntu for 7 more years, after that Mac. Switch was always hard, but now I would never go to neither Win nor Ubuntu. Mac's UI is so superior in my opinion - for my work and productivity, that I would never switch back. People often talk bad about some Mac UI stuff like they are "bad" because they are "different" than people are used to on Win or some imaginative "this is how it is supposed to be" stance, and I get puzzled because those are precisely features I like and I want.


Particularly the "simple installs" graphic on that page. Who wants to, using a mouse cursor, after opening an installer "shortcut", click and drag an icon onto some other icon, presumably representing a shortcut to an "app" folder, simply in order to install a program? What is that even supposed to represent, anyway? Big step backwards for package management.


I generally really dislike when companies make comparisons like this. They pick a market leader, and imply their v1 is just as good. It never is.

The Google of X The Apple of Y The Amazon of Z

It's almost always hype and it's annoying. It's as if they think they deserve credit for the intent, or the goal, rather than the actual product.


This is a dead end. FreeBSD, lmao. Why not choose Linux, which supports way more hardware and features. Not promising for the general quality of decision making.


FreeBSD is a modern performant OS with broad hardware support. I don't know what feature you had in mind, but FreeBSD comes with kqueue and has largely the same core utils as MacOS, which isn't a lot but why not take the free wins you can get? Not to mention that if they manage to pull this moonshot off, porting the resulting work to Linux would be utterly trivial in comparison. So ingrained Linux fanboys don't have to worry, if this becomes a thing, they'll get in on it.


Those Linux fanboy's always remind me of the song from NOFX "The Idiots Are Taking Over" -> Opensource ;)


That seems like a lot of work. If what you want is to be able to run MacOS X apps on a free (like in free speech) environment, there's https://www.darlinghq.org/ which is like Wine but for MacOs X apps.

If what you want is to replicate the MacOS X UI you can customize the UI of your DE on Linux, or use something like ElementaryOS or use Pantheon.

What are the goals of this project?


I find this gtk application theme and shell theme to go even further than elementary. The developer releases all sorts of themes with insane quality. You can even tweak them to suit your preference such as sidebar width and compact header size

https://github.com/vinceliuice/WhiteSur-gtk-theme


Cool. What kind of GUI apps work ? The FAQ doesn't say much except basic.

Could we use Mac compatible apps in place of windows ones if Linux isn't available? Games? Productivity?


From their GitHub page[0]: "Please note that most GUI applications will not run at the moment."

[0] https://github.com/darlinghq/darling


I admit that I haven't personally used Darling but it would be rather pointless if it only worked for commander line apps. All command line apps I use on MacOs X are from homebrew and are available in Linux so for me it only makes sense for GUI apps. Also, I never really missed a MacOs X specific app when I use Linux, most apps I use are multi platform anyway, and the rare one that is not, it usually has a decent equivalent for Linux.


The problem with all these things is that they only visually look like macOS. Once you try to use them, you find that nothing works as it is supposed to. Drag and drop is severely limited, programs don't share a common set of norms, or if they do, it's not the one you're used to. The hardware itself that you need to run it in is horrible in comparison (especially touchpads). Finally there's always the tremendous numbers of sharp edges shared by any of these types of OSes that will ruin the rest of your day as you try to figure out how to get past whatever the problem is so you can get on with what you were originally trying to do at the beginning of your day.

Stop chasing the look of MacOS. Replicate it's functionality and feel first.


You obviously did not even look at this project because that's exactly what they're aiming at.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: