How to build Iceweasel-UXP

Discussions about the development and maturation of the Unified XUL Platform (UXP).
Warning: may contain highly-technical topics.

Moderators: trava90, satrow

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

How to build Iceweasel-UXP

Unread post by __tch » 2019-05-05, 09:56

I would like to try out Iceweasel-UXP, but for that, i have to build it first. (I would like to do that with GTK2, ALSA and NPAPI support.)

I found zero information about how to compile it, the repo's README only contains some generic informations. The same applies for the Hyperbola website.

I use Devuan 2 on AMD64. Can anyone help me out, or point me to a guide?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 23434
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E
Contact:

Re: How to build Iceweasel-UXP

Unread post by Moonchild » 2019-05-05, 11:33

The only people who can help you with that are the folks from hyperbola, since we don't exactly know the configuration they use.
They do visit this forum, but you may have to be patient for an answer.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

roytam1
Fanatic
Fanatic
Posts: 151
Joined: 2015-03-11, 07:01
Location: Hong Kong

Re: How to build Iceweasel-UXP

Unread post by roytam1 » 2019-05-05, 12:27

__tch wrote:
2019-05-05, 09:56
I would like to try out Iceweasel-UXP, but for that, i have to build it first. (I would like to do that with GTK2, ALSA and NPAPI support.)

I found zero information about how to compile it, the repo's README only contains some generic informations. The same applies for the Hyperbola website.

I use Devuan 2 on AMD64. Can anyone help me out, or point me to a guide?
you need to checkout UXP first, to for example ~/UXP
then checkout Iceweasel-UXP to ~/UXP/application/iceweasel-uxp

and then you need to put this line in your mozconfig:

Code: Select all

ac_add_options --enable-application=iceweasel-uxp
finally issue command "mach build" should do the job for you.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 23434
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E
Contact:

Re: How to build Iceweasel-UXP

Unread post by Moonchild » 2019-05-05, 12:32

You do need to also have a proper .mozconfig to build it as-intended
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-05, 16:12

Thanks to both of you. I managed to successfully compile Iceweasel-UXP by the following commands:

Code: Select all

cd /tmp
git clone https://github.com/MoonchildProductions/UXP
cd UXP/application/
git clone https://git.hyperbola.info:50100/software/iceweasel-uxp.git
cd ..
wget http://oscomp.hu/depot/iceweasel-uxp.mozconfig -O .mozconfig
./mach build
I only need to know now, how can i make a DEB package out of the result? Is that possible with checkinstall? Or, maybe i need to do something like ./mach install --install-dir=/tmp/iceweasel-uxp and then build a package there by hand?

Also on the test run, i've noticed, that in about:config the telemetry, healthstatus and crash-reporter settings are still there. All of them are disabled (with the exception of browser.tabs.crashReporting.sendReport), but i thought the aim of this fork was to remove all of these stuff in the first place. I tried ac_add_options --disable-telemetry-reporting, but the result was an error about the nonexistence of that option. Same stands for ac_add_options --disable-services-healthreport. And i did specify the disabling of the crash-reporter via ac_add_options --disable-crashreporter and it's still there and switched on. I do not understand at all. What did i do wrongly?

Also, now i just fetched the latest git versions, but can you tell me, where is the latest stable release of UXP and Iceweasel-UXP? (On the Hyperbola page, the tarball is 2.2, but the git page says, the latest is 2.4.)

yami_
Lunatic
Lunatic
Posts: 446
Joined: 2018-04-26, 11:05

Re: How to build Iceweasel-UXP

Unread post by yami_ » 2019-05-05, 17:22

AFAIK (this is about UXP):
  • Automatic packing is only available for Windows and maybe OS X.
  • Telemetry is not functional, but it is also not fully removed yet.
  • UXP revisions used to build Pale Moon are considered stable.
cat came back from Berkeley waving flags -- rob pike

User avatar
Nigaikaze
Board Warrior
Board Warrior
Posts: 1034
Joined: 2014-02-02, 22:15
Location: Chicago, IL, USA

Re: How to build Iceweasel-UXP

Unread post by Nigaikaze » 2019-05-05, 18:30

__tch wrote:
2019-05-05, 16:12
i've noticed, that in about:config the telemetry, healthstatus and crash-reporter settings are still there. All of them are disabled (with the exception of browser.tabs.crashReporting.sendReport), but i thought the aim of this fork was to remove all of these stuff in the first place
As far as UXP itself goes, keep an eye on issue #21. That's tracking the removal of the myriad telemetry components.
__tch wrote:
2019-05-05, 16:12
where is the latest stable release of UXP and Iceweasel-UXP? (On the Hyperbola page, the tarball is 2.2, but the git page says, the latest is 2.4.)
For the latest stable version of Iceweasel-UXP, you'll have to ask the Hyperbola folks.

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-05, 19:08

I see, thanks to both of you.

Now only one question remains: if i have to make a package out of the compiled stuff manually, how can i do it?

User avatar
Gaming4JC
New to the forum
New to the forum
Posts: 2
Joined: 2018-09-08, 17:10

Re: How to build Iceweasel-UXP

Unread post by Gaming4JC » 2019-05-05, 20:00

Hello,
Iceweasel-UXP application developer here. I happened to spot your post on the Pale Moon forums, but as Moonchild said if you have an issue with the application it should be directed to the application developers (Hyperbola Forum or dev mailing list). While the projects are related by the UXP engine, Iceweasel-UXP is not supported by the Pale Moon project and we try not to bog them down with support requests that can be answered by us.

