ravynos
ravynos copied to clipboard
Also check out WinObjC
https://github.com/microsoft/WinObjC by no one else but Microsoft (for the purpose of porting iOS apps to Windows) implements a lot of Frameworks and is BSD licensed.
Possibly something useful there, too?
It's not particularly actively maintained anymore (which is sad), but it is using the same runtime as this project and is MIT licensed. A lot of the code is clean ObjC++.
I did look at it but wasn't sure if there were significant advantages vs Cocotron which I had already ported/extended on FreeBSD. Neither are particularly active. Airyx's runtime already pulls in a few bits from other Cocoa implementations so I'm not opposed to a "mix and match" approach where it makes sense, or would it be advantageous to rebase entirely onto the MS code?
The MS code is at least newer, in two ways: It is designed to support newer Apple APIs and it's written in a more modern style. When I evaluated Cocotron for Etoile many years ago, there were a few things that made me quite nervous.
The main disadvantage of WinObjC is that it implemented UIKit, not AppKit (though it began live supporting multiple platforms and so uses some cross-platform libraries rather than anything Windows native). As AppKit and UIKit continue to converge, this might not be such a problem.
@Dhowett can tell you more about WinObjC if he's awake.
By the way, I'm the author of the Objective-C runtime you're using. Please ping me if you have any problem - I do most of my development on FreeBSD, so that shouldn't cause any problems.
@mszoek @DavidChisnall Speaking of Etoile there is something very visually appealing that makes it look different and sleek even nowadays. It just screams enterprise beauty in my eyes. Do you think such kind of appearance could be achieved in Plasma? Has anyone ported GNUStep themes to Plasma ?
http://etoileos.com/etoile/ https://github.com/BertrandDekoninck/NarcissusRik https://github.com/BertrandDekoninck/NesedahRik https://github.com/BertrandDekoninck/Sombre https://github.com/AlessandroSangiuliano/rik.theme
We put a lot of effort into the design of the Nesedah theme to make sure that it had the right affordances. For example, everything in Nesedah that the user can interact with has a gradient, everything that is purely decorative is flat, and everything is consistent and sized for good visibility and interaction.
Naricssus was designed by the same person who did Nesedah, though without the same usability review (he named it because it was his personal make-something-pretty project).
You can see the evolution of Nesedah on Jesse's page. He did some absolutely fantastic work for us.
We struggled a bit with the GNUstep theme engine, and in particular with the fact that macOS and GNUstep disagreed on some sizes of things (Nesedah favoured the macOS sizes) and OpenStep hard-coded sizes of everything in .nib files so porting was not always easy. Some of the things in Nesedah (and Aqua) need to render slightly outside of what GNUstep things is the boundary of the cell that it's currently displaying (for example, see the tick in the checkbox in Concept 23 below).
.
A lot of the other artwork that Jesse did for us is also still online: https://jesseross.com/clients/etoile/
It's absolutely stunning stuff. I wish it could at least be ported as is in modern world. The same way I miss the good old Keramik theme from KDE 3. Desktop environments are so unified nowadays that they are all boring...