UXP Browser Bundle Release: 220206
----------------------------------------------------------------------
1. This directory tree contains source code and a Bash build script
(buildme.sh) for work-alikes to the following 8, count 'em, 8 Mozilla
programs:
* Albus Luna - Revived Classic Firefox
* Ambassador - Revived Chatzilla
* Blue Gorilla - Revived SeaMonkey
* Icedove - Revived Icedove aka Classic Thunderbird
* Iceweasel - Revived Iceweasel aka pre-Quantum Firefox
* Netscape - Revived Classic Netscape
* Interlink - Another Thunderbird fork
* Borealis - Similar to a modern Netscape
#---------------------------------------------------------------------
2. Some related notes:
2.1. These 8 programs are built on top of the UXP platform. For the
2022-02-06 bundle snapshot, a single UXP snapshot [2021-08-17] is us-
ed. For bundle snapshots dated later than 2022-02-06, more than one
UXP snapshot may be used.
2.2. For remarks related to the legality of use and distribution of
the Interlink and/or Borealis source code, see "uxp-browsers.txt" in
the source tarball.
2.3. The "Netscape" work-alike is presently just the browser component
of Blue Gorilla with modified branding. However, it should resemble
the original Netscape.
2.4. Borealis doesn't presently include the "devtools" feature. Inter-
link doesn't presently have the "calendar" extension.
#---------------------------------------------------------------------
3. Significant changes on 2022-02-06:
* Added Interlink and Borealis [Navigator]
* Updated Albus Luna to upstream Pale Moon 29.4.4 release
* Updated UXP platform to upstream 2021-08-17 formal release
* Break most links to upstream sites [intentionally]
#---------------------------------------------------------------------
4. To build this bundle, you'll need about 10.5GB or more free disk
space in the filesystem associated with "/var/tmp".
----------------------------------------------------------------------
5. The source tarball for this package was created using a shell scri-
pt with the following name:
make-browser-bundle.sh
The script is provided with this "cfg" file. It's not guaranteed to
work with newer snapshots of the components involved but it might be
useful as a starting point.
----------------------------------------------------------------------
6. License notes:
It's believed to be entirely legal and appropriate to host and distri-
bute source code for each of these programs and to build binaries
using them.
If you'd like to distribute Interlink and/or Borealis binaries, rules
related to branding may apply.
Developers and hosts should contest DMCA or similar actions related to
Interlink and/or Borealis in particular. Related historical documenta-
tion will be added here in due course.
----------------------------------------------------------------------
7. The programs built include the following work-alikes:
Classic Firefox - Albus Luna. This browser is similar to
pre-Australis Firefox.
Pre-Quantum Firefox - Iceweasel-UXP. This browser is similar
to Basilisk and the original Iceweasel.
Netscape - This browser is based on the browser
part of Blue Gorilla.
Seamonkey - Blue Gorilla. This suite is similar to
Iceape and the original Seamonkey.
Thunderbird - Icedove-UXP. This mail program is simi-
lar to Icedove and the original Thunder-
bird.
Chatzilla - Ambassador. This chat program is similar
to the original Chatzilla.
Thunderbird [again] - Another Thunderbird fork named Interlink
is built.
Seamonkey [again] - A program named Borealis [Navigator] is
built. We think that it's another fork
of Seamonkey but this remains to be con-
firmed.
----------------------------------------------------------------------
8. Credits.
Credits related to each program will be added to this document and/or
to the programs. In some cases, the credits are already present at the
program level.
To start, Icedove-UXP and Iceweasel-UXP are from the Hyperbola Pro-
ject. Blue Gorilla is a fork by another developer of Iceape-UXP from
the same project.
The UXP codebase that underlies all of the programs was created by a
small group named Moonchild Productions.
----------------------------------------------------------------------
9. "git" histories:
This directory tree isn't presently available with "git" histories.
The reason is that one of the key upstreams has deleted the bulk of
them.
----------------------------------------------------------------------
10. There are some pluses and minuses to these programs. Significant
minuses include:
* Albus Luna's built-in links for various things go to a website that
doesn't exist yet.
* The built-in links for some of the other programs go to web pages
that are outdated or no longer applicable.
* The programs come with preinstalled extensions that can't be removed
using the extensions GUI. If you don't want them, you need to delete
them from the program tree manually.
* Iceweasel (the pre-Quantum Firefox work-alike) is missing the Advan-
ced Settings tab. However, one of the most frequently used pieces on
that tab, Proxy Setup, is present on the links toolbar.
* Classic XUL extensions are supported, but you'll need to manually
patch stanzas in the associated "install.rdf" files. For more informa-
tion, see Appendix A.
* A few of the Albus Luna branding images are just text on white rec-
tangles. The images in question need work.
* The web browsers don't work with 100% of all websites. They do work
with a fair number.
----------------------------------------------------------------------
11. Pluses to these packages include:
* XUL extensions. For example, ScrapBook X, the real thing, works with
the web browsers (and is preinstalled in some cases).
* The Thunderbird aka Icedove that's included is the only realistic
Linux FOSS alternative to Rust Thunderbird that we're aware of.
In theory, Interlink is another option. The source code has just be-
come available, so we'll need to see.
Pre-Quantum actual Thunderbird, ESR releases, is approaching the point
where it can't be built.
K-9 Mail is pretty good, except for the regrettable new logo, but it
seems to be just for mobile.
* You can modify and redistribute Albus Luna.
Albus Luna is very similar to the UXP group's flagship browser but the
official branding has been replaced. Note: Notify the Albus Luna pack-
ager of any remaining pieces of the old branding that need to be re-
moved.
The license rules that apply to the flagship browser prohibit distrib-
ution of modified copies. However, Albus Luna is fine with it. Have
fun. We'd appreciate it if you'd rename modified releases or perhaps
add qualifiers such as "Avocado Edition".
Note: The rules that apply to the rest of the programs are under re-
view.
* Some of these programs support ALSA. If we understand correctly,
the latest iterations of the Mozilla programs have dropped support for
this subsystem.
* There's a single simple-to-run "build" script that builds everything
and puts it all in one directory tree.
* We think that the directory tree is portable though this needs to be
confirmed.
By "portable", we mean that it might be possible to move the directory
tree around.
It isn't completely portable in the Windows Portable Apps sense where
user profiles are stored in the same tree. However, it might be possi-
ble to add that feature.
* The Netscape provided isn't truly Netscape but it might be a rea-
sonable facsimile.
It's fun to see a browser similar to what we used over 20 years ago
back in action. It's not really able to compete with Chrome, but it
does run ScrapBook X. Web ScrapBook, for Chrome, isn't the same
thing.
If you know how to make theme sideloads work in this database or are
able to contribute other types of theme tweaks, feel free to submit
changes to make this Netscape closer to the original.
----------------------------------------------------------------------
12. It should be possible to build this package in most modern Linux
distros. Before you proceed, though, you'll need to install dependen-
cies.
We haven't assembled a full list of dependencies yet, but if you in-
stall what Chromium, LibreOffice, and Thunderbird would need (omitting
Rust), you should be in good shape.
Partial list:
gcc and g++ 9 or 10
gtk2 or gtk3 - Which to use can be selected
pulseaudio or alsa - Or you can disable sound support
"auto"-tools
autoconf-2.13
brotli
freetype2 and fontconfig
python2 and python3
cairo and pixman
pkg-config
perl5
yasm
Install development versions of dependencies where a difference ex-
ists; i.e., versions that include header files and libraries.
----------------------------------------------------------------------
13. Builds are simple. After you install dependencies, unpack the sou-
rce tarball and execute the following command in the top-level sou-
rce directory:
bash -e ./buildme.sh
On a high end box with SSD instead of HD, 32 GB of RAM, and 6x2 CPU
or better, we've observed build times of 6 programs times about 0.5
hours each or 3 hours total.
For less powerful boxes, builds have taken perhaps 2 to 3 times as
long.
----------------------------------------------------------------------
14. As a positive note, system "nss" and "nspr" don't seem to be re-
quired. However, we found that we needed to patch an ".m4" file to
make builds without system "nspr" work. The patch is still under re-
view and isn't guaranteed to be correct.
----------------------------------------------------------------------
15. The programs can be built in different ways:
(a) In a "lite" mode that uses Gtk2 and skips features such as
"dbus" and sound
(b) In a regular mode that uses Gtk3 and supports the extra fea-
tures
(c) Or in-between
The different modes can be selected using environment variables as
follows:
export SKIP_DBUS=true # Skip "dbus" - Default is to use it
export SKIP_LDAP=true # Skip "ldap" - Default is to use it
export SKIP_SOUND=true # Skip "sound" - Default is to use it
export USE_GTK2=true # Use Gtk2 - Default is to use Gtk3
# ...
bash -e ./buildme.sh
Or you can do this:
export LITEBUILD=true
# ...
bash -e ./buildme.sh
The preceding mode sets all of the "SKIP_" settings to true and "USE_
GTK2" as well.
----------------------------------------------------------------------
16. By default, the build script installs these programs to the fol-
lowing directories:
$HOME/browsers/albusluna
$HOME/browsers/ambassador
$HOME/browsers/bluegorilla
$HOME/browsers/borealis
$HOME/browsers/icedove
$HOME/browsers/iceweasel
$HOME/browsers/interlink
$HOME/browsers/netscape
The common directory, i+.e., "$HOME/browsers", can be changed using an
environment variable as follows:
export PREFIX=/opt/browsers
# ...
bash -e ./buildme.shk
If necessary, the specified common directory will be created. Warning:
Existing browser subdirectories will be deleted and then recreated.
----------------------------------------------------------------------
17. Each of the programs has a separate "bin" directory located in the
program's own directory tree.
For your convenience, an extra "bin" directory is created in the com-
mon directory which contains symlinks to each of the programs. For ex-
ample, the following configuration results in a "bin" directory with
the full path "/opt/browsers/bin":
export PREFIX=/opt/browsers
# ...
bash -e ./buildme.me
In this example, add "/opt/browsers/bin" to PATH and you're good to
go.
If you don't want the extra "bin" directory, you can use an environ-
ment variable named "ADD_BINDIR" as follows to disable it:
export PREFIX=/opt/browsers
export ADD_BINDIR=false
# ...
bash -e ./buildme.me
----------------------------------------------------------------------
18. To specify the number of parallel jobs to run during a build, do
something like this:
export NUMJOBS=8
# ...
bash -e ./buildme.me
----------------------------------------------------------------------
Appendix A. Sample "install.rdf" stanzas.
To use classic XUL extensions with these programs, you'll need to pat-
ch the associated "install.rdf" files to use the appropriate stanzas
from this list.
{9184b6fe-4a5c-484d-8b4b-efbfccbfb514}
0
99
{8de7fcbb-c55c-4fbe-bfc5-fc555c87dbc4}
0
99
{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
0
99
{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}
0
99
----------------------------------------------------------------------
End of file.