Page 1 of 2

Why have a build specifically for OS X?

Posted: 2020-06-11, 21:29
by The Squash
As an outsider to this subject (I've never used OS X), I must say I'm puzzled as to why Pale Moon needs a separate build for OS X.

The Linux / UNIX port of Pale Moon / UXP uses GTK. At one time Qt was supported.

OS X is a UNIX-based or UNIX-like system.

GTK is cross-platform and supports OS X Quartz.

Why can't GTK be distributed with Pale Moon for OS X? Are there really that many unique features in Cocoa?

Re: Why have a build specifically for OS X?

Posted: 2020-06-11, 21:38
by mr tribute
I have used GTK applications in Windows. It doesn't look right. The same is probably true for macOS.

Re: Why have a build specifically for OS X?

Posted: 2020-06-11, 21:48
by New Tobin Paradigm
Mac users want to run mac programs and not a full gnu stack to run a browser that they already have to be fairly commited to run.

No regular user is gonna put all that shit on their computer to run a non-mainstream browser in a sub-standard environment.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 00:05
by The Squash
mr tribute wrote:
2020-06-11, 21:38
I have used GTK applications in Windows. It doesn't look right. The same is probably true for macOS.
Bummer. The OS X port was looking pretty good there for awhile... although I guess I'm about 19 years behind the curve on that...
Image
New Tobin Paradigm wrote:
2020-06-11, 21:48
Mac users want to run mac programs and not a full gnu stack to run a browser that they already have to be fairly commited to run.
Why can't GTK be included with Pale Moon, in the same way that the OpenSSL libraries are included with Pale Moon in the Linux build?

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 00:42
by Moonchild
The Squash wrote:
2020-06-12, 00:05
Why can't GTK be included with Pale Moon, in the same way that the OpenSSL libraries are included with Pale Moon in the Linux build?
You can't be serious.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 08:58
by adesh
The Squash wrote:
2020-06-11, 21:29
GTK is cross-platform and supports OS X Quartz.
Quartz: That's around a GB in size I guess.
People won't want to pull in unnecessary dependencies from another OS/system just for one program.
People would want their "apps" to look native, not GTK style.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 09:15
by Moonchild
As an aside, Darwin is closer to BSD than it is to Linux. So that alone makes a big difference. On top, there's a lot of Mac specific/exclusive code to handle the peculiarities of OS X that a generic Linux build would never have.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 12:49
by New Tobin Paradigm
Federation President wrote:Just because we can do a thing, it does not necessarily mean we must do that thing.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 13:00
by athenian200
The Squash wrote:
2020-06-12, 00:05
Why can't GTK be included with Pale Moon, in the same way that the OpenSSL libraries are included with Pale Moon in the Linux build?
GTK is too heavy a library to embed in our source tree and reasonably maintain. It would add significantly to the size of the codebase. If you were talking about FLTK or something that's actually designed to be cross-platform and embedded, then that might be a different story.

The main argument against that idea in my opinion is that the whole idea of XUL is to have a cross-platform toolkit already. Use XUL internally to describe a user interface, and then use several bindings to translate that into a platform's native widget set. Sure, you could just use a cross-platform widget set like FLTK or Qt rather than go to all that trouble (and plenty of applications do so), but the result won't look as elegant and a major project goal is maintaining the XUL platform, which already does a lot of the work of a widget toolkit set anyway. One could even argue that the whole goal behind XUL is to render the concept of a cross-platform toolkit irrelevant, since it instead provides a cross-platform way of describing user interfaces that can always be translated into the native toolkit.

A lot of the value of this is far less obvious on Unix/Linux, because on those systems there really is no such thing as a truly "native" widget set, and so you have a hodge-podge of Motif, GTK, Qt, and others, and which looks more "native" depends on whether you run KDE, GNOME, or something else. On Windows, Win32 widgets are native. On Mac, Cocoa widgets are native. On Linux... well, we treat GTK as native because it emerged as one of two or three defacto standards supported by Red Hat and other major vendors. So on Windows it looks like a Windows application, on Mac it looks like a Mac application, and on Linux it looks like a GTK application.

The thing is, users of Mac and Windows are used to all their applications having a consistent look and feel, it's only on platforms like Linux where that isn't taken for granted and people get used to more... er, variety.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 15:01
by New Tobin Paradigm
We couldn't ship with it in any event anyway. Same goes with openssl.. We don't ship with it and I believe we don't even use it as a build dep because of nss.

It is becoming more and more obvious that this The Squish doesn't know a tenth of what he professes. In and of its self that isn't a bad thing but unfortently some people tend to over compensate for lack of knowledge by trying to project they know more than they do. They may have good ideas but no basis to bring them forward including basic understanding. It is gonna be touch and go to see if he manages to actually elevate him self and his own enlightenment or if he will just pretend then eventually fade away or ragequit because some people get fed up.

Just have to wait and see where it goes, I guess.

Re: Why have a build specifically for OS X?

Posted: 2020-06-12, 18:37
by The Squash
I already said that this isn't really my domain. I wanted to know if it had been considered.

All right, I guess it's a stupid idea after all. I had a point, but it's not worth arguing over, so I'll mark this as solved anyway.

Re: Why have a build specifically for OS X?

Posted: 2020-06-13, 09:14
by KlarkKentThe3rd
OS being similar does not translate to it being identical. A port is always superior to using emulation. And this is not even the same as game emulation.

Re: Why have a build specifically for OS X?

Posted: 2020-06-13, 17:53
by New Tobin Paradigm
What is there to solve. Except maybe ignorance.

Re: Why have a build specifically for OS X?

Posted: 2020-06-13, 22:20
by Goodydino
adesh wrote:
2020-06-12, 08:58
Quartz: That's around a GB in size I guess.
People won't want to pull in unnecessary dependencies from another OS/system just for one program.
People would want their "apps" to look native, not GTK style.
What is this obsession with apps looking native, anyway? Why must all the application windows look alike? I am using third-party themes (and in some cases modified to change the colours) because I do not want my browsers to look like every other application.

Re: Why have a build specifically for OS X?

Posted: 2020-06-13, 22:29
by Moonchild
It's not an obsession; it's called "consistency"
Now I know that has been chipped away at by a lot of "apps" being all "webby" lately and not sticking to this basic concept (often defaulting to something "Sort of" Windows 10 like, which stands out like a sore thumb on Win 7 ;P) but I'd certainly not call it an "obsession"

Re: Why have a build specifically for OS X?

Posted: 2020-06-14, 02:31
by moonbat
Also it's one thing to skin your browser with themes (this being the only one left that's fully skinnable), and another altogether to ignore established desktop UI conventions for mobile touch madness, which is what we're seeing these days. Look at the difference, for example, between a classic IM application like Pidgin or Miranda NG with a slim contacts list and each chat opening in its own window versus the so called desktop versions of Whatsapp, Signal etc that are just a wrapper around a Chromium shell running a web app.

