AOSC-OS builds of Pale Moon use wrong configuration.
#1558
Closed
opened 5 years ago by wolfbeast
·
24 comments
No Branch/Tag Specified
master
release
theme-hidpi
27.9_RelBranch
27.8_RelBranch
27.7_RelBranch
27.6_RelBranch
27.5_RelBranch
27.4_RelBranch
27.3_RelBranch
27.2_RelBranch
27.1_RelBranch
27.0_RelBranch
26.5_Atom_RelBranch
Atom
26.5_RelBranch
v26_Dev
v25-LTS
26.4_Atom_RelBranch
26.4_RelBranch
26.3_Atom_RelBranch
26.3_RelBranch
26.2_Atom_RelBranch
26.2_RelBranch
26.1_Atom_RelBranch
26.1_RelBranch
26.0_Atom_RelBranch
26.0_RelBranch
25.8_Atom_Relbranch
25.8_RelBranch
v25_Atom
v25_Dev
25.7_Atom_Relbranch
25.7_RelBranch
25.6_Atom_RelBranch
25.6_RelBranch
25.5_Atom_RelBranch
25.5_RelBranch
25.4_Atom_RelBranch
25.4_RelBranch
25.3_RelBranch
25.3_Atom_RelBranch
25.2_Atom_RelBranch
25.2_RelBranch
25.1_RelBranch
25.1_Atom_RelBranch
25.0_Atom_RelBranch
25.0_RelBranch
24.7_RelBranch
24.6_RelBranch
32.2.0_Release
32.2.0_RC1
32.1.1_Release
32.1.1_RC1
32.1.0_Release
32.1.0_RC2
32.1.0_RC1
32.1.0_beta3
32.1.0_beta2
32.1.0_beta1
32.0.1_Release
32.0.0_Release
31.4.2_Release
31.4.2_RC1
31.4.1.1_Release
31.4.1_Release
31.4.1_RC1
31.4.0_Release
31.4.0_RC2
31.4.0_RC1
31.3.1_Release
31.3.1_RC1
31.3.0.1_Release
31.3.0_Release
31.3.0_RC2
31.3.0_RC1
31.2.0.1_Release
31.2.0_Release
31.2.0_RC1
31.1.1_Release
31.1.0_Release_build2
RB_20220607_2
RB_20220607
31.1.0_Release
31.1.0_RC1
31.0.0_Release
RB_20220510
31.0.0_RC2
RC_20220507
31.0.0_RC1
29.4.6_Release
RB_29.4.6
29.4.6_RC1
29.4.5.1_Release-UXP
RC_20220409
29.4.5_Release-UXP
29.4.4_Release-UXP
29.4.3_Release-UXP
29.4.2.1_Release-UXP
29.4.2_Release-UXP
29.4.1_Release-UXP
RB_29.4.5-UXP
RB_29.4.5.1-UXP
RELBASE_20220127-UXP
RELBASE_20220118-UXP
RELBASE_20211214-UXP
RELBASE_20211110-UXP
RELBASE_20211109-UXP
RELBASE_20210914-UXP
29.4.5.1_Release
29.4.5_Release
30.0.1_Release
30.0.0_Release
30.0.0_RC4
30.0.0_RC3
30.0.0_RC2
30.0.0_RC1
29.4.4_Release
29.4.4_RC1
29.4.3_Release
29.4.3_RC1
29.4.2.1_Release
29.4.2_Release
29.4.2_RC1
29.4.1_Release
RELBASE_20210823
29.4.0.2_Release
29.4.0.1_Release
29.4.0_Release
RELBASE_20210817
29.4.0_RC2
RC_20210815
29.4.0_RC1
RC_20210813
29.3.0_Release
RELBASE_20210719
RC_20210715
RELBASE_20210608
29.2.1_Release
29.2.1_RC1
RC_20210604
29.2.0_Release
RELBASE_20210427
29.2.0_RC2
29.2.0_RC1
RC_20210421
29.1.1_Release
RELBASE_20210330
29.1.1_RC1
RC_20210326
29.1.0_Release
RELBASE_20210302
29.1.0_RC2
RC_20210226
29.1.0_RC1
RC_20210225
RELBASE_20210205
29.0.1_Release
RELBASE_20210202
29.0.0_Release
RC_20210130
29.0.0_RC2
RC_20210128
29.0.0_RC1
RELBASE_20201218
28.17.0_RC2
RC_20201216
28.17.0_RC1
RC_20201215
RELBASE_20201124
28.16.0_Release
RELBASE_20201120
28.16.0_RC1
RC_20201120
28.15.0_Release
RELBASE_20201024
28.15.0_RC1
RC_20201024
RELBASE_20201001
28.14.2_Release
RELBASE_20200930
28.14.1_Release
RELBASE_20200929
28.14.0_Release
28.14.0_RC2
28.14.0_RC1
RC_20200924
RELBASE_20200901
28.13.0_Release
RELBASE_20200831
28.12.0_Release
RELBASE_20200730
28.11.0_Release
RELBASE_20200712
RELBASE_20200711
28.10.0_Release
RELBASE_20200603
28.9.3_Release
RELBASE_20200506
28.9.2_Release
RELBASE_20200427
RELBASE_20200426
28.9.1_Release
RELBASE_20200408
RELBASE_20200324
28.9.0.2_Release
28.9.0.1_Release
28.9.0_Release
PM28.8.4_Release
v2020.02.18
PM28.8.3_Release
v2020.02.06
PM28.8.2.1_Release
PM28.8.2_Release
v2020.01.12
PM28.8.1_Release
PM28.8.0_Release
v2019.10.31
PM28.7.2_Release
v2019.09.12
PM28.7.1_Release
v2019.09.03
PM28.7.0_Release
PM28.6.1_Release
PM28.6.0.1_Release
PM28.6.0_Release
v2019.06.08
PM28.5.2_Release
PM28.5.1_Release
PM28.5.0_Release
PM28.4.1_Release
v2019.03.27
v2019.03.08
PM28.4.0_Release
v2019.02.11
PM28.3.1_Release
PM28.3.0_Release
v2018.12.18
PM28.2.2_Release
PM28.2.1_Release
PM28.2.0_Release
v2018.11.07
v2018.11.04
v2018.09.27
PM28.1.0_Release
v2018.09.05
PM28.0.1_Release
PM28.0.0.1_Release
PM28.0.0_Release
PM28.0.0_Build1
PM28.0.0b5_Unstable
PM28.0.0b4_Unstable
v2018.07.18
27.9.4_Release
PM28.0.0b3_Unstable
PM28.0.0b2_Unstable
PM28.0.0b1_Unstable
27.9.3_Release
PM28.0.0a4_Unstable
NSS_3.35_TEST
PM28.0.0a3_Unstable
v2018.06.01
PM28.0.0a2_Unstable
27.9.2_Release
27.9.1_Release
27.9.0_Release
27.8.3_Release
27.8.2_Release
27.8.1_Release
27.8.0_Release
Checkpoint_1
FullFunction_CP1
FF_Checkpoint_1
27.7.2_Release
27.7.1_Release
27.7.0_Release
27.6.2_Release
27.6.1_Release
27.6.0_Release
27.6.0-RC1
27.5.1_Release
27.5.0_Release
27.4.2_Release
27.4.1_Release
27.4.0_Release
27.3.0_Release
27.2.1_Release
27.2.0_Release
27.1.2_Release
27.1.1_Release
27.1.0b2
27.0.3_Release
27.0.2_Release
27.0.1_Release
27.0.0_Release
27.0.0b3r2
27.0.0b3
27.0.0b2
27.0.0b1
26.5.0_Release_Atom
26.5.0_Release
26.4.1_Release
26.4.1_Release_Atom
26.4.0.1_Release_Linux
26.4.0.1_Release_Atom_Linux
25.9.5_Release_Android
26.4.0_Release_Atom
26.4.0_Release
26.3.3_Release_Atom
26.3.3_Release
26.3.2_Release_Atom
26.3.2_Release
26.3.1_Release_Atom
26.3.1_Release
25.9.3_Release_Android
26.3.0_Release_Atom
26.3.0_Release
25.9.2_Release_Android
26.2.2_Release_Atom
26.2.2_Release
26.2.2_RC1
25.9.1_Release_Android
26.2.1_Release_Atom
26.2.1_Release
26.2.0_Release_Atom
26.2.0_Release
26.2.0_RC2
26.2.0_RC3
26.2.0_RC1
25.9_Release_Android
26.1.1_Release_Atom
26.1.1_Release
26.1.0_Release_Atom
26.1.0_Release
26.1.0b1
26.0.3_Release_Atom
26.0.3_Release
26.0.2_Release_Atom
26.0.2_Release
26.0.1_Release
26.0.1_Release_Atom
26.0.0_Release_Atom
26.0.0_Release
25.8.1_Release_Android
25.8.1_Release_Atom
25.8.1_Release
25.8.0_Release_Android
25.8.0_Release_Atom
25.8.0_Release
25.8.0_beta1
Goanna-publicbeta-3
Goanna-publicbeta-2
25.7.3.1_Release_Android
25.7.3_Release_Android
25.7.3_Release
25.7.3_Release_Atom
25.7.2_Release_Android
25.7.2_Release_Atom
25.7.2_Release
25.7.1_Release_Android
25.7.1_Release_Atom
25.7.1_Release
25.7.0_Release_Atom
25.7.0_Release
Goanna-publicbeta-1
25.6.0_Release_Atom
25.6.0_Release
25.6.0_beta2
25.6.0_beta1
25.5.0_Release_Atom
PM4XP64_25.5.0_RELEASE
PM4XP32_25.5.0_RELEASE
25.5.0_Release
25.5.0_beta1
PM4XP32_25.4.1_RELEASE
PM4XP64_25.4.1_RELEASE
PM4XP64_25.4.0_RELEASE
PM4XP32_25.4.0_RELEASE
25.4.1_Release_Atom
25.4.1_Release
PM4XP32_25.3.2_RELEASE
25.4.0_Release_Atom
25.4.0_Release
25.4.0_beta3
25.3.2_Release_Atom
25.3.2_Release
25.4.0_beta2
PM4XP64_25.3.1_RELEASE
PM4XP32_25.3.1_RELEASE
25.3.1_Release_Atom
25.3.1_Release
PM4XP32_25.3.0_RELEASE
PM4XP64_25.3.0_RELEASE
25.3.0_Release
25.3.0_Release_Atom
25.3.0_beta4
25.3.0_beta3
25.1.1_Release
25.3.0_beta2
PM4XP64_25.2.1_RELEASE
PM4XP32_25.2.1_RELEASE
25.3.0_beta1
25.2.1_Release_Atom
25.2.1_Release
SUMOZI_25.2.0_MERGE
PM4XP64_25.2.0_RELEASE
PM4XP32_25.2.0_RELEASE
25.2.0_Release_Atom
25.2.0_Release
25.2.0_RC2
25.2.0_beta3
25.2.0_beta2
25.2.0_beta1
25.1.1_Release-Android
25.0_Release
PM4XP32_25.1.0_RELEASE
PM4XP64_25.1.0_RELEASE
SUMOZI_25.1.0_MERGE
25.1.0_Release_Atom
25.1.0_Release
25.1.0_beta3
25.1.0_beta2
SUMOZI_25.0.2_MERGE
SUMOZI_25.0.1_MERGE
SUMOZI_25.0.0_MERGE
PM4XP64_25.0.2_RELEASE
PM4XP64_25.0.1_RELEASE
PM4XP32_25.0.2_RELEASE
PM4XP32_25.0.1_RELEASE
25.0.2_Release_Atom
25.0.2_Release
25.0.1_Release
25.0.1_Release_Atom
PM4XP32_25.0.0_RELEASE
PM4XP64_25.0.0_RELEASE
25.0.0_Release_Atom
PM4XP64_25.0.0_PRERELEASE
PM4XP32_25.0.0_PRERELEASE
25.0.0_Release
25.0.0_beta3
PM4XP64_24.7.2_RELEASE
SUMOZI_24.7.2_RELEASE
24.7.2_Release
24.7.1_Release
25.0.0_beta2
25.0.0_beta1
Milestone_25
PM4XP64_24.7.1_RELEASE
SUMOZI_24.7.1_RELEASE
SUMOZI_24.7.0_RELEASE
PM4XP64_24.7.0_RELEASE
24.7.0_Release_Android
24.7.0_Release
24.7.0_Release_build1
24.7.0_RC1
24.7.0_beta4
GUID_working_base
24.7.0_beta3
24.7.0_beta2
24.6.2-r2_Release
24.6.2_Release
24.6.1_Release
24.6.0_Release
24.6.0_RC_Build1
24.6.0_beta5
24.5.1_beta4
27.1.0_Release
28.17.0_Release
Labels
Clear labels
Good issue for contributors new to the project
Bookmarks/History
Site-Specific User Agent Overrides
Tab handling and switching
Apply labels
Assigned
Backed Out
Bounty
Bounty Paid
Browser-Parity
Bug
Build Bustage
Build System
Code Cleanup
Crash
Critical
Devtools
Documentation
Duplicate
Enhancement
Extensions
Fixed
Good first issue
Good issue for contributors new to the project
Help Wanted
High Risk Patch
Images
Incomplete
Invalid
Leave Open
Legal
Locale
Media
More Info Needed
Mozregression Wanted
On Hold
OS: Linux
OS: Mac OS X
OS: Other
OS: Windows
Performance
Places
Bookmarks/History
Plugins
Privacy
Question
Redirected to forum
Regression
Release Engineering
Security
SSUAO
Site-Specific User Agent Overrides
String changes
Sync
Tabbed browsing
Tab handling and switching
Theme changes
Theme/UI
Unconfirmed
Uplift Wanted
Verification Needed
Verified
Wontfix
Works For Me
No Label
Assigned
Backed Out
Bounty
Bounty Paid
Browser-Parity
Bug
Build Bustage
Build System
Code Cleanup
Crash
Critical
Devtools
Documentation
Duplicate
Enhancement
Extensions
Fixed
Good first issue
Help Wanted
High Risk Patch
Images
Incomplete
Invalid
Leave Open
Legal
Locale
Media
More Info Needed
Mozregression Wanted
On Hold
OS: Linux
OS: Mac OS X
OS: Other
OS: Windows
Performance
Places
Plugins
Privacy
Question
Redirected to forum
Regression
Release Engineering
Security
SSUAO
String changes
Sync
Tabbed browsing
Theme changes
Theme/UI
Unconfirmed
Uplift Wanted
Verification Needed
Verified
Wontfix
Works For Me
Milestone
Set milestone
Clear milestone
No items
No Milestone
Assignees
Assign users
Clear assignees
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
No due date set.
Dependencies
No dependencies set.
Reference: MoonchildProductions/Pale-Moon#1558
Reference in New Issue
There is no content yet.
Delete Branch '%!s(<nil>)'
Deleting a branch is permanent. It CANNOT be undone. Continue?
No
Yes
The AOSC-OS builds use official branding and a not-sane mozconfig for it, as well as changing preferences unnecessary for producing a build, including a setup to allow package-bundled extensions (unknown if anything is actually bundled at this time).
See https://github.com/AOSC-Dev/aosc-os-abbs/tree/staging/extra-web/palemoon/autobuild
@MingcongBai This is a critical issue in violation of the redist/official branding license. please work with us to resolve ASAP.
Main issues:
--with-system-*
librariesFor points 1-4 I could work with you, and I could say I'm 90% willing to comply with your 5th point. As a multilingual Linux Distribution, it works against our design to require manual intervention to change application language settings.
To be fair, it's you guys' rule here so I have no intention on breaking them. However, I do want to sound my disagreement with this incredibly strict rule to limit what a packager could choose to do to redistribute such binaries. While I understand that certain vendor rules - like the last two we have, could be risky - I should argue that bundling of dependencies would have worked against packaging guidelines of most Linux distributions anyways, I guess that's a reason to the lacking of distribution packaging.
No offence, just my two cents here. I'll get the rest changed right away, however, the line regarding intl.locale.matchOS I do refuse to change - if you choose to keep pressing on that, I would just drop the package.
Also, could you clarify what you mean by "sane" Jemalloc configuration? For the meanwhile I'll take it as it is and remove it.
To add onto all that, do you want us to remove "Distribution ID" and all compiler flag configuration? We ourselves have a binary hardening standard, which we do not bypass unless the binary would fail to build with these flags.
Am I free do disable anything here? For example, it is common practice to encourage users to update via our package manager, not yours.
I guess I'll wait for your response on these questions, with your logic it seems like every line in the currrent .mozconfig could be problematic - you see, if you could do an audit line-by-line it would help - or just start to help with the situation...
We are currently talking about dropping the package in question, as many of us feel quite strongly against bundling libraries (as you may have stability concerns, we have it too, just on a different direction). Palemoon currently serves as a sole option of a usable browser on our PowerPC big-endian architectures, so me personally wouldn't want it to happen. I would suggest that you guys (while I work on complying with your rules) reconsider your license as it really sounded quite reasonable at this point...
Not to mention Mozilla who recently lifted similar restrictions on distribution packaging and redistribution - see Debian, Fedora, Ubuntu, etc. You don't see vanilla builds with fully bundled libraries there, do you? Alas, at the end of the day, you guys are not Mozilla.
While I'm personally thankful that you guys made such a great browser, the community developers and myself couldn't feel the same for your licensing restrictions.
Many of those configure options have been flipped around and defaults are changed from what Firefox or what we used years ago..
In general you should stick as CLOSE as possible to our official mozconfig:
http://developer.palemoon.org/Developer_Guide:Build_Instructions/Pale_Moon/Linux#head:Mozconfig_Files
Okay that helps, but it also seemed quite ambiguous regarding what you mean by "as close as possible", exactly how far could we deviate from it without being called out like this again?
Alright sir, @wolfbeast
2e9573f6c8
Here's what I have in mind so far - reasonable enough?Mozconfig looks good except please define what these variables actually are:
ac_add_options --enable-optimize="${CPPFLAGS} ${CFLAGS}"
Please refer to here as these compiler flags are assembled from the configuration scripts here: https://github.com/AOSC-Dev/autobuild3/tree/master/arch.
Can you please give me the assembled variables for your targets please? Some may not be sane..
It varies between architectures, that's why it's a set of scripts, not a file with defined and static flags... But yes I could assemble one for AMD64 if you are interested...
Here you go. Here's a rudimentary Autobuild configuration to build a dummy package, where the "prepare" script, running before the "build" script, prints out a series of flags as defined internally. The "defines" file defines package name "foo", version "0", section "foo", description "Foo for Palemoon", as seen below:
And here's the build output, with the flags you requested...
You're welcome.
Have you simply tried to build it the conventional way as a test? All this package producing noise doesn't tell us anything because we do not use any of this.
Well you did ask for a flag reproduction didn't you... But yes, I did. And as indicated in the issue I referenced to this issue, the problem could be with Glibc.
The intl line is actually not a big problem, although it does make behavior of the browser different than what we release. It may also interfere with people who want to install a different language than the OS -- but I'm willing to let that go as long as you make sure to clearly mention that any app interface language issues are your responsibility to solve or answer questions about.
The other two prefs are more of a problem because it disables a security measure to have extensions be slipped in by third parties or a packager without user confirmation (which would go right against your "hardening" approach?).
Also, normally, you don't want to add CFLAGS and CXXFLAGS to
--enable-optimize
; the configure of the build system should pick up existing CFLAGS exports and use those as a base.All right, I'll do a revision on our flags. However, the build still fails at the moment.
Also do you want me to remove all Palemoon binaries from our repositories since none of them complied to your licensing requirements?
Please remove officially-branded binaries that don't comply, yes. I'd prefer not having them float around unnecessarily.
Can i safely assume all concerns have been addressed?
I have just removed the packages, however please allow for several days until all our mirrors were sync'd. As for the build, we are currently in the middle of dealing with Spectre - we'll get back to it.
How are things going with Spectre? What's the status of the mirrors and/or build? Anything to report?
I have just made another build, having updated Glibc to the "HEAD" of the 2.26 branch, and with GCC rebuilt against the new Glibc. I'm getting a different error now, however it seems to be related to LTO - trying another build with LTO disabled now.
Build does pass with a disabled LTO... However, failed at the last stage:
I'll probably try and perform a build with disabled startup cache generation.
But yes, it seems like the bug lies in Glibc - and that issue in question is resolved with a HEAD build.
Startup cache generation is fragile -- it works on some distributions but not others, and it's still unclear exactly why. The only drawback is that the first start of the browser after installation or upgrade is slow, but once it's run once, performance is normal.
Considering this closed; thanks for working through this to be compliant! 👍