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.
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.
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).
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.
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.
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.
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.)
> 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.
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!
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
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
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.
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.
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.
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.
> 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
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.
[+] [-] adastra22|3 years ago|reply
I wonder though, why start with old Objective-C cocoa APIs instead of Swift?
[+] [-] grishka|3 years ago|reply
[+] [-] kitsunesoba|3 years ago|reply
[+] [-] cxr|3 years ago|reply
* They definitely did not start with Objective-C and a blank slate here; they're folding in monumental amounts of third-party code
[+] [-] eyelidlessness|3 years ago|reply
[+] [-] rattray|3 years ago|reply
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).
[+] [-] LeSaucy|3 years ago|reply
[+] [-] bowsamic|3 years ago|reply
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.
[+] [-] daitangio|3 years ago|reply
Last but not least HaikuOS deserves some forward look
[+] [-] weikju|3 years ago|reply
[1] https://news.ycombinator.com/item?id=28068542
[+] [-] dang|3 years ago|reply
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)
[+] [-] schleck8|3 years ago|reply
[+] [-] Nursie|3 years ago|reply
Other than that it looks interesting, a sorta-Mac-aesthetic sorta-BSD.
[+] [-] _abox|3 years ago|reply
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?
[+] [-] shortformblog|3 years ago|reply
[+] [-] numbers|3 years ago|reply
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?
[+] [-] ayushnix|3 years ago|reply
[+] [-] hbn|3 years ago|reply
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.
[+] [-] denysonique|3 years ago|reply
If you find your fonts rendered to thin compared to macOS you may try changing some of the freetype settings, such as:
[+] [-] graphenus|3 years ago|reply
[+] [-] mike_k|3 years ago|reply
Also, the hardware. (It is much harder to make it work reasonably well across so many platforms without an army of full time devs.)
[+] [-] pabs3|3 years ago|reply
https://ravynos.com/screenshots.html
[+] [-] fsw|3 years ago|reply
[+] [-] frostwarrior|3 years ago|reply
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
[+] [-] KolmogorovComp|3 years ago|reply
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!
[+] [-] Underphil|3 years ago|reply
[+] [-] pjmlp|3 years ago|reply
[+] [-] spidey1|3 years ago|reply
[1] https://hellosystem.github.io/docs/
[+] [-] Diris|3 years ago|reply
----------------
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
[+] [-] aldrich|3 years ago|reply
Nothing against FreeBSD (happy user here) so there's probably some good reasoning behind this.
[+] [-] jamil7|3 years ago|reply
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
[+] [-] gattilorenz|3 years ago|reply
[+] [-] fithisux|3 years ago|reply
[+] [-] Sakos|3 years ago|reply
[+] [-] Kayou|3 years ago|reply
[+] [-] mattnewton|3 years ago|reply
[+] [-] seabrookmx|3 years ago|reply
[+] [-] ineedtosleep|3 years ago|reply
[+] [-] stakkur|3 years ago|reply
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.
[+] [-] oleganza|3 years ago|reply
https://ravynos.com/images/airyx_0.3_installer_confirm.png
[+] [-] netr0ute|3 years ago|reply
[+] [-] pramsky|3 years ago|reply
[+] [-] amrox|3 years ago|reply
> You will need real hardware to run it.
Why doesn't it work in a VM?
[+] [-] kkielhofner|3 years ago|reply
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.
[+] [-] tailspin2019|3 years ago|reply
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.
[+] [-] GoOnThenDoTell|3 years ago|reply
Does this mean a mach emulation layer on top of or in the freebsd kernel?
[+] [-] dmix|3 years ago|reply
[+] [-] nu11ptr|3 years ago|reply
[+] [-] fourstepper|3 years ago|reply
[+] [-] bogwog|3 years ago|reply
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.