Re: Why have a build specifically for OS X?

Posted: 2020-06-14, 18:22
by HarmonicResonance
Goodydino wrote:
2020-06-13, 22:20
adesh wrote:
2020-06-12, 08:58
Quartz: That's around a GB in size I guess.
People won't want to pull in unnecessary dependencies from another OS/system just for one program.
People would want their "apps" to look native, not GTK style.
What is this obsession with apps looking native, anyway? Why must all the application windows look alike? I am using third-party themes (and in some cases modified to change the colours) because I do not want my browsers to look like every other application.
Dude, come on. You are speaking like you don't know about the consistency that either leads to people being wildly in love with your platform or just enduring it.

Put another why, why should shortcuts be consistent between applications?

Why should buttons be placed in the same order across applications?

Why should words be used consistently across applications?

You get the idea. Please look into UX, human factors, man-machine interfaces, and so on. There's been a lot of research done on this topic and what you are suggesting people do not want and there are many good reasons behind it.

Re: Why have a build specifically for OS X?

Posted: 2020-06-14, 18:30
by The Squash
OK. Nobody's going to drop the subject, so I'm going to defend my position, or rather superposition.

I have no position on this issue; I was asking from a developer's perspective why GTK is only really used on UNIX-like systems.

It was a hypothetical question, and it has helped me understand why "cross-platform development" rarely works.

athenian200 answered my question, and thus I marked this thread as solved.

Thank you. I didn't want ad hominem battering becuase I said something blasphemous. It was hypothetical.

Re: Why have a build specifically for OS X?

Posted: 2020-06-14, 20:11
by New Tobin Paradigm
There is no issue. Also, how do you mean that cross-platform development rarely works? UXP is a cross-platform and even cross-architecture codebase and works very well indeed.

Re: Why have a build specifically for OS X?

Posted: 2020-06-14, 20:32
by The Squash
New Tobin Paradigm wrote:
2020-06-14, 20:11
Also, how do you mean that cross-platform development rarely works? UXP is a cross-platform and even cross-architecture codebase and works very well indeed.
I wrote: Present company excepted.
I'm talking about (look at the quotes) "cross-platform development" like GTK offers.

Not all cross-platform development is pointless, of course. It's just pointless when the developers don't try very hard. (Sorry, GNOME devs.)