Pale Moon is a free and open-source web browser licensed under the MPL-2.0 with an emphasis on customization. Its motto is "Your browser, Your way." There are official releases for Microsoft Windows , FreeBSD , macOS , and Linux .
33-447: Pale Moon originated as a fork of Firefox , but has subsequently diverged. The main differences are the user interface , add-on support, and running in single- process mode. Pale Moon retains the user interface of Firefox from versions 4 to 28 and supports legacy Firefox add-ons. Pale Moon's default user interface is the one that was used by Firefox from versions 4 to 28, known as Strata. It always runs in single process mode and uses
66-450: A source code file or a directory tree ). Each object can thereafter be modified separately and in parallel so that the objects become different. In this context the objects are called branches . The users of the version control system can branch any branch. Branches are also known as trees , streams or codelines . The originating branch is sometimes called the parent branch , the upstream branch (or simply upstream , especially if
99-448: A word processor for IBM PC compatible machines and Macintosh computers. Generally, such internal forks will concentrate on having the same look, feel, data format, and behavior between platforms so that a user familiar with one can also be productive or share documents generated on the other. This is almost always an economic decision to generate a greater market share and thus pay back the associated extra development costs created by
132-561: A branch "forks off" a version of the program. The term was in use on Usenet by 1983 for the process of creating a subgroup to move topics of discussion to. "Fork" is not known to have been used in the sense of a community schism during the origins of Lucid Emacs (now XEmacs ) (1991) or the Berkeley Software Distributions (BSDs) (1993–1994); Russ Nelson used the term "shattering" for this sort of fork in 1993, attributing it to John Gilmore . However, "fork"
165-529: A fork, with examples: Distributed revision control (DVCS) tools have popularised a less emotive use of the term "fork", blurring the distinction with "branch". With a DVCS such as Mercurial or Git , the normal way to contribute to a project, is to first create a personal branch of the repository, independent of the main repository, and later seek to have your changes integrated with it. Sites such as GitHub , Bitbucket and Launchpad provide free DVCS hosting expressly supporting independent branches, such that
198-540: A proprietary grant in the form of a Contributor License Agreement .) Examples include macOS (based on the proprietary NeXTSTEP and the open source FreeBSD ), Cedega and CrossOver (proprietary forks of Wine , though CrossOver tracks Wine and contributes considerably), EnterpriseDB (a fork of PostgreSQL , adding Oracle compatibility features ), Supported PostgreSQL with their proprietary ESM storage system, and Netezza's proprietary highly scalable derivative of PostgreSQL. Some of these vendors contribute back changes to
231-511: A rendering engine known as Goanna . The browser has its own set of extensions and supports legacy Firefox add-ons built with XUL and XPCOM , which Firefox dropped support for. NPAPI plugins are also supported. The browser's entire user interface can be customized by complete themes and lightweight themes are also available. Pale Moon's default search engine is DuckDuckGo and it uses the IP-API service instead of Google for geolocation. The browser
264-489: Is a form of schism . Grounds for forking are varying user preferences and stagnated or discontinued development of the original software. Free and open-source software is that which, by definition, may be forked from the original development team without prior permission, and without violating copyright law. However, licensed forks of proprietary software ( e.g. Unix ) also happen. The word "fork" has been used to mean "to divide in branches, go separate ways" as early as
297-432: Is another fork of Pale Moon which supports Windows XP. Fork (software development) In software engineering , a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software. The term often implies not merely a development branch , but also a split in the developer community; as such, it
330-443: Is called the "MAIN" branch. Git uses "master" by default, although GitHub and GitLab switched to "main" after the murder of George Floyd . In CVSNT , a shadow or magic branch "shadows" changes made in the upstream branch, to make it easier to maintain small changes (cvc is an open-source package building system incorporating a revision-control system for packages produced by rPath .) In distributed revision control ,
363-558: Is known to be lightweight on resource usage. Pale Moon has no telemetry or data collection. Pale Moon is built upon the Unified XUL Platform (UXP), a cross-platform, multimedia application base that was forked from Mozilla code prior to the introduction of Firefox Quantum . UXP is a fork of the Firefox 52 ESR platform that was created in 2017 due to XUL/XPCOM support being removed from the Firefox codebase. It includes
SECTION 10
#1732773180881396-418: Is sometimes made when the forked software is designed to be a drop-in replacement for the original project, e.g. MariaDB for MySQL or LibreOffice for OpenOffice.org . The BSD licenses permit forks to become proprietary software, and copyleft proponents say that commercial incentives thus make proprietisation almost inevitable. (Copyleft licenses can, however, be circumvented via dual-licensing with
429-407: Is usually meant to be the base of a project on which development progresses. If developers are working exclusively on the trunk (so called trunk-based development ), it always contains the latest cutting-edge version of the project, but therefore may also be the most unstable version. Another approach is to split a branch off the trunk, implement changes in that branch and merge the changes back into
462-431: The 14th century. In the software environment, the word evokes the fork system call, which causes a running process to split itself into two (almost) identical copies that (typically) diverge to perform different tasks. In the context of software development, "fork" was used in the sense of creating a revision control " branch " by Eric Allman as early as 1980, in the context of Source Code Control System : Creating
495-681: The Goanna layout and rendering engine, a fork of Mozilla's Gecko engine. Moonchild Productions develops UXP independently alongside Pale Moon. Windows 7 SP1 and above are supported, along with any modern Linux distribution as long as the processors support SSE2 and there is at least 1 GB of RAM. OS X Lion and above on Apple–Intel architecture and macOS Big Sur and above on Apple silicon processors are supported. FreeBSD 13.0 and above are also supported. Previously, Windows XP and Vista were supported, but are no longer supported from versions 27 and 28 onward, respectively. An Android build
528-530: The Noosphere , stated that "The most important characteristic of a fork is that it spawns competing projects that cannot later exchange code, splitting the potential developer community". He notes in the Jargon File : Forking is considered a Bad Thing—not merely because it implies a lot of wasted effort in the future, but because forks tend to be accompanied by a great deal of strife and acrimony between
561-472: The Unified XUL Platform due to upcoming changes in the Mozilla codebase. The Basilisk web browser was developed to serve as a "reference application" for development before Pale Moon switched over to using it. In 2019, hackers breached a Pale Moon archive server and infected the older installers with malware; then-current Pale Moon releases were not affected. The breach took place between April and June, and
594-462: The affected server was taken down on July 9 when it was discovered. In 2022, a change in direction for Pale Moon was announced to improve website and add-on capability. This resulted in version 30, which used the Firefox GUID to improve compatibility with legacy Firefox extensions and started increased development of UXP and Goanna. A few days later, version 30 had to be recalled due to one of
627-445: The branches are maintained by different organizations or individuals), or the backing stream . Child branches are branches that have a parent; a branch without a parent is referred to as the trunk or the mainline . The trunk is also sometimes loosely referred to as HEAD, but properly head refers not to a branch, but to the most recent commit on a given branch, and both the trunk and each named branch has its own head. The trunk
660-469: The codebase, for example, fixes for bugs, new features , and versions integration . These changes may be later merged (resynchronized) after testing. A development branch or development tree of a piece of software is a version that is under development , and has not yet been officially released . In the open source community, the notion of release is typically metaphorical, since anyone can usually check out any desired version, whether it be in
693-428: The community project, while some keep their changes as their own competitive advantages. In proprietary software , the copyright is usually held by the employing entity, not by the individual software developers. Proprietary code is thus more commonly forked when the owner needs to develop two or more versions, such as a windowed version and a command line version, or versions for differing operating systems, such as
SECTION 20
#1732773180881726-410: The developers causing issues before exiting the project, such as messing up the add-ons server. Version 31 was issued in response to fix these issues. MyPal was formerly a fork of Pale Moon that supported Windows XP, but after issues with the lead developer of Pale Moon regarding licensing, it was rebased on Firefox Quantum. Versions of MyPal afterwards are a fork of the Firefox 68-78 codebase. New Moon
759-453: The development branch or not. Often, the version that will eventually become the next major version is called the development branch. However, there is often more than one subsequent version of the software under development at a given time. Often, the development branch is the trunk . Some revision control systems have specific jargon for the main development branch. For example, in CVS , it
792-412: The fork. A notable proprietary fork not of this kind is the many varieties of proprietary Unix —almost all derived from AT&T Unix under license and all called "Unix", but increasingly mutually incompatible. See Unix wars . Branching (revision control) Branching , in version control and software configuration management , is the duplication of an object under version control (such as
825-454: The larger group, or whoever controls the web site, will retain the full original name and the associated user community. Thus, there is a reputation penalty associated with forking. The relationship between the different teams can be cordial or very bitter. On the other hand, a friendly fork or a soft fork is a fork that does not intend to compete, but wants to eventually merge with the original. Eric S. Raymond , in his essay Homesteading
858-655: The parent branch. Often the changes are merged back to the trunk, even if this is not the parent branch. A branch not intended to be merged (e.g. because it has been relicensed under an incompatible license by a third party, or it attempts to serve a different purpose) is usually called a fork . Branches allow for parts of software to be developed in parallel. Large projects require many roles to be filled, including developers, build managers, and quality assurance personnel. Further, multiple releases on different operating system platforms may have to be maintained. Branches allow contributors to isolate changes without destabilizing
891-481: The successor groups over issues of legitimacy, succession, and design direction. There is serious social pressure against forking. As a result, major forks (such as the Gnu-Emacs / XEmacs split, the fissioning of the 386BSD group into three daughter projects, and the short-lived GCC/EGCS split) are rare enough that they are remembered individually in hacker folklore. David A. Wheeler notes four possible outcomes of
924-401: The technical, social and financial barriers to forking a source code repository are massively reduced, and GitHub uses "fork" as its term for this method of contribution to a project. Forks often restart version numbering from numbers typically used for initial versions of programs like 0.0.1, 0.1, or 1.0 even if the original software was at another version such as 3.0, 4.0, or 5.0. An exception
957-440: The trunk and stable versions are branched, and occasional bug-fixes are merged from branches to the trunk. When development of future versions is done in non-trunk branches, it is usually done for projects that do not change often, or where a change is expected to take a long time to develop until it will be ready for incorporating in the trunk. Branching generally implies the ability to later merge or integrate changes back onto
990-432: The trunk when the branch has proven to be stable and working. Depending on development mode and commit policy the trunk may contain the most stable or the least stable or something-in-between version. Other terms for trunk include baseline, mainline, and master, though in some cases these are used with similar but distinct senses – see version control § Common terminology . Often main developer work takes place in
1023-463: The whole community a chance to benefit from your changes. Access to the source code is a precondition for this. 3. Derived Works: The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software. In free software, forks often result from a schism over different goals or personality clashes. In a fork, both parties assume nearly identical code bases, but typically only
Pale Moon - Misplaced Pages Continue
1056-471: Was developed in 2014 but was cancelled by the developer due to lack of community involvement a year later. Pale Moon was created and is primarily maintained by one developer, M.C. Straver. Prior to version 26, Pale Moon used the same rendering engine as Firefox, known as Gecko. With version 26 in 2016, Pale Moon switched to using the Goanna rendering engine, a fork of Gecko. In 2017, the Pale Moon team began
1089-577: Was in use in the present sense by 1995 to describe the XEmacs split, and was an understood usage in the GNU Project by 1996. Free and open-source software may be legally forked without prior approval of those currently developing, managing, or distributing the software per both The Free Software Definition and The Open Source Definition : The freedom to distribute copies of your modified versions to others (freedom 3). By doing this, you can give
#880119