Initial Commit

master
BeatLink 2019-06-12 15:44:32 -05:00
commit a93c974f2b
76 changed files with 7782 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
work_dir/

17
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,17 @@
image: ubuntu:18.04
before_script:
- apt update
- apt install python python3 wget -y
stages:
- Build
Build LibreWolf:
stage: Build
script:
- cd librewolf_browser
- ./build.sh
artifacts:
paths:
- "librewolf_browser/librewolf*.tar.bz2"

373
LICENSE Normal file
View File

@ -0,0 +1,373 @@
Mozilla Public License Version 2.0
==================================
1. Definitions
--------------
1.1. "Contributor"
means each individual or legal entity that creates, contributes to
the creation of, or owns Covered Software.
1.2. "Contributor Version"
means the combination of the Contributions of others (if any) used
by a Contributor and that particular Contributor's Contribution.
1.3. "Contribution"
means Covered Software of a particular Contributor.
1.4. "Covered Software"
means Source Code Form to which the initial Contributor has attached
the notice in Exhibit A, the Executable Form of such Source Code
Form, and Modifications of such Source Code Form, in each case
including portions thereof.
1.5. "Incompatible With Secondary Licenses"
means
(a) that the initial Contributor has attached the notice described
in Exhibit B to the Covered Software; or
(b) that the Covered Software was made available under the terms of
version 1.1 or earlier of the License, but not also under the
terms of a Secondary License.
1.6. "Executable Form"
means any form of the work other than Source Code Form.
1.7. "Larger Work"
means a work that combines Covered Software with other material, in
a separate file or files, that is not Covered Software.
1.8. "License"
means this document.
1.9. "Licensable"
means having the right to grant, to the maximum extent possible,
whether at the time of the initial grant or subsequently, any and
all of the rights conveyed by this License.
1.10. "Modifications"
means any of the following:
(a) any file in Source Code Form that results from an addition to,
deletion from, or modification of the contents of Covered
Software; or
(b) any new file in Source Code Form that contains any Covered
Software.
1.11. "Patent Claims" of a Contributor
means any patent claim(s), including without limitation, method,
process, and apparatus claims, in any patent Licensable by such
Contributor that would be infringed, but for the grant of the
License, by the making, using, selling, offering for sale, having
made, import, or transfer of either its Contributions or its
Contributor Version.
1.12. "Secondary License"
means either the GNU General Public License, Version 2.0, the GNU
Lesser General Public License, Version 2.1, the GNU Affero General
Public License, Version 3.0, or any later versions of those
licenses.
1.13. "Source Code Form"
means the form of the work preferred for making modifications.
1.14. "You" (or "Your")
means an individual or a legal entity exercising rights under this
License. For legal entities, "You" includes any entity that
controls, is controlled by, or is under common control with You. For
purposes of this definition, "control" means (a) the power, direct
or indirect, to cause the direction or management of such entity,
whether by contract or otherwise, or (b) ownership of more than
fifty percent (50%) of the outstanding shares or beneficial
ownership of such entity.
2. License Grants and Conditions
--------------------------------
2.1. Grants
Each Contributor hereby grants You a world-wide, royalty-free,
non-exclusive license:
(a) under intellectual property rights (other than patent or trademark)
Licensable by such Contributor to use, reproduce, make available,
modify, display, perform, distribute, and otherwise exploit its
Contributions, either on an unmodified basis, with Modifications, or
as part of a Larger Work; and
(b) under Patent Claims of such Contributor to make, use, sell, offer
for sale, have made, import, and otherwise transfer either its
Contributions or its Contributor Version.
2.2. Effective Date
The licenses granted in Section 2.1 with respect to any Contribution
become effective for each Contribution on the date the Contributor first
distributes such Contribution.
2.3. Limitations on Grant Scope
The licenses granted in this Section 2 are the only rights granted under
this License. No additional rights or licenses will be implied from the
distribution or licensing of Covered Software under this License.
Notwithstanding Section 2.1(b) above, no patent license is granted by a
Contributor:
(a) for any code that a Contributor has removed from Covered Software;
or
(b) for infringements caused by: (i) Your and any other third party's
modifications of Covered Software, or (ii) the combination of its
Contributions with other software (except as part of its Contributor
Version); or
(c) under Patent Claims infringed by Covered Software in the absence of
its Contributions.
This License does not grant any rights in the trademarks, service marks,
or logos of any Contributor (except as may be necessary to comply with
the notice requirements in Section 3.4).
2.4. Subsequent Licenses
No Contributor makes additional grants as a result of Your choice to
distribute the Covered Software under a subsequent version of this
License (see Section 10.2) or under the terms of a Secondary License (if
permitted under the terms of Section 3.3).
2.5. Representation
Each Contributor represents that the Contributor believes its
Contributions are its original creation(s) or it has sufficient rights
to grant the rights to its Contributions conveyed by this License.
2.6. Fair Use
This License is not intended to limit any rights You have under
applicable copyright doctrines of fair use, fair dealing, or other
equivalents.
2.7. Conditions
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
in Section 2.1.
3. Responsibilities
-------------------
3.1. Distribution of Source Form
All distribution of Covered Software in Source Code Form, including any
Modifications that You create or to which You contribute, must be under
the terms of this License. You must inform recipients that the Source
Code Form of the Covered Software is governed by the terms of this
License, and how they can obtain a copy of this License. You may not
attempt to alter or restrict the recipients' rights in the Source Code
Form.
3.2. Distribution of Executable Form
If You distribute Covered Software in Executable Form then:
(a) such Covered Software must also be made available in Source Code
Form, as described in Section 3.1, and You must inform recipients of
the Executable Form how they can obtain a copy of such Source Code
Form by reasonable means in a timely manner, at a charge no more
than the cost of distribution to the recipient; and
(b) You may distribute such Executable Form under the terms of this
License, or sublicense it under different terms, provided that the
license for the Executable Form does not attempt to limit or alter
the recipients' rights in the Source Code Form under this License.
3.3. Distribution of a Larger Work
You may create and distribute a Larger Work under terms of Your choice,
provided that You also comply with the requirements of this License for
the Covered Software. If the Larger Work is a combination of Covered
Software with a work governed by one or more Secondary Licenses, and the
Covered Software is not Incompatible With Secondary Licenses, this
License permits You to additionally distribute such Covered Software
under the terms of such Secondary License(s), so that the recipient of
the Larger Work may, at their option, further distribute the Covered
Software under the terms of either this License or such Secondary
License(s).
3.4. Notices
You may not remove or alter the substance of any license notices
(including copyright notices, patent notices, disclaimers of warranty,
or limitations of liability) contained within the Source Code Form of
the Covered Software, except that You may alter any license notices to
the extent required to remedy known factual inaccuracies.
3.5. Application of Additional Terms
You may choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of Covered
Software. However, You may do so only on Your own behalf, and not on
behalf of any Contributor. You must make it absolutely clear that any
such warranty, support, indemnity, or liability obligation is offered by
You alone, and You hereby agree to indemnify every Contributor for any
liability incurred by such Contributor as a result of warranty, support,
indemnity or liability terms You offer. You may include additional
disclaimers of warranty and limitations of liability specific to any
jurisdiction.
4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------
If it is impossible for You to comply with any of the terms of this
License with respect to some or all of the Covered Software due to
statute, judicial order, or regulation then You must: (a) comply with
the terms of this License to the maximum extent possible; and (b)
describe the limitations and the code they affect. Such description must
be placed in a text file included with all distributions of the Covered
Software under this License. Except to the extent prohibited by statute
or regulation, such description must be sufficiently detailed for a
recipient of ordinary skill to be able to understand it.
5. Termination
--------------
5.1. The rights granted under this License will terminate automatically
if You fail to comply with any of its terms. However, if You become
compliant, then the rights granted under this License from a particular
Contributor are reinstated (a) provisionally, unless and until such
Contributor explicitly and finally terminates Your grants, and (b) on an
ongoing basis, if such Contributor fails to notify You of the
non-compliance by some reasonable means prior to 60 days after You have
come back into compliance. Moreover, Your grants from a particular
Contributor are reinstated on an ongoing basis if such Contributor
notifies You of the non-compliance by some reasonable means, this is the
first time You have received notice of non-compliance with this License
from such Contributor, and You become compliant prior to 30 days after
Your receipt of the notice.
5.2. If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
end user license agreements (excluding distributors and resellers) which
have been validly granted by You or Your distributors under this License
prior to termination shall survive termination.
************************************************************************
* *
* 6. Disclaimer of Warranty *
* ------------------------- *
* *
* Covered Software is provided under this License on an "as is" *
* basis, without warranty of any kind, either expressed, implied, or *
* statutory, including, without limitation, warranties that the *
* Covered Software is free of defects, merchantable, fit for a *
* particular purpose or non-infringing. The entire risk as to the *
* quality and performance of the Covered Software is with You. *
* Should any Covered Software prove defective in any respect, You *
* (not any Contributor) assume the cost of any necessary servicing, *
* repair, or correction. This disclaimer of warranty constitutes an *
* essential part of this License. No use of any Covered Software is *
* authorized under this License except under this disclaimer. *
* *
************************************************************************
************************************************************************
* *
* 7. Limitation of Liability *
* -------------------------- *
* *
* Under no circumstances and under no legal theory, whether tort *
* (including negligence), contract, or otherwise, shall any *
* Contributor, or anyone who distributes Covered Software as *
* permitted above, be liable to You for any direct, indirect, *
* special, incidental, or consequential damages of any character *
* including, without limitation, damages for lost profits, loss of *
* goodwill, work stoppage, computer failure or malfunction, or any *
* and all other commercial damages or losses, even if such party *
* shall have been informed of the possibility of such damages. This *
* limitation of liability shall not apply to liability for death or *
* personal injury resulting from such party's negligence to the *
* extent applicable law prohibits such limitation. Some *
* jurisdictions do not allow the exclusion or limitation of *
* incidental or consequential damages, so this exclusion and *
* limitation may not apply to You. *
* *
************************************************************************
8. Litigation
-------------
Any litigation relating to this License may be brought only in the
courts of a jurisdiction where the defendant maintains its principal
place of business and such litigation shall be governed by laws of that
jurisdiction, without reference to its conflict-of-law provisions.
Nothing in this Section shall prevent a party's ability to bring
cross-claims or counter-claims.
9. Miscellaneous
----------------
This License represents the complete agreement concerning the subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent
necessary to make it enforceable. Any law or regulation which provides
that the language of a contract shall be construed against the drafter
shall not be used to construe this License against a Contributor.
10. Versions of the License
---------------------------
10.1. New Versions
Mozilla Foundation is the license steward. Except as provided in Section
10.3, no one other than the license steward has the right to modify or
publish new versions of this License. Each version will be given a
distinguishing version number.
10.2. Effect of New Versions
You may distribute the Covered Software under the terms of the version
of the License under which You originally received the Covered Software,
or under the terms of any subsequent version published by the license
steward.
10.3. Modified Versions
If you create software not governed by this License, and you want to
create a new license for such software, you may create and use a
modified version of this License if you rename the license and remove
any references to the name of the license steward (except to note that
such modified license differs from this License).
10.4. Distributing Source Code Form that is Incompatible With Secondary
Licenses
If You choose to distribute Source Code Form that is Incompatible With
Secondary Licenses under the terms of this version of the License, the
notice described in Exhibit B of this License must be attached.
Exhibit A - Source Code Form License Notice
-------------------------------------------
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
If it is not possible or desirable to put the notice in a particular
file, then You may include the notice in a location (such as a LICENSE
file in a relevant directory) where a recipient would be likely to look
for such a notice.
You may add additional accurate notices of copyright ownership.
Exhibit B - "Incompatible With Secondary Licenses" Notice
---------------------------------------------------------
This Source Code Form is "Incompatible With Secondary Licenses", as
defined by the Mozilla Public License, v. 2.0.

431
README.md Normal file
View File

