UXP and system requirements (discussion thread)

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
User avatar
Al6bus
Lunatic
Lunatic
Posts: 288
Joined: 2015-08-24, 14:55
Location: Lemberg

UXP and system requirements (discussion thread)

Unread post by Al6bus » 2017-05-28, 15:51

Moonchild wrote:Windows: an up-to-date version of Windows 7, 8, 8.1 or 10. The platform will not support Windows XP or Vista.
Considering Vista is past end-of-life, it's unwise to still target this O.S. with a new platform.
On this logic, less than 3 years will be dropped support for Windows 7. I understand it correctly? If so, it's very sad...
I can understand the decision about windows vista, with its share in the market <-1%, but really, the same fate will befall windows 7, only because of the Hindu marketing strategy, despite the huge audience of "the new windows xp?" :(
Attachments
Screenshot-2016-01-12-at-14.47.10-1200x567.png
Windows 7 Pro x64 - Pale Moon x64
We hope for multiprocessing

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35474
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: UXP and system requirements (discussion thread)

Unread post by Moonchild » 2017-05-28, 16:41

Jumping to conclusions seems to be one of your strong points XD

Please read carefully. Supporting an O.S. that has no lifetime overlap with what is being developed is not a smart thing to do.
That has nothing to do with support for an O.S. that has 3 years of lifetime overlap with the platform (and in all respects has much less of a technological gap with continued support O.S.es coming after it). The decisions for support boundaries are made based on our situation of today. Not last year, not 2020.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

yakorav

Re: UXP and system requirements (discussion thread)

Unread post by yakorav » 2017-05-28, 20:34

I don't understand the use of the term "Unified XUL Platform".
What exactly is being unified? Why is XUL so prominent when it's just one of the many components of the platform?

UXP is functionally equivalent to the Mozilla Application Framework (aka "Mozilla platform"), correct?

OmegaPhil

Re: UXP and system requirements (discussion thread)

Unread post by OmegaPhil » 2017-07-05, 10:17

'GTK2 has been deprecated in general in Linux and targeting that generation of the engine would prevent XUL applications from using modern desktop features'

GTK2 is superior to GTK3 for me (faster, better/saner themes, much better file picker etc, this is on uncomposited XFCE4 for reference) - what are 'modern desktop features', does that mean Wayland, or are there other things missing?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35474
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: UXP and system requirements (discussion thread)

Unread post by Moonchild » 2017-07-05, 12:12

Yeah, "uncomposited desktop" is not exactly a modern way of doing things. Desktop composition has been around for a decade.
I don't want to get into a discussion "which is better" because that is simply not constructive at all.

As it turns out though, it seems that GTK2 code is perfectly viable as a target in the platform code (I was initially thinking it wasn't) so it will be very possible to build either GTK2 and GTK3 XUL applications on it in that case by passing the appropriate build parameters. This also means that Pale Moon can potentially remain GTK2 if we switch over to UXP with it.

No definite statements at this point but it looks like this is possible.

That does bring me to something else, though: with the Linux world clearly being so divided among themselves about essential desktop technology, it'll become harder to provide universal binaries by us because the OS range lacks coherence. This means that Linux will have to take over distro-specific builds of applications to make sure they cater specifically to the requirements of their distros. This will need some organization on the Linux maintainers' parts, since official branding rules will remain applicable and whomever builds binaries for redistribution must do so in cooperation with us to ensure at least acceptable levels of quality.

It would help to get an overview of the Linux situation for me if someone makes an inventory of Linux distros (in case of LTS, with EoL dates). Which distro uses what (GTK 2 or 3), which distro can run the generic binaries we have now, any plans to move to GTK3, etc. -- if you have some free time on your hands (plenty of active Linux users on this forum seem to?) then it would be great if you could make an as complete/unbiased list as possible (please don't omit anything you may not agree with personally).
Once we have that, we can look at who to contact to try and organize into something coherent for the future. We'd probably need a few people involved that can cover broad segments of Linux with their release engineering, like e.g. Steven Pusser does now by covering Ubuntu variants and Debian.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

OmegaPhil

Re: UXP and system requirements (discussion thread)

Unread post by OmegaPhil » 2017-07-05, 12:47

I'm not really interested in 'modern' - I turn off all pointless decorations etc in the DE so that it can render windows quickly and efficiently as possible (that is its job for me). Composition is for special effects, and when I tested it it caused worse tearing with videos than non-composited, so I didn't go any further with that (and since TearFree has been implemented by radeon the standard non-composited desktop does great).

Glad to hear GTK2 is fine - doesn't make sense to me why it wouldn't be, as its been in use for a long time now - hence why I was interested in what 'modern' stuff it was lacking.

For the distro list, does that include testing (i.e. maintaining an installation and demonstrating GTK2 binaries work), or just a research project asking around? For reference I use Devuan Testing with various Debian testing VMs, no plans to get involved with other distros etc.

filip

Re: UXP and system requirements (discussion thread)

Unread post by filip » 2017-07-05, 14:14

Moonchild wrote:As it turns out though, it seems that GTK2 code is perfectly viable as a target in the platform code (I was initially thinking it wasn't) so it will be very possible to build either GTK2 and GTK3 XUL applications on it in that case by passing the appropriate build parameters. This also means that Pale Moon can potentially remain GTK2 if we switch over to UXP with it.

No definite statements at this point but it looks like this is possible.
Definite or not, great news indeed! :thumbup: :thumbup: :)
Moonchild wrote:... This means that Linux will have to take over distro-specific builds of applications to make sure they cater specifically to the requirements of their distros. This will need some organization on the Linux maintainers' parts, since official branding rules will remain applicable and whomever builds binaries for redistribution must do so in cooperation with us to ensure at least acceptable levels of quality.

It would help to get an overview of the Linux situation for me if someone makes an inventory of Linux distros (in case of LTS, with EoL dates). Which distro uses what (GTK 2 or 3), which distro can run the generic binaries we have now, any plans to move to GTK3, etc. -- if you have some free time on your hands (plenty of active Linux users on this forum seem to?) then it would be great if you could make an as complete/unbiased list as possible (please don't omit anything you may not agree with personally).
Once we have that, we can look at who to contact to try and organize into something coherent for the future. We'd probably need a few people involved that can cover broad segments of Linux with their release engineering, like e.g. Steven Pusser does now by covering Ubuntu variants and Debian.
In broad terms, most mainstream distributions are moving towards GTK3 wherever possible. Arch and Debian switched FF to it quite some time ago & also TB since v52...
Reality is that GTK3 is the future, so you might as well save yourself some (potential) bashing for using old tech and just go with GTK3 as default once PM/Basilisk are made on par with GTK2 ( see note bellow ).

Ofc, GTK2 won't go away soon, meaining that it will certanly remain in the repositories, and there are lots of users and distro's that prefer shiping/using apps built with it for sanity, stability, performance and various other reasons, thus keeping GTK2 optional as long as possible would be great and appreciated by many ( including myself ).

On the generic bin side I can confirm that it runs fine on:
- Arch
- Debian: Jessie/Stretch
- Salix/Slackel/Slackware: 14.2 & Current
- Ubuntu's: 16.04 and up ( 14.04 is also almost certanly fine, though I haven't tested it recently ).

-------

IMO @2vs3:

The main GTK3 downside, besides half-baked and prematured switch by MozCo & awfull file chooser, is the performance.
XUL apps are just downright slower with gtk3 ( UI lags noticeably more, during menu and icon loading especially ).

User avatar
trava90
Contributing developer
Contributing developer
Posts: 1736
Joined: 2013-05-20, 18:19
Location: Somewhere in Sector 001

Re: UXP and system requirements (discussion thread)

Unread post by trava90 » 2017-07-05, 23:26

Let me say this again:
Pale Moon is and will remain a GTK2 application for the foreseeable future (including once ported over to UXP).
UXP Platform applications (such as Basilisk) supports and will possibly target newer technologies.

As mentioned above, like it or hate it GTK3 is the future, and most applications and distros are or have already made the switch from GTK2 to GTK3. That's simply a fact. But also as mentioned above, even though this is true GTK2 won't be going anywhere for a long time yet.

Also keep in mind that we do not remove support for anything unless we have a good reason for it (such as GStreamer as an example). There is no reason for us to rip out support for GTK2.

As Moonchild mentioned, we do not have any definite statements regarding Basilisk on Linux yet, and until we do anything is subject to change.

avada
Moon lover
Moon lover
Posts: 97
Joined: 2013-11-16, 16:41
Location: Hungary

Re: UXP and system requirements (discussion thread)

Unread post by avada » 2017-08-25, 11:46

Hi!

I find it hard finding details on UXP and the browser based on it.

On the github page it's claimed that that it was forked in early 2017, but also that there'll be some "selective cherry-picking".

I wonder if stuff interesting to me including virtual tabs, APZ scrollbar+autoscroll, Bug 1054740 is considered for picking?

Will it have the Australis UI?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35474
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: UXP and system requirements (discussion thread)

Unread post by Moonchild » 2017-08-25, 12:24

avada wrote:Will it have the Australis UI?
UXP is a platform, not an application. Australis is an application UI and has nothing to do with the underlying platform code.
The first application based on (which happens to be a browser - Basilisk) will indeed have the Australis UI because we're using a Firefox fork to facilitate platform development.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

Locked