After looking over the thread, it looks like you've found out how to build it properly, I would note that there are a few application specific patches applied to UXP that we ship with Hyperbola. You can find those here. It has not been ported to other distros (e.g. Debian/Devuan) at this time, and in order to package it properly you would need to consult your specific distros packaging guidelines. Our PKGBUILD files are considerably different from .deb packges and they have a different set of steps required. If this is something you would be interested in trying out feel free to open an issue on the Hyperbola Tracker. We do not currently have the man power to package the application to other platforms, but it is packaged as a binary for Hyperbola and can be built manually as you have already done.

vannilla
Lunatic
Lunatic
Posts: 441
Joined: 2018-05-05, 13:29

Re: How to build Iceweasel-UXP

Unread post by vannilla » 2019-05-05, 21:01

__tch wrote:
2019-05-05, 19:08
I see, thanks to both of you.

Now only one question remains: if i have to make a package out of the compiled stuff manually, how can i do it?
Different Linux distributions use different packaging.
As long as you don't use something like Flatpak/AppImage/Snap (i.e. place both the program and the dependencies together in a single archive, which goes against the software license), you have to search on the distribution's documentation.
For example, to create a deb archive, read https://manpages.debian.org/unstable/dp ... .5.en.html
Also be aware that you can't distribute the package you created unless you meet the licensing terms. Check the Iceweasel-UXP homepage for that.

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-06, 07:12

Gaming4JC:
Hello, thanks for the answer. I've registered to Hyperbola tracker. It's okay, if i have to do the packaging by hand, but i need the filelist i should include in the package. If i can install them via mach to a specified root directory, then the rest is not a problem.

vannilla:
I know what are packages and that their type differs per distro. I also know what is a DEB package and how to create one. My problem is, that i do not know which files i should include.
I don't care about licensing as the packages are needed for internal uses, not for distributing.

vannilla
Lunatic
Lunatic
Posts: 441
Joined: 2018-05-05, 13:29

Re: How to build Iceweasel-UXP

Unread post by vannilla » 2019-05-06, 13:54

It seems mach has a "package" command.
While you probably can't use the resulting package as-is, it's definitely a starting point, as it likely contains the necessary files.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 23434
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E
Contact:

Re: How to build Iceweasel-UXP

Unread post by Moonchild » 2019-05-06, 14:14

vannilla wrote:
2019-05-06, 13:54
It seems mach has a "package" command.
While you probably can't use the resulting package as-is, it's definitely a starting point, as it likely contains the necessary files.
Indeed. If you "mach package", the result will be an archive, the contents of which should be exactly what you need the .deb to spit out.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-06, 18:39

Hey, thanks guys, i was looking for something like this; if i have an archive with the needed files, then i can create the debian package out of it.

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-06, 19:51

Unfortunately mach package does not works.

Here is the crash log, maybe someone has an idea. (I'll report it on Hyperbola too.)

http://oscomp.hu/depot/mach_package_crash.log

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 23434
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E
Contact:

Re: How to build Iceweasel-UXP

Unread post by Moonchild » 2019-05-06, 20:09

Not sure what you're trying to build from but if it's trunk, then you're having the issue that Hyperbola hasn't updated their package manifest yet for platform changes. Try building from a release commit.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
New Tobin Paradigm
Knows the dark side
Knows the dark side
Posts: 5243
Joined: 2012-10-09, 19:37
Location: Sector 001

Re: How to build Iceweasel-UXP

Unread post by New Tobin Paradigm » 2019-05-06, 20:22

They haven't updated for the Sync Changes either. Sooo..

In any event, why is this being discussed here? We have nothing to do with Hyperbola.
Image

- Ask not what XUL can do for you. Ask what you can do with XUL! -
http://binaryoutcast.com/ | http://thereisonlyxul.org/

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-06, 20:53

Moonchild:

Thanks for the tip, now instead of

Code: Select all

git clone https://git.hyperbola.info:50100/software/iceweasel-uxp.git
i did

Code: Select all

wget https://github.com/g4jc/iceweasel-uxp/archive/v2.2.tar.gz
tar xvzf v2.2.tar.gz
rm v2.2.tar.gz
mv iceweasel-uxp-2.2 iceweasel-uxp
in the "application" directory, but unfortunately the result is the same.

New Tobin Paradigm:
I opened an issue about this in the Hyperbola tracker too, but until the Palemoon community is willing to help me in this task (and evidently they are), i'm gonna report the progress here too. I can use any help i can get. Besides if the forum moderators would think discussing the building and packaging of Iceweasel should be not allowed here, the topic would be long removed by now. So, i assume it is ok if this is being discussed here.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 23434
Joined: 2011-08-28, 17:27
Location: 58°2'16"N 14°58'31"E
Contact:

Re: How to build Iceweasel-UXP

Unread post by Moonchild » 2019-05-06, 21:07

I'm sorry but I can't provide any more guidance than the hints I provided.
To get more help with building IceWeasel-UXP, please talk to the Hyperbola folks. It's their application and they know best how to build it or how to solve your build issues.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
__tch
Moongazer
Moongazer
Posts: 9
Joined: 2019-05-05, 09:35

Re: How to build Iceweasel-UXP

Unread post by __tch » 2019-05-07, 05:47

I see. Thanks for the help so far; at least i can build Iceweasel-UXP.

Locked