@ -0,0 +1,431 @@
<p align="center">
<a href="https://github.com/LibreWolf-Browser/LibreWolf/"><img width="727" src="./branding/logo_2/Logo.svg.png"></a>
</p>
<p align="center">
<a href="https://github.com/LibreWolf-Browser/LibreWolf/releases" target="_blank"><img src="https://img.shields.io/badge/Download-%20LibreWolf-green.svg"> </a>
<a href="https://github.com/LibreWolf-Browser/LibreWolf/releases"><img src="https://img.shields.io/badge/Version-0.0.1-green.svg"></a>
<a href="https://github.com/LibreWolf-Browser/LibreWolf/commits/master"><img src="https://img.shields.io/badge/Maintained-Yes-green.svg"></a>
<a href="https://github.com/LibreWolf-Browser/LibreWolf/pulls"><img src="https://img.shields.io/badge/PR-0-green.svg"></a>
<a href="https://github.com/LibreWolf-Browser/LibreWolf/issues?q=is%3Aissue+is%3Aclosed"><img src="https://img.shields.io/badge/Solved%20Issues-3-green.svg"></a>
<a href="https://www.mozilla.org/en-US/MPL/2.0/" target="_blank"><img src="https://img.shields.io/badge/License-Mozilla--MLP2-blue.svg"></a>
<a href="https://www.mozilla.org/en-US/MPL/" target="_blank"><img src="https://badges.frapsoft.com/os/v2/open-source.png?v=103"></a>
</p>
---
LibreWolf: Browse With Freedom
------------------------------
This project is an independent fork of Firefox, with the primary goals of privacy security and user freedom. It is the community run successor to [LibreFox](https://github.com/intika/Librefox)
LibreWolf uses more than 500 privacy/security/performance settings, patches, LibreWolf-Addons (optional) and is designed to minimize data collection and telemetry as much as possible (updater, crashreporter and Firefox's integrated addons that don't respect privacy are removed).
**LibreWolf is NOT associated with Mozilla or its products.**
Features
--------
- Latest Version of Firefox: LibreWolf is compiled directly from the latest build of Firefox Nightly. As a result, you will have the most bleeding edge of features, technologies and security updates. Stable builds are also planned in the future.
- Completely Independent Build: LibreWolf uses a completely independent build from Firefox and has its own settings, profile folder and installation path. As a result, it can be installed alongside Firefox or any other browser.
- Extensions firewall: limit internet access for extensions ([firewall-test-feature](#extensions-firewall-))
- IJWY (I Just Want You To Shut Up): embedded server links and other calling home functions are removed ([zero unauthorized connection](#ijwy-i-just-want-you-to-shut-up) by default).
- User settings updates: gHacks/pyllyukko base is kept up to date.
- Settings protection: important settings are enforced/locked within `mozilla.cfg` and `policies.json`, those settings cannot be changed by addons/updates/LibreWolf itself or unwanted/accidental manipulation; To change those settings you can easily do it by editing `mozilla.cfg` and `policies.json`.
- LibreWolf-addons: set of optional LibreWolf extensions
- Statistics disabled: telemetry and similar functions are disabled
- Tested settings: settings are performance aware
- ESR and Tor version (LibreWolf TBB Beta)
- Tor LibreWolf-addons: adapted LibreWolf extensions for TBB
- Multi-platform (Windows/Linux/Mac/and soon Android)
- Dark theme (classic and advanced)
- Recommended and *code reviewed* addons list
- Community-Driven
- And much more...
---
Index
-----
<pre>
<a href="#features"
>> LibreWolf: Features ............................................................... </a>
<a href="#download"
>> LibreWolf: Download ............................................................... </a>
<a href="#capture"
>> LibreWolf: Capture ................................................................ </a>
<a href="#LibreWolf-addons"
>> Addons: LibreWolf Addons .......................................................... </a>
<a href="#recommended-addons"
>> Addons: Recommended Addons ....................................................... </a>
<a href="#recommended-addons-settings"
>> Addons: Recommended Addons Settings .............................................. </a>
<a href="#reviewing-extensions-code"
>> Addons: Reviewing Addons Source Code ............................................. </a>
<a href="#other-addons"
>> Addons: Other Useful Addons Listing .............................................. </a>
<a href="#installation-instructions"
>> Wiki: Installation Instructions .................................................. </a>
<a href="#extensions-firewall"
>> Wiki: Extensions Network Firewall ................................................ </a>
<a href="#ijwy-i-just-want-you-to-shut-up"
>> Wiki: IJWY (I Just Want You To Shut Up) .......................................... </a>
<a href="#edit-locked-settings"
>> Wiki: Edit Locked Settings ....................................................... </a>
<a href="#settings-index"
>> Wiki: Settings Index ............................................................. </a>
<a href="#cookies-settings"
>> Wiki: Cookies Settings ........................................................... </a>
<a href="#tracking-protection"
>> Wiki: Tracking Protection ........................................................ </a>
<a href="#comparing-changes-and-updates"
>> Wiki: Comparing Changes And Updates .............................................. </a>
<a href="#documentation"
>> Wiki: Documentation .............................................................. </a>
<a href="#LibreWolf-dark-theme"
>> Wiki: LibreWolf Dark Theme ........................................................ </a>
<a href="#tuning-LibreWolf"
>> Wiki: Tuning LibreWolf ............................................................ </a>
<a href="#LibreWolf-esr"
>> Wiki: LibreWolf ESR ............................................................... </a>
<a href="#tor-compatibility"
>> Wiki: Tor Compatibility .......................................................... </a>
<a href="#drm-compatibility"
>> Wiki: DRM Compatibility .......................................................... </a>
<a href="#building-and-packaging"
>> Wiki: Building And Packaging ..................................................... </a>
<a href="#browser-tests---securityfingerprint"
>> Browser Tests: Security/Fingerprint .............................................. </a>
<a href="#browser-tests---performances"
>> Browser Tests: Performance ....................................................... </a>
<a href="#browser-tests---dnsvpnproxy-leak"
>> Browser Tests: DNS/VPN/Proxy Leak ................................................ </a>
<a href="#LibreWolf-roadmap"
>> Infos: LibreWolf Roadmap .......................................................... </a>
<a href="#changelog"
>> Infos: Changelog ................................................................. </a>
<a href="#about"
>> Infos: About ..................................................................... </a>
</pre>
Recommended Addons
------------------
Recommended addons are not bundled and need to be installed manually
- [Cookie Master](https://addons.mozilla.org/en-US/firefox/addon/cookiemaster/): Block all cookies and only allow authorized sites
- [First Party Isolation](https://addons.mozilla.org/en-US/firefox/addon/first-party-isolation/): Enable/Disable FPI with the click of a button
- [User Agent Platform Spoofer](https://addons.mozilla.org/en-US/firefox/addon/user-agent-platform-spoofer/): Spoof a different UserAgent OS Linux/Windows/Mac
- [Browser Plugs Privacy Firewall](https://addons.mozilla.org/en-US/firefox/addon/browser-plugs-privacy-firewall/): Sets of settings to prevent fingerprinting and security issues
- [uBlock Origin](https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/) [+ IDCAC List](https://www.i-dont-care-about-cookies.eu/) [+ Nano-Defender List](https://jspenguin2017.github.io/uBlockProtector/#extra-installation-steps-for-ublock-origin): Block web advertisement and tracking
Recommended Addons Settings
---------------------------
`uBlock Origin`: Additional filters are availables here: https://filterlists.com/ (don't surcharge it to avoid performance loss)
`Browser Plugs Privacy Firewall`: Keep settings light to make `privacy.resistFingerprinting` efficient because too much customization will lead to uniqueness and therefore easy fingerprinting.
```
- Privacy / Fingerprint / Fake values for getClientRects
- Privacy / Fingerprint / Randomize Canvas Fingerprint
- Privacy / Fingerprint / 100% Randomize ALL Fingerprint Hash
- Firewall / Experimental / Block SVG getBBox and getComputedTextLength
- Privacy / Font / Randomize
- Privacy / Font / Enable protection for font and glyph fingerprinting
```
Reviewing Extensions Code
-------------------------
Recommended extensions code have been reviewed for potential unwanted behaviour... reviewed version are available under [extensions](https://github.com/LibreWolf-Browser/LibreWolf/tree/master/extensions) directory.
Extensions Firewall
-------------------
**Extensions Firewall - Description**
*This is a test experiment feature and it is disabled by default !!!* A new section `Extensions Manager` is added to manage addons globally (and addons networking in the subsection `Extensions Firewalling`). Firewalling the network for addons is doable, but it requires a considerable amount of additional work in LibreWolf to make it usable through a button or in a per addon basis (this may or may not be added in a future version, it also could be abandoned as it is a test feature). Currently you can block a list of domains or block the whole network for all the extensions.
**Extensions Firewall - The Settings**
Available native network restriction settings for addons:
- Restricted domains list: `extensions.webextensions.restrictedDomains` this is a list of restricted domains that will be used to block some hosts for all the extensions, Firefox uses this setting to block extensions from accessing mozilla's domains/sites, by default in LibreWolf this setting is set to allow extensions to access all the web (You can edit that list to match your needs or to block a specific domain, note that the domain name has to be 'exact' (for instance facebook.com will only block facebook.com not mobile.facebook.com)
- Content security policy: `extensions.webextensions.base-content-security-policy` and `extensions.webextensions.default-content-security-policy` the later settings can be redefined/changed within an extension so it's not efficient for a firewall purpose. CSP settings are used in Firefox as an added layer of security that helps to detect and mitigate certain types of attacks, including Cross Site Scripting (XSS) and data injection attacks. These attacks are used for everything from data theft to site defacement to distribution of malware; In short: CSP settings block and allow certain domains under certain circumstances and thus could be used to firewall the extensions ([CSP Documentations](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), its [sources code](https://code.compassfoundation.io/general/mozilla-central/commit/623a4f866576815dfcbab26323d13b7144806bdf?view=inline&w=1) and [implementation](https://github.com/mozilla/gecko/blob/central/toolkit/components/extensions/ExtensionPolicyService.cpp))
**Extensions Firewall - Blocking A Domain**
Edit the restricted domains setting as follow under the `about:config` page:
- Restricted Domains Setting: `extensions.webextensions.restrictedDomains` Value: `ExactDomains1,ExactDomains2,ExactDomains3` etc.
**Extensions Firewall - Blocking The Network**
To enable the feature and block the network for all the extensions open `mozilla.cfg` search for `Enable-Firewall-Feature-In-The-Next-Line` and remove the `//` in the next line.
Note that this will block the network access for all the extensions and a lot of extensions needs to be connected in order to work. In the current version of LibreWolf you can block the network for all the extensions or allow it for all of them, a future version may provide additional features like "per addon" setting (By default LibreWolf allows networking for extensions).
**Extensions Firewall - More Infos**
Check `debug-notes.log` for additional info about future version and researches about the subject. Also check [CSP Documentations](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), its [sources code](https://code.compassfoundation.io/general/mozilla-central/commit/623a4f866576815dfcbab26323d13b7144806bdf?view=inline&w=1) and [implementation](https://github.com/mozilla/gecko/blob/central/toolkit/components/extensions/ExtensionPolicyService.cpp).
IJWY (I Just Want You To Shut Up)
---------------------------------
This is a set of settings that aim to remove all the server links embedded in Firefox and other calling home functions in the purpose of blocking un-needed connections. The objective is zero unauthorized connection (ping/telemetry/Mozilla/Google...).
Changelog
---------
Available in the [releases page](https://github.com/LibreWolf-Browser/LibreWolf/releases)
Installation Instructions
--------------------------
**Notice:** in the current state of the project LibreWolf is a set of configuration files for Firefox (awaiting a correct build of the project), therefore if you already have a Firefox profile, that profile will be used and temporary files will be removed (cookies and current session), make sure to backup your current Firefox's profile before using LibreWolf.
Using LibreWolf simultaneously with Firefox is possilbe through a different profile you can follow [this wiki](https://www.ghacks.net/2008/05/29/run-multiple-firefox-profiles-simultaneously/) to do so. **[Future](https://github.com/LibreWolf-Browser/LibreWolf/issues/55) LibreWolf version** will be independent from Firefox and therefore will solve this issue.
**Windows**
- Download and install the last version of Firefox [x32 release](https://download-installer.cdn.mozilla.net/pub/firefox/releases/64.0/win32/en-US/Firefox%20Setup%2064.0.exe) or [x64 release](https://download-installer.cdn.mozilla.net/pub/firefox/releases/64.0/win64/en-US/Firefox%20Setup%2064.0.exe)
- Download [LibreWolf](https://github.com/LibreWolf-Browser/LibreWolf/releases/download/LibreWolf-v2.1-v64.0.0/LibreWolf-2.1-Firefox-Windows-64.0.0.zip) zip file and extract it
- Locate Firefox's installation directory (where the firefox.exe is located) `C:\Program Files\Mozilla Firefox\` or `C:\Program Files (x86)\Mozilla Firefox\` or `Tor-Install-Directory\Browser\`
- Copy the extracted LibreWolf files to the install directory
**Linux**
- Download and extract the last version of Firefox [x32 release](https://download-installer.cdn.mozilla.net/pub/firefox/releases/64.0/linux-i686/en-US/firefox-64.0.tar.bz2) or [x64 release](https://download-installer.cdn.mozilla.net/pub/firefox/releases/64.0/linux-x86_64/en-US/firefox-64.0.tar.bz2)
- Download [LibreWolf](https://github.com/LibreWolf-Browser/LibreWolf/releases/download/LibreWolf-v2.1-v64.0.0/LibreWolf-2.1-Firefox-Linux-64.0.0.zip) zip file and extract it
- Copy the extracted LibreWolf files to the newly downloaded `firefox` directory
- You can use directly LibreWolf by running 'firefox/firefox'
- You can as well create a shortcut to 'firefox/firefox' to open LibreWolf easily.
**Mac**
- Download and install the [last version of Firefox](https://download-installer.cdn.mozilla.net/pub/firefox/releases/64.0/mac/en-US/Firefox%2064.0.dmg)
- Download [LibreWolf](https://github.com/LibreWolf-Browser/LibreWolf/releases/download/LibreWolf-v2.1-v64.0.0/LibreWolf-2.1-Firefox-Mac-60.4.0.zip) zip file and extract it
- Locate Firefox's installation directory (`Applications/Firefox.app/Contents/Resources/` or `Applications/Tor Browser.app/Contents/Resources/`)
- Copy the extracted files to the install directory
**Uninstall**
- To uninstall, just remove the files you added to your Firefox's install directory (to know what are the files to remove just check the downloaded LibreWolf zip file) then restart Firefox.
Edit Locked Settings
--------------------
Just edit `mozilla.cfg`, save and restart LibreWolf.
Browser Tests - Security/Fingerprint
------------------------------------
Firefox 60 and `privacy.resistFingerprinting` are relatively new, please give it some time to be more widely used and thus less finger-printable; If you are using a different site to analyze your browser make sure to read and understand what the test is about.
- [SSLLabs](https://www.ssllabs.com/ssltest/viewMyClient.html)
- [AmiUnique](https://amiunique.org/fp)
- [BrowserLeaks](https://browserleaks.com/)
- [BrowserPlugs](https://www.browserplugs.com/fingerprint-test/index.html)
- [FingerPrintJS2](https://valve.github.io/fingerprintjs2/)
- [Third-Party-Cookies](https://alanhogan.github.io/web-experiments/3rd/third-party-cookies.html)
- [Testing-Notifications](https://www.bennish.net/web-notifications.html)
- [Browser-Storage-Abuser](https://demo.agektmr.com/storage/)
- [Service-Workers-Push-Test](https://gauntface.github.io/simple-push-demo/)
Browser Tests - Performances
----------------------------
Performance tests can be done here [LVP Octane](https://intika.github.io/lvp-octane/), it needs to be launched alone with other applications closed and with no other activity but the benchmark, also it's recommended to launch it many times and then calculate the average.
Browser Tests - DNS/VPN/Proxy Leak
----------------------------------
- [IPLeak](https://ipleak.net/)
- [Tenta-Test](https://tenta.com/test/)
- [IP-Browserleaks](https://browserleaks.com/ip)
About
-----
**License:** [Mozilla Public License 2.0](https://github.com/LibreWolf-Browser/LibreWolf/blob/master/License.txt)
**Inspired from:** [ungoogled-chromium](https://github.com/Eloston/ungoogled-chromium)
**Based on:** [Librefox](https://github.com/Librefox/Librefox), whose development seems to have halted.
**Acknowledgement**, special thanks to:
- @intika for putting Librefox together
- The Mozilla team for their amazing work on Firefox
- The gHacks-User team for allowing the usage of their work
- All the stargazers (users that are encouraging this project by starring it)
- Icon was created with images by [OpenClipart-Vectors](https://pixabay.com/users/OpenClipart-Vectors-30363/?utm_source=link-attribution&utm_medium=referral&utm_campaign=image&utm_content=157677) from [Pixabay](https://pixabay.com/?utm_source=link-attribution&utm_medium=referral&utm_campaign=image&utm_content=157677)
LibreWolf Roadmap
----------------
**Objectives for future versions of LibreWolf (this may change)**
- Develop an all-in-one LibreWolf addon to rule them all ? (Normal & Tor Version… this would simplify LibreWolf)
- Develop an easy to use firewall system for extensions (button/hosts/allow/deny/per-addon)
- Develop an advanced settings page
- Update checker extension (feature in the full extension ?)
- Advertisement for the project to reach more users ?
**Todo for future versions of LibreWolf (this may change)**
- Listed under [issues](https://github.com/LibreWolf-Browser/LibreWolf/issues/) section
Settings Index
--------------
```
// ==============================
// Index mozilla.cfg .......... :
// ==============================
//
// ---------------------------------------------------------------------
// Section: User settings // Bench Diff: +0 / 5000
// Section: Defaulting Settings // Bench Diff: +0 / 5000
// ------------------------------------------
// Section: Controversial // Bench Diff: +0 / 5000
// Section: Firefox Fingerprint // Bench Diff: +0 / 5000
// Section: Locale/Time // Bench Diff: +0 / 5000
// Section: Ghacks-user Selection // Bench Diff: +100 / 5000
// Section: Extensions Manager // Bench Diff: +0 / 5000
// Section: IJWY To Shut Up // Bench Diff: +0 / 5000
// Section: Microsoft Windows // Bench Diff: +0 / 5000
// Section: Firefox ESR60.x // Bench Diff: +0 / 5000
// ------------------------------------------
// Section: Security 1/3 // Bench Diff: +0 / 5000
// Section: Security 2/3 // Bench Diff: +0 / 5000
// Section: Security 3/3 (Cipher) // Bench Diff: +0 / 5000
// ------------------------------------------
// Section: Performance 1/5 // Bench Diff: +650 / 5000
// Section: Performance 2/5 // Bench Diff: -800 / 5000
// Section: Performance 3/5 // Bench Diff: -1720 / 5000
// Section: Performance 4/5 // Bench Diff: -200 / 5000
// Section: Performance 5/5 // Bench Diff: -50 / 5000
// ------------------------------------------
// Section: General Settings 1/3 // Bench Diff: +100 / 5000
// Section: General Settings 2/3 // Bench Diff: +0 / 5000
// Section: General Settings 3/3 // Bench Diff: -40 / 5000
// ------------------------------------------
// Section: Disabled - ON/OFF // Bench Diff: +0 / 5000
// Section: Disabled - Deprecated Active // Bench Diff: +0 / 5000
// Section: Disabled - Deprecated Inactive // Bench Diff: +0 / 5000
// ---------------------------------------------------------------------
// ==============================
// Index local-settings.js .... :
// ==============================
//
// ---------------------------------------------------------------------
// Section: General Settings // Bench Diff: ++ / 5000
// ---------------------------------------------------------------------
```
Cookies Settings
----------------
Using different web services without cookies is impossible and cookie settings in a browser are very important when it come to privacy, in LibreWolf the settings are locked to avoid unwanted changes in such an important setting, but they can be easily changed in `mozilla.cfg` under `User Settings: Cookies settings`.
Tracking Protection
-------------------
Firefox now integrates a tracking protection feature (based on disconnect.me) it's a small content blocking list, the listing can not be edited, this feature is disabled in LibreWolf. It's recommended to use uBlock Origin instead. This feature is disabled:
- Until it evolves and integrates at least list editing.
- Because double filtering (this + ublock) is not suitable for performance.
You can however easily enable this feature in `mozilla.cfg` under `User Settings: Track Protection` (just comment active lines with `//` or remove the entire section).
Comparing Changes And Updates
-----------------------------
If you want to compare changes over updates or if you already have a `user.js`/`mozilla.cfg`/`policies.json`. consider using [Compare-UserJS](https://github.com/claustromaniac/Compare-UserJS), it's an amazing tool to compare user.js files and output the diffs in detailed breakdown, developed by gHack's very own resident cat, [claustromaniac](https://github.com/claustromaniac) :cat:
Usage: If not on windows install [PowerShell](https://github.com/PowerShell/PowerShell) then (for example) `pwsh Compare-UserJS.ps1 mozilla.cfg user.js` (Warning that PowerShell connects to Microsoft sometimes).
Documentation
-------------
**Mozilla.cfg**: Locking and defaulting LibreWolf settings for security, privacy and performance.
**Policies.json**: Policies for enterprise environments (the settings available with `policies.json` are limited right now because this is a new feature of Firefox).
**Bench diff**: Impact on the performance of LibreWolf, it can be a gain or a loss of performance +100/5000 stand for 2% gained performance and -1500/5000 stand for -30% performance loss.
**lockPref**: Locked preference can not be changed by extensions or updates, they can only be changed in `mozilla.cfg`.
**Section**: Description of the settings section separated by ">>>".
**Defaulting VS Enforcing**: Defaulted settings can be changed by the user or an extension if permitted within the browser while enforced settings are locked and can not be changed within the browser, enforced settings can be changed in `mozilla.cfg`.
**About:config**: http://kb.mozillazine.org/About:config_entries.
LibreWolf Dark Theme
-------------------
LibreWolf provides a classic dark theme extension ([LibreWolf Dark Theme](https://addons.mozilla.org/en-US/firefox/addon/LibreWolf-dark-theme/)) but also a purified version of ShadowFox available under [dark-theme directory](https://github.com/LibreWolf-Browser/LibreWolf/tree/master/dark-theme) to install it just copy the directory chrome to your LibreWolf profile directory and then restart LibreWolf, this will expand the dark theme to internal pages like settings pages.
Tuning LibreWolf
---------------
**Restart Button**
One simple solution is to bookmark `about:restartrequired` or `about:profiles` ... when restart is needed open that page and click "normal restart". You can even go further and add the bookmarks links to your icons bar and rename the link to an empty text (you will then have a direct icon to `about:profiles` and a 2 clicks restart).
![capture](https://user-images.githubusercontent.com/6892180/48963055-bd914000-ef82-11e8-8ea4-a58e56f5c4a4.png)
...
**Alternative Dark Theme**
<a href="https://github.com/overdodactyl/ShadowFox" target="_blank"><img height=80px src="https://raw.githubusercontent.com/overdodactyl/ShadowFox/master/.github/Screenshots/header.png"></a>
**Linux Fix Text Colors**
On Linux when using a dark desktop theme LibreWolf could display white text over white background or black text on black input on some sites or addons, this is fixed in LibreWolf with `lockPref("ui.use_standins_for_native_colors", true);`.
If `ui.use_standins_for_native_colors` is not enough to fix everything you can fix this issue with an other additional solution by using the following values in `about:config` (you need to have Adwaita theme installed) [more details](https://github.com/DmitriK/darkContrast#text-contrast-for-dark-themes) (Note that this is not needed with the default LibreWolf settings as it is already fixed)
```
widget.content.allow-gtk-dark-theme;false
widget.chrome.allow-gtk-dark-theme;false
widget.content.gtk-theme-override;Adwaita:light
```
Other Addons
------------
**Other privacy addons**
- [NoHTTP](https://addons.mozilla.org/en-US/firefox/addon/nohttp): Block http traffic and/or redirect it to https (Excellent replacement for the unrecommended https-everywhere)
- [Google-Container](https://addons.mozilla.org/en-US/firefox/addon/google-container/): Open all Google sites in a container
- [Facebook-Container](https://addons.mozilla.org/en-US/firefox/addon/facebook-container/): Open all Facebook sites in a container
- [Request-Blocker](https://addons.mozilla.org/en-US/firefox/addon/request-blocker-we/): Hosts style blocking sites
- [Decentraleyes](https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/): Makes a lot of web resources available locally to improve privacy
- [Dont-Track-Me-Google](https://addons.mozilla.org/en-US/firefox/addon/dont-track-me-google1/): Cleaning Google search result links
- [Canvas-Blocker](https://addons.mozilla.org/en-US/firefox/addon/canvasblocker/): Prevent some fingerprinting techniques (This should not be used with browser plugins addon as it provide similar features)
- [Cookie-Quick-Manager](https://addons.mozilla.org/en-US/firefox/addon/cookie-quick-manager/): View and edit cookies
- [Mozilla-Multi-Account-Containers](https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/): Manage containers and assign sites to specific container
- [Switch-Containers](https://addons.mozilla.org/en-US/firefox/addon/switch-container/): Switching container for the current tab easily
- [Temporary-Containers](https://addons.mozilla.org/en-US/firefox/addon/temporary-containers/): Maximizing and automating container potential
- [Smart-Referer](https://addons.mozilla.org/en-US/firefox/addon/smart-referer/): Manage referer with a button (Send referers only when staying on the same domain.)
**Other useful addons**
- [Dormancy](https://addons.mozilla.org/en-US/firefox/addon/dormancy/): Unload tab after a certain time, useful for performance when opening a lot of tabs
- [Add Custom Search Engine](https://addons.mozilla.org/en-US/firefox/addon/add-custom-search-engine/): Customize your search engine
- [ProxySwitcheroo](https://addons.mozilla.org/en-US/firefox/addon/proxyswitcheroo/): Apply proxy settings in a click
- [UndoCloseTabButton](https://addons.mozilla.org/en-US/firefox/addon/undoclosetabbutton/): Reopen last closed tab
- [Advanced Github Notifier](https://addons.mozilla.org/en-US/firefox/addon/advanced-github-notifier/): Github notifications
- [Shortkeys](https://addons.mozilla.org/en-US/firefox/addon/shortkeys/): Add custom shortkeys
- [Tabboo](https://addons.mozilla.org/en-US/firefox/addon/tabboo-session-manager/): Session manager
**LibreWolf Addons For ESR And Tor**
- [LibreWolf HTTP Watcher ESR - Tor MoD](https://addons.mozilla.org/en-US/firefox/addon/LibreWolf-http-watcher-tor-mod/): Change the url bar color on http and onion sites (to green/red)
- [LibreWolf NoHTTP - Tor MoD](https://addons.mozilla.org/en-US/firefox/addon/nohttp-LibreWolf-mod-for-tor/): Block http traffic and/or redirect it to https (Excellent replacement for the unrecommended https-everywhere)
Tor Compatibility
-----------------
We do not recommend connecting over Tor on LibreWolf classic version (because of the missing LibreWolf-Tor-Addons, they are only included in the tor version for obvious reasons), use instead LibreWolf-Tor version if your threat model calls for it, or for accessing hidden services (Thus said tor settings have been enabled since v2 on all LibreWolf versions for user toriffying/proxifying their entire connection).
Currently LibreWolf-TBB is in beta test, Tor compatibility may change.
DRM Compatibility
-----------------
Digital rights management (DRM) is enforced off by default (this is needed for Netflix and similar); you can enable it with the following instructions:
- Open `mozilla.cfg`
- Under the section `Section: User Settings`
- Comment the active lines with `// ` under the subsection `User Settings: DRM/CDM - Main`
- Comment the active lines with `// ` under the subsection `User Settings: DRM/CDM - Widevine`
- Restart Firefox then open `about:preferences` and enable `Play DRM...` under general section
- Firefox will download Widevine and enable it (under `about:addons` plugins section) you can force the download by clicking `Check for updates` under the tools button
LibreWolf ESR
------------
For ESR users if you opt for `LibreWolf HTTP Watcher` you need to use this version [LibreWolf HTTP Watcher ESR - Tor MoD](https://addons.mozilla.org/en-US/firefox/addon/LibreWolf-http-watcher-tor-mod/)
Building And Packaging
----------------------
**Linux**
- `Build instruction will be updated soon`
**Windows**
- `Build instruction will be updated soon`
**Mac**
- `Build instruction will be updated soon`

8
archive/README.md Normal file
View File

@ -0,0 +1,8 @@
## Archive
These are parts of the original LibreFox and have not been reviewed yet. The files in this folder will be reviewed for:
* Integration into the browser itself
* Integration into the configuration scripts
* Moving to an external repository
* Deletion

View File

@ -0,0 +1,216 @@
========================================================================================================================
Build Notes v2 :
========================================================================================================================
- Compress tar.xz
tar cfJ <archive.tar.xz> <files>
- Files to remove :
crash-reporter...
crash-reporter...
removed-files
update...
update...
update...
browser/feature/webcomp...
browser/feature/webcomp...
browser/feature/...
- Tor files to remove :
Classic removal plus
https-everywhere addon
profile.meek-http-helper...
- Patching release :
>browser.omni.ja.chrome.browser.content.browser.preferences.in-content.privacy.origin (patch with winrar)
Tor : patch mozilla.cfg
- Tor windows :
Install it to desktop then get the files
(Only the lnk file is a new file compared to compressed version)
remove lnk file
add link.vbs
add bat file
- Tor mac :
Under mac, mount and extract all content to a folder
Copy by command .DS_Store (from dmg to folder)
run "codesign --remove-signature Tor\ Browser.app".
With disk utils, create a dmg from a folder (nocompression rw)
We are converting iso-dmg to dmg...
========================================================================================================================
JS Note & Debugging :
========================================================================================================================
// ----------
// CSP Note :
// ----------
//
// Syntax :
// One or more sources can be allowed for the default-src policy:
// Content-Security-Policy: default-src <source> <source>;
// Content-Security-Policy: default-src <source>;
//
// default-src is a fallback for :
// - child-src
// - connect-src
// - font-src
// - frame-src
// - img-src
// - manifest-src
// - media-src
// - object-src
// - prefetch-src
// - script-src
// - style-src
// - worker-src
//
// <source> can be one of the following:
//
// 'none'
// Refers to the empty set; that is, no URLs match. The single quotes are required.
//
// 'self'
// Refers to the origin from which the protected document is being served,
// including the same URL scheme and port number. You must include the single quotes.
// Some browsers specifically exclude blob and filesystem from source directives.
// Sites needing to allow these content types can specify them using the Data attribute.
//
// 'unsafe-inline'
// Allows the use of inline resources, such as inline <script> elements, javascript:
// URLs, inline event handlers, and inline <style> elements. You must include the single quotes.
//
// 'unsafe-eval'
// Allows the use of eval() and similar methods for creating code from strings.
// You must include the single quotes.
//
// <scheme-source>
// A schema such as 'http:' or 'https:'. The colon is required, single quotes
// shouldn't be used. You can also specify data schemas (not recommended).
// - data: Allows data: URIs to be used as a content source. This is insecure;
// An attacker can also inject arbitrary data: URIs.
// Use this sparingly and definitely not for scripts.
// - mediastream: Allows mediastream: URIs to be used as a content source.
// - blob: Allows blob: URIs to be used as a content source.
// - filesystem: Allows filesystem: URIs to be used as a content source.
//
// <host-source>
// Internet hosts by name or IP address, as well as an optional URL scheme and/or port number.
// The site's address may include an optional leading wildcard (the asterisk character, '*'),
// and you may use a wildcard (again, '*') as the port number, indicating that all
// legal ports are valid for the source.
// Examples:
// - http://*.example.com: Matches all attempts to load from any subdomain of example.com using the http: URL scheme.
// - mail.example.com:443: Matches all attempts to access port 443 on mail.example.com.
// - https://store.example.com: Matches all attempts to access store.example.com using https:.
//
// Sources :
// https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/default-src
// -----------------
// Process Isolation
// -----------------
//
// Pref : Separate process for protocol
// defaultPref("extensions.webextensions.protocol.remote", true); //default true
//
// Pref : Separate process for protocol extension
// defaultPref("extensions.webextensions.remote", false); //default true
//
// Process remote (separating process) can partially firewall extension by
// denying access to some moz-extension (extension internal url like settings page)
// but this is not reliable not usable for a purpose of firewalling
// Setting this to false will break moz-extension URI loading
// unless other process sandboxing and extension remoting prefs are changed.
// Note, extensions.webextensions.protocol.remote=false is for
// debugging purposes only. With process-level sandboxing, child
// processes (specifically content and extension processes), will
// not be able to load most moz-extension URI's when the pref is
// set to false.
// ------------------
// Restricted Domains
// ------------------
//
// "extensions.webextensions.restrictedDomains"
//
// gHacks set this to empty ""... this is list of blocked domain for ext.
// Default value :
// "accounts-static.cdn.mozilla.net,accounts.firefox.com,addons.cdn.mozilla.net,addons.mozilla.org,
// api.accounts.firefox.com,content.cdn.mozilla.net,content.cdn.mozilla.net,discovery.
// addons.mozilla.org,input.mozilla.org,install.mozilla.org,oauth.accounts.firefox.
// com,profile.accounts.firefox.com,support.mozilla.org,sync.services.
// mozilla.com,testpilot.firefox.com"
//
// Managed in
// AddonManagerWebAPI.cpp
// WebExtensionPolicy.cpp
//
// Check function (When fail directly return deny) :
//
// WebExtensionPolicy::IsRestrictedURI
// - Check againt restrictedDomains (false-allow) domains->Contains
// - Check if IsValidSite (deny access) (false-allow)
// --- Check if empty string --(false-allow)
// --- Check https/http --(false-allow)
// --- Check SSL --(false-allow)
// --- Allow those domain directly --(true---deny)
// "addons.mozilla.org"
// "discovery.addons.mozilla.org"
// "testpilot.firefox.com"
// --- If pref "extensions.webapi.testing" --(true---deny)
// is true, it allow access to other
// sites list
// --- Return false --(false-allow)
// - Return false (false-allow)
// -----------------
// Other Possibility
// -----------------
//
// Other possibility (securefox extension) compare requests to url... filter etc...
//
// Other possibility... recompile and make it a native feature... (may be for futur version)
// Just invert the code to be !domains->Contains and thus allow only listed domain
//
// Other hidden setting
// int dom.ipc.keepProcessesAlive.extension //hidden settings
//
// Conclusion : patching binary "IsRestrictedURI" function OR build own version
// Durable solution is to rebuild... this feature is paused until futur versions
//
// ---------------------------------------
// Pref : CSP Settings For Extensions I/II
// ---------------------------------------
//
// Default Value : "
// script-src 'self' https://* moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline';
// object-src 'self' https://* moz-extension: blob: filesystem:;
// "
//
// Default Deny Value : "
// default-src 'self' moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline';
// script-src 'self' moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline';
// object-src 'self' moz-extension: blob: filesystem:;
// "
//
// Strict Deny Value : "
// default-src 'self' moz-extension: blob: filesystem:;
// script-src 'self' moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline';
// object-src 'self' moz-extension: blob: filesystem:;
// "
//
// Super Strict Deny Value : "
// default-src 'none';
// script-src 'self' moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline';
// object-src 'self' moz-extension: blob: filesystem:;
// "

View File

@ -0,0 +1,47 @@
// https://github.com/mozilla/policy-templates/blob/master/README.md
// Extensions
// This policy controls the installation, uninstallation and locking of extensions.
// Locked extensions cannot be disabled or uninstalled. For Install, you specify a
// list of URLs or paths. For Uninstall and Locked, you specify extension IDs.
"policies": {
"Extensions": {
"Install": ["https://addons.mozilla.org/firefox/downloads/somefile.xpi", "//path/to/xpi"],
"Uninstall": ["addon_id@mozilla.org"],
"Locked": ["addon_id@mozilla.org"]
}
}
"policies": {
"WebsiteFilter": {
"Block": ["<all_urls>"],
"Exceptions": ["http://example.org/*"]
}
}
"policies": {
"SanitizeOnShutdown": [true|false]
}
// Does not seems to work to remove engines
"policies": {
"SearchEngines": {
"Add": [
{
"Name": "",
"URLTemplate": "URL including {searchTerms} to substitute for the terms",
"Method": ["GET", "POST"],
"IconURL": "URL to icon",
"Alias": "Alias that can be used to access the engine",
"Description": "Description",
"SuggestURLTemplate": "URL for suggestions using {searchTerms}"
}
],
"Default": "Name of engine",
"PreventInstalls": [true|false],
"Remove": ["Twitter", "Wikipedia (en)"]
}
}

View File

@ -0,0 +1,14 @@
--- privacy.js 2010-01-01 00:00:00.000000000 +0100
+++ privacy.patched.js 2018-12-11 17:08:48.076552654 +0100
@@ -1746,6 +1746,11 @@
});
// set initial values
+
+ // Librefox
+ if (Services.prefs.prefIsLocked("browser.safebrowsing.downloads.enabled")) {
+ enableSafeBrowsing.setAttribute("disabled", "true");
+ }
enableSafeBrowsing.checked = safeBrowsingPhishingPref.value && safeBrowsingMalwarePref.value;
if (!enableSafeBrowsing.checked) {

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

View File

@ -0,0 +1,46 @@
#!/bin/bash
# Usage: ./package_macos.sh /path/to/Firefox.dmg [--install]
# If `--install` is passed, will copy Librefox.app into /Applications.
# Otherwise, Librefox.dmg will be created next to Firefox.dmg
repo=$(git rev-parse --show-toplevel)
vol=$(hdiutil attach "$1" -shadow | tail -n 1 | cut -f 3)
app="$(basename "$vol").app"
cp "$repo/packaging/mac/background.png" "$vol/.background/"
cd "$vol"
codesign --remove-signature "$app"
cd "$app/Contents"
rm -rf _CodeSignature Library/LaunchServices/org.mozilla.updater
cd MacOS
rm -rf plugin-container.app/Contents/_CodeSignature \
crashreporter.app \
updater.app
cd ../Resources
rm -rf update-settings.ini updater.ini
cp -R "$repo/librefox/." .
cd browser/features
rm -rf aushelper@mozilla.org.xpi \
firefox@getpocket.com.xpi \
onboarding@mozilla.org.xpi
if [ "$2" == "--install" ]; then
cd "$vol"
cp -R "$app" /Applications/Librefox.app
fi
cd "$repo"
hdiutil detach "$vol"
if [ "$2" != "--install" ]; then
out_dir=$(dirname "$1")
rm -f "$out_dir/Librefox.dmg"
hdiutil convert -format UDZO -o "$out_dir/Librefox.dmg" "$1" -shadow
fi

View File

@ -0,0 +1,10 @@
// Librefox
// Librefox Compatibility Fix
user_pref("extensions.autoDisableScopes", 0);
// Removing https-everywhere adding 2 librefox addons
user_pref("extensions.enabledAddons", "librefox.http.watcher.tor%40intika.be:2.8,%7Befd1ce61-97d1-4b4f-a378-67d0d41d858d%7D:1.2,%7B73a6fe31-595d-460b-a920-fcc0f8843232%7D:2.6.6.1,torbutton%40torproject.org:1.5.2,ubufox%40ubuntu.com:2.6,tor-launcher%40torproject.org:0.1.1pre-alpha,%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:17.0.5");
// Icons arrangement
user_pref("browser.uiCustomization.state", '{"placements":{"widget-overflow-fixed-list":[],"nav-bar":["back-button","forward-button","stop-reload-button","urlbar-container","downloads-button","_73a6fe31-595d-460b-a920-fcc0f8843232_-browser-action","_efd1ce61-97d1-4b4f-a378-67d0d41d858d_-browser-action","torbutton-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"],"PanelUI-contents":["home-button","edit-controls","zoom-controls","new-window-button","save-page-button","print-button","bookmarks-menu-button","history-panelmenu","find-button","preferences-button","add-ons-button","developer-button","https-everywhere-button"],"addon-bar":["addonbar-closebutton","status-bar"]},"seen":["developer-button","_73a6fe31-595d-460b-a920-fcc0f8843232_-browser-action"],"dirtyAreaCache":["PersonalToolbar","nav-bar","TabsToolbar","toolbar-menubar"],"currentVersion":14,"newElementCount":3}');

View File

@ -0,0 +1,3 @@
@echo off
REM wscript Browser\link.vbs %USERPROFILE%\Desktop\Librefox-Tor.lnk Browser\firefox.exe
wscript Browser\link.vbs Librefox-Tor.lnk Browser\firefox.exe

View File

@ -0,0 +1,9 @@
set fs = CreateObject("Scripting.FileSystemObject")
set ws = WScript.CreateObject("WScript.Shell")
set arg = Wscript.Arguments
linkFile = arg(0)
set link = ws.CreateShortcut(linkFile)
link.TargetPath = fs.BuildPath(ws.CurrentDirectory, arg(1))
link.Save

4
branding/README.md Normal file
View File

@ -0,0 +1,4 @@
## Branding
This folder contains all related icons, artwork, images and media related to LibreWolf.
If editing these files, avoid changing the names as scripts in the "browser" folder uses these to generate the browser branding

90
branding/icon/icon.svg Normal file
View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="67.733337mm"
height="67.733337mm"
viewBox="0 0 67.733337 67.733337"
version="1.1"
id="svg8"
inkscape:version="0.92.4 5da689c313, 2019-01-14"
sodipodi:docname="LibreWolf.svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.9899495"
inkscape:cx="-15.106575"
inkscape:cy="110.91343"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1366"
inkscape:window-height="711"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
units="px"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-42.106554,-153.8982)">
<circle
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:0.53545821;stroke-miterlimit:4;stroke-dasharray:none"
id="path875"
cx="75.973221"
cy="187.76486"
r="33.866669" />
<path
style="fill:#ffffff;stroke-width:0.13229167"
d="m 72.543594,214.67719 c -4.744093,-0.60875 -9.281981,-2.49991 -13.241953,-5.51858 -1.29157,-0.98455 -3.714943,-3.42363 -4.772834,-4.80375 -2.96241,-3.86476 -4.804479,-8.2508 -5.41218,-12.88661 -0.260164,-1.98464 -0.258719,-5.63349 0.0029,-7.44738 1.308078,-9.0677 7.01463,-16.8454 15.20915,-20.72918 3.811512,-1.80647 7.300266,-2.57114 11.730683,-2.57114 7.165903,0 13.5265,2.56749 18.680882,7.54063 2.483054,2.39575 4.148141,4.66808 5.573968,7.60677 1.92868,3.9751 2.70979,7.43276 2.70979,11.99526 0,6.00619 -1.7345,11.24407 -5.336957,16.11672 -1.070527,1.44797 -3.161747,3.64749 -4.549468,4.78507 -3.806562,3.12041 -8.658642,5.23183 -13.473174,5.86296 -1.663528,0.21807 -5.593318,0.24524 -7.120854,0.0492 z m 10.041381,-4.86547 c 2.898391,-0.91366 5.260364,-2.14146 7.540624,-3.91979 1.212494,-0.9456 3.308223,-3.06144 4.186916,-4.22711 2.38328,-3.16162 4.004927,-7.12196 4.482067,-10.94597 0.229814,-1.84182 0.09634,-5.73827 -0.2545,-7.4296 -0.9294,-4.48046 -2.931647,-8.26499 -6.086007,-11.50342 -1.966575,-2.01898 -3.756882,-3.34972 -6.060203,-4.50458 -3.495001,-1.75236 -6.489835,-2.46043 -10.423481,-2.46442 -4.164073,-0.004 -7.815325,0.95024 -11.429055,2.98766 -3.289753,1.85476 -6.690628,5.25952 -8.553227,8.563 -1.371786,2.43299 -2.37583,5.32029 -2.767595,7.95869 -0.256867,1.72991 -0.261933,5.16508 -0.01006,6.82145 0.504067,3.31489 1.761474,6.59111 3.584314,9.33904 0.995409,1.50058 0.964154,1.48393 1.842248,0.98153 1.570774,-0.8987 1.980396,-1.33342 2.836087,-3.00984 1.000624,-1.96036 2.070459,-3.6735 3.037094,-4.86332 1.115822,-1.37347 1.269228,-1.61793 1.828988,-2.9147 0.281654,-0.65249 0.786977,-1.61074 1.122938,-2.12943 l 0.61084,-0.94309 -0.79023,-0.77671 c -1.049647,-1.03168 -1.922751,-2.2016 -2.087012,-2.79651 -0.167761,-0.60758 0.03021,-0.9466 0.818744,-1.40207 0.797354,-0.46057 1.367585,-0.5929 3.498657,-0.81193 1.037629,-0.10665 2.164153,-0.30199 2.518962,-0.43681 0.353024,-0.13414 1.407825,-0.70824 2.344001,-1.27579 2.702947,-1.63863 2.931619,-1.72344 4.552111,-1.68831 1.368686,0.0297 1.371262,0.0291 2.182813,-0.46143 1.700674,-1.02802 4.14305,-2.88289 7.357044,-5.58733 0.61632,-0.5186 1.21002,-0.92569 1.31934,-0.90464 0.45462,0.0876 1.289567,2.13636 1.416407,3.47562 0.07693,0.81225 -0.08023,1.6155 -0.562014,2.87261 -0.13146,0.34301 -0.19208,0.67043 -0.134706,0.7276 0.13774,0.13726 0.610706,-0.4535 0.610706,-0.76279 0,-0.39435 0.261127,-0.43936 0.616327,-0.10623 0.258235,0.24218 0.480842,0.31151 1.000202,0.31151 0.567073,0 0.707447,0.0526 0.928773,0.3479 0.375574,0.50112 0.463647,1.86688 0.176201,2.73231 -0.279641,0.84191 -1.124801,1.81287 -1.891829,2.17341 -0.686334,0.32262 -2.075841,1.67928 -2.726081,2.66164 -0.248906,0.37604 -0.715586,1.15995 -1.037066,1.74204 -0.321487,0.58208 -0.86074,1.46154 -1.19834,1.95436 -0.664294,0.96972 -1.233147,2.3224 -1.782214,4.23798 -0.322553,1.1253 -0.34962,1.41826 -0.362953,3.92797 -0.01613,3.0317 -0.172894,3.77561 -0.9925,4.7091 -0.931805,1.06126 -1.861937,3.39186 -1.940127,4.8613 -0.04935,0.92751 -0.192246,1.83164 -0.395304,2.50122 -0.08942,0.29484 0.07752,0.2914 1.072102,-0.0221 z"
id="path847"
inkscape:connector-curvature="0" />
<path
sodipodi:type="star"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
id="path814"
sodipodi:sides="4"
sodipodi:cx="18.854025"
sodipodi:cy="172.98837"
sodipodi:r1="1.6036172"
sodipodi:r2="1.1339285"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.3561945"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 18.854025,174.59199 -1.603617,-1.60362 1.603617,-1.60361 1.603617,1.60361 z"
transform="matrix(0.23203125,0.40188991,-0.99392962,0.57384553,246.21921,73.888081)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="67.733337mm"
height="67.733337mm"
viewBox="0 0 67.733337 67.733337"
version="1.1"
id="svg8"
inkscape:version="0.92.4 5da689c313, 2019-01-14"
sodipodi:docname="LibreWolf.svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4"
inkscape:cx="187.46066"
inkscape:cy="134.07761"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1366"
inkscape:window-height="711"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
units="px"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-42.106554,-153.8982)">
<path
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:2.02377915;stroke-miterlimit:4;stroke-dasharray:none"
d="M 128 0 A 128.00001 128.00001 0 0 0 0 128 A 128.00001 128.00001 0 0 0 128 256 A 128.00001 128.00001 0 0 0 256 128 A 128.00001 128.00001 0 0 0 128 0 z M 128.32617 25.785156 C 155.4099 25.785156 179.44856 35.489037 198.92969 54.285156 C 208.31446 63.339959 214.60909 71.928296 219.99805 83.035156 C 227.28755 98.059156 230.23828 111.127 230.23828 128.37109 C 230.23828 151.07165 223.68394 170.86884 210.06836 189.28516 C 206.02227 194.7578 198.11798 203.07158 192.87305 207.37109 C 178.48604 219.16477 160.14783 227.14392 141.95117 229.5293 C 135.66382 230.3535 120.81047 230.45578 115.03711 229.71484 L 115.03711 229.7168 C 97.106679 227.41601 79.957058 220.26657 64.990234 208.85742 C 60.10871 205.13629 50.9495 195.91933 46.951172 190.70312 C 35.754662 176.09617 28.790963 159.51727 26.494141 141.99609 C 25.510844 134.49509 25.517063 120.70526 26.505859 113.84961 C 31.449776 79.577987 53.016868 50.18276 83.988281 35.503906 C 98.393996 28.676303 111.58129 25.785156 128.32617 25.785156 z M 127.99023 41.267578 C 112.25201 41.25246 98.451161 44.858109 84.792969 52.558594 C 72.359257 59.56871 59.504588 72.438234 52.464844 84.923828 C 47.280141 94.119381 43.486546 105.032 42.005859 115.00391 C 41.035023 121.54215 41.014836 134.52486 41.966797 140.78516 C 43.871932 153.31387 48.624198 165.69615 55.513672 176.08203 C 59.275848 181.75351 59.157783 181.6918 62.476562 179.79297 C 68.413346 176.39631 69.963158 174.75209 73.197266 168.41602 C 76.979152 161.00678 81.022358 154.53211 84.675781 150.03516 C 88.893061 144.84409 89.472262 143.92071 91.587891 139.01953 C 92.65241 136.55343 94.562257 132.93111 95.832031 130.9707 L 98.140625 127.40625 L 95.154297 124.4707 C 91.187127 120.57144 87.886454 116.14887 87.265625 113.90039 C 86.631568 111.60403 87.381042 110.32302 90.361328 108.60156 C 93.37495 106.86083 95.529543 106.36103 103.58398 105.5332 C 107.50573 105.13012 111.76251 104.39237 113.10352 103.88281 C 114.43778 103.37583 118.42459 101.20562 121.96289 99.060547 C 132.17875 92.8673 133.04327 92.546913 139.16797 92.679688 C 144.34096 92.791938 144.35069 92.789519 147.41797 90.935547 C 153.84571 87.050117 163.07723 80.039865 175.22461 69.818359 C 177.55401 67.858296 179.79776 66.318878 180.21094 66.398438 C 181.92919 66.729523 185.08506 74.473386 185.56445 79.535156 C 185.85521 82.605078 185.26037 85.641296 183.43945 90.392578 C 182.9426 91.688994 182.71479 92.926503 182.93164 93.142578 C 183.45223 93.661356 185.24023 91.428736 185.24023 90.259766 C 185.24023 88.769309 186.22587 88.598348 187.56836 89.857422 C 188.54437 90.772748 189.38667 91.035156 191.34961 91.035156 C 193.49288 91.035156 194.02287 91.233515 194.85938 92.349609 C 196.27886 94.243606 196.6118 99.406822 195.52539 102.67773 C 194.46848 105.85976 191.274 109.52796 188.375 110.89062 C 185.78098 112.10998 180.52987 117.23832 178.07227 120.95117 C 177.13152 122.37243 175.36739 125.33513 174.15234 127.53516 C 172.93727 129.73514 170.89902 133.05925 169.62305 134.92188 C 167.11233 138.58695 164.96193 143.69947 162.88672 150.93945 C 161.66762 155.19256 161.56602 156.29964 161.51562 165.78516 C 161.45467 177.24355 160.8614 180.05583 157.76367 183.58398 C 154.24189 187.59505 150.72716 196.40324 150.43164 201.95703 C 150.24512 205.46258 149.70496 208.87946 148.9375 211.41016 C 148.59953 212.52451 149.23118 212.51105 152.99023 211.32617 C 163.94478 207.87297 172.87193 203.23297 181.49023 196.51172 C 186.07289 192.9378 193.99341 184.94084 197.31445 180.53516 C 206.32213 168.58573 212.45054 153.61701 214.25391 139.16406 C 215.12249 132.20285 214.61898 117.47641 213.29297 111.08398 C 209.78028 94.149967 202.21105 79.847157 190.28906 67.607422 C 182.85634 59.976631 176.09023 54.946856 167.38477 50.582031 C 154.17531 43.958938 142.85756 41.282658 127.99023 41.267578 z M 144.16211 97.949219 L 136.73242 98.990234 L 132.11328 104.9043 L 139.54492 103.86133 L 144.16211 97.949219 z "
transform="matrix(0.26458333,0,0,0.26458333,42.106554,153.8982)"
id="path875" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.8 KiB

159
branding/logo/Logo.svg Normal file
View File

@ -0,0 +1,159 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="314.78802mm"
height="67.733337mm"
viewBox="0 0 314.78802 67.733337"
version="1.1"
id="svg8"
inkscape:version="0.92.4 5da689c313, 2019-01-14"
sodipodi:docname="Logo (Pre Merging variant 2).svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.35"
inkscape:cx="187.36648"
inkscape:cy="312.95353"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1366"
inkscape:window-height="711"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
units="px"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
showguides="true"
inkscape:guide-bbox="true"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true">
<sodipodi:guide
position="5.6059918,150.21715"
orientation="1,0"
id="guide869"
inkscape:locked="false" />
<sodipodi:guide
position="309.18215,150.21715"
orientation="1,0"
id="guide871"
inkscape:locked="false" />
<sodipodi:guide
position="73.339052,116.35049"
orientation="1,0"
id="guide823"
inkscape:locked="false" />
<sodipodi:guide
position="278.22089,116.35049"
orientation="1,0"
id="guide825"
inkscape:locked="false" />
<sodipodi:guide
position="309.18227,116.35049"
orientation="0,1"
id="guide827"
inkscape:locked="false" />
</sodipodi:namedview>
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-141.21625,-244.81668)">
<g
id="g830"
transform="translate(0,-13.522126)">
<rect
ry="33.866665"
y="258.33881"
x="141.21625"
height="67.73333"
width="314.78802"
id="rect815"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:4.0283823;stroke-miterlimit:4;stroke-dasharray:none" />
<rect
ry="27.044252"
y="265.16122"
x="148.03986"
height="54.088505"
width="301.14081"
id="rect815-3"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3.52093244;stroke-miterlimit:4;stroke-dasharray:none" />
</g>
<g
id="g898"
transform="translate(-5.6059837,116.35049)">
<ellipse
ry="33.866669"
rx="33.866535"
cy="162.33286"
cx="180.68877"
id="path875"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:0.53545713;stroke-miterlimit:4;stroke-dasharray:none" />
<path
inkscape:connector-curvature="0"
id="path847"
d="m 177.2593,189.24526 c -4.74409,-0.60875 -9.28199,-2.4999 -13.24196,-5.51857 -1.29157,-0.98454 -3.71494,-3.42362 -4.77283,-4.80374 -2.96242,-3.86475 -4.80449,-8.25078 -5.41219,-12.88658 -0.26017,-1.98463 -0.25872,-5.63348 0.003,-7.44736 1.30807,-9.06768 7.01464,-16.84537 15.20917,-20.72914 3.81151,-1.80647 7.30026,-2.57113 11.73069,-2.57113 7.1659,0 13.52651,2.56748 18.68089,7.54061 2.48307,2.39574 4.14815,4.66807 5.57398,7.60675 1.92868,3.9751 2.70979,7.43275 2.70979,11.99524 0,6.00618 -1.7345,11.24405 -5.33696,16.11669 -1.07052,1.44796 -3.16175,3.64748 -4.54948,4.78506 -3.80656,3.1204 -8.65865,5.23181 -13.47318,5.86294 -1.66353,0.21807 -5.59333,0.24524 -7.12086,0.0492 z m 10.04139,-4.86546 c 2.89841,-0.91365 5.26038,-2.14145 7.54064,-3.91978 1.21249,-0.9456 3.30822,-3.06143 4.18691,-4.2271 2.38329,-3.16161 4.00494,-7.12194 4.48208,-10.94595 0.22982,-1.84181 0.0963,-5.73826 -0.2545,-7.42958 -0.9294,-4.48045 -2.93165,-8.26497 -6.08602,-11.5034 -1.96657,-2.01897 -3.75688,-3.34971 -6.0602,-4.50457 -3.49501,-1.75235 -6.48984,-2.46042 -10.42349,-2.46441 -4.16408,-0.004 -7.81533,0.95023 -11.42906,2.98765 -3.28977,1.85476 -6.69064,5.25951 -8.55324,8.56298 -1.37179,2.43299 -2.37584,5.32028 -2.76761,7.95868 -0.25686,1.7299 -0.26193,5.16507 -0.0101,6.82143 0.50407,3.31489 1.76149,6.5911 3.58433,9.33902 0.99541,1.50058 0.96415,1.48393 1.84225,0.98153 1.57077,-0.8987 1.98039,-1.33342 2.83608,-3.00983 1.00063,-1.96036 2.07046,-3.6735 3.03711,-4.86331 1.11582,-1.37347 1.26922,-1.61793 1.82898,-2.9147 0.28166,-0.65249 0.78698,-1.61073 1.12294,-2.12942 l 0.61084,-0.94309 -0.79023,-0.77671 c -1.04964,-1.03168 -1.92275,-2.20159 -2.08701,-2.7965 -0.16776,-0.60758 0.0302,-0.9466 0.81874,-1.40207 0.79736,-0.46057 1.36759,-0.5929 3.49866,-0.81193 1.03763,-0.10665 2.16415,-0.30199 2.51896,-0.43681 0.35303,-0.13414 1.40783,-0.70824 2.344,-1.27578 2.70296,-1.63863 2.93163,-1.72344 4.55213,-1.68831 1.36868,0.0297 1.37126,0.0291 2.18281,-0.46143 1.70067,-1.02802 4.14306,-2.88288 7.35705,-5.58732 0.61632,-0.5186 1.21002,-0.92569 1.31934,-0.90464 0.45462,0.0876 1.28957,2.13636 1.41641,3.47562 0.0769,0.81224 -0.0802,1.61549 -0.56201,2.8726 -0.13146,0.34301 -0.19208,0.67043 -0.13471,0.7276 0.13774,0.13726 0.61071,-0.4535 0.61071,-0.76279 0,-0.39435 0.26112,-0.43936 0.61632,-0.10623 0.25824,0.24218 0.48084,0.31151 1.0002,0.31151 0.56708,0 0.70745,0.0526 0.92878,0.3479 0.37557,0.50112 0.46364,1.86687 0.1762,2.7323 -0.27964,0.84191 -1.1248,1.81287 -1.89183,2.17341 -0.68633,0.32262 -2.07584,1.67928 -2.72608,2.66163 -0.24891,0.37604 -0.71559,1.15995 -1.03707,1.74204 -0.32148,0.58208 -0.86074,1.46154 -1.19834,1.95436 -0.66429,0.96971 -1.23314,2.32239 -1.78221,4.23797 -0.32255,1.12529 -0.34962,1.41825 -0.36295,3.92796 -0.0161,3.03169 -0.1729,3.7756 -0.99251,4.70909 -0.93181,1.06126 -1.86194,3.39185 -1.94013,4.86129 -0.0494,0.92751 -0.19225,1.83163 -0.39531,2.50121 -0.0894,0.29484 0.0775,0.2914 1.07211,-0.0221 z"
style="fill:#ffffff;stroke-width:0.13229167" />
<path
transform="matrix(0.23203125,0.40188991,-0.99392962,0.57384553,350.9349,48.456078)"
d="m 18.854025,174.59199 -1.603617,-1.60362 1.603617,-1.60361 1.603617,1.60361 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="2.3561945"
sodipodi:arg1="1.5707963"
sodipodi:r2="1.1339285"
sodipodi:r1="1.6036172"
sodipodi:cy="172.98837"
sodipodi:cx="18.854025"
sodipodi:sides="4"
id="path814"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star" />
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
x="208.94958"
y="296.53955"
id="text819"><tspan
sodipodi:role="line"
x="208.94958"
y="296.53955"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.79999924px;font-family:Rajdhani;-inkscape-font-specification:'Rajdhani Bold';fill:#00acff;fill-opacity:1;stroke-width:0.26458332"
id="tspan853"> LibreWolf </tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

BIN
branding/logo/Logo.svg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 16 KiB

1
branding/logo/Notes Normal file
View File

@ -0,0 +1 @@
Font used is Rajandi

150
branding/logo_2/Logo.svg Normal file
View File

@ -0,0 +1,150 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="292.36459mm"
height="67.733337mm"
viewBox="0 0 292.36459 67.733336"
version="1.1"
id="svg8"
inkscape:version="0.92.4 5da689c313, 2019-01-14"
sodipodi:docname="Logo (Pre Merging).svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.35"
inkscape:cx="279.50002"
inkscape:cy="312.95353"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1366"
inkscape:window-height="711"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
units="px"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
showguides="false"
inkscape:guide-bbox="true"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true">
<sodipodi:guide
position="5.605989,150.21715"
orientation="1,0"
id="guide869"
inkscape:locked="false" />
<sodipodi:guide
position="309.18215,150.21715"
orientation="1,0"
id="guide871"
inkscape:locked="false" />
<sodipodi:guide
position="73.339049,116.35049"
orientation="1,0"
id="guide823"
inkscape:locked="false" />
<sodipodi:guide
position="278.22089,116.35049"
orientation="1,0"
id="guide825"
inkscape:locked="false" />
<sodipodi:guide
position="309.18227,116.35049"
orientation="0,1"
id="guide827"
inkscape:locked="false" />
</sodipodi:namedview>
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-141.21625,-244.81668)">
<g
id="g898"
transform="translate(-5.6059837,116.35049)">
<ellipse
ry="33.866669"
rx="33.866535"
cy="162.33286"
cx="180.68877"
id="path875"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:0.53545713;stroke-miterlimit:4;stroke-dasharray:none" />
<path
inkscape:connector-curvature="0"
id="path847"
d="m 177.2593,189.24526 c -4.74409,-0.60875 -9.28199,-2.4999 -13.24196,-5.51857 -1.29157,-0.98454 -3.71494,-3.42362 -4.77283,-4.80374 -2.96242,-3.86475 -4.80449,-8.25078 -5.41219,-12.88658 -0.26017,-1.98463 -0.25872,-5.63348 0.003,-7.44736 1.30807,-9.06768 7.01464,-16.84537 15.20917,-20.72914 3.81151,-1.80647 7.30026,-2.57113 11.73069,-2.57113 7.1659,0 13.52651,2.56748 18.68089,7.54061 2.48307,2.39574 4.14815,4.66807 5.57398,7.60675 1.92868,3.9751 2.70979,7.43275 2.70979,11.99524 0,6.00618 -1.7345,11.24405 -5.33696,16.11669 -1.07052,1.44796 -3.16175,3.64748 -4.54948,4.78506 -3.80656,3.1204 -8.65865,5.23181 -13.47318,5.86294 -1.66353,0.21807 -5.59333,0.24524 -7.12086,0.0492 z m 10.04139,-4.86546 c 2.89841,-0.91365 5.26038,-2.14145 7.54064,-3.91978 1.21249,-0.9456 3.30822,-3.06143 4.18691,-4.2271 2.38329,-3.16161 4.00494,-7.12194 4.48208,-10.94595 0.22982,-1.84181 0.0963,-5.73826 -0.2545,-7.42958 -0.9294,-4.48045 -2.93165,-8.26497 -6.08602,-11.5034 -1.96657,-2.01897 -3.75688,-3.34971 -6.0602,-4.50457 -3.49501,-1.75235 -6.48984,-2.46042 -10.42349,-2.46441 -4.16408,-0.004 -7.81533,0.95023 -11.42906,2.98765 -3.28977,1.85476 -6.69064,5.25951 -8.55324,8.56298 -1.37179,2.43299 -2.37584,5.32028 -2.76761,7.95868 -0.25686,1.7299 -0.26193,5.16507 -0.0101,6.82143 0.50407,3.31489 1.76149,6.5911 3.58433,9.33902 0.99541,1.50058 0.96415,1.48393 1.84225,0.98153 1.57077,-0.8987 1.98039,-1.33342 2.83608,-3.00983 1.00063,-1.96036 2.07046,-3.6735 3.03711,-4.86331 1.11582,-1.37347 1.26922,-1.61793 1.82898,-2.9147 0.28166,-0.65249 0.78698,-1.61073 1.12294,-2.12942 l 0.61084,-0.94309 -0.79023,-0.77671 c -1.04964,-1.03168 -1.92275,-2.20159 -2.08701,-2.7965 -0.16776,-0.60758 0.0302,-0.9466 0.81874,-1.40207 0.79736,-0.46057 1.36759,-0.5929 3.49866,-0.81193 1.03763,-0.10665 2.16415,-0.30199 2.51896,-0.43681 0.35303,-0.13414 1.40783,-0.70824 2.344,-1.27578 2.70296,-1.63863 2.93163,-1.72344 4.55213,-1.68831 1.36868,0.0297 1.37126,0.0291 2.18281,-0.46143 1.70067,-1.02802 4.14306,-2.88288 7.35705,-5.58732 0.61632,-0.5186 1.21002,-0.92569 1.31934,-0.90464 0.45462,0.0876 1.28957,2.13636 1.41641,3.47562 0.0769,0.81224 -0.0802,1.61549 -0.56201,2.8726 -0.13146,0.34301 -0.19208,0.67043 -0.13471,0.7276 0.13774,0.13726 0.61071,-0.4535 0.61071,-0.76279 0,-0.39435 0.26112,-0.43936 0.61632,-0.10623 0.25824,0.24218 0.48084,0.31151 1.0002,0.31151 0.56708,0 0.70745,0.0526 0.92878,0.3479 0.37557,0.50112 0.46364,1.86687 0.1762,2.7323 -0.27964,0.84191 -1.1248,1.81287 -1.89183,2.17341 -0.68633,0.32262 -2.07584,1.67928 -2.72608,2.66163 -0.24891,0.37604 -0.71559,1.15995 -1.03707,1.74204 -0.32148,0.58208 -0.86074,1.46154 -1.19834,1.95436 -0.66429,0.96971 -1.23314,2.32239 -1.78221,4.23797 -0.32255,1.12529 -0.34962,1.41825 -0.36295,3.92796 -0.0161,3.03169 -0.1729,3.7756 -0.99251,4.70909 -0.93181,1.06126 -1.86194,3.39185 -1.94013,4.86129 -0.0494,0.92751 -0.19225,1.83163 -0.39531,2.50121 -0.0894,0.29484 0.0775,0.2914 1.07211,-0.0221 z"
style="fill:#ffffff;stroke-width:0.13229167" />
<path
transform="matrix(0.23203125,0.40188991,-0.99392962,0.57384553,350.9349,48.456078)"
d="m 18.854025,174.59199 -1.603617,-1.60362 1.603617,-1.60361 1.603617,1.60361 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="true"
sodipodi:arg2="2.3561945"
sodipodi:arg1="1.5707963"
sodipodi:r2="1.1339285"
sodipodi:r1="1.6036172"
sodipodi:cy="172.98837"
sodipodi:cx="18.854025"
sodipodi:sides="4"
id="path814"
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star" />
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
x="208.94958"
y="296.53955"
id="text819"><tspan
sodipodi:role="line"
x="208.94958"
y="296.53955"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.79999924px;font-family:Rajdhani;-inkscape-font-specification:'Rajdhani Bold';fill:#00acff;fill-opacity:1;stroke-width:0.26458332"
id="tspan853"> LibreWolf </tspan></text>
<flowRoot
xml:space="preserve"
id="flowRoot826"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
transform="matrix(0.26458333,0,0,0.26458333,208.94958,260.82715)"><flowRegion
id="flowRegion828"><rect
id="rect830"
width="180"
height="148.57143"
x="-325.71429"
y="-259.30972" /></flowRegion><flowPara
id="flowPara832"></flowPara></flowRoot> </g>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="292.36459mm"
height="67.733337mm"
viewBox="0 0 292.36459 67.733336"
version="1.1"
id="svg8"
inkscape:version="0.92.4 5da689c313, 2019-01-14"
sodipodi:docname="Logo.svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4"
inkscape:cx="261.1233"
inkscape:cy="69.658245"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1366"
inkscape:window-height="711"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
units="px"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
showguides="false"
inkscape:guide-bbox="true"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true">
<sodipodi:guide
position="5.605989,150.21715"
orientation="1,0"
id="guide869"
inkscape:locked="false" />
<sodipodi:guide
position="309.18215,150.21715"
orientation="1,0"
id="guide871"
inkscape:locked="false" />
<sodipodi:guide
position="73.339049,116.35049"
orientation="1,0"
id="guide823"
inkscape:locked="false" />
<sodipodi:guide
position="278.22089,116.35049"
orientation="1,0"
id="guide825"
inkscape:locked="false" />
<sodipodi:guide
position="309.18227,116.35049"
orientation="0,1"
id="guide827"
inkscape:locked="false" />
</sodipodi:namedview>
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-141.21625,-244.81668)">
<path
style="fill:#00acff;fill-opacity:1;stroke:none;stroke-width:2.0237751;stroke-miterlimit:4;stroke-dasharray:none"
d="M 128 0 A 127.9995 128.00001 0 0 0 0 128 A 127.9995 128.00001 0 0 0 128 256 A 127.9995 128.00001 0 0 0 255.99805 128 A 127.9995 128.00001 0 0 0 128 0 z M 128.32617 25.785156 C 155.40989 25.785156 179.45052 35.489074 198.93164 54.285156 C 208.31647 63.339922 214.60908 71.928334 219.99805 83.035156 C 227.28755 98.059156 230.24023 111.12899 230.24023 128.37305 C 230.24023 151.07357 223.68396 170.86888 210.06836 189.28516 C 206.0223 194.75776 198.11801 203.07158 192.87305 207.37109 C 178.48605 219.16473 160.14782 227.14392 141.95117 229.5293 C 135.66381 230.3535 120.81045 230.45774 115.03711 229.7168 C 97.10669 227.41601 79.95705 220.26851 64.990234 208.85938 C 60.10871 205.13828 50.949496 195.91933 46.951172 190.70312 C 35.754624 176.09621 28.79096 159.51918 26.494141 141.99805 C 25.510821 134.49708 25.516681 120.70522 26.505859 113.84961 C 31.449746 79.578063 53.018783 50.182722 83.990234 35.503906 C 98.395941 28.676303 111.58124 25.785156 128.32617 25.785156 z M 127.99023 41.267578 C 112.25198 41.25246 98.451161 44.860062 84.792969 52.560547 C 72.359192 59.570663 59.504592 72.438272 52.464844 84.923828 C 47.280126 94.119381 43.486565 105.032 42.005859 115.00391 C 41.03505 121.54211 41.014998 134.5249 41.966797 140.78516 C 43.871943 153.31387 48.624198 165.69619 55.513672 176.08203 C 59.275851 181.75351 59.15776 181.6918 62.476562 179.79297 C 68.413331 176.39631 69.963162 174.75205 73.197266 168.41602 C 76.979174 161.00678 81.022301 154.53208 84.675781 150.03516 C 88.893054 144.84409 89.472262 143.92071 91.587891 139.01953 C 92.652432 136.55343 94.562261 132.93111 95.832031 130.9707 L 98.140625 127.40625 L 95.154297 124.4707 C 91.187154 120.57144 87.88645 116.15082 87.265625 113.90234 C 86.631571 111.60598 87.381019 110.32498 90.361328 108.60352 C 93.374972 106.86278 95.529551 106.36103 103.58398 105.5332 C 107.50574 105.13012 111.7625 104.39237 113.10352 103.88281 C 114.4378 103.37583 118.42461 101.20558 121.96289 99.060547 C 132.1788 92.8673 133.04324 92.546913 139.16797 92.679688 C 144.34093 92.791938 144.35069 92.789519 147.41797 90.935547 C 153.8457 87.050117 163.07725 80.039865 175.22461 69.818359 C 177.55401 67.858296 179.79776 66.320832 180.21094 66.400391 C 181.92919 66.731477 185.08506 74.473386 185.56445 79.535156 C 185.8551 82.60504 185.26047 85.641296 183.43945 90.392578 C 182.9426 91.688994 182.71481 92.926503 182.93164 93.142578 C 183.45223 93.661356 185.24023 91.428736 185.24023 90.259766 C 185.24023 88.769309 186.22587 88.600301 187.56836 89.859375 C 188.54438 90.774701 189.38667 91.035156 191.34961 91.035156 C 193.4929 91.035156 194.02285 91.235469 194.85938 92.351562 C 196.27884 94.245559 196.61178 99.406822 195.52539 102.67773 C 194.46848 105.85976 191.27401 109.52991 188.375 110.89258 C 185.781 112.11193 180.52987 117.23835 178.07227 120.95117 C 177.1315 122.37243 175.36739 125.33513 174.15234 127.53516 C 172.9373 129.73514 170.89902 133.05925 169.62305 134.92188 C 167.11234 138.58691 164.96194 143.69947 162.88672 150.93945 C 161.66763 155.19252 161.56601 156.29964 161.51562 165.78516 C 161.45478 177.24351 160.86141 180.05583 157.76367 183.58398 C 154.24187 187.59505 150.72716 196.40324 150.43164 201.95703 C 150.24493 205.46258 149.70497 208.87946 148.9375 211.41016 C 148.59961 212.52451 149.23108 212.51105 152.99023 211.32617 C 163.94485 207.87301 172.87193 203.23297 181.49023 196.51172 C 186.07287 192.9378 193.99342 184.94084 197.31445 180.53516 C 206.32216 168.58576 212.45054 153.61897 214.25391 139.16602 C 215.12252 132.20484 214.61883 117.47637 213.29297 111.08398 C 209.78028 94.150005 202.21109 79.847157 190.28906 67.607422 C 182.85636 59.976669 176.09023 54.946856 167.38477 50.582031 C 154.17528 43.958976 142.85757 41.282658 127.99023 41.267578 z M 144.16211 97.949219 L 136.73242 98.990234 L 132.11523 104.9043 L 139.54492 103.86133 L 144.16211 97.949219 z "
transform="matrix(0.26458333,0,0,0.26458333,141.21625,244.81668)"
id="path875" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
x="208.94958"
y="296.53955"
id="text819"><tspan
sodipodi:role="line"
x="208.94958"
y="296.53955"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.79999924px;font-family:Rajdhani;-inkscape-font-specification:'Rajdhani Bold';fill:#00acff;fill-opacity:1;stroke-width:0.26458332"
id="tspan853"> LibreWolf </tspan></text>
<flowRoot
xml:space="preserve"
id="flowRoot826"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
transform="matrix(0.26458333,0,0,0.26458333,208.94958,260.82715)"><flowRegion
id="flowRegion828"><rect
id="rect830"
width="180"
height="148.57143"
x="-325.71429"
y="-259.30972" /></flowRegion><flowPara
id="flowPara832" /></flowRoot> </g>
</svg>

After

Width:  |  Height:  |  Size: 7.9 KiB

1
branding/logo_2/Notes Normal file
View File

@ -0,0 +1 @@
Font used is Rajandi

14
browser/README.md Normal file
View File

@ -0,0 +1,14 @@
This folder contains all the required material to build the browser.
### Requirements
* Ubuntu or Linux Mint
### Notes
* As this script installs files during the build, it is recommended to run this script in a VM or installation dedicated to building.
* You will occassionally need to enter your sudo password. Running this script as root has not been tested
* This script has been tested with Linux Mint 19.1
### Instructions
* Run build.sh inside this folder.

52
browser/build.sh Executable file
View File

@ -0,0 +1,52 @@
#!/bin/bash
# PREBUILD ########################################################################################
# Prevents build from breaking in CI/CD environments
export SHELL=/bin/bash;
# Downloads and immediately runs bootstrapper to install dependencies.
wget -nv -O - \
https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py \
| python - --application-choice=browser --no-interactive;
# adds the new rust install to PATH
. $HOME/.cargo/env;
# Downloads further dependencies
sudo apt install inkscape;
# BUILD ###########################################################################################
# Creates and enters the folder where compiling will take place
mkdir work_dir;
cd work_dir;
# Clones the firefox source code for compiling
hg clone https://hg.mozilla.org/releases/mozilla-release;
# Generates and extracts our branding to the source code, changing it from firefox to librewolf
../scripts/generate_icons.sh;
cp -r ../source_files/* mozilla-release;
# Bootstraps, builds and packages librewolf
cd mozilla-release;
./mach bootstrap --application-choice=browser --no-interactive;
./mach build;
./mach package;
# POSTBUILD #######################################################################################
# moves the packaged tarball to the main folder
cd ../../;
cp ./work_dir/mozilla-release/obj*/dist/librewolf*.tar.bz2 ./;
# Adds the librefox config files to the packaged tarball
PACKAGE_FILE_NAME="librewolf*.tar.bz2";
tar -xvf ./$PACKAGE_FILE_NAME;
cp -r ../settings/* ./librewolf;
tar -jcvf ./$PACKAGE_FILE_NAME librewolf;
rm -rvf ./librewolf;
# Cleanup #########################################################################################
# todo: remove work dir

View File

@ -0,0 +1,23 @@
#!/bin/bash
SRC_DIR=`dirname $0`;
# update these if the location/name of this script, the main icon file or the branding folder changes
ICON_FILE_PATH=$SRC_DIR/../../branding/icon/icon.svg;
BRANDING_FOLDER_PATH=$SRC_DIR/../source_files/browser/branding/librewolf;
# generate icons and moves them to the branding folder
echo Generating icons from $ICON_FILE_PATH and moving to $BRANDING_FOLDER_PATH;
# Linux Icons
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/default16.png --export-width=16 --export-height=16;
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/default32.png --export-width=32 --export-height=32;
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/default48.png --export-width=48 --export-height=48;
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/default64.png --export-width=64 --export-height=64;
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/default128.png --export-width=128 --export-height=128;
# Windows Icons
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/VisualElements_70.png --export-width=70 --export-height=70;
inkscape --without-gui --file=$ICON_FILE_PATH --export-png=$BRANDING_FOLDER_PATH/VisualElements_150.png --export-width=150 --export-height=150;
# Apple Icons

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,50 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# NSIS branding defines for unofficial builds.
# The official release build branding.nsi is located in other-license/branding/firefox/
# The nightly build branding.nsi is located in browser/installer/windows/nsis/
# BrandFullNameInternal is used for some registry and file system values
# instead of BrandFullName and typically should not be modified.
!define BrandFullNameInternal "LibreWolf"
!define BrandFullName "LibreWolf"
!define CompanyName "LibreWolf"
!define URLInfoAbout "https://www.libreWolf.gitlab.io"
!define HelpLink "https://github.com/LibreWolf-Browser"
!define URLStubDownloadX86 "https://github.com/LibreWolf-Browser/LibreWolf/releases"
!define URLStubDownloadAMD64 "https://github.com/LibreWolf-Browser/LibreWolf/releases"
!define URLStubDownloadAArch64 "https://github.com/LibreWolf-Browser/LibreWolf/releases"
!define URLManualDownload "https://github.com/LibreWolf-Browser/LibreWolf/releases"
!define URLSystemRequirements "https://github.com/LibreWolf-Browser/LibreWolf"
!define Channel "unofficial"
# The installer's certificate name and issuer expected by the stub installer
!define CertNameDownload "Mozilla Corporation"
!define CertIssuerDownload "DigiCert SHA2 Assured ID Code Signing CA"
# Dialog units are used so the UI displays correctly with the system's DPI
# settings.
# The dialog units for the bitmap's dimensions should match exactly with the
# bitmap's width and height in pixels.
!define APPNAME_BMP_WIDTH_DU 159u
!define APPNAME_BMP_HEIGHT_DU 50u
!define INTRO_BLURB_WIDTH_DU "230u"
!define INTRO_BLURB_EDGE_DU "198u"
!define INTRO_BLURB_LTR_TOP_DU "16u"
!define INTRO_BLURB_RTL_TOP_DU "11u"
!define INSTALL_FOOTER_TOP_DU "-48u"
# UI Colors that can be customized for each channel
!define FOOTER_CONTROL_TEXT_COLOR_NORMAL 0x000000
!define FOOTER_CONTROL_TEXT_COLOR_FADED 0x999999
!define FOOTER_BKGRD_COLOR 0xFFFFFF
!define INSTALL_FOOTER_TEXT_COLOR 0xFFFFFF
!define INTRO_BLURB_TEXT_COLOR 0xFFFFFF
!define INSTALL_BLURB_TEXT_COLOR 0xFFFFFF
!define INSTALL_PROGRESS_TEXT_COLOR_NORMAL 0xFFFFFF
!define COMMON_TEXT_COLOR_NORMAL 0xFFFFFF
!define COMMON_TEXT_COLOR_FADED 0xA1AAB3
!define COMMON_BKGRD_COLOR 0x0F1B26

View File

@ -0,0 +1,9 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_APP_NAME=librewolf
MOZ_APP_BASENAME="LibreWolf"
MOZ_APP_PROFILE=librewolf
MOZ_APP_VENDOR=LibreWolf

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<svg xmlns="http://www.w3.org/2000/svg" width="132px" height="48px" viewBox="0 0 132 48">
<path fill="#fff" d="M60.6,14.3l-2.4-2.4C57,12.7,56,13,54.7,13c-3,0-3.8-1.4-7.6-1.4c-5.4,0-9.2,3.4-9.2,8.4
c0,3.3,2.2,6.1,5.6,7.2c-3.4,1-4.5,2.2-4.5,4.3c0,2.2,1.8,3.6,4.7,3.6h3.8c2.5,0,3.9,0.2,4.9,0.9c0.9,0.6,1.4,1.6,1.4,3
c0,3.1-2.2,4.4-6,4.4c-2,0-3.8-0.5-5.1-1.2c-0.9-0.6-1.5-1.6-1.5-2.9c0-0.8,0.3-1.7,0.7-2.2l-4.1,0.4c-0.3,1-0.5,1.7-0.5,2.6
c0,3.5,3,6.4,10.8,6.4c6.1,0,9.9-2.5,9.9-7.9c0-2.1-0.8-3.9-2.7-5.3c-1.5-1.1-3.1-1.4-6-1.4h-4c-1.3,0-2-0.5-2-1.2
c0-0.8,1.1-1.7,4.5-2.9c1.8,0,3.4-0.3,4.7-1.1c2.3-1.4,3.7-4.1,3.7-6.8c0-1.6-0.5-3-1.5-4.3c0.4,0.2,1.1,0.3,1.7,0.3
C57.9,15.8,59,15.4,60.6,14.3z M47.1,24.8c-3.1,0-4.8-1.7-4.8-4.8c0-3.5,1.6-5.1,4.7-5.1c3.3,0,4.6,1.5,4.6,4.9
C51.6,23.1,50.1,24.8,47.1,24.8z M30.7,1.3c-1.7,0-3,1.4-3,3.1s1.4,3,3,3c1.7,0,3.1-1.3,3.1-3C33.7,2.7,32.4,1.3,30.7,1.3z
M107.7,34.5c-1.1,0-1.4-0.6-1.4-2.5V6.5c0-3.8-0.6-5.9-0.6-5.9l-3.9,0.8c0,0,0.6,1.9,0.6,5.1v26.4c0,1.8,0.4,2.8,1.2,3.5
c0.7,0.7,1.7,1,2.9,1c1,0,1.5-0.1,2.5-0.5l-0.8-2.5C108.2,34.4,107.8,34.5,107.7,34.5z M74.7,11.6c-3.2,0-6.1,1.8-8.3,3.9
c0,0,0.2-1.8,0.2-3.4V6.3c0-3.8-0.7-5.9-0.7-5.9l-3.9,0.7c0,0,0.7,1.9,0.7,5.1V37h3.9V19.3c2.1-2.7,4.9-4.2,7.2-4.2
c1.3,0,2.3,0.4,2.9,1c0.7,0.7,0.9,1.8,0.9,3.7V37h3.8V19.1c0-1.8-0.1-2.6-0.4-3.6C80.4,13.2,77.7,11.6,74.7,11.6z M127.4,12.1
l-4.9,16.4c-0.6,2-1.6,5.2-1.6,5.2s-0.7-3.9-1.5-6.2l-5.1-16.2l-3.9,1.3l5.4,15.6c0.8,2.5,2.2,7.4,2.5,9l1.6-0.3
c-1.3,5.1-2.5,6.7-5.7,7.6l1.2,2.7c4.4-1,6.4-4.3,8-9.3l8.6-25.8H127.4z M96.9,15l1.2-2.9h-6.2c0-3.3,0.5-7.2,0.5-7.2l-4.1,0.9
c0,0-0.4,3.9-0.4,6.3h-3.2V15h3.2v17.1c0,2.5,0.7,4.1,2.4,5c0.9,0.4,1.9,0.7,3.3,0.7c1.8,0,3.1-0.4,4.4-1l-0.6-2.5
c-0.7,0.3-1.3,0.5-2.4,0.5c-2.4,0-3.2-0.9-3.2-3.7V15H96.9z M28.6,37h4.1V11.5l-4.1,0.6V37z M18.9,21.3c0,5,0.4,10.5,0.4,10.5
s-1.4-3.8-3.2-7.2L4.8,2.7H0V37h4.2L4,17.1c0-4.5-0.4-9.3-0.4-9.3s1.7,4.1,3.9,8.2l11,21h4.3V2.7h-4L18.9,21.3z"/>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,25 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#aboutDialogContainer {
background-image: url("chrome://branding/content/about-background.png");
background-repeat: no-repeat;
background-color: #00acff;
color: #fff;
}
.text-link {
color: #fff !important;
text-decoration: underline;
}
#rightBox {
/* this margin prevents text from overlapping the planet image */
margin-left: 280px;
margin-right: 20px;
}
#bottomBox {
background-color: rgba(0,0,0,.7);
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1011.2 346"><path d="M497.6 247.9l-58.5-122.3c1 11.9 2.7 29.5 2.7 56.2v66h-18.6v-144h25.9l59.1 122.5c-.4-3.3-2.7-26.3-2.7-43.9v-78.6h18.6v144h-26.5v.1zm80.1-138.4c0 7.3-5.4 13-13.6 13-7.9 0-13.4-5.6-13.4-13 0-7.5 5.4-13.2 13.4-13.2 8.1 0 13.6 5.7 13.6 13.2zm-23 28.3h19.2v110.1h-19.2V137.8zm105.3 8.4c13 5.9 19.4 15 19.4 27.8 0 21.7-15.7 37.4-42 37.4-5 0-9.4-.6-14-2.1-3.1 2.3-5.4 6.3-5.4 10.2 0 5 3.1 9 14.4 9H650c22.6 0 37.6 13 37.6 30.5 0 21.3-17.6 33.4-51.6 33.4-35.9 0-47.2-11.1-47.2-33.4h17.3c0 12.5 5.6 18.4 29.9 18.4 23.8 0 32.2-6.1 32.2-17.1 0-10.5-8.4-15.7-22.2-15.7h-17.3c-19.6 0-28.4-9.8-28.4-20.9 0-7.1 4.2-14.2 12.1-19.4-12.7-6.7-18.6-16.3-18.6-30.5 0-22.6 18.2-38.5 42.4-38.5 27.4.6 37.4-4 50.4-9.8l5.6 17.3c-9.2 2.9-19.6 3.4-32.2 3.4zm-46.6 27.5c0 14.6 8.2 24.9 23.2 24.9s23.2-9.2 23.2-25.1c0-16.1-7.9-24.5-23.6-24.5-14.8.1-22.8 10.3-22.8 24.7zm172.2-4.8v79h-19.2v-76.3c0-16.5-7.1-21.3-17.6-21.3-11.9 0-20.5 7.7-27.8 19.2v78.4h-19.2V93.7l19.2-2.1V153c7.9-10.9 18.8-17.8 32.6-17.8 20.1.1 32 13 32 33.7zm59.4 81.5c-18.6 0-29.7-10.9-29.7-31.3v-66.5h-19.2v-14.8h19.2v-24.9l19.2-2.3v27.2h26.1l-2.1 14.8h-24v65.6c0 11.1 3.6 16.3 13.2 16.3 4.8 0 9.2-1.5 14.6-4.8l7.3 13.2c-7.3 5-15.2 7.5-24.6 7.5zm59.3-15.8c2.7 0 5-.4 7.1-1.3l5 13.4c-5.2 2.5-10.7 3.8-16.3 3.8-14 0-21.9-8.4-21.9-24.2V93.5l19.2-2.3v134.6c0 5.8 1.9 8.8 6.9 8.8zm18.9 57.9l-2.1-15c22.4-3.8 28.6-12.3 34.9-29.5h-6.5l-37-110.1H933l29.5 96.1 28.8-96.1h19.9l-36.8 110.8c-7.8 23.3-20.7 40.4-51.2 43.8z" fill="#363959"/><radialGradient id="a" cx="-7592.893" cy="-8773.69" r="306.995" gradientTransform="matrix(1.23 0 0 1.22 9568.41 10762.02)" gradientUnits="userSpaceOnUse"><stop offset=".02" stop-color="#005fe7"/><stop offset=".18" stop-color="#0042b4"/><stop offset=".32" stop-color="#002989"/><stop offset=".4" stop-color="#002079"/><stop offset=".47" stop-color="#131d78"/><stop offset=".66" stop-color="#3b1676"/><stop offset=".75" stop-color="#4a1475"/></radialGradient><path d="M172 346c95.2 0 172.2-77.5 172.2-173S267.1 0 172.1 0 0 77.3 0 172.9C-.2 268.6 77 346 172 346z" fill="url(#a)"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 38 KiB

View File

@ -0,0 +1,18 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
browser.jar:
% content branding %content/branding/ contentaccessible=yes
content/branding/about.png
content/branding/about-background.png
content/branding/about-logo.png
content/branding/about-wordmark.svg
content/branding/icon16.png (../default16.png)
content/branding/icon32.png (../default32.png)
content/branding/icon48.png (../default48.png)
content/branding/icon64.png (../default64.png)
content/branding/icon128.png (../default128.png)
content/branding/identity-icons-brand.svg
content/branding/aboutDialog.css
content/branding/horizontal-lockup.svg

View File

@ -0,0 +1,7 @@
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
JAR_MANIFESTS += ['jar.mn']

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

View File

@ -0,0 +1,8 @@
<Application xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<VisualElements
ShowNameOnSquare150x150Logo='on'
Square150x150Logo='browser\VisualElements\VisualElements_150.png'
Square70x70Logo='browser\VisualElements\VisualElements_70.png'
ForegroundText='light'
BackgroundColor='#14171a'/>
</Application>

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

View File

@ -0,0 +1,13 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!ENTITY brandShorterName "LibreWolf">
<!ENTITY brandShortName "LibreWolf">
<!ENTITY brandFullName "LibreWolf">
<!-- LOCALIZATION NOTE (brandProductName):
This brand name can be used in messages where the product name needs to
remain unchanged across different versions (Nightly, Beta, etc.). -->
<!ENTITY brandProductName "LibreWolf">
<!ENTITY vendorShortName "LibreWolf">
<!ENTITY trademarkInfo.part1 " ">

View File

@ -0,0 +1,22 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
## Firefox Brand
##
## Firefox must be treated as a brand, and kept in English.
## It cannot be:
## - Declined to adapt to grammatical case.
## - Transliterated.
## - Translated.
##
## Reference: https://www.mozilla.org/styleguide/communications/translation/
-brand-shorter-name = LibreWolf
-brand-short-name = LibreWolf
-brand-full-name = LibreWolf
# This brand name can be used in messages where the product name needs to
# remain unchanged across different versions (Nightly, Beta, etc.).
-brand-product-name = LibreWolf
-vendor-short-name = LibreWolf
trademarkInfo = { " " }

View File

@ -0,0 +1,14 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
brandShorterName=LibreWolf
brandShortName=LibreWolf
brandFullName=LibreWolf
# LOCALIZATION NOTE(brandProductName):
# This brand name can be used in messages where the product name needs to
# remain unchanged across different versions (Nightly, Beta, etc.).
brandProductName=LibreWolf
vendorShortName=LibreWolf
syncBrandShortName=LibreWolf Sync

View File

@ -0,0 +1,13 @@
#filter substitution
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
[localization] @AB_CD@.jar:
branding (en-US/**/*.ftl)
@AB_CD@.jar:
% locale branding @AB_CD@ %locale/branding/
# Unofficial branding only exists in en-US
locale/branding/brand.dtd (en-US/brand.dtd)
locale/branding/brand.properties (en-US/brand.properties)

View File

@ -0,0 +1,9 @@
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
DEFINES['MOZ_DISTRIBUTION_ID_UNQUOTED'] = CONFIG['MOZ_DISTRIBUTION_ID']
JAR_MANIFESTS += ['jar.mn']

View File

@ -0,0 +1,13 @@
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
DIRS += ['content', 'locales']
DIST_SUBDIR = 'browser'
export('DIST_SUBDIR')
include('../branding-common.mozbuild')
FirefoxBranding()

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -0,0 +1,29 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//---------------------- Updates ---------------------------------------------
// URL user can browse to manually if for some reason all update installation attempts fail.
pref("app.update.url.manual", "https://github.com/librewolf-browser");
// A default value for the "More information about this update" link supplied in
//the "An update is available" page of the update wizard.
pref("app.update.url.details", "https://github.com/librewolf-browser");
// The time interval between checks for a new version (in seconds)
pref("app.update.interval", 86400); // 24 hours
// Give the user x seconds to react before showing the big UI.
pref("app.update.promptWaitTime", 86400); // 24 hours
// The number of days a binary is permitted to be old without checking for an update.
// This assumes that app.update.checkInstallTime is true.
pref("app.update.checkInstallTime.days", 2);
// Give the user x seconds to reboot before showing a badge on the hamburger
// button. default=immediately
pref("app.update.badgeWaitTime", 0);
// Number of usages of the web console or scratchpad.
// If this is less than 5, then pasting code into the web console or scratchpad is disabled
pref("devtools.selfxss.count", 5);

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 KiB

View File

@ -0,0 +1,232 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsAboutRedirector.h"
#include "nsNetUtil.h"
#include "nsAboutProtocolUtils.h"
#include "nsBaseChannel.h"
#include "mozilla/ArrayUtils.h"
#include "nsIProtocolHandler.h"
#if defined(MOZ_WIDGET_ANDROID) && defined(RELEASE_OR_BETA)
# define ABOUT_CONFIG_BLOCKED_GV
#endif
#ifdef ABOUT_CONFIG_BLOCKED_GV
# include "mozilla/jni/Utils.h" // for mozilla::jni::IsFennec()
#endif
NS_IMPL_ISUPPORTS(nsAboutRedirector, nsIAboutModule)
struct RedirEntry {
const char* id;
const char* url;
uint32_t flags;
};
class CrashChannel final : public nsBaseChannel {
public:
explicit CrashChannel(nsIURI* aURI) { SetURI(aURI); }
nsresult OpenContentStream(bool async, nsIInputStream** stream,
nsIChannel** channel) override {
nsAutoCString spec;
mURI->GetSpec(spec);
if (spec.EqualsASCII("about:crashparent") && XRE_IsParentProcess()) {
MOZ_CRASH("Crash via about:crashparent");
}
if (spec.EqualsASCII("about:crashcontent") && XRE_IsContentProcess()) {
MOZ_CRASH("Crash via about:crashcontent");
}
NS_WARNING("Unhandled about:crash* URI or wrong process");
return NS_ERROR_NOT_IMPLEMENTED;
}
protected:
virtual ~CrashChannel() = default;
};
/*
Entries which do not have URI_SAFE_FOR_UNTRUSTED_CONTENT will run with chrome
privileges. This is potentially dangerous. Please use
URI_SAFE_FOR_UNTRUSTED_CONTENT in the third argument to each map item below
unless your about: page really needs chrome privileges. Security review is
required before adding new map entries without
URI_SAFE_FOR_UNTRUSTED_CONTENT.
URI_SAFE_FOR_UNTRUSTED_CONTENT is not enough to let web pages load that page,
for that you need MAKE_LINKABLE.
*/
static const RedirEntry kRedirMap[] = {
{"about", "chrome://global/content/aboutAbout.xhtml", 0},
{"addons", "chrome://mozapps/content/extensions/extensions.xul",
nsIAboutModule::ALLOW_SCRIPT},
{"library", "chrome://browser/content/places/places.xul",
nsIAboutModule::ALLOW_SCRIPT},
{"buildconfig", "chrome://global/content/buildconfig.html",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
{"checkerboard", "chrome://global/content/aboutCheckerboard.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::ALLOW_SCRIPT},
{"config", "chrome://global/content/config.xul", 0},
#ifdef MOZ_CRASHREPORTER
{"crashes", "chrome://global/content/crashes.xhtml", 0},
#endif
{"credits", "https://www.mozilla.org/credits/",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
{"license", "chrome://global/content/license.html",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::MAKE_LINKABLE},
{"logo", "chrome://branding/content/about.png",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
// Linkable for testing reasons.
nsIAboutModule::MAKE_LINKABLE},
{"memory", "chrome://global/content/aboutMemory.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"mozilla", "chrome://global/content/mozilla.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
{"neterror", "chrome://global/content/netError.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::URI_CAN_LOAD_IN_CHILD | nsIAboutModule::ALLOW_SCRIPT |
nsIAboutModule::HIDE_FROM_ABOUTABOUT},
{"networking", "chrome://global/content/aboutNetworking.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"performance", "chrome://global/content/aboutPerformance.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"plugins", "chrome://global/content/plugins.html",
nsIAboutModule::URI_MUST_LOAD_IN_CHILD},
{"serviceworkers", "chrome://global/content/aboutServiceWorkers.xhtml",
nsIAboutModule::URI_CAN_LOAD_IN_CHILD |
nsIAboutModule::URI_MUST_LOAD_IN_CHILD | nsIAboutModule::ALLOW_SCRIPT},
#ifndef ANDROID
{"profiles", "chrome://global/content/aboutProfiles.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
#endif
// about:srcdoc is unresolvable by specification. It is included here
// because the security manager would disallow srcdoc iframes otherwise.
{"srcdoc", "about:blank",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::HIDE_FROM_ABOUTABOUT |
// Needs to be linkable so content can touch its own srcdoc frames
nsIAboutModule::MAKE_LINKABLE | nsIAboutModule::URI_CAN_LOAD_IN_CHILD},
{"support", "chrome://global/content/aboutSupport.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"telemetry", "chrome://global/content/aboutTelemetry.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"url-classifier", "chrome://global/content/aboutUrlClassifier.xhtml",
nsIAboutModule::ALLOW_SCRIPT},
{"webrtc", "chrome://global/content/aboutwebrtc/aboutWebrtc.html",
nsIAboutModule::ALLOW_SCRIPT},
{"printpreview", "about:blank",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::HIDE_FROM_ABOUTABOUT |
nsIAboutModule::URI_CAN_LOAD_IN_CHILD},
{"crashparent", "about:blank", nsIAboutModule::HIDE_FROM_ABOUTABOUT},
{"crashcontent", "about:blank",
nsIAboutModule::HIDE_FROM_ABOUTABOUT |
nsIAboutModule::URI_CAN_LOAD_IN_CHILD |
nsIAboutModule::URI_MUST_LOAD_IN_CHILD}};
static const int kRedirTotal = mozilla::ArrayLength(kRedirMap);
NS_IMETHODIMP
nsAboutRedirector::NewChannel(nsIURI* aURI, nsILoadInfo* aLoadInfo,
nsIChannel** aResult) {
NS_ENSURE_ARG_POINTER(aURI);
NS_ENSURE_ARG_POINTER(aLoadInfo);
NS_ASSERTION(aResult, "must not be null");
nsAutoCString path;
nsresult rv = NS_GetAboutModuleName(aURI, path);
NS_ENSURE_SUCCESS(rv, rv);
nsCOMPtr<nsIIOService> ioService = do_GetIOService(&rv);
NS_ENSURE_SUCCESS(rv, rv);
if (path.EqualsASCII("crashparent") || path.EqualsASCII("crashcontent")) {
bool isExternal;
aLoadInfo->GetLoadTriggeredFromExternal(&isExternal);
if (isExternal) {
return NS_ERROR_NOT_AVAILABLE;
}
nsCOMPtr<nsIChannel> channel = new CrashChannel(aURI);
channel->SetLoadInfo(aLoadInfo);
channel.forget(aResult);
return NS_OK;
}
#ifdef ABOUT_CONFIG_BLOCKED_GV
// We don't want to allow access to about:config from
// GeckoView on release or beta, but it's fine for Fennec.
if (path.EqualsASCII("config") && !mozilla::jni::IsFennec()) {
return NS_ERROR_NOT_AVAILABLE;
}
#endif
for (int i = 0; i < kRedirTotal; i++) {
if (!strcmp(path.get(), kRedirMap[i].id)) {
nsCOMPtr<nsIChannel> tempChannel;
nsCOMPtr<nsIURI> tempURI;
rv = NS_NewURI(getter_AddRefs(tempURI), kRedirMap[i].url);
NS_ENSURE_SUCCESS(rv, rv);
rv = NS_NewChannelInternal(getter_AddRefs(tempChannel), tempURI,
aLoadInfo);
NS_ENSURE_SUCCESS(rv, rv);
// If tempURI links to an external URI (i.e. something other than
// chrome:// or resource://) then set result principal URI on the
// load info which forces the channel principal to reflect the displayed
// URL rather then being the systemPrincipal.
bool isUIResource = false;
rv = NS_URIChainHasFlags(tempURI, nsIProtocolHandler::URI_IS_UI_RESOURCE,
&isUIResource);
NS_ENSURE_SUCCESS(rv, rv);
bool isAboutBlank = NS_IsAboutBlank(tempURI);
if (!isUIResource && !isAboutBlank) {
aLoadInfo->SetResultPrincipalURI(tempURI);
}
tempChannel->SetOriginalURI(aURI);
tempChannel.forget(aResult);
return rv;
}
}
NS_ERROR("nsAboutRedirector called for unknown case");
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHODIMP
nsAboutRedirector::GetURIFlags(nsIURI* aURI, uint32_t* aResult) {
NS_ENSURE_ARG_POINTER(aURI);
nsAutoCString name;
nsresult rv = NS_GetAboutModuleName(aURI, name);
NS_ENSURE_SUCCESS(rv, rv);
for (int i = 0; i < kRedirTotal; i++) {
if (name.EqualsASCII(kRedirMap[i].id)) {
*aResult = kRedirMap[i].flags;
return NS_OK;
}
}
NS_ERROR("nsAboutRedirector called for unknown case");
return NS_ERROR_ILLEGAL_VALUE;
}
nsresult nsAboutRedirector::Create(nsISupports* aOuter, REFNSIID aIID,
void** aResult) {
RefPtr<nsAboutRedirector> about = new nsAboutRedirector();
return about->QueryInterface(aIID, aResult);
}

View File

@ -0,0 +1,9 @@
# This is for the desktop version of librewolf
ac_add_options --enable-application=browser
# Folder to output the build files:
mk_add_options MOZ_OBJDIR=./obj_BUILD_OUTPUT
# Setting the branding options
ac_add_options --with-branding=browser/branding/librewolf
ac_add_options --with-distribution-id=io.github.librewolf

View File

6
settings/disable_settings.sh Executable file
View File

@ -0,0 +1,6 @@
#!/bin/bash
mv ./defaults/pref/local-settings.js ./settings/defaults/pref/local-settings.js;
mv ./distribution/policies.json ./settings/distribution/policies.json;
mv ./librewolf.cfg ./settings/librewolf.cfg;

3
settings/enable_settings.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/bash
cp -r ./settings/* ./

View File

@ -0,0 +1,21 @@
//
// ============================================================================================================================================
// LibreWolf Version : 2.1
// ==============================
//
// Metrics available on librewolfa.cfg
//
// ============================================================================================================================================
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
// Section : General Settings
// Bench Diff : ++/5000
// >>>>>>>>>>>>>>>>>>>>
// LibreWolf MoD
pref("general.config.filename", "librewolf.cfg");
// Default Firefox
// ROT13 Settings primitive encryption routing that
pref("general.config.obscure_value", 0);

View File

@ -0,0 +1,16 @@
{
"policies": {
"AppUpdateURL": "",
"DisableAppUpdate": true,
"OverridePostUpdatePage": "",
"DisableMasterPasswordCreation": true,
"DisableFeedbackCommands": true,
"DisableFirefoxAccounts": true,
"DisableFirefoxStudies": true,
"DisablePocket": true,
"DisableProfileImport": true,
"DisableSetDesktopBackground": true,
"DisableSystemAddonUpdate": true,
"DisableTelemetry": true
}
}

File diff suppressed because it is too large Load Diff