Compare commits
267 commits
addon_test
...
master
Author | SHA1 | Date | |
---|---|---|---|
Dominika | 8cc38aced8 | ||
Dominika | 03dd51e472 | ||
Dominika | 2a7c8af65f | ||
Dominika Liberda | 0be3fe7abb | ||
Dominika Liberda | fbd1ebe106 | ||
Dominika Liberda | ddf182b041 | ||
Dominika Liberda | d4f2fc5f6f | ||
Dominika Liberda | 367999d9a9 | ||
Dominika Liberda | a3db9047d0 | ||
Dominika Liberda | b589bdd92a | ||
Dominika Liberda | 1bfe6ab98e | ||
Dominika Liberda | 894ee2dd85 | ||
Dominika Liberda | 12fe44f097 | ||
Dominika Liberda | ce9f7d7639 | ||
Dominika Liberda | 97a8e62e94 | ||
Dominika Liberda | 99b0e85392 | ||
Dominika Liberda | d92750f28f | ||
Dominika Liberda | 10612c8cc3 | ||
Dominika Liberda | 83a6751e80 | ||
Dominika Liberda | e7d4305a04 | ||
Dominika Liberda | 7c105c8ecb | ||
Dominika Liberda | b508fc9d0a | ||
Dominika Liberda | bb26234350 | ||
Dominika Liberda | 93b98fdacd | ||
Dominika Liberda | acb29bc4e6 | ||
Dominika Liberda | 144a9f1793 | ||
Dominika Liberda | 2323842987 | ||
Dominika Liberda | a6fa2867ae | ||
Dominika Liberda | 52b2c8e955 | ||
Dominika Liberda | 5d0e25f3ca | ||
Dominika Liberda | a4d819e2dd | ||
Dominika Liberda | 7b1fba588c | ||
Dominika Liberda | 8bcd7a17f2 | ||
Dominika Liberda | b0a21ef9df | ||
Dominika Liberda | a52f076e10 | ||
Dominika Liberda | e3e49a7da2 | ||
Dominika Liberda | 6df64d7560 | ||
Dominika Liberda | df3ba5ff49 | ||
Dominika Liberda | e057b7c338 | ||
Dominika Liberda | bd5a61ad49 | ||
Dominika Liberda | 61ef268cd7 | ||
Dominika Liberda | e14993de88 | ||
Dominika Liberda | cc4f1b7473 | ||
Dominika Liberda | ca6bad6d04 | ||
Dominika Liberda | d537748ea7 | ||
Dominika Liberda | 33a9b396e0 | ||
Dominika Liberda | 90f0e69652 | ||
Dominika Liberda | 59d553962e | ||
Dominika Liberda | aeac987294 | ||
Dominika Liberda | e90b3739b2 | ||
Dominika Liberda | a03a53c794 | ||
Dominika Liberda | f0241fda8f | ||
Dominika Liberda | 0526013cdc | ||
d56b020e95 | |||
434858650e | |||
17e1d6daf7 | |||
26d33367db | |||
ad9c9ecad4 | |||
f34e124596 | |||
bb4d2b8c3b | |||
abb2956b6d | |||
f6ff95a833 | |||
238b9d0c9f | |||
56b66d16f3 | |||
f78a1c2a36 | |||
5af20be933 | |||
5474baabed | |||
156fce08a1 | |||
25f3891908 | |||
743cb8ccf3 | |||
29bdf33a69 | |||
5308f573df | |||
d47b222401 | |||
de25ab61ed | |||
55617c3433 | |||
5d49ace775 | |||
ab559ab3f7 | |||
bb4152027b | |||
4db19b3317 | |||
b8677c649c | |||
a2061e3ef1 | |||
95feca84f5 | |||
5af02721e8 | |||
9e90fb3a9b | |||
062a454cf3 | |||
53ed43ecfe | |||
48ff5108bd | |||
7a39d56351 | |||
41ba7a5b6d | |||
456f23853d | |||
c3375c312e | |||
9320f90606 | |||
7b40f2a460 | |||
e123b80f7d | |||
fae3610290 | |||
4a3ece5b45 | |||
05b7ca3128 | |||
2b9bab23df | |||
f43e70c98c | |||
714bacdabe | |||
56827b45af | |||
d1a6eadd12 | |||
a4141e25ef | |||
462c963c29 | |||
14bf1d12dd | |||
4555d764c3 | |||
4f3ea8ae1b | |||
5d88f397b1 | |||
6cc0c98846 | |||
ba2a977285 | |||
11640262a6 | |||
0b0964887c | |||
b623874e96 | |||
dc73a4142a | |||
1b2e116139 | |||
e81be4dfbb | |||
e4852c5050 | |||
c539dbbfd2 | |||
11d4b95742 | |||
60cbb0acf5 | |||
8daeabffff | |||
3ab8dc47b0 | |||
ee7493428d | |||
b8c8f7ee12 | |||
3bbef3f822 | |||
f59ae4ac93 | |||
c398340adf | |||
4020a6ed0e | |||
b16649c000 | |||
9c0fcc0de5 | |||
561ff61674 | |||
ec78db8bcd | |||
45ca9415f5 | |||
fc47e34c8b | |||
8d686931d9 | |||
0b6f9419ee | |||
aa51ea96c7 | |||
b9049d7ba6 | |||
fcb0d9bed3 | |||
74e5882618 | |||
c66b73fe3b | |||
42d221db49 | |||
59bbaed348 | |||
d1dc5bfcff | |||
9499616e71 | |||
26d8096f17 | |||
ecef2148df | |||
b9fd2f5276 | |||
c2b4301f0c | |||
de92c7d752 | |||
08e8fe61af | |||
d78b766d14 | |||
88cb3f43bc | |||
d4eb092cfd | |||
23811d11c0 | |||
15333fb833 | |||
d73ef25178 | |||
702a1ce4d3 | |||
77de935ab3 | |||
8e45c334f5 | |||
e3c1afec18 | |||
be613fc53e | |||
fffe391367 | |||
41f7ccd6ac | |||
ac3d1cfbdb | |||
0445831824 | |||
c4c9836a11 | |||
1b9956a495 | |||
393cec9eb5 | |||
f471d64277 | |||
e94336cb1d | |||
b0f26b66d2 | |||
67beb4e755 | |||
032d2c8a15 | |||
a1f1245927 | |||
b044585b88 | |||
b210ebd8cf | |||
aa8205bb6c | |||
fc51b4f6d4 | |||
c98825e212 | |||
370cd270bc | |||
622581c3ab | |||
ac5653d45a | |||
23798fa90d | |||
5bbd13e5fd | |||
08c94c6126 | |||
ac06ff5f28 | |||
232281d338 | |||
efd24ea6bd | |||
948a349bd9 | |||
aa59e04acd | |||
a960c6488a | |||
28b4678a6f | |||
06e9c38a0e | |||
aa047fed9f | |||
a0e27a0f66 | |||
04836e8221 | |||
ade8552b4a | |||
01f4e24e40 | |||
c75783737f | |||
b4785c8efd | |||
41d7dd8bdb | |||
db26c01451 | |||
f35809ada6 | |||
2e748dbcf0 | |||
ac9fae2de4 | |||
9ff609f70f | |||
046c27552b | |||
2f81380ef5 | |||
6bce9cc29a | |||
900015a46e | |||
154607e95c | |||
d871b3ae53 | |||
2a2587fd1f | |||
b50b503e85 | |||
503f4a5103 | |||
228d15c64f | |||
ab0f7be852 | |||
ed05c3f672 | |||
2405b48f74 | |||
daf0d739ab | |||
baa005aade | |||
4223941028 | |||
6a7f15fa30 | |||
69ce8eb8b7 | |||
3348328df5 | |||
c09ed9cfc7 | |||
85f55868f6 | |||
ef8a143b61 | |||
e5d850cfc8 | |||
c932f8870b | |||
e5b4cec424 | |||
50e1776af1 | |||
1784ded7dd | |||
cdc70aeb16 | |||
68d362cce7 | |||
0aab0afa23 | |||
74b5e9ab48 | |||
27edeaacf2 | |||
2e194f84b8 | |||
96ffa1c3ab | |||
4303197adc | |||
624aedc79d | |||
85573cb93c | |||
66f2440fb8 | |||
dab887fb41 | |||
d27a4bcb38 | |||
5e48f983f1 | |||
8df33c61bb | |||
d0a7d8b4e2 | |||
31b77c08ce | |||
814cca9f4a | |||
c842430e31 | |||
440d7d323b | |||
8e1b87d400 | |||
45614f50a6 | |||
f257806033 | |||
4618b2865c | |||
ebe2615c99 | |||
49bb75906e | |||
f9f76a24c8 | |||
f31b10b89d | |||
b409944fad | |||
1402bdd5e7 | |||
da4f4da920 | |||
7b59ed08f7 | |||
4d2d452fd1 |
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1 +1,3 @@
|
|||
compile_folder/
|
||||
common/**
|
||||
settings/**
|
||||
|
|
109
.gitlab-ci.yml
109
.gitlab-ci.yml
|
@ -1,97 +1,36 @@
|
|||
stages:
|
||||
- build
|
||||
- paks
|
||||
# - deploy
|
||||
|
||||
.carch_aarch64: &carch_aarch64
|
||||
variables:
|
||||
CARCH: 'aarch64'
|
||||
variables:
|
||||
GIT_SUBMODULE_STRATEGY: recursive
|
||||
# variables:
|
||||
# pkgver: $PKGVER
|
||||
# pkgrel: $PKGREL
|
||||
# AARCH64: $AARCH64
|
||||
# X86_64: $X86_64
|
||||
|
||||
.carch_x86_64: &carch_x86_64
|
||||
variables:
|
||||
CARCH: 'x86_64'
|
||||
|
||||
.main_build_config: &main_build_config
|
||||
tarball_x86_64:
|
||||
image: ghcr.io/void-linux/void-linux:latest-thin-bb-x86_64
|
||||
stage: build
|
||||
script:
|
||||
- ./scripts/01_arch_build.sh
|
||||
- ./scripts/02_configure_tarball.sh
|
||||
- echo "repository=https://void.sakamoto.pl/current/" > /usr/share/xbps.d/00-repository-main.conf
|
||||
- echo "repository=https://void.sakamoto.pl/current/nonfree" >> /usr/share/xbps.d/00-repository-main.conf
|
||||
- xbps-install -Sy bash
|
||||
- bash ./build_tarball.sh "${CI_PROJECT_DIR}/Foxgirl-${pkgver}-${pkgrel}.${CARCH}.tar.bz2"
|
||||
artifacts:
|
||||
name: "Librewolf-${CI_COMMIT_TAG}-${CARCH}"
|
||||
name: "Foxgirl-${pkgver}-${pkgrel}-${CARCH}"
|
||||
paths:
|
||||
- "librewolf*pkg.tar*"
|
||||
- "LibreWolf.${CARCH}.tar.bz2"
|
||||
only:
|
||||
- tags
|
||||
- "Foxgirl-${pkgver}-${pkgrel}.${CARCH}.tar.bz2"
|
||||
|
||||
.flatpak_config: &flatpak_config
|
||||
stage: paks
|
||||
artifacts:
|
||||
name: "Librewolf-${CI_COMMIT_TAG}-Flatpak-${CARCH}"
|
||||
paths:
|
||||
- "LibreWolf.${CARCH}.flatpak"
|
||||
- "${CI_PROJECT_DIR}/librewolf-${CARCH}-flatpak-repo"
|
||||
only:
|
||||
- tags
|
||||
tarball_x86_64_musl:
|
||||
image: ghcr.io/void-linux/void-linux:latest-thin-bb-x86_64-musl
|
||||
stage: build
|
||||
script:
|
||||
- ./flatpak/build_flatpak.sh "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.tar.bz2" "${CI_PROJECT_DIR}/librewolf-${CARCH}-flatpak-repo" "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.flatpak"
|
||||
|
||||
.appimage_config: &appimage_config
|
||||
stage: paks
|
||||
- echo "repository=https://void.sakamoto.pl/current/musl" > /usr/share/xbps.d/00-repository-main.conf
|
||||
- echo "repository=https://void.sakamoto.pl/current/musl/nonfree" >> /usr/share/xbps.d/00-repository-main.conf
|
||||
- xbps-install -Sy bash
|
||||
- bash ./build_tarball.sh "${CI_PROJECT_DIR}/Foxgirl-${pkgver}-${pkgrel}.${CARCH}.tar.bz2"
|
||||
artifacts:
|
||||
name: "Librewolf-${CI_COMMIT_TAG}-AppImage-${CARCH}"
|
||||
name: "Foxgirl-${pkgver}-${pkgrel}-${CARCH}_musl"
|
||||
paths:
|
||||
- "LibreWolf.${CARCH}.AppImage"
|
||||
only:
|
||||
- tags
|
||||
script:
|
||||
- ./appimage/build_appimage.sh "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.tar.bz2" "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.AppImage"
|
||||
|
||||
build_x86_64:
|
||||
image: archlinux/base
|
||||
tags: [x86_64b]
|
||||
<<: *carch_x86_64
|
||||
<<: *main_build_config
|
||||
|
||||
build_aarch64:
|
||||
image: registry.gitlab.com/ohfp/manjaro-arm-docker
|
||||
tags: [aarch64b]
|
||||
<<: *carch_aarch64
|
||||
<<: *main_build_config
|
||||
|
||||
flatpak_x86_64:
|
||||
image: ubuntu:18.04
|
||||
tags: [flat_runner]
|
||||
<<: *carch_x86_64
|
||||
<<: *flatpak_config
|
||||
|
||||
flatpak_aarch64:
|
||||
image: arm64v8/ubuntu:18.04
|
||||
tags: [flat_runner_aarch64]
|
||||
<<: *carch_aarch64
|
||||
<<: *flatpak_config
|
||||
|
||||
appimage_x86_64:
|
||||
image: ubuntu:18.04
|
||||
tags: [x86_64b]
|
||||
<<: *carch_x86_64
|
||||
<<: *appimage_config
|
||||
|
||||
appimage_aarch64:
|
||||
image: arm64v8/ubuntu:18.04
|
||||
tags:
|
||||
- aarch64b
|
||||
- arm64 # can also be run on any other less powerful aarch64 runner
|
||||
<<: *carch_aarch64
|
||||
<<: *appimage_config
|
||||
|
||||
# Release to Gitlab:
|
||||
# stage: deploy
|
||||
# image: python:latest
|
||||
# script:
|
||||
# - pip3 install gitlab-release
|
||||
# - tar czf librewolf-aarch64-flatpak-repo.tar.gz librewolf-aarch64-flatpak-repo
|
||||
# - tar czf librewolf-x86_64-flatpak-repo.tar.gz librewolf-x86_64-flatpak-repo
|
||||
# - "gitlab-release librewolf*.pkg.tar.* LibreWolf.*.AppImage librewolf-*-flatpak-repo.tar.gz LibreWolf.*.flatpak"
|
||||
# only:
|
||||
# - tags
|
||||
- "Foxgirl-${pkgver}-${pkgrel}.${CARCH}.tar.bz2"
|
||||
|
|
270
CHANGELOG.md
270
CHANGELOG.md
|
@ -7,7 +7,275 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||
This project follows the official Firefox releases, but also uses
|
||||
[Arch Linux Package Versioning](https://wiki.archlinux.org/index.php/Arch_package_guidelines#Package_versioning) to mark individual releases in between versions.
|
||||
|
||||
## [Unreleased]
|
||||
## [88.0-1] - TBD
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 88.0-1
|
||||
- Several yet-to-be documented changes from previous updates that are not yet added to the changelog (tbd)
|
||||
- Switched to building on Ubuntu Bionic (18.04) from Xenial (16.04) as the latter is now EOL/EOS
|
||||
- Releases can from now on be found in the specific subprojects (debian, windows, flatpak, appimage, arch, macos) for consistency; this project will only hold the tarball used for the flatpak and appimage releases
|
||||
|
||||
|
||||
## [85.0.2-2] – 2021-02-15
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 85.0.2
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed about box
|
||||
- Removed pocket menu entry
|
||||
|
||||
## [85.0.2-1] – Unreleased / Skipped
|
||||
|
||||
## [85.0.1-1] – 2021-02-05
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 85.0.2
|
||||
|
||||
## [85.0.1-1] – 2021-02-05
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 85.0.1
|
||||
- New upstream release of included uBlock Origin (1.33.2)
|
||||
|
||||
## [85.0-1] – 2021-01-31
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 85.0
|
||||
- Global menubar patch removed from default releases. Separate releases will be made available.
|
||||
- `dom.event.contextmenu.enabled` is now an unlocked preference
|
||||
|
||||
### Fixed
|
||||
|
||||
- Non-Arch releases should now also have some additional startup requests removed
|
||||
|
||||
## [84.0.2-2] - 2021-01-20
|
||||
|
||||
### Fixed
|
||||
|
||||
- AppImage and Flatpak releases were not using the most recent settings.
|
||||
|
||||
## [84.0.2-1] - 2021-01-08
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 84.0.1
|
||||
- Flatpak runtime version updated (thanks @TheEvilSkeleton)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Use patch for global menubar added to AppImage and Flatpak build script as well
|
||||
|
||||
## [84.0.1-1] - 2021-01-07
|
||||
|
||||
### Fixed
|
||||
|
||||
- Flatpak now properly provides a .desktop-file (and some other small improvements)
|
||||
- Fixed AppImage crashes when `XDG_DATA_DIRS` is unset (fixes #139)
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 84.0.1
|
||||
- New upstream release of included uBlock Origin (1.32.4)
|
||||
- More options kept unlocked to remain easier to modify
|
||||
- "Wayland first" Flatpak with (hopefully) clean X11-fallback
|
||||
|
||||
### Added
|
||||
|
||||
- Included Debian patch for global menubar
|
||||
- HTTPS only mode enabled by default
|
||||
|
||||
## [84.0-1] - 2020-12-25
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 84.0
|
||||
|
||||
## [83.0-1] - 2020-11-21
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 83.0
|
||||
- New upstream release of included uBlock Origin (1.31.0)
|
||||
|
||||
## [82.0.3-1] - 2020-11-10
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 82.0.3
|
||||
|
||||
## [82.0.2-1] - 2020-10-29
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 82.0.2
|
||||
- New upstream release of included uBlock Origin (1.30.6)
|
||||
|
||||
## [81.0.2-1] - 2020-10-18
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 81.0.2
|
||||
- New upstream release of included uBlock Origin (1.30.4)
|
||||
|
||||
## [81.0-2] - 2020-10-02
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 81.0
|
||||
- New upstream release of included uBlock Origin (1.30.0)
|
||||
|
||||
## [80.0.1-1] - 2020-09-06
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 80.0.1
|
||||
|
||||
## [80.0-1] - 2020-08-27
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 80.0
|
||||
- New upstream release of included uBlock Origin (1.29.2)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed too broad Flatpak access permissions / sandboxing (#122 and #123), thanks to @TheMainOne!
|
||||
- Unlocked an important setting required to easily enable WebRTC (macOS/#8)
|
||||
- Closing the last tab now closes the browser again (#121)
|
||||
|
||||
## [79.0-1] - 2020-07-30
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 79.0
|
||||
|
||||
## [78.0.2-1] - 2020-07-10
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 78.0.2
|
||||
- New upstream release of included uBlock Origin (1.28.0)
|
||||
|
||||
## [78.0.1-1] - 2020-07-02
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 78.0.1
|
||||
|
||||
## [78.0-1] - Unreleased/Skipped
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 78.0
|
||||
- Various changes to approach fixing settings#21
|
||||
|
||||
## [77.0.1-2] - 2020-06-08
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix somewhat broken urlbar (switch to proper megabar-removal code)
|
||||
- Use correctly updated uBlock origin URL
|
||||
|
||||
## [77.0.1-1] - 2020-06-06
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 77.0.1
|
||||
|
||||
### Fixed
|
||||
|
||||
- Disable "Megabar" functionality (#23)
|
||||
|
||||
## [76.0.1-1] - 2020-05-08
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 76.0.1
|
||||
|
||||
## [76.0-2] - Unreleased/Skipped
|
||||
|
||||
### Fixed
|
||||
|
||||
- Typos in `librewolf.cfg` that prevented it from being cleanly loaded.
|
||||
|
||||
## [76.0-1] - Unreleased/Skipped
|
||||
|
||||
### Added
|
||||
|
||||
- Remove Internal Plugin Certificates from Mozilla
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 76.0
|
||||
- DoH disabled by default
|
||||
|
||||
### Fixed
|
||||
|
||||
- Some default addons from Mozilla are now removed (#59)
|
||||
- Improvements to search engines and DDG Lite added (settings#18)
|
||||
- Don't disable the Intersection Observer API (settings#20)
|
||||
- Configure manual update URL (settings#1)
|
||||
- Set fallback UA to resistFingerprinting's default (settings#10)
|
||||
- Temporarily fix Firefox's address bar (settings#23)
|
||||
- Update to ghacks-user.js 69 (settings#21)
|
||||
- Fix Qwant's name (settings#25)
|
||||
|
||||
## [75.0-1] - 2020-04-08
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 75.0
|
||||
|
||||
## [74.0.1-1] - 2020-04-04
|
||||
|
||||
### Changed
|
||||
|
||||
- New upstream release 74.0.1
|
||||
|
||||
## [74.0-5] - 2020-04-01
|
||||
|
||||
### Changed
|
||||
|
||||
- WebRTC related settings unlocked (but still disabled) in `librewolf.cfg`
|
||||
|
||||
## [74.0-4] - 2020-03-31
|
||||
|
||||
### Added
|
||||
|
||||
- AppImage and Flatpak improvements (metadata, conventions etc.)
|
||||
- (Mostly) working Flatpak release
|
||||
- **Untested**: AppImage and Flatpak releases for `aarch64` are now also built on Ubuntu 16.04
|
||||
|
||||
### Known Issues
|
||||
|
||||
- AppImage and Flatpak releases cannot be built as PGO/profiled builds at the moment
|
||||
- AppStream metadata is not completely valid (missing screenshots)
|
||||
- Build scripts are not tested outside of a dockerized environment
|
||||
|
||||
## [74.0-3] - 2020-03-31
|
||||
|
||||
### Added
|
||||
|
||||
- WebRTC enabled for `aarch64` builds (`librewolf.cfg` still blocks it by default, intentionally)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Installation of uBlock
|
||||
- Removal and addition of search engines via `policies.json`
|
||||
- Building the intermediary tarball on Ubuntu 16.04 (Xenial) to ensure AppImage and Flatpak compatibility
|
||||
|
||||
### Known Issues
|
||||
|
||||
- Appimage and Flatpak settings loading still needs to be tested
|
||||
- Appimage and Flatpak still don't work on older distributions
|
||||
- LibreWolf built on Ubuntu 16.04 cannot be a profiled/PGO build at the time.
|
||||
|
||||
## [74.0-2] - 2020-03-10
|
||||
|
||||
|
|
284
PKGBUILD
284
PKGBUILD
|
@ -1,284 +0,0 @@
|
|||
# Maintainer: ohfp
|
||||
# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
|
||||
# Contributor: Ionut Biru <ibiru@archlinux.org>
|
||||
# Contributor: Jakub Schmidtke <sjakub@gmail.com>
|
||||
|
||||
pkgname=librewolf
|
||||
_pkgname=LibreWolf
|
||||
_ublockver=1.25.2
|
||||
pkgver=74.0
|
||||
pkgrel=3
|
||||
pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom."
|
||||
arch=(x86_64 aarch64)
|
||||
license=(MPL GPL LGPL)
|
||||
url="https://librewolf-community.gitlab.io/"
|
||||
depends=(gtk3 libxt startup-notification mime-types dbus-glib ffmpeg nss
|
||||
ttf-font libpulse)
|
||||
makedepends=(unzip zip diffutils python2-setuptools yasm mesa imake inetutils
|
||||
xorg-server-xvfb autoconf2.13 rust clang llvm jack gtk2
|
||||
python nodejs python2-psutil cbindgen nasm git binutils)
|
||||
optdepends=('networkmanager: Location detection via available WiFi networks'
|
||||
'libnotify: Notification integration'
|
||||
'pulseaudio: Audio support'
|
||||
'speech-dispatcher: Text-to-Speech'
|
||||
'hunspell-en_US: Spell checking, American English')
|
||||
options=(!emptydirs !makeflags !strip)
|
||||
noextract=("ublock_origin-$ublockver-an+fx.xpi")
|
||||
source=(https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz
|
||||
$pkgname.desktop
|
||||
"git+https://gitlab.com/${pkgname}-community/browser/common.git"
|
||||
"git+https://gitlab.com/${pkgname}-community/settings.git"
|
||||
"https://addons.cdn.mozilla.net/user-media/addons/607454/ublock_origin-$_ublockver-an+fx.xpi")
|
||||
sha256sums=('74589c2836d7c30134636823c3caefbcaed0ea7c3abb2def9e3ddd9f86d9440a'
|
||||
'0471d32366c6f415f7608b438ddeb10e2f998498c389217cdd6cc52e8249996b'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'997aac00064665641298047534c9392492ef09f0cbf177b6a30d4fa288081579')
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
source+=(arm.patch
|
||||
https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/master/extra/firefox/build-arm-libopus.patch)
|
||||
sha256sums+=('6ca87d2ac7dc48e6f595ca49ac8151936afced30d268a831c6a064b52037f6b7'
|
||||
'2d4d91f7e35d0860225084e37ec320ca6cae669f6c9c8fe7735cdbd542e3a7c9')
|
||||
fi
|
||||
|
||||
prepare() {
|
||||
mkdir mozbuild
|
||||
cd firefox-$pkgver
|
||||
|
||||
cat >../mozconfig <<END
|
||||
ac_add_options --enable-application=browser
|
||||
|
||||
# This supposedly speeds up compilation (We test through dogfooding anyway)
|
||||
ac_add_options --disable-tests
|
||||
ac_add_options --disable-debug
|
||||
|
||||
ac_add_options --prefix=/usr
|
||||
ac_add_options --enable-release
|
||||
ac_add_options --enable-hardening
|
||||
ac_add_options --enable-rust-simd
|
||||
export CC='clang'
|
||||
export CXX='clang++'
|
||||
export AR=llvm-ar
|
||||
export NM=llvm-nm
|
||||
export RANLIB=llvm-ranlib
|
||||
|
||||
# Branding
|
||||
ac_add_options --enable-update-channel=release
|
||||
ac_add_options --with-app-name=${pkgname}
|
||||
ac_add_options --with-app-basename=${_pkgname}
|
||||
ac_add_options --with-branding=browser/branding/${pkgname}
|
||||
ac_add_options --with-distribution-id=io.gitlab.${pkgname}
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
ac_add_options --allow-addon-sideload
|
||||
export MOZ_REQUIRE_SIGNING=0
|
||||
|
||||
# System libraries
|
||||
ac_add_options --with-system-nspr
|
||||
ac_add_options --with-system-nss
|
||||
|
||||
# Features
|
||||
ac_add_options --enable-alsa
|
||||
ac_add_options --enable-jack
|
||||
ac_add_options --enable-startup-notification
|
||||
ac_add_options --disable-crashreporter
|
||||
ac_add_options --disable-gconf
|
||||
ac_add_options --disable-updater
|
||||
ac_add_options --disable-tests
|
||||
|
||||
# Disables crash reporting, telemetry and other data gathering tools
|
||||
mk_add_options MOZ_CRASHREPORTER=0
|
||||
mk_add_options MOZ_DATA_REPORTING=0
|
||||
mk_add_options MOZ_SERVICES_HEALTHREPORT=0
|
||||
mk_add_options MOZ_TELEMETRY_REPORTING=0
|
||||
|
||||
# options for ci / weaker build systems
|
||||
# mk_add_options MOZ_MAKE_FLAGS="-j4"
|
||||
# ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
cat >>../mozconfig <<END
|
||||
# taken from manjaro build:
|
||||
ac_add_options --enable-optimize="-g0 -O2"
|
||||
export MOZ_DEBUG_FLAGS=" "
|
||||
export CFLAGS+=" -g0"
|
||||
export CXXFLAGS+=" -g0"
|
||||
export RUSTFLAGS="-Cdebuginfo=0"
|
||||
|
||||
# from ALARM
|
||||
ac_add_options --disable-webrtc
|
||||
|
||||
END
|
||||
|
||||
# ac_add_options --enable-optimize <- ?
|
||||
|
||||
LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
|
||||
patch -p1 -i ../arm.patch
|
||||
patch -p1 -i ../build-arm-libopus.patch
|
||||
|
||||
fi
|
||||
|
||||
# Disabling Pocket
|
||||
sed -i "s/'pocket'/#'pocket'/g" browser/components/moz.build
|
||||
# this one only to remove an annoying error message:
|
||||
sed -i 's#SaveToPocket.init();#// SaveToPocket.init();#g' browser/components/BrowserGlue.jsm
|
||||
|
||||
rm -f ${srcdir}/common/source_files/mozconfig
|
||||
cp -r ${srcdir}/common/source_files/* ./
|
||||
}
|
||||
|
||||
|
||||
build() {
|
||||
cd firefox-$pkgver
|
||||
|
||||
export MOZ_SOURCE_REPO="$_repo"
|
||||
export MOZ_NOSPAM=1
|
||||
export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
|
||||
|
||||
# LTO needs more open files
|
||||
ulimit -n 4096
|
||||
|
||||
# -fno-plt with cross-LTO causes obscure LLVM errors
|
||||
# LLVM ERROR: Function Import: link error
|
||||
CFLAGS="${CFLAGS/-fno-plt/}"
|
||||
CXXFLAGS="${CXXFLAGS/-fno-plt/}"
|
||||
|
||||
# Do 3-tier PGO
|
||||
echo "Building instrumented browser..."
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
|
||||
cat >.mozconfig ../mozconfig - <<END
|
||||
ac_add_options --enable-profile-generate
|
||||
END
|
||||
|
||||
else
|
||||
|
||||
cat >.mozconfig ../mozconfig - <<END
|
||||
ac_add_options --enable-profile-generate=cross
|
||||
END
|
||||
|
||||
fi
|
||||
./mach build
|
||||
|
||||
echo "Profiling instrumented browser..."
|
||||
./mach package
|
||||
LLVM_PROFDATA=llvm-profdata \
|
||||
JARLOG_FILE="$PWD/jarlog" \
|
||||
xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \
|
||||
./mach python build/pgo/profileserver.py
|
||||
|
||||
if [[ ! -s merged.profdata ]]; then
|
||||
echo "No profile data produced."
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [[ ! -s jarlog ]]; then
|
||||
echo "No jar log produced."
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "Removing instrumented browser..."
|
||||
./mach clobber
|
||||
|
||||
echo "Building optimized browser..."
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
|
||||
cat >.mozconfig ../mozconfig - <<END
|
||||
ac_add_options --enable-lto
|
||||
ac_add_options --enable-profile-use
|
||||
ac_add_options --with-pgo-profile-path=${PWD@Q}/merged.profdata
|
||||
ac_add_options --with-pgo-jarlog=${PWD@Q}/jarlog
|
||||
# seems to break on arm
|
||||
# ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
else
|
||||
|
||||
cat >.mozconfig ../mozconfig - <<END
|
||||
ac_add_options --enable-lto=cross
|
||||
ac_add_options --enable-profile-use=cross
|
||||
ac_add_options --with-pgo-profile-path=${PWD@Q}/merged.profdata
|
||||
ac_add_options --with-pgo-jarlog=${PWD@Q}/jarlog
|
||||
ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
fi
|
||||
|
||||
./mach build
|
||||
|
||||
echo "Building symbol archive..."
|
||||
./mach buildsymbols
|
||||
}
|
||||
|
||||
package() {
|
||||
cd firefox-$pkgver
|
||||
DESTDIR="$pkgdir" ./mach install
|
||||
|
||||
# also create regular tarball for non-distro-specific packaging
|
||||
./mach package
|
||||
|
||||
local vendorjs="$pkgdir/usr/lib/$pkgname/browser/defaults/preferences/vendor.js"
|
||||
|
||||
# move the following part to librewolf.cfg instead?
|
||||
install -Dvm644 /dev/stdin "$vendorjs" <<END
|
||||
// Use LANG environment variable to choose locale
|
||||
pref("intl.locale.requested", "");
|
||||
|
||||
// Use system-provided dictionaries
|
||||
pref("spellchecker.dictionary_path", "/usr/share/hunspell");
|
||||
|
||||
// Disable default browser checking.
|
||||
pref("browser.shell.checkDefaultBrowser", false);
|
||||
|
||||
// Don't disable extensions in the application directory
|
||||
pref("extensions.autoDisableScopes", 11);
|
||||
END
|
||||
|
||||
install -Dm644 "${srcdir}/ublock_origin-$ublockver-an+fx.xpi" "$pkgdir"/usr/lib/${pkgname}/browser/extensions/uBlock0@raymondhill.net.xpi
|
||||
cp -r ${srcdir}/settings/* ${pkgdir}/usr/lib/${pkgname}/
|
||||
|
||||
local distini="$pkgdir/usr/lib/$pkgname/distribution/distribution.ini"
|
||||
install -Dvm644 /dev/stdin "$distini" <<END
|
||||
[Global]
|
||||
id=io.gitlab.${pkgname}
|
||||
version=1.0
|
||||
about=LibreWolf Arch Linux
|
||||
|
||||
[Preferences]
|
||||
app.distributor=archlinux
|
||||
app.distributor.channel=$pkgname
|
||||
app.partner.archlinux=archlinux
|
||||
END
|
||||
|
||||
for i in 16 32 48 64 128; do
|
||||
install -Dvm644 browser/branding/${pkgname}/default$i.png \
|
||||
"$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png"
|
||||
done
|
||||
install -Dvm644 browser/branding/librewolf/content/about-logo.png \
|
||||
"$pkgdir/usr/share/icons/hicolor/192x192/apps/$pkgname.png"
|
||||
|
||||
# arch upstream provides a separate svg for this. we don't have that, so let's re-use 16.png
|
||||
install -Dvm644 browser/branding/${pkgname}/default16.png \
|
||||
"$pkgdir/usr/share/icons/hicolor/symbolic/apps/$pkgname-symbolic.png"
|
||||
|
||||
install -Dvm644 ../$pkgname.desktop \
|
||||
"$pkgdir/usr/share/applications/$pkgname.desktop"
|
||||
|
||||
# Install a wrapper to avoid confusion about binary path
|
||||
install -Dvm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" <<END
|
||||
#!/bin/sh
|
||||
exec /usr/lib/$pkgname/librewolf "\$@"
|
||||
END
|
||||
|
||||
# Replace duplicate binary with wrapper
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
|
||||
ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/librewolf-bin"
|
||||
# Use system certificates
|
||||
local nssckbi="$pkgdir/usr/lib/$pkgname/libnssckbi.so"
|
||||
if [[ -e $nssckbi ]]; then
|
||||
ln -srfv "$pkgdir/usr/lib/libnssckbi.so" "$nssckbi"
|
||||
fi
|
||||
}
|
26
README.md
26
README.md
|
@ -1,20 +1,14 @@
|
|||
This Repository contains all the required material to build the browser on Linux platforms.
|
||||
|
||||
### Important
|
||||
|
||||
The following instructions are currently outdated. The build scripts are currently meant to be
|
||||
run in a CI environment with Docker containers and gitlab-runners. Updated instructions for
|
||||
local builds or setting up your own appropriate runners will be provided again in the future.
|
||||
The build scripts are currently meant to be run in a CI environment with Docker containers
|
||||
and gitlab-runners. Updated instructions for local builds or setting up your own
|
||||
appropriate runners will be provided again in the future.
|
||||
|
||||
### Requirements
|
||||
* Ubuntu or Linux Mint (Bionic or later)
|
||||
|
||||
### 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
|
||||
* The flatpak build is not ready yet.
|
||||
|
||||
### Instructions
|
||||
* Run build.sh inside this folder.
|
||||
* Packages will be saved in the repository root folder.
|
||||
## Other builds
|
||||
* [Gentoo](https://gitlab.com/librewolf-community/browser/gentoo)
|
||||
* [macOS](https://gitlab.com/librewolf-community/browser/macos)
|
||||
* [Debian](https://gitlab.com/librewolf-community/browser/debian)
|
||||
* [Windows](https://gitlab.com/librewolf-community/browser/windows)
|
||||
* [Flatpak](https://gitlab.com/librewolf-community/browser/flatpak)
|
||||
* [AppImage](https://gitlab.com/librewolf-community/browser/appimage)
|
||||
|
|
|
@ -1,59 +0,0 @@
|
|||
#!/bin/bash
|
||||
"""
|
||||
|
||||
|
||||
"""
|
||||
|
||||
printf "\n\n------------------------------------ APPIMAGE BUILD -----------------------------------------\n";
|
||||
|
||||
# Aborts the script upon any faliure
|
||||
set -e;
|
||||
|
||||
# Sets up script variables
|
||||
BINARY_TARBALL=$1
|
||||
APPIMAGE_FILE=$2
|
||||
_SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
_BINARY_TARBALL_EXTRACTED_FOLDER=$_SCRIPT_FOLDER/librewolf;
|
||||
_BUILD_APPIMAGE_FILE=$_SCRIPT_FOLDER/LibreWolf.AppImage;
|
||||
_APPIMAGETOOL_DOWNLOAD_URL=https://github.com/AppImage/AppImageKit/releases/latest/download/appimagetool-${CARCH}.AppImage;
|
||||
_APPIMAGETOOL_EXTRACTED_FOLDER=$_SCRIPT_FOLDER/squashfs-root;
|
||||
_APPIMAGETOOL_FILE=$_SCRIPT_FOLDER/appimagetool;
|
||||
_APPIMAGE_CONTENT_FOLDER=$_SCRIPT_FOLDER/content
|
||||
|
||||
# Installs needed dependencies
|
||||
apt-get update && apt-get -y install file;
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
apt install -y zlib1g-dev
|
||||
fi
|
||||
|
||||
# Extracts the binary tarball
|
||||
printf "\nExtracting librewolf binary tarball\n";
|
||||
mkdir $_BINARY_TARBALL_EXTRACTED_FOLDER;
|
||||
tar -xvf $BINARY_TARBALL -C $_BINARY_TARBALL_EXTRACTED_FOLDER;
|
||||
|
||||
# Copy appimage resources to main tarball
|
||||
printf "Copying AppImage resources to binary tarball folder\n";
|
||||
cp -vrT $_APPIMAGE_CONTENT_FOLDER $_BINARY_TARBALL_EXTRACTED_FOLDER;
|
||||
|
||||
# Downloads appimage tool
|
||||
printf "\nDownloading AppImage Tool\n";
|
||||
apt -qq update && apt -qqy install wget;
|
||||
wget $_APPIMAGETOOL_DOWNLOAD_URL -O $_APPIMAGETOOL_FILE;
|
||||
chmod +x $_APPIMAGETOOL_FILE;
|
||||
|
||||
# Generate AppImage
|
||||
printf "\nGenerating AppImage\n";
|
||||
ARCH=${CARCH} $_APPIMAGETOOL_FILE --appimage-extract-and-run\
|
||||
$_BINARY_TARBALL_EXTRACTED_FOLDER $_BUILD_APPIMAGE_FILE;
|
||||
chmod +x $_BUILD_APPIMAGE_FILE;
|
||||
|
||||
# Move AppImage to specified location
|
||||
printf "\nMoving AppImage to specified location\n";
|
||||
mv $_BUILD_APPIMAGE_FILE $APPIMAGE_FILE;
|
||||
|
||||
# Cleanup files
|
||||
printf "\nCleaning up AppImage files\n";
|
||||
rm -rf $_BINARY_TARBALL_EXTRACTED_FOLDER;
|
||||
rm -f $_APPIMAGETOOL_FILE;
|
||||
rm -rf $_APPIMAGETOOL_EXTRACTED_FOLDER;
|
|
@ -1 +0,0 @@
|
|||
librewolf.svg
|
|
@ -1,12 +0,0 @@
|
|||
#!/bin/sh
|
||||
SELF=$(readlink -f "$0")
|
||||
HERE=${SELF%/*}
|
||||
export PATH="${HERE}:${HERE}/usr/bin/:${HERE}/usr/sbin/:${HERE}/usr/games/:${HERE}/bin/:${HERE}/sbin/${PATH:+:$PATH}"
|
||||
export LD_LIBRARY_PATH="${HERE}/usr/lib/:${HERE}/usr/lib/i386-linux-gnu/:${HERE}/usr/lib/x86_64-linux-gnu/:${HERE}/usr/lib32/:${HERE}/usr/lib64/:${HERE}/lib/:${HERE}/lib/i386-linux-gnu/:${HERE}/lib/x86_64-linux-gnu/:${HERE}/lib32/:${HERE}/lib64/${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
|
||||
export PYTHONPATH="${HERE}/usr/share/pyshared/${PYTHONPATH:+:$PYTHONPATH}"
|
||||
export XDG_DATA_DIRS="${HERE}/usr/share/${XDG_DATA_DIRS:+:$XDG_DATA_DIRS}"
|
||||
export PERLLIB="${HERE}/usr/share/perl5/:${HERE}/usr/lib/perl5/${PERLLIB:+:$PERLLIB}"
|
||||
export GSETTINGS_SCHEMA_DIR="${HERE}/usr/share/glib-2.0/schemas/${GSETTINGS_SCHEMA_DIR:+:$GSETTINGS_SCHEMA_DIR}"
|
||||
export QT_PLUGIN_PATH="${HERE}/usr/lib/qt4/plugins/:${HERE}/usr/lib/i386-linux-gnu/qt4/plugins/:${HERE}/usr/lib/x86_64-linux-gnu/qt4/plugins/:${HERE}/usr/lib32/qt4/plugins/:${HERE}/usr/lib64/qt4/plugins/:${HERE}/usr/lib/qt5/plugins/:${HERE}/usr/lib/i386-linux-gnu/qt5/plugins/:${HERE}/usr/lib/x86_64-linux-gnu/qt5/plugins/:${HERE}/usr/lib32/qt5/plugins/:${HERE}/usr/lib64/qt5/plugins/${QT_PLUGIN_PATH:+:$QT_PLUGIN_PATH}"
|
||||
EXEC=$(grep -e '^Exec=.*' "${HERE}"/*.desktop | head -n 1 | cut -d "=" -f 2 | cut -d " " -f 1)
|
||||
exec "${EXEC}" "$@"
|
|
@ -1,6 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Name=LibreWolf
|
||||
Exec=librewolf
|
||||
Icon=librewolf
|
||||
Type=Application
|
||||
Categories=Network;
|
|
@ -1,90 +0,0 @@
|
|||
<?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>
|
Before Width: | Height: | Size: 5.8 KiB |
|
@ -1,10 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n-------------------------------------- DEPENDENCY INSTALLATION ---------------------------------------------\n";
|
||||
|
||||
# Setup Script Variables
|
||||
_DEPENDENCIES="mercurial wget git flatpak flatpak-builder";
|
||||
|
||||
# Installs Dependencies
|
||||
printf "\nInstalling dependencies: $_DEPENDENCIES\n";
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -qq update;
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y -qq install $_DEPENDENCIES;
|
|
@ -1,19 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n------------------------------ FINAL PREBUILD CONFIGURATION ---------------------------------\n";
|
||||
|
||||
# Setup Script Variables
|
||||
SOURCE_CODE_FOLDER=$1;
|
||||
_COMMON_REPO='https://gitlab.com/librewolf-community/browser/common.git';
|
||||
_POCKET_SED_STRING="s/'pocket'/#'pocket'/g";
|
||||
_POCKET_FILE=$SOURCE_CODE_FOLDER/browser/components/moz.build;
|
||||
|
||||
# Copy Source Code Changes to Source Code
|
||||
printf "\nCopying branding and source code changes to firefox source code\n";
|
||||
git clone $_COMMON_REPO common;
|
||||
cp -r common/source_files/* $SOURCE_CODE_FOLDER/;
|
||||
rm -rf common;
|
||||
|
||||
# Disables Pocket
|
||||
printf "\nDisabling Pocket\n";
|
||||
sed -i $_POCKET_SED_STRING $_POCKET_FILE;
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n--------------------------------------- BUILD -----------------------------------------------\n";
|
||||
|
||||
# Setup Script Variables
|
||||
SOURCE_FOLDER=$1;
|
||||
OUTPUT_TARBALL=$2;
|
||||
_SOURCE_CODE_BINARY_TARBALL_LOCATION="./obj*/dist/librewolf*.tar.bz2";
|
||||
|
||||
# Prevents build from breaking in CI/CD environments
|
||||
export SHELL=/bin/bash;
|
||||
|
||||
# Changes current folder to the source code folder
|
||||
cd $SOURCE_FOLDER;
|
||||
|
||||
# Runs bootstrapper to install dependencies
|
||||
printf "\nRunning bootstrapper to install build dependencies (using ./mach script within source code)\n";
|
||||
./mach bootstrap --application-choice=browser --no-interactive;
|
||||
|
||||
# Executes the actual build
|
||||
printf "\nBuilding LibreWolf\n";
|
||||
./mach build;
|
||||
|
||||
# Packages the build into a binary tarball
|
||||
printf "\nPackaging LibreWolf\n";
|
||||
./mach package;
|
||||
|
||||
# Moves the packaged tarball to the specified location
|
||||
printf "\nMoving Binary Tarball to output location\n";
|
||||
mv $_SOURCE_CODE_BINARY_TARBALL_LOCATION $OUTPUT_TARBALL;
|
||||
|
||||
# Deletes the source code
|
||||
printf "\nDeleting source code\n";
|
||||
rm -rf $SOURCE_FOLDER;
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n--------------------------------- SETTINGS INTEGRATION --------------------------------------\n";
|
||||
|
||||
# Setup Script Variables
|
||||
BINARY_TARBALL=$1;
|
||||
TOGGLE_SETTINGS_SCRIPT=$2;
|
||||
LAUNCHER_SCRIPT=$3;
|
||||
_SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
_EXTRACTED_TARBALL_FOLDER=$_SCRIPT_FOLDER/librewolf;
|
||||
_SETTINGS_REPO='https://gitlab.com/librewolf-community/settings.git';
|
||||
|
||||
# Extracts the binary tarball
|
||||
printf "\nExtracting librewolf binary tarball\n";
|
||||
tar -xf $BINARY_TARBALL -C $_EXTRACTED_TARBALL_FOLDER/..;
|
||||
|
||||
# Adds the librefox config files to the packaged tarball
|
||||
printf "\nCopying librewolf settings to extracted binary tarball\n";
|
||||
|
||||
git clone $_SETTINGS_REPO $_EXTRACTED_TARBALL_FOLDER/settings;
|
||||
# no need to keep that in there
|
||||
rm -rf "${_EXTRACTED_TARBALL_FOLDER}/settings/.git";
|
||||
cp $TOGGLE_SETTINGS_SCRIPT $_EXTRACTED_TARBALL_FOLDER/settings;
|
||||
cp $LAUNCHER_SCRIPT $_EXTRACTED_TARBALL_FOLDER/launch_librewolf.sh;
|
||||
|
||||
# Somewhat crude workaround to use settings per default
|
||||
# until we've worked out how to use `--install-settings` with links
|
||||
# in all major packages instead
|
||||
cp $_EXTRACTED_TARBALL_FOLDER/settings/* $_EXTRACTED_TARBALL_FOLDER;
|
||||
|
||||
# Repacks the binary tarball
|
||||
printf "\nRecompressing binary tarball\n";
|
||||
tar -jvcf $BINARY_TARBALL -C $_EXTRACTED_TARBALL_FOLDER .;
|
16
build.sh
16
build.sh
|
@ -1,16 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n------------------------------------- SCRIPT SETUP ------------------------------------------\n";
|
||||
|
||||
# Aborts the script upon any faliure
|
||||
set -e;
|
||||
|
||||
# Sets up script variables
|
||||
SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
BINARY_TARBALL=$SCRIPT_FOLDER/LibreWolf.tar.bz2;
|
||||
APPIMAGE_FILE=$SCRIPT_FOLDER/LibreWolf.AppImage;
|
||||
FLATPAK_REPO=$SCRIPT_FOLDER/librewolf-flatpak-repo;
|
||||
FLATPAK_BUNDLE=$SCRIPT_FOLDER/LibreWolf.flatpak;
|
||||
|
||||
$SCRIPT_FOLDER/binary_tarball/build_tarball.sh $BINARY_TARBALL;
|
||||
$SCRIPT_FOLDER/appimage/build_appimage.sh $BINARY_TARBALL $APPIMAGE_FILE;
|
||||
$SCRIPT_FOLDER/flatpak/build_flatpak.sh $BINARY_TARBALL $FLATPAK_REPO $FLATPAK_BUNDLE;
|
47
content/io.gitlab.librewolf-community.appdata.xml.in
Normal file
47
content/io.gitlab.librewolf-community.appdata.xml.in
Normal file
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component type="desktop-application">
|
||||
<id>io.gitlab.librewolf-community</id>
|
||||
<launchable type="desktop-id">io.gitlab.librewolf-community.desktop</launchable>
|
||||
<name>LibreWolf</name>
|
||||
<developer_name>LibreWolf Community</developer_name>
|
||||
<summary>LibreWolf Web Browser</summary>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>MPL-2.0</project_license>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<image type="source" width="1512" height="900">https://librewolf-community.gitlab.io/images/screenshot.png</image>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
<description>
|
||||
<p>LibreWolf</p>
|
||||
<p>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.</p>
|
||||
<p>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).</p>
|
||||
<p>LibreWolf is NOT associated with Mozilla or its products.</p>
|
||||
<p>Features:</p>
|
||||
<ul>
|
||||
<li>Latest Version of Firefox: LibreWolf is compiled directly from the latest build of Firefox Stable. You will have the the latest features, and security updates.</li>
|
||||
<li>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.</li>
|
||||
<li>Settings protection: important settings are enforced/locked within librewolf.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 librewolf.cfg and policies.json.</li>
|
||||
<li>LibreWolf-addons: set of optional LibreWolf extensions</li>
|
||||
<li>Statistics disabled: telemetry and similar functions are disabled</li>
|
||||
<li>Tested settings: settings are performance aware</li>
|
||||
<li>Recommended and code reviewed addons list</li>
|
||||
<li>Community-Driven</li>
|
||||
<li>And much more…</li>
|
||||
</ul>
|
||||
</description>
|
||||
<releases>
|
||||
<release version="$pkgver-$pkgrel" date="$DATE"/>
|
||||
</releases>
|
||||
<keywords>
|
||||
<keyword>librewolf</keyword>
|
||||
<keyword>internet</keyword>
|
||||
<keyword>web</keyword>
|
||||
</keywords>
|
||||
<url type="homepage">https://librewolf-community.gitlab.io/</url>
|
||||
<url type="bugtracker">https://gitlab.com/groups/librewolf-community/-/issues/</url>
|
||||
<provides>
|
||||
<id>io.gitlab.librewolf-community</id>
|
||||
</provides>
|
||||
<content_rating type="oars-1.1" />
|
||||
</component>
|
|
@ -4,7 +4,8 @@
|
|||
# - any command fails (-e | --errexit)
|
||||
# - any variable is unset (-u | --nounset)
|
||||
# - a part of a piped sequence fails (-o pipefail)
|
||||
set -euo pipefail
|
||||
#set -euo pipefail
|
||||
set -e
|
||||
|
||||
SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
|
||||
|
|
22
deb_patches/armhf-reduce-linker-memory-use.patch
Normal file
22
deb_patches/armhf-reduce-linker-memory-use.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
Description: starting with firefox 66, armhf builds on Launchpad frequently
|
||||
fail with "/usr/bin/ld: final link failed: memory exhausted" when linking
|
||||
libxul.so. This is an attempt to reduce the memory used by ld.
|
||||
Author: Olivier Tilloy <olivier.tilloy@canonical.com>
|
||||
|
||||
--- a/build/moz.configure/toolchain.configure
|
||||
+++ b/build/moz.configure/toolchain.configure
|
||||
@@ -2287,10 +2287,12 @@
|
||||
set_config("LINKER_KIND", select_linker.KIND)
|
||||
|
||||
|
||||
-@depends_if(select_linker, target, target_sysroot, target_multiarch_dir, c_compiler)
|
||||
+@depends_if(select_linker, target, target_sysroot, target_multiarch_dir, c_compiler, host)
|
||||
@imports("os")
|
||||
-def linker_ldflags(linker, target, sysroot, multiarch_dir, c_compiler):
|
||||
+def linker_ldflags(linker, target, sysroot, multiarch_dir, c_compiler, host):
|
||||
flags = list((linker and linker.LINKER_FLAG) or [])
|
||||
+ if host.cpu == "arm":
|
||||
+ flags.append("-Wl,--no-keep-memory")
|
||||
# rpath-link is irrelevant to wasm, see for more info https://github.com/emscripten-core/emscripten/issues/11076.
|
||||
if sysroot.path and multiarch_dir and target.os != "WASI":
|
||||
for d in ("lib", "usr/lib"):
|
65
deb_patches/fix-armhf-webrtc-build.patch
Normal file
65
deb_patches/fix-armhf-webrtc-build.patch
Normal file
|
@ -0,0 +1,65 @@
|
|||
--- a/third_party/libwebrtc/webrtc/system_wrappers/cpu_features_linux_gn/moz.build
|
||||
+++ b/third_party/libwebrtc/webrtc/system_wrappers/cpu_features_linux_gn/moz.build
|
||||
@@ -31,10 +31,6 @@ LOCAL_INCLUDES += [
|
||||
"/tools/profiler/public"
|
||||
]
|
||||
|
||||
-UNIFIED_SOURCES += [
|
||||
- "/third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c"
|
||||
-]
|
||||
-
|
||||
if not CONFIG["MOZ_DEBUG"]:
|
||||
|
||||
DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "0"
|
||||
@@ -53,20 +49,36 @@ if CONFIG["CPU_ARCH"] == "aarch64":
|
||||
DEFINES["WEBRTC_ARCH_ARM64"] = True
|
||||
DEFINES["WEBRTC_HAS_NEON"] = True
|
||||
|
||||
-if CONFIG["CPU_ARCH"] == "arm":
|
||||
-
|
||||
- CFLAGS += [
|
||||
- "-mfpu=neon"
|
||||
+ UNIFIED_SOURCES += [
|
||||
+ "/third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c"
|
||||
]
|
||||
|
||||
+if CONFIG["CPU_ARCH"] == "arm":
|
||||
+
|
||||
DEFINES["WEBRTC_ARCH_ARM"] = True
|
||||
DEFINES["WEBRTC_ARCH_ARM_V7"] = True
|
||||
DEFINES["WEBRTC_HAS_NEON"] = True
|
||||
|
||||
+if CONFIG["CPU_ARCH"] == "ppc64":
|
||||
+
|
||||
+ UNIFIED_SOURCES += [
|
||||
+ "/third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c"
|
||||
+ ]
|
||||
+
|
||||
if CONFIG["CPU_ARCH"] == "x86":
|
||||
|
||||
CFLAGS += [
|
||||
"-msse2"
|
||||
]
|
||||
|
||||
+ UNIFIED_SOURCES += [
|
||||
+ "/third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c"
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG["CPU_ARCH"] == "x86_64":
|
||||
+
|
||||
+ UNIFIED_SOURCES += [
|
||||
+ "/third_party/libwebrtc/webrtc/system_wrappers/source/cpu_features_linux.c"
|
||||
+ ]
|
||||
+
|
||||
Library("cpu_features_linux_gn")
|
||||
--- a/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
|
||||
+++ b/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
|
||||
@@ -187,7 +187,7 @@ if (is_android && !build_with_mozilla) {
|
||||
}
|
||||
}
|
||||
|
||||
-if (is_linux) {
|
||||
+if (is_linux && target_cpu != "arm") {
|
||||
rtc_static_library("cpu_features_linux") {
|
||||
sources = [
|
||||
"source/cpu_features_linux.c",
|
21
deb_patches/reduce-rust-debuginfo.patch
Normal file
21
deb_patches/reduce-rust-debuginfo.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
Description: reduce the rust debuginfo level
|
||||
because compiling with debuginfo=2 causes the OOM killer to interrupt the build
|
||||
on launchpad builders. Initially this was only on 32 bit architectures, but
|
||||
with firefox 63 it started happening frequently on arm64 and ppc64el too,
|
||||
with newer versions it started happening very frequently on s390x too, and with
|
||||
firefox 84 (built with rustc 1.47) it started happening on amd64 too.
|
||||
This patch would initially decrease debug_info for selected architectures, but
|
||||
with recent versions of rustc pretty much all supported architectures are
|
||||
affected, so it is now unconditional.
|
||||
|
||||
--- a/build/moz.configure/rust.configure
|
||||
+++ b/build/moz.configure/rust.configure
|
||||
@@ -2167,7 +2167,7 @@ def rust_compile_flags(opt_level, debug_
|
||||
debug_assertions = False
|
||||
|
||||
if debug_symbols:
|
||||
- debug_info = "2"
|
||||
+ debug_info = "1"
|
||||
|
||||
opts = []
|
||||
|
13
deb_patches/use-system-icupkg.patch
Normal file
13
deb_patches/use-system-icupkg.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff -r 08cd64cdbc3b config/external/icu/data/convert_icudata.py
|
||||
--- a/config/external/icu/data/convert_icudata.py Fri Jul 17 11:18:09 2020 +0000
|
||||
+++ b/config/external/icu/data/convert_icudata.py Sat Jul 18 14:40:33 2020 +0200
|
||||
@@ -11,7 +11,7 @@
|
||||
subprocess.run(
|
||||
[
|
||||
- os.path.join(buildconfig.topobjdir, "dist", "host", "bin", "icupkg"),
|
||||
+ "icupkg",
|
||||
"-tb",
|
||||
data_file,
|
||||
output.name,
|
||||
]
|
||||
|
35
deb_patches/webrtc-fix-compiler-flags-for-armhf.patch
Normal file
35
deb_patches/webrtc-fix-compiler-flags-for-armhf.patch
Normal file
|
@ -0,0 +1,35 @@
|
|||
# Description: Don't pass -mfloat-abi=softfp on armhf
|
||||
# Author: Chris Coulson <chris.coulson@canonical.com>
|
||||
# Forwarded: no
|
||||
|
||||
--- a/build/gyp.mozbuild
|
||||
+++ b/build/gyp.mozbuild
|
||||
@@ -107,9 +107,15 @@ if CONFIG['ARM_ARCH']:
|
||||
gyp_vars['arm_neon'] = 1
|
||||
gyp_vars['build_with_neon'] = 1
|
||||
else:
|
||||
- # CPU detection for ARM works on Android only. armv7 always uses CPU
|
||||
- # detection, so we have to set armv7=0 for non-Android target
|
||||
- gyp_vars['armv7'] = 0
|
||||
+ gyp_vars['armv7'] = 1
|
||||
+ # We enable NEON for Ubuntu armhf. Note that these don't really
|
||||
+ # have any effect here as NEON is hardcoded on in
|
||||
+ # media/webrtc/trunk/webrtc/build/common.gypi. Disabling these
|
||||
+ # without fixing that file will result in a link failure, as
|
||||
+ # targets hidden behind the build_with_neon flag don't get
|
||||
+ # built but WEBRTC_HAS_NEON is still defined
|
||||
+ gyp_vars['arm_neon'] = 1
|
||||
+ gyp_vars['build_with_neon'] = 1
|
||||
# For libyuv
|
||||
gyp_vars['arm_version'] = int(CONFIG['ARM_ARCH'])
|
||||
|
||||
--- a/third_party/libwebrtc/webrtc/build/config/compiler/BUILD.gn
|
||||
+++ b/third_party/libwebrtc/webrtc/build/config/compiler/BUILD.gn
|
||||
@@ -590,7 +590,6 @@ config("compiler_cpu_abi") {
|
||||
if (!is_nacl) {
|
||||
cflags += [
|
||||
"-march=$arm_arch",
|
||||
- "-mfloat-abi=$arm_float_abi",
|
||||
]
|
||||
}
|
||||
if (arm_tune != "") {
|
24
deprecated_patches/context-menu.patch
Normal file
24
deprecated_patches/context-menu.patch
Normal file
|
@ -0,0 +1,24 @@
|
|||
diff --git a/browser/base/content/browser-context.inc b/browser/base/content/browser-context.inc
|
||||
index a7fce1a806..3a9d07582d 100644
|
||||
--- a/browser/base/content/browser-context.inc
|
||||
+++ b/browser/base/content/browser-context.inc
|
||||
@@ -78,9 +78,6 @@
|
||||
<menuitem id="context-savelink"
|
||||
data-l10n-id="main-context-menu-save-link"
|
||||
oncommand="gContextMenu.saveLink();"/>
|
||||
- <menuitem id="context-savelinktopocket"
|
||||
- data-l10n-id="main-context-menu-save-link-to-pocket"
|
||||
- oncommand= "Pocket.savePage(gContextMenu.browser, gContextMenu.linkURL);"/>
|
||||
<menuitem id="context-copyemail"
|
||||
data-l10n-id="main-context-menu-copy-email"
|
||||
oncommand="gContextMenu.copyEmail();"/>
|
||||
@@ -215,9 +212,6 @@
|
||||
<menuitem id="context-savepage"
|
||||
data-l10n-id="main-context-menu-page-save"
|
||||
oncommand="gContextMenu.savePageAs();"/>
|
||||
- <menuitem id="context-pocket"
|
||||
- data-l10n-id="main-context-menu-save-to-pocket"
|
||||
- oncommand="Pocket.savePage(gContextMenu.browser, gContextMenu.browser.currentURI.spec, gContextMenu.browser.contentTitle);"/>
|
||||
<menuseparator id="context-sep-sendpagetodevice" class="sync-ui-item"
|
||||
hidden="true"/>
|
||||
<menu id="context-sendpagetodevice"
|
129
deprecated_patches/megabar.patch
Normal file
129
deprecated_patches/megabar.patch
Normal file
|
@ -0,0 +1,129 @@
|
|||
diff --git a/browser/components/urlbar/UrlbarInput.jsm b/browser/components/urlbar/UrlbarInput.jsm
|
||||
index 73d15df..99cc41b 100644
|
||||
--- a/browser/components/urlbar/UrlbarInput.jsm
|
||||
+++ b/browser/components/urlbar/UrlbarInput.jsm
|
||||
@@ -1692,13 +1692,13 @@ class UrlbarInput {
|
||||
|
||||
// Enable the animation only after the first extend call to ensure it
|
||||
// doesn't run when opening a new window.
|
||||
- if (!this.hasAttribute("breakout-extend-animate")) {
|
||||
- this.window.promiseDocumentFlushed(() => {
|
||||
- this.window.requestAnimationFrame(() => {
|
||||
- this.setAttribute("breakout-extend-animate", "true");
|
||||
- });
|
||||
- });
|
||||
- }
|
||||
+ // if (!this.hasAttribute("breakout-extend-animate")) {
|
||||
+ // this.window.promiseDocumentFlushed(() => {
|
||||
+ // this.window.requestAnimationFrame(() => {
|
||||
+ // this.setAttribute("breakout-extend-animate", "true");
|
||||
+ // });
|
||||
+ // });
|
||||
+ // }
|
||||
}
|
||||
|
||||
endLayoutExtend() {
|
||||
diff --git a/browser/themes/shared/urlbar-searchbar.inc.css b/browser/themes/shared/urlbar-searchbar.inc.css
|
||||
index e9fde8b..6c4c444 100644
|
||||
--- a/browser/themes/shared/urlbar-searchbar.inc.css
|
||||
+++ b/browser/themes/shared/urlbar-searchbar.inc.css
|
||||
@@ -5,7 +5,7 @@
|
||||
%endif
|
||||
|
||||
%define fieldHoverBorderColor hsla(240,5%,5%,.35)
|
||||
-%define urlbarMarginInline 5px
|
||||
+%define urlbarMarginInline 0px
|
||||
%define urlbarSearchButtonWidth calc(16px + 2 * var(--urlbar-icon-padding))
|
||||
|
||||
:root {
|
||||
@@ -273,9 +273,9 @@
|
||||
}
|
||||
|
||||
#urlbar[breakout][breakout-extend] {
|
||||
- top: -@urlbarBreakoutExtend@;
|
||||
- left: calc(-@urlbarMarginInline@ - @urlbarBreakoutExtend@);
|
||||
- width: calc(100% + 2 * @urlbarMarginInline@ + 2 * @urlbarBreakoutExtend@);
|
||||
+ top: calc((var(--urlbar-toolbar-height) - var(--urlbar-height)) / 2);
|
||||
+ left: 0;
|
||||
+ width: 100%;
|
||||
}
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.urlbar.enabled") {
|
||||
@@ -288,7 +288,7 @@
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.urlbar.enabled") {
|
||||
#urlbar[breakout][breakout-extend] > #urlbar-background {
|
||||
- box-shadow: 0 3px 8px 0 rgba(0,0,0,.15)
|
||||
+ box-shadow: 0 1px 4px rgba(0,0,0,.05);
|
||||
}
|
||||
|
||||
#urlbar[breakout][breakout-extend][open] > #urlbar-background {
|
||||
@@ -297,9 +297,9 @@
|
||||
} /*** END !proton ***/
|
||||
|
||||
#urlbar[breakout][breakout-extend] > #urlbar-input-container {
|
||||
- height: calc(var(--urlbar-toolbar-height) + 2 * @urlbarBreakoutExtend@);
|
||||
- padding-block: calc(@urlbarBreakoutExtend@ + (var(--urlbar-toolbar-height) - var(--urlbar-height)) / 2);
|
||||
- padding-inline: calc(@urlbarMarginInline@ + @urlbarBreakoutExtend@);
|
||||
+ height: var(--urlbar-height);
|
||||
+ padding-block: 0;
|
||||
+ padding-inline: 0;
|
||||
}
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.urlbar.enabled") {
|
||||
@@ -325,7 +325,7 @@
|
||||
}
|
||||
|
||||
#urlbar[breakout][breakout-extend] > #urlbar-background {
|
||||
- animation-name: urlbar-grow;
|
||||
+ animation-name: none;
|
||||
animation-duration: 0s;
|
||||
animation-timing-function: var(--animation-easing-function);
|
||||
}
|
||||
diff --git a/browser/themes/shared/urlbarView.inc.css b/browser/themes/shared/urlbarView.inc.css
|
||||
index c6ce546..da00fac 100644
|
||||
--- a/browser/themes/shared/urlbarView.inc.css
|
||||
+++ b/browser/themes/shared/urlbarView.inc.css
|
||||
@@ -74,8 +74,8 @@
|
||||
display: block;
|
||||
text-shadow: none;
|
||||
overflow: clip;
|
||||
- margin-inline: calc(5px + var(--urlbar-container-padding));
|
||||
- width: calc(100% - 2 * (5px + var(--urlbar-container-padding)));
|
||||
+ margin-inline: 0;
|
||||
+ width: 100%;
|
||||
/* Match urlbar-background's border. */
|
||||
border-inline: 1px solid transparent;
|
||||
}
|
||||
@@ -115,7 +115,7 @@
|
||||
flex-wrap: nowrap;
|
||||
fill: currentColor;
|
||||
fill-opacity: .6;
|
||||
- padding-block: 3px;
|
||||
+ padding-block: 0;
|
||||
}
|
||||
|
||||
:root[uidensity=compact] .urlbarView-row {
|
||||
@@ -280,6 +280,7 @@
|
||||
object-fit: contain;
|
||||
flex-shrink: 0;
|
||||
-moz-context-properties: fill, fill-opacity;
|
||||
+ margin-inline-start: 20px;
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.urlbar.enabled") {
|
||||
@@ -324,10 +325,10 @@
|
||||
|
||||
.urlbarView-type-icon {
|
||||
position: absolute;
|
||||
- width: 12px;
|
||||
- height: 12px;
|
||||
- margin-bottom: -4px;
|
||||
- margin-inline-start: 8px;
|
||||
+ width: 16px;
|
||||
+ height: 16px;
|
||||
+ margin-bottom: 0;
|
||||
+ margin-inline-start: 0;
|
||||
align-self: end;
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
16
deprecated_patches/mozilla-vpn-ad.patch
Normal file
16
deprecated_patches/mozilla-vpn-ad.patch
Normal file
|
@ -0,0 +1,16 @@
|
|||
diff --git a/browser/components/privatebrowsing/content/aboutPrivateBrowsing.html b/browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
|
||||
index 4d22812723..2542791b9b 100644
|
||||
--- a/browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
|
||||
+++ b/browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
|
||||
@@ -54,11 +54,7 @@
|
||||
<div class="info">
|
||||
<h1 data-l10n-id="about-private-browsing-info-title"></h1>
|
||||
<p data-l10n-id="about-private-browsing-info-description"></p>
|
||||
- <a id="private-browsing-myths" data-l10n-id="about-private-browsing-info-myths"></a>
|
||||
</div>
|
||||
</div>
|
||||
-
|
||||
- <p id="private-browsing-vpn-text" class="vpn-promo" data-l10n-id="about-private-browsing-need-more-privacy"></p>
|
||||
- <a id="private-browsing-vpn-link" class="vpn-promo" data-l10n-id="about-private-browsing-turn-on-vpn"></a>
|
||||
</body>
|
||||
</html>
|
74
deprecated_patches/remove_addons.patch
Normal file
74
deprecated_patches/remove_addons.patch
Normal file
|
@ -0,0 +1,74 @@
|
|||
diff --git a/browser/extensions/moz.build b/browser/extensions/moz.build
|
||||
index 269dcb2..ed7c31d 100644
|
||||
--- a/browser/extensions/moz.build
|
||||
+++ b/browser/extensions/moz.build
|
||||
@@ -5,10 +5,7 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
DIRS += [
|
||||
- "doh-rollout",
|
||||
"formautofill",
|
||||
"screenshots",
|
||||
- "webcompat",
|
||||
- "report-site-issue",
|
||||
"pictureinpicture",
|
||||
]
|
||||
diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
|
||||
index 496379c..dd6f359 100644
|
||||
--- a/browser/locales/Makefile.in
|
||||
+++ b/browser/locales/Makefile.in
|
||||
@@ -61,7 +61,6 @@ l10n-%:
|
||||
ifneq (,$(wildcard ../extensions/formautofill/locales))
|
||||
@$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
|
||||
endif
|
||||
- @$(MAKE) -C ../extensions/report-site-issue/locales AB_CD=$* XPI_NAME=locale-$*
|
||||
@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
|
||||
@$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
|
||||
@$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
|
||||
@@ -82,7 +81,6 @@ endif
|
||||
@$(MAKE) -C ../../devtools/startup/locales chrome AB_CD=$*
|
||||
@$(MAKE) chrome AB_CD=$*
|
||||
@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$*
|
||||
- @$(MAKE) -C ../extensions/report-site-issue/locales chrome AB_CD=$*
|
||||
|
||||
package-win32-installer: $(SUBMAKEFILES)
|
||||
$(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen ZIP_IN='$(ZIP_OUT)' installer
|
||||
diff --git a/browser/locales/filter.py b/browser/locales/filter.py
|
||||
index bb2e992..7d7768e 100644
|
||||
--- a/browser/locales/filter.py
|
||||
+++ b/browser/locales/filter.py
|
||||
@@ -20,7 +20,6 @@ def test(mod, path, entity=None):
|
||||
"browser",
|
||||
"browser/extensions/formautofill",
|
||||
"browser/extensions/fxmonitor",
|
||||
- "browser/extensions/report-site-issue",
|
||||
"extensions/spellcheck",
|
||||
"other-licenses/branding/firefox",
|
||||
"browser/branding/official",
|
||||
diff --git a/browser/locales/l10n.ini b/browser/locales/l10n.ini
|
||||
index f4cb7ca..4efac13 100644
|
||||
--- a/browser/locales/l10n.ini
|
||||
+++ b/browser/locales/l10n.ini
|
||||
@@ -14,7 +14,6 @@ dirs = browser
|
||||
devtools/startup
|
||||
browser/extensions/formautofill
|
||||
browser/extensions/fxmonitor
|
||||
- browser/extensions/report-site-issue
|
||||
|
||||
[includes]
|
||||
# non-central apps might want to use %(topsrcdir)s here, or other vars
|
||||
diff --git a/browser/locales/l10n.toml b/browser/locales/l10n.toml
|
||||
index b9b18fe..af7c583 100644
|
||||
--- a/browser/locales/l10n.toml
|
||||
+++ b/browser/locales/l10n.toml
|
||||
@@ -133,10 +133,6 @@ locales = [
|
||||
reference = "browser/extensions/fxmonitor/locales/en-US/**"
|
||||
l10n = "{l}browser/extensions/fxmonitor/**"
|
||||
|
||||
-[[paths]]
|
||||
- reference = "browser/extensions/report-site-issue/locales/en-US/**"
|
||||
- l10n = "{l}browser/extensions/report-site-issue/**"
|
||||
-
|
||||
[[paths]]
|
||||
reference = "services/sync/locales/en-US/**"
|
||||
l10n = "{l}services/sync/**"
|
5300
deprecated_patches/unity-menubar.patch
Normal file
5300
deprecated_patches/unity-menubar.patch
Normal file
File diff suppressed because it is too large
Load diff
7
docs/README.md
Normal file
7
docs/README.md
Normal file
|
@ -0,0 +1,7 @@
|
|||
![Logo](https://librewolf-community.gitlab.io/images/logo.png)
|
||||
|
||||
# LibreWolf
|
||||
|
||||
## Documentation has moved
|
||||
|
||||
You can find the current documentation for LibreWolf at [librewolf-community.gitlab.io/docs/](https://librewolf-community.gitlab.io/docs/).
|
|
@ -1,56 +0,0 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n---------------------------------------- FLATPAK BUILD --------------------------------------------\n";
|
||||
|
||||
# Aborts the script upon any faliure
|
||||
set -e;
|
||||
|
||||
# Setup Script Variables
|
||||
BINARY_TARBALL=$1;
|
||||
FLATPAK_REPO=$2;
|
||||
FLATPAK_BUNDLE=$3;
|
||||
_SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
_FLATHUB_REPO="flathub https://flathub.org/repo/flathub.flatpakrepo";
|
||||
_FLATHUB_PACKAGES_TO_INSTALL="org.gnome.Platform/${CARCH}/3.32 org.gnome.Sdk/${CARCH}/3.32";
|
||||
_EXTRACTED_BINARY_TARBALL_FOLDER=$_SCRIPT_FOLDER/librewolf
|
||||
_FLATPAK_JSON_FILE=$_SCRIPT_FOLDER/content/io.gitlab.LibreWolf.json;
|
||||
_FLATPAK_BUILD_SOURCE_FOLDER=$_SCRIPT_FOLDER/source;
|
||||
_FLATPAK_BUILD_FOLDER=build-dir;
|
||||
|
||||
# Install build dependencies
|
||||
printf "\nInstalling flatpak build dependencies\n";
|
||||
|
||||
# we're using a pre-prepared flatpak-image witch aarch64
|
||||
apt update && apt install -y software-properties-common
|
||||
add-apt-repository -y ppa:alexlarsson/flatpak
|
||||
apt update && apt install -y flatpak-builder
|
||||
flatpak remote-add --if-not-exists $_FLATHUB_REPO;
|
||||
flatpak install -y flathub $_FLATHUB_PACKAGES_TO_INSTALL;
|
||||
|
||||
# Extracts the binary tarball
|
||||
printf "\nExtracting librewolf binary tarball\n";
|
||||
mkdir -p $_EXTRACTED_BINARY_TARBALL_FOLDER;
|
||||
tar -xvf $BINARY_TARBALL -C $_EXTRACTED_BINARY_TARBALL_FOLDER;
|
||||
|
||||
# Prepare for flatpak build
|
||||
printf "\nPreparing files for flatpak build\n";
|
||||
mkdir -p $_FLATPAK_BUILD_SOURCE_FOLDER;
|
||||
mv $_EXTRACTED_BINARY_TARBALL_FOLDER $_FLATPAK_BUILD_SOURCE_FOLDER;
|
||||
|
||||
# Build Repo
|
||||
printf "\nBuilding flatpak repository\n";
|
||||
cp "$_FLATPAK_JSON_FILE" ./;
|
||||
flatpak-builder --disable-rofiles-fuse --repo="$FLATPAK_REPO" "$_FLATPAK_BUILD_FOLDER" io.gitlab.LibreWolf.json;
|
||||
|
||||
# Build bundle
|
||||
printf "\nBuilding flatpak bundle\n";
|
||||
flatpak build-bundle $FLATPAK_REPO $FLATPAK_BUNDLE io.gitlab.LibreWolf master;
|
||||
|
||||
# Clean up flatpak files
|
||||
printf "\nCleaning up flatpak related files\n";
|
||||
rm -rf $_FLATPAK_BUILD_FOLDER;
|
||||
rm -rf $_FLATPAK_BUILD_SOURCE_FOLDER;
|
||||
rm -rf ./.flatpak-builder;
|
||||
|
||||
# Delete the extracted binary tarball folder
|
||||
printf "\nDeleting extracted binary tarball folder\n";
|
||||
rm -rf $_EXTRACTED_BINARY_TARBALL_FOLDER;
|
|
@ -1,30 +0,0 @@
|
|||
{
|
||||
"app-id": "io.gitlab.LibreWolf",
|
||||
"runtime": "org.gnome.Platform",
|
||||
"runtime-version": "3.32",
|
||||
"sdk": "org.gnome.Sdk",
|
||||
"command": "librewolf",
|
||||
"modules": [
|
||||
{
|
||||
"name": "librewolf",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"mkdir -p /app/share && mv librewolf -t /app/share",
|
||||
"mkdir -p /app/bin && ln -s /app/share/librewolf/librewolf /app/bin/"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": "flatpak/source"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"finish-args": [
|
||||
"--share=ipc",
|
||||
"--socket=x11",
|
||||
"--socket=wayland",
|
||||
"--filesystem=home:rw",
|
||||
"--share=network"
|
||||
]
|
||||
}
|
|
@ -1,340 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=LibreWolf
|
||||
GenericName=Web Browser
|
||||
GenericName[ar]=متصفح ويب
|
||||
GenericName[ast]=Restolador Web
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[ca]=Navegador web
|
||||
GenericName[cs]=Webový prohlížeč
|
||||
GenericName[da]=Webbrowser
|
||||
GenericName[de]=Webbrowser
|
||||
GenericName[el]=Περιηγητής διαδικτύου
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebibrauser
|
||||
GenericName[fa]=مرورگر اینترنتی
|
||||
GenericName[fi]=WWW-selain
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gl]=Navegador Web
|
||||
GenericName[he]=דפדפן אינטרנט
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[it]=Browser web
|
||||
GenericName[ja]=ウェブ・ブラウザ
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[ku]=Geroka torê
|
||||
GenericName[lt]=Interneto naršyklė
|
||||
GenericName[nb]=Nettleser
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[nn]=Nettlesar
|
||||
GenericName[no]=Nettleser
|
||||
GenericName[pl]=Przeglądarka WWW
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador Web
|
||||
GenericName[ro]=Navigator Internet
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sk]=Internetový prehliadač
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[ug]=توركۆرگۈ
|
||||
GenericName[uk]=Веб-браузер
|
||||
GenericName[vi]=Trình duyệt Web
|
||||
GenericName[zh_CN]=网络浏览器
|
||||
GenericName[zh_TW]=網路瀏覽器
|
||||
Comment=Browse the World Wide Web
|
||||
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
|
||||
Comment[ast]=Restola pela Rede
|
||||
Comment[bn]=ইন্টারনেট ব্রাউজ করুন
|
||||
Comment[ca]=Navegueu per el web
|
||||
Comment[cs]=Prohlížení stránek World Wide Webu
|
||||
Comment[da]=Surf på internettet
|
||||
Comment[de]=Im Internet surfen
|
||||
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
|
||||
Comment[es]=Navegue por la web
|
||||
Comment[et]=Lehitse veebi
|
||||
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
|
||||
Comment[fi]=Selaa Internetin WWW-sivuja
|
||||
Comment[fr]=Naviguer sur le Web
|
||||
Comment[gl]=Navegar pola rede
|
||||
Comment[he]=גלישה ברחבי האינטרנט
|
||||
Comment[hr]=Pretražite web
|
||||
Comment[hu]=A világháló böngészése
|
||||
Comment[it]=Esplora il web
|
||||
Comment[ja]=ウェブを閲覧します
|
||||
Comment[ko]=웹을 돌아 다닙니다
|
||||
Comment[ku]=Li torê bigere
|
||||
Comment[lt]=Naršykite internete
|
||||
Comment[nb]=Surf på nettet
|
||||
Comment[nl]=Verken het internet
|
||||
Comment[nn]=Surf på nettet
|
||||
Comment[no]=Surf på nettet
|
||||
Comment[pl]=Przeglądanie stron WWW
|
||||
Comment[pt]=Navegue na Internet
|
||||
Comment[pt_BR]=Navegue na Internet
|
||||
Comment[ro]=Navigați pe Internet
|
||||
Comment[ru]=Доступ в Интернет
|
||||
Comment[sk]=Prehliadanie internetu
|
||||
Comment[sl]=Brskajte po spletu
|
||||
Comment[sv]=Surfa på webben
|
||||
Comment[tr]=İnternet'te Gezinin
|
||||
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
|
||||
Comment[uk]=Перегляд сторінок Інтернету
|
||||
Comment[vi]=Để duyệt các trang web
|
||||
Comment[zh_CN]=浏览互联网
|
||||
Comment[zh_TW]=瀏覽網際網路
|
||||
Keywords=Internet;WWW;Browser;Web;Explorer
|
||||
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
|
||||
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
|
||||
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
|
||||
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
|
||||
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
|
||||
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
|
||||
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;LibreWolf;Φιρεφοχ;Ιντερνετ
|
||||
Keywords[es]=Explorador;Internet;WWW
|
||||
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
|
||||
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
|
||||
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
|
||||
Keywords[hr]=Internet;WWW;preglednik;Web
|
||||
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
|
||||
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
|
||||
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
|
||||
Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
|
||||
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
|
||||
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
|
||||
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
|
||||
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
|
||||
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
|
||||
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
|
||||
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
|
||||
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
|
||||
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;LibreWolf;ff;互联网;网站;
|
||||
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
|
||||
Exec=/usr/lib/librewolf/librewolf %u
|
||||
Icon=librewolf
|
||||
Terminal=false
|
||||
X-MultipleArgs=false
|
||||
Type=Application
|
||||
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;
|
||||
StartupNotify=true
|
||||
StartupWMClass=LibreWolf
|
||||
Categories=Network;WebBrowser;
|
||||
Actions=new-window;new-private-window;
|
||||
|
||||
[Desktop Action new-window]
|
||||
Name=New Window
|
||||
Name[ach]=Dirica manyen
|
||||
Name[af]=Nuwe venster
|
||||
Name[an]=Nueva finestra
|
||||
Name[ar]=نافذة جديدة
|
||||
Name[as]=নতুন উইন্ডো
|
||||
Name[ast]=Ventana nueva
|
||||
Name[az]=Yeni Pəncərə
|
||||
Name[be]=Новае акно
|
||||
Name[bg]=Нов прозорец
|
||||
Name[bn_BD]=নতুন উইন্ডো (N)
|
||||
Name[bn_IN]=নতুন উইন্ডো
|
||||
Name[br]=Prenestr nevez
|
||||
Name[brx]=गोदान उइन्ड'(N)
|
||||
Name[bs]=Novi prozor
|
||||
Name[ca]=Finestra nova
|
||||
Name[cak]=K'ak'a' tzuwäch
|
||||
Name[cs]=Nové okno
|
||||
Name[cy]=Ffenestr Newydd
|
||||
Name[da]=Nyt vindue
|
||||
Name[de]=Neues Fenster
|
||||
Name[dsb]=Nowe wokno
|
||||
Name[el]=Νέο παράθυρο
|
||||
Name[en_GB]=New Window
|
||||
Name[en_US]=New Window
|
||||
Name[en_ZA]=New Window
|
||||
Name[eo]=Nova fenestro
|
||||
Name[es_AR]=Nueva ventana
|
||||
Name[es_CL]=Nueva ventana
|
||||
Name[es_ES]=Nueva ventana
|
||||
Name[es_MX]=Nueva ventana
|
||||
Name[et]=Uus aken
|
||||
Name[eu]=Leiho berria
|
||||
Name[fa]=پنجره جدید
|
||||
Name[ff]=Henorde Hesere
|
||||
Name[fi]=Uusi ikkuna
|
||||
Name[fr]=Nouvelle fenêtre
|
||||
Name[fy_NL]=Nij finster
|
||||
Name[ga_IE]=Fuinneog Nua
|
||||
Name[gd]=Uinneag ùr
|
||||
Name[gl]=Nova xanela
|
||||
Name[gn]=Ovetã pyahu
|
||||
Name[gu_IN]=નવી વિન્ડો
|
||||
Name[he]=חלון חדש
|
||||
Name[hi_IN]=नया विंडो
|
||||
Name[hr]=Novi prozor
|
||||
Name[hsb]=Nowe wokno
|
||||
Name[hu]=Új ablak
|
||||
Name[hy_AM]=Նոր Պատուհան
|
||||
Name[id]=Jendela Baru
|
||||
Name[is]=Nýr gluggi
|
||||
Name[it]=Nuova finestra
|
||||
Name[ja]=新しいウィンドウ
|
||||
Name[ja_JP-mac]=新規ウインドウ
|
||||
Name[ka]=ახალი ფანჯარა
|
||||
Name[kk]=Жаңа терезе
|
||||
Name[km]=បង្អួចថ្មី
|
||||
Name[kn]=ಹೊಸ ಕಿಟಕಿ
|
||||
Name[ko]=새 창
|
||||
Name[kok]=नवें जनेल
|
||||
Name[ks]=نئئ وِنڈو
|
||||
Name[lij]=Neuvo barcon
|
||||
Name[lo]=ຫນ້າຕ່າງໃຫມ່
|
||||
Name[lt]=Naujas langas
|
||||
Name[ltg]=Jauns lūgs
|
||||
Name[lv]=Jauns logs
|
||||
Name[mai]=नव विंडो
|
||||
Name[mk]=Нов прозорец
|
||||
Name[ml]=പുതിയ ജാലകം
|
||||
Name[mr]=नवीन पटल
|
||||
Name[ms]=Tetingkap Baru
|
||||
Name[my]=ဝင်းဒိုးအသစ်
|
||||
Name[nb_NO]=Nytt vindu
|
||||
Name[ne_NP]=नयाँ सञ्झ्याल
|
||||
Name[nl]=Nieuw venster
|
||||
Name[nn_NO]=Nytt vindauge
|
||||
Name[or]=ନୂତନ ୱିଣ୍ଡୋ
|
||||
Name[pa_IN]=ਨਵੀਂ ਵਿੰਡੋ
|
||||
Name[pl]=Nowe okno
|
||||
Name[pt_BR]=Nova janela
|
||||
Name[pt_PT]=Nova janela
|
||||
Name[rm]=Nova fanestra
|
||||
Name[ro]=Fereastră nouă
|
||||
Name[ru]=Новое окно
|
||||
Name[sat]=नावा विंडो (N)
|
||||
Name[si]=නව කවුළුවක්
|
||||
Name[sk]=Nové okno
|
||||
Name[sl]=Novo okno
|
||||
Name[son]=Zanfun taaga
|
||||
Name[sq]=Dritare e Re
|
||||
Name[sr]=Нови прозор
|
||||
Name[sv_SE]=Nytt fönster
|
||||
Name[ta]=புதிய சாளரம்
|
||||
Name[te]=కొత్త విండో
|
||||
Name[th]=หน้าต่างใหม่
|
||||
Name[tr]=Yeni pencere
|
||||
Name[tsz]=Eraatarakua jimpani
|
||||
Name[uk]=Нове вікно
|
||||
Name[ur]=نیا دریچہ
|
||||
Name[uz]=Yangi oyna
|
||||
Name[vi]=Cửa sổ mới
|
||||
Name[wo]=Palanteer bu bees
|
||||
Name[xh]=Ifestile entsha
|
||||
Name[zh_CN]=新建窗口
|
||||
Name[zh_TW]=開新視窗
|
||||
Exec=/usr/lib/librewolf/librewolf --new-window %u
|
||||
|
||||
[Desktop Action new-private-window]
|
||||
Name=New Private Window
|
||||
Name[ach]=Dirica manyen me mung
|
||||
Name[af]=Nuwe privaatvenster
|
||||
Name[an]=Nueva finestra privada
|
||||
Name[ar]=نافذة خاصة جديدة
|
||||
Name[as]=নতুন ব্যক্তিগত উইন্ডো
|
||||
Name[ast]=Ventana privada nueva
|
||||
Name[az]=Yeni Məxfi Pəncərə
|
||||
Name[be]=Новае акно адасаблення
|
||||
Name[bg]=Нов прозорец за поверително сърфиране
|
||||
Name[bn_BD]=নতুন ব্যক্তিগত উইন্ডো
|
||||
Name[bn_IN]=নতুন ব্যক্তিগত উইন্ডো
|
||||
Name[br]=Prenestr merdeiñ prevez nevez
|
||||
Name[brx]=गोदान प्राइभेट उइन्ड'
|
||||
Name[bs]=Novi privatni prozor
|
||||
Name[ca]=Finestra privada nova
|
||||
Name[cak]=K'ak'a' ichinan tzuwäch
|
||||
Name[cs]=Nové anonymní okno
|
||||
Name[cy]=Ffenestr Breifat Newydd
|
||||
Name[da]=Nyt privat vindue
|
||||
Name[de]=Neues privates Fenster
|
||||
Name[dsb]=Nowe priwatne wokno
|
||||
Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης
|
||||
Name[en_GB]=New Private Window
|
||||
Name[en_US]=New Private Window
|
||||
Name[en_ZA]=New Private Window
|
||||
Name[eo]=Nova privata fenestro
|
||||
Name[es_AR]=Nueva ventana privada
|
||||
Name[es_CL]=Nueva ventana privada
|
||||
Name[es_ES]=Nueva ventana privada
|
||||
Name[es_MX]=Nueva ventana privada
|
||||
Name[et]=Uus privaatne aken
|
||||
Name[eu]=Leiho pribatu berria
|
||||
Name[fa]=پنجره ناشناس جدید
|
||||
Name[ff]=Henorde Suturo Hesere
|
||||
Name[fi]=Uusi yksityinen ikkuna
|
||||
Name[fr]=Nouvelle fenêtre de navigation privée
|
||||
Name[fy_NL]=Nij priveefinster
|
||||
Name[ga_IE]=Fuinneog Nua Phríobháideach
|
||||
Name[gd]=Uinneag phrìobhaideach ùr
|
||||
Name[gl]=Nova xanela privada
|
||||
Name[gn]=Ovetã ñemi pyahu
|
||||
Name[gu_IN]=નવી ખાનગી વિન્ડો
|
||||
Name[he]=חלון פרטי חדש
|
||||
Name[hi_IN]=नयी निजी विंडो
|
||||
Name[hr]=Novi privatni prozor
|
||||
Name[hsb]=Nowe priwatne wokno
|
||||
Name[hu]=Új privát ablak
|
||||
Name[hy_AM]=Սկսել Գաղտնի դիտարկում
|
||||
Name[id]=Jendela Mode Pribadi Baru
|
||||
Name[is]=Nýr huliðsgluggi
|
||||
Name[it]=Nuova finestra anonima
|
||||
Name[ja]=新しいプライベートウィンドウ
|
||||
Name[ja_JP-mac]=新規プライベートウインドウ
|
||||
Name[ka]=ახალი პირადი ფანჯარა
|
||||
Name[kk]=Жаңа жекелік терезе
|
||||
Name[km]=បង្អួចឯកជនថ្មី
|
||||
Name[kn]=ಹೊಸ ಖಾಸಗಿ ಕಿಟಕಿ
|
||||
Name[ko]=새 사생활 보호 모드
|
||||
Name[kok]=नवो खाजगी विंडो
|
||||
Name[ks]=نْو پرایوٹ وینڈو
|
||||
Name[lij]=Nêuvo barcón privòu
|
||||
Name[lo]=ເປີດຫນ້າຕ່າງສວນຕົວຂື້ນມາໃຫມ່
|
||||
Name[lt]=Naujas privataus naršymo langas
|
||||
Name[ltg]=Jauns privatais lūgs
|
||||
Name[lv]=Jauns privātais logs
|
||||
Name[mai]=नया निज विंडो (W)
|
||||
Name[mk]=Нов приватен прозорец
|
||||
Name[ml]=പുതിയ സ്വകാര്യ ജാലകം
|
||||
Name[mr]=नवीन वैयक्तिक पटल
|
||||
Name[ms]=Tetingkap Persendirian Baharu
|
||||
Name[my]=New Private Window
|
||||
Name[nb_NO]=Nytt privat vindu
|
||||
Name[ne_NP]=नयाँ निजी सञ्झ्याल
|
||||
Name[nl]=Nieuw privévenster
|
||||
Name[nn_NO]=Nytt privat vindauge
|
||||
Name[or]=ନୂତନ ବ୍ୟକ୍ତିଗତ ୱିଣ୍ଡୋ
|
||||
Name[pa_IN]=ਨਵੀਂ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ
|
||||
Name[pl]=Nowe okno prywatne
|
||||
Name[pt_BR]=Nova janela privativa
|
||||
Name[pt_PT]=Nova janela privada
|
||||
Name[rm]=Nova fanestra privata
|
||||
Name[ro]=Fereastră privată nouă
|
||||
Name[ru]=Новое приватное окно
|
||||
Name[sat]=नावा निजेराक् विंडो (W )
|
||||
Name[si]=නව පුද්ගලික කවුළුව (W)
|
||||
Name[sk]=Nové okno v režime Súkromné prehliadanie
|
||||
Name[sl]=Novo zasebno okno
|
||||
Name[son]=Sutura zanfun taaga
|
||||
Name[sq]=Dritare e Re Private
|
||||
Name[sr]=Нови приватан прозор
|
||||
Name[sv_SE]=Nytt privat fönster
|
||||
Name[ta]=புதிய தனிப்பட்ட சாளரம்
|
||||
Name[te]=కొత్త ఆంతరంగిక విండో
|
||||
Name[th]=หน้าต่างส่วนตัวใหม่
|
||||
Name[tr]=Yeni gizli pencere
|
||||
Name[tsz]=Juchiiti eraatarakua jimpani
|
||||
Name[uk]=Приватне вікно
|
||||
Name[ur]=نیا نجی دریچہ
|
||||
Name[uz]=Yangi maxfiy oyna
|
||||
Name[vi]=Cửa sổ riêng tư mới
|
||||
Name[wo]=Panlanteeru biir bu bees
|
||||
Name[xh]=Ifestile yangasese entsha
|
||||
Name[zh_CN]=新建隐私浏览窗口
|
||||
Name[zh_TW]=新增隱私視窗
|
||||
Exec=/usr/lib/librewolf/librewolf --private-window %u
|
|
@ -1,13 +0,0 @@
|
|||
post_install() {
|
||||
echo ">> If you want to reduce potential privacy leaks even further, you should consider"
|
||||
echo ">> clearing a few settings required for updating/searching extensions:"
|
||||
echo ">> extensions.getAddons.get.url"
|
||||
echo ">> extensions.getAddons.langpacks.url"
|
||||
echo ">> extensions.getAddons.link.url"
|
||||
echo ">> extensions.getAddons.search.browseURL"
|
||||
echo ">> extensions.update.url"
|
||||
echo ">> extensions.update.background.url"
|
||||
echo ">> If you do wish to install extensions the 'regular way',"
|
||||
echo ">> a few more tweaks might be needed."
|
||||
echo ">> I've kept the relevant settings unlocked for that specific reason."
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
#!/bin/bash
|
||||
pacman --noconfirm -Syu --needed base-devel
|
||||
# this is a very ugly fix for recent makepkg-5.1-chmod-shenanigans, which mess up the build process in docker
|
||||
sed -E -i 's/^chmod a-s \"\$BUILDDIR\"$/# chmod a-s \"\$BUILDDIR\"/' `which makepkg`
|
||||
echo 'nobody ALL=(ALL) NOPASSWD: /usr/bin/pacman' >> /etc/sudoers
|
||||
mkdir -p /home/nobody && chown -R nobody /home/nobody
|
||||
usermod -d /home/nobody nobody
|
||||
# we need to un-expire the account, otherwise PAM will complain
|
||||
usermod -e '' nobody
|
||||
chown -R nobody .
|
||||
# makepkg will not run as root
|
||||
sudo -u nobody -E -H makepkg --noconfirm --nosign --syncdeps --cleanbuild --skippgpcheck
|
|
@ -1,47 +0,0 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
printf "\n\n---------------- prepare package for other distros ----------------\n"
|
||||
|
||||
# Setup Script Variables
|
||||
|
||||
# use $CI_PROJECT_DIR unless not in CI, then assign script path
|
||||
CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(realpath $(dirname $0)/../)}
|
||||
OUTPUT_TARBALL=$CI_PROJECT_DIR/LibreWolf.${CARCH}.tar.bz2
|
||||
SOURCE_CODE_BINARY_TARBALL_LOCATION="$CI_PROJECT_DIR/src/firefox-*/obj*/dist/librewolf*.tar.bz2"
|
||||
EXTRACTED_TARBALL_FOLDER=$CI_PROJECT_DIR/librewolf_unpacked/librewolf
|
||||
|
||||
_ublockver=1.25.2
|
||||
|
||||
# Prevents build from breaking in CI/CD environments
|
||||
export SHELL=/bin/bash
|
||||
|
||||
# Moves the packaged tarball to the specified location
|
||||
printf "\nMoving Binary Tarball to output location\n"
|
||||
mv $SOURCE_CODE_BINARY_TARBALL_LOCATION $OUTPUT_TARBALL
|
||||
|
||||
# Extracts the binary tarball
|
||||
printf "\nExtracting librewolf binary tarball\n"
|
||||
mkdir librewolf_unpacked
|
||||
tar -xf $OUTPUT_TARBALL -C librewolf_unpacked
|
||||
|
||||
# Adds the librefox config files to the packaged tarball
|
||||
printf "\nCopying librewolf settings to extracted binary tarball\n"
|
||||
cp -r $CI_PROJECT_DIR/src/settings $EXTRACTED_TARBALL_FOLDER/settings
|
||||
# no need to keep that in there
|
||||
rm -rf "${_EXTRACTED_TARBALL_FOLDER}/settings/.git";
|
||||
cp $CI_PROJECT_DIR/content/toggle-settings.sh $EXTRACTED_TARBALL_FOLDER/settings
|
||||
cp $CI_PROJECT_DIR/content/launch_librewolf.sh $EXTRACTED_TARBALL_FOLDER/launch_librewolf.sh
|
||||
|
||||
# Somewhat crude workaround to use settings per default
|
||||
# until we've worked out how to use `--install-settings` with links
|
||||
# in all major packages instead
|
||||
printf "\nWorkaround: auto-enable Settings\n"
|
||||
cp -r $_EXTRACTED_TARBALL_FOLDER/settings/* $_EXTRACTED_TARBALL_FOLDER;
|
||||
|
||||
printf "\nAdd uBlock origin\n"
|
||||
install -Dm644 "$CI_PROJECT_DIR/ublock_origin-$_ublockver-an+fx.xpi" "$EXTRACTED_TARBALL_FOLDER"/browser/extensions/uBlock0@raymondhill.net.xpi
|
||||
|
||||
# Repacks the binary tarball
|
||||
printf "\nRecompressing binary tarball\n"
|
||||
tar -jvcf $OUTPUT_TARBALL -C $EXTRACTED_TARBALL_FOLDER .
|
63
scripts/1_Install_Dependencies.sh
Executable file
63
scripts/1_Install_Dependencies.sh
Executable file
|
@ -0,0 +1,63 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n-------------------------------------- DEPENDENCY INSTALLATION ---------------------------------------------\n";
|
||||
|
||||
set -e
|
||||
|
||||
# Setup Script Variables
|
||||
_DEPENDENCIES="wget git xorg-server-xvfb \
|
||||
xz grep coreutils patch tar \
|
||||
gettext pkg-config \
|
||||
curl python3 libjack \
|
||||
python3-psutil python3-devel python-devel \
|
||||
automake \
|
||||
autoconf213 \
|
||||
zip \
|
||||
libX11-devel \
|
||||
libXt-devel \
|
||||
libXext-devel \
|
||||
gtk+3-devel \
|
||||
libglib-devel \
|
||||
pango-devel \
|
||||
fontconfig-devel \
|
||||
freetype-devel \
|
||||
libcurl-devel \
|
||||
MesaLib-devel \
|
||||
libnotify-devel \
|
||||
libXrender-devel \
|
||||
pulseaudio-devel \
|
||||
openssl-devel \
|
||||
yasm \
|
||||
unzip \
|
||||
dbus-x11 \
|
||||
python \
|
||||
libffi-devel \
|
||||
nodejs-lts \
|
||||
cargo \
|
||||
rust \
|
||||
nasm \
|
||||
clang \
|
||||
llvm \
|
||||
alsa-lib-devel \
|
||||
jack-devel \
|
||||
perl \
|
||||
cbindgen \
|
||||
pixman-devel \
|
||||
libevent-devel libnotify-devel libvpx-devel \
|
||||
libXcomposite-devel libSM-devel libXdamage-devel \
|
||||
dbus-glib-devel \
|
||||
make"
|
||||
|
||||
# Installs Dependencies
|
||||
printf "\nInstalling dependencies: $_DEPENDENCIES\n";
|
||||
xbps-install -Sy $_DEPENDENCIES 2>&1 >/dev/null
|
||||
|
||||
if [[ "$(/lib/libc.so 2>&1)" == *"musl libc"* ]]; then
|
||||
xbps-install -y libfl-devel libssp-devel libssp 2>&1 >/dev/null
|
||||
fi
|
||||
|
||||
ln -s /bin/clang /bin/cc
|
||||
mkdir /usr/lib/nodejs-mozilla/
|
||||
ln -s /usr/bin/ /usr/lib/nodejs-mozilla/bin
|
||||
mkdir /usr/lib/nasm-mozilla
|
||||
ln -s /usr/bin/ /usr/lib/nasm-mozilla/bin
|
||||
ln -s /usr/bin/make /usr/bin/gmake
|
|
@ -1,15 +1,20 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n--------------------------------- SOURCE CODE DOWNLOAD --------------------------------------\n";
|
||||
|
||||
set -e
|
||||
|
||||
if [[ -z ${pkgver} || -z ${pkgrel} ]]; then
|
||||
echo '$pkgrel and/or $pkgver not provided'
|
||||
exit 1
|
||||
fi
|
||||
# Setup Script Variables
|
||||
SOURCE_FOLDER=$1;
|
||||
# hardcoded vor now, we'll parse the _pkgver later on, probably from tags
|
||||
pkgver="73.0.1"
|
||||
_SOURCE_CODE_URL="https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz";
|
||||
#_SOURCE_CODE_URL="https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz";
|
||||
_SOURCE_CODE_URL="https://f.sakamoto.pl/firefox-$pkgver.source.tar.xz";
|
||||
_SOURCE_TAR="firefox-${pkgver}.tar.xz"
|
||||
|
||||
# Downloading and Extracting Firefox Source Code
|
||||
printf "\nDownloading Firefox Source Code\n";
|
||||
wget -O $_SOURCE_TAR $_SOURCE_CODE_URL
|
||||
wget -O $_SOURCE_TAR $_SOURCE_CODE_URL 2>&1 > /dev/null
|
||||
mkdir -p $SOURCE_FOLDER
|
||||
tar -x --strip-components=1 -C $SOURCE_FOLDER -f $_SOURCE_TAR
|
213
scripts/3_Configure_Source_Code.sh
Executable file
213
scripts/3_Configure_Source_Code.sh
Executable file
|
@ -0,0 +1,213 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n------------------------------ FINAL PREBUILD CONFIGURATION ---------------------------------\n";
|
||||
|
||||
set -e
|
||||
|
||||
# Setup Script Variables
|
||||
srcdir=$1;
|
||||
CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(realpath $(dirname $0)/../)}
|
||||
#_COMMON_REPO='https://gitlab.com/librewolf-community/browser/common.git';
|
||||
_COMMON_REPO='https://git.sakamoto.pl/domi/foxgirl-common.git';
|
||||
_PKGVER_TAG="v${pkgver}-${pkgrel}"
|
||||
_COMMON_TAG=${COMMON_TAG:-${_PKGVER_TAG}}
|
||||
_COMMON_DIR="${CI_PROJECT_DIR}"/common
|
||||
_PATCHES_DIR="${_COMMON_DIR}"/patches
|
||||
_MOZBUILD=$srcdir/../mozbuild
|
||||
|
||||
mkdir -p ${_MOZBUILD}
|
||||
|
||||
# Copy Source Code Changes to Source Code
|
||||
printf "\nCopying branding and source code changes to firefox source code\n";
|
||||
git clone $_COMMON_REPO ${_COMMON_DIR}
|
||||
cd ${_COMMON_DIR}
|
||||
#git checkout ${_COMMON_TAG}
|
||||
cd ..
|
||||
cp -r ${_COMMON_DIR}/source_files/* $srcdir/;
|
||||
|
||||
# get foxgirl branding (ff3.6)
|
||||
wget "https://web.archive.org/web/0/http://people.mozilla.com/~faaborg/files/shiretoko/firefoxIcon/firefoxIcon.zip"
|
||||
mkdir -p icons icons/content
|
||||
pushd icons
|
||||
|
||||
unzip ../firefoxIcon.zip
|
||||
for i in firefox*noshadow.png; do
|
||||
mv "$i" "default$(grep -Poh "[0-9]+" <<< "$i").png"
|
||||
done
|
||||
mv firefox-256.png content/about-logo.png
|
||||
mv firefox-512.png "content/about-logo@2x.png"
|
||||
popd
|
||||
|
||||
cp -rlf icons/* $srcdir/browser/branding/librewolf/
|
||||
|
||||
cd $srcdir
|
||||
|
||||
cat >${CI_PROJECT_DIR}/mozconfig <<END
|
||||
ac_add_options --enable-application=browser
|
||||
mk_add_options MOZ_OBJDIR=${srcdir}/firefox-${pkgver}/obj
|
||||
|
||||
# to build on ubuntu and pick up clang
|
||||
ac_add_options NODEJS=/usr/lib/nodejs-mozilla/bin/node
|
||||
|
||||
# This supposedly speeds up compilation (We test through dogfooding anyway)
|
||||
ac_add_options --disable-tests
|
||||
ac_add_options --disable-debug
|
||||
|
||||
ac_add_options --prefix=/usr
|
||||
ac_add_options --enable-release
|
||||
ac_add_options --enable-hardening
|
||||
ac_add_options --enable-rust-simd
|
||||
|
||||
# Branding
|
||||
ac_add_options --enable-update-channel=release
|
||||
ac_add_options --with-app-name=foxgirl
|
||||
ac_add_options --with-app-basename=Foxgirl
|
||||
ac_add_options --with-branding=browser/branding/librewolf
|
||||
ac_add_options --with-distribution-id=io.gitlab.librewolf-community
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
ac_add_options --allow-addon-sideload
|
||||
|
||||
# System libraries
|
||||
# ac_add_options --with-system-nspr
|
||||
# ac_add_options --with-system-nss
|
||||
|
||||
# Features
|
||||
ac_add_options --enable-alsa
|
||||
ac_add_options --enable-jack
|
||||
ac_add_options --disable-crashreporter
|
||||
ac_add_options --disable-updater
|
||||
ac_add_options --disable-tests
|
||||
|
||||
# Disables crash reporting, telemetry and other data gathering tools
|
||||
mk_add_options MOZ_CRASHREPORTER=0
|
||||
mk_add_options MOZ_DATA_REPORTING=0
|
||||
mk_add_options MOZ_SERVICES_HEALTHREPORT=0
|
||||
mk_add_options MOZ_TELEMETRY_REPORTING=0
|
||||
|
||||
# options for ci / weaker build systems
|
||||
# mk_add_options MOZ_MAKE_FLAGS="-j4"
|
||||
# ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
if [[ "$(/lib/libc.so 2>&1)" == *"musl libc"* ]]; then
|
||||
echo "ac_add_options --disable-jemalloc" >> ${CI_PROJECT_DIR}/mozconfig
|
||||
echo "ac_add_options --disable-gold" >> ${CI_PROJECT_DIR}/mozconfig
|
||||
echo "ac_add_options --disable-webrtc" >> ${CI_PROJECT_DIR}/mozconfig
|
||||
fi
|
||||
|
||||
# allow setting limited resource usage via ENV / CI:
|
||||
|
||||
if [[ ! -z ${CORES_TO_USE} ]]; then
|
||||
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j${CORES_TO_USE}\"" >> ${CI_PROJECT_DIR}/mozconfig
|
||||
fi
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
cat >>${CI_PROJECT_DIR}/mozconfig <<END
|
||||
# taken from manjaro build:
|
||||
ac_add_options --enable-optimize="-g0 -O2"
|
||||
|
||||
export CC='clang'
|
||||
export CXX='clang++'
|
||||
export AR=llvm-ar
|
||||
export NM=llvm-nm
|
||||
export RANLIB=llvm-ranlib
|
||||
END
|
||||
|
||||
export MOZ_DEBUG_FLAGS=" "
|
||||
export CFLAGS+=" -g0"
|
||||
export CXXFLAGS+=" -g0"
|
||||
export RUSTFLAGS="-Cdebuginfo=0"
|
||||
|
||||
export LDFLAGS+=" -Wl,--no-keep-memory -Wl"
|
||||
# patch -Np1 -i ${_PATCHES_DIR}/arm.patch # not required anymore?
|
||||
wget https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/master/extra/firefox/build-arm-libopus.patch -O ${_PATCHES_DIR}/build-arm-libopus.patch
|
||||
patch -Np1 -i ${_PATCHES_DIR}/build-arm-libopus.patch
|
||||
|
||||
else
|
||||
cat >>${CI_PROJECT_DIR}/mozconfig <<END
|
||||
# ubuntu seems to recommend this
|
||||
ac_add_options --disable-elf-hack
|
||||
|
||||
export CC='clang'
|
||||
export CXX='clang++'
|
||||
export AR=llvm-ar
|
||||
export NM=llvm-nm
|
||||
export RANLIB=llvm-ranlib
|
||||
|
||||
# probably not needed, enabled by default?
|
||||
ac_add_options --enable-optimize
|
||||
|
||||
# unavailable option when (on ubuntu at least(?)) building on aarch64
|
||||
ac_add_options NASM=/usr/lib/nasm-mozilla/bin/nasm
|
||||
END
|
||||
|
||||
fi
|
||||
|
||||
# hopefully the magic sauce that makes things build on 16.04 and later on work "everywhere":
|
||||
patch -Np1 -i "${CI_PROJECT_DIR}/deb_patches/armhf-reduce-linker-memory-use.patch"
|
||||
patch -Np1 -i "${CI_PROJECT_DIR}/deb_patches/fix-armhf-webrtc-build.patch"
|
||||
patch -Np1 -i "${CI_PROJECT_DIR}/deb_patches/webrtc-fix-compiler-flags-for-armhf.patch"
|
||||
patch -Np1 -i "${CI_PROJECT_DIR}/deb_patches/reduce-rust-debuginfo.patch"
|
||||
patch -Np1 -i "${CI_PROJECT_DIR}/deb_patches/use-system-icupkg.patch"
|
||||
|
||||
# Remove some pre-installed addons that might be questionable
|
||||
patch -Np1 -i ${_PATCHES_DIR}/remove_addons.patch
|
||||
|
||||
# Disable (some) megabar functionality
|
||||
# Adapted from https://github.com/WesleyBranton/userChrome.css-Customizations
|
||||
patch -Np1 -i ${_PATCHES_DIR}/megabar.patch
|
||||
|
||||
# remove mozilla vpn ads
|
||||
patch -Np1 -i ${_PATCHES_DIR}/mozilla-vpn-ad.patch
|
||||
|
||||
# Debian patch to enable global menubar
|
||||
if [[ ! -z "${GLOBAL_MENUBAR}" ]];then
|
||||
patch -Np1 -i ${_PATCHES_DIR}/unity-menubar.patch
|
||||
fi
|
||||
|
||||
# Disabling Pocket
|
||||
printf "\nDisabling Pocket\n";
|
||||
patch -Np1 -i "${_PATCHES_DIR}/sed-patches/disable-pocket.patch"
|
||||
|
||||
# More patches
|
||||
patch -Np1 -i "${_PATCHES_DIR}/context-menu.patch"
|
||||
|
||||
patch -Np1 -i "${_PATCHES_DIR}/browser-confvars.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/urlbarprovider-interventions.patch"
|
||||
|
||||
# Remove Internal Plugin Certificates
|
||||
patch -Np1 -i "${_PATCHES_DIR}/sed-patches/remove-internal-plugin-certs.patch"
|
||||
|
||||
# allow SearchEngines option in non-ESR builds
|
||||
patch -Np1 -i "${_PATCHES_DIR}/sed-patches/allow-searchengines-non-esr.patch"
|
||||
|
||||
# remove search extensions (experimental)
|
||||
patch -Np1 -i "${_PATCHES_DIR}/search-config.patch"
|
||||
|
||||
# stop some undesired requests (https://gitlab.com/librewolf-community/browser/common/-/issues/10)
|
||||
patch -Np1 -i "${_PATCHES_DIR}/sed-patches/stop-undesired-requests.patch"
|
||||
|
||||
# allow overriding the color scheme light/dark preference with RFP
|
||||
patch -Np1 -i ${_PATCHES_DIR}/allow_dark_preference_with_rfp.patch
|
||||
|
||||
# fix an URL in 'about' dialog
|
||||
patch -Np1 -i ${_PATCHES_DIR}/about-dialog.patch
|
||||
|
||||
# change some hardcoded directory strings that could lead to unnecessarily
|
||||
# created directories
|
||||
patch -Np1 -i ${_PATCHES_DIR}/mozilla_dirs.patch
|
||||
|
||||
# Foxgirl-specific patches
|
||||
patch -Np1 -i "${_PATCHES_DIR}/urlbar.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/icons.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/wordmark.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/css.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/defsites.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/bookmarksbar.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/smile.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/strings.patch"
|
||||
patch -Np1 -i "${_PATCHES_DIR}/view-page-info.patch"
|
||||
#patch -Np1 -i "${_PATCHES_DIR}/useragent-override.patch"
|
||||
|
||||
echo '[]' > browser/components/newtab/data/content/tippytop/top_sites.json
|
||||
echo '[]' > browser/components/urlbar/content/preloaded-top-urls.json
|
||||
rm -rf common
|
104
scripts/4_Build_Binary_Tarball.sh
Executable file
104
scripts/4_Build_Binary_Tarball.sh
Executable file
|
@ -0,0 +1,104 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n--------------------------------------- BUILD -----------------------------------------------\n";
|
||||
|
||||
set -e
|
||||
|
||||
# Setup Script Variables
|
||||
srcdir=$1;
|
||||
OUTPUT_TARBALL=$2;
|
||||
CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(realpath $(dirname $0)/../)}
|
||||
_SOURCE_CODE_BINARY_TARBALL_LOCATION="${srcdir}/firefox-${pkgver}/obj/dist/foxgirl*.tar.bz2";
|
||||
_MOZBUILD=$srcdir/../mozbuild
|
||||
export DEB_BUILD_HARDENING=1
|
||||
export DEB_BUILD_HARDENING_STACKPROTECTOR=1
|
||||
export DEB_BUILD_HARDENING_FORTIFY=1
|
||||
export DEB_BUILD_HARDENING_FORMAT=1
|
||||
export DEB_BUILD_HARDENING_PIE=1
|
||||
# export PATH=/usr/lib/nasm-mozilla/bin:$PATH
|
||||
|
||||
# add cargo binary to path
|
||||
# source /root/.cargo/env
|
||||
|
||||
# we do change / unset some of them later, but setting them as set by Arch
|
||||
# might make it easier to maintain changes in build scripts on both sides
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
export CPPFLAGS="-D_FORTIFY_SOURCE=2"
|
||||
export CFLAGS="-march=armv8-a -O2 -pipe -fstack-protector-strong -fno-plt"
|
||||
export CXXFLAGS="-march=armv8-a -O2 -pipe -fstack-protector-strong -fno-plt"
|
||||
export LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
|
||||
else
|
||||
export CPPFLAGS="-D_FORTIFY_SOURCE=2"
|
||||
export CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt"
|
||||
export CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt"
|
||||
export LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
|
||||
fi
|
||||
|
||||
export MOZ_NOSPAM=1
|
||||
export MOZBUILD_STATE_PATH="${_MOZBUILD}"
|
||||
export MACH_USE_SYSTEM_PYTHON=1
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
export MOZ_DEBUG_FLAGS=" "
|
||||
export CFLAGS+=" -g0"
|
||||
export CXXFLAGS+=" -g0"
|
||||
export RUSTFLAGS="-Cdebuginfo=0"
|
||||
export LDFLAGS+=" -Wl,--no-keep-memory"
|
||||
fi
|
||||
|
||||
# LTO needs more open files
|
||||
ulimit -n 4096
|
||||
|
||||
# Prevents build from breaking in CI/CD environments
|
||||
export SHELL=/bin/bash;
|
||||
|
||||
# Changes current folder to the source code folder
|
||||
cd $srcdir;
|
||||
|
||||
# Runs bootstrapper to install dependencies
|
||||
# printf "\nRunning bootstrapper to install build dependencies (using ./mach script within source code)\n";
|
||||
# ./mach bootstrap --application-choice=browser --no-interactive
|
||||
|
||||
# ./mach configure
|
||||
|
||||
rm -f mozconfig
|
||||
|
||||
# install cbindgen
|
||||
#if [[ "$(/lib/libc.so)" != *"musl libc"* ]]; then
|
||||
# cargo install --version 0.20.0 cbindgen
|
||||
#fi
|
||||
|
||||
if [[ $CARCH == 'aarch64' ]]; then
|
||||
|
||||
cat >.mozconfig ${CI_PROJECT_DIR}/mozconfig - <<END
|
||||
# seems to break on arm
|
||||
# ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
else
|
||||
|
||||
cat >.mozconfig ${CI_PROJECT_DIR}/mozconfig - <<END
|
||||
# seems to mess with the libstdc++-static patch
|
||||
# ac_add_options --enable-linker=gold
|
||||
END
|
||||
|
||||
fi
|
||||
|
||||
./mach build
|
||||
|
||||
echo "Building symbol archive..."
|
||||
./mach buildsymbols
|
||||
|
||||
# End "build()" equivalent.
|
||||
|
||||
# Packages the build into a binary tarball
|
||||
printf "\nPackaging\n";
|
||||
./mach package;
|
||||
|
||||
# Moves the packaged tarball to the specified location
|
||||
printf "\nMoving Binary Tarball to output location\n";
|
||||
mv $_SOURCE_CODE_BINARY_TARBALL_LOCATION $OUTPUT_TARBALL;
|
||||
|
||||
# Deletes the source code
|
||||
printf "\nDeleting source code\n";
|
||||
rm -rf $srcdir;
|
61
scripts/5_Configure_Binary_Tarball.sh
Executable file
61
scripts/5_Configure_Binary_Tarball.sh
Executable file
|
@ -0,0 +1,61 @@
|
|||
#!/bin/bash
|
||||
printf "\n\n--------------------------------- SETTINGS INTEGRATION --------------------------------------\n";
|
||||
|
||||
# Aborts the script upon any faliure
|
||||
set -e;
|
||||
|
||||
# Setup Script Variables
|
||||
BINARY_TARBALL=$1;
|
||||
TOGGLE_SETTINGS_SCRIPT=$2;
|
||||
LAUNCHER_SCRIPT=$3;
|
||||
CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(realpath $(dirname $0)/../)}
|
||||
_SCRIPT_FOLDER=$(realpath $(dirname $0));
|
||||
_EXTRACTED_TARBALL_FOLDER=$_SCRIPT_FOLDER/foxgirl;
|
||||
_SETTINGS_TAG=${SETTINGS_TAG:-'2.0'}
|
||||
_SETTINGS_REPO='https://git.sakamoto.pl/domi/foxgirl-settings';
|
||||
|
||||
# Extracts the binary tarball
|
||||
printf "\nExtracting librewolf binary tarball\n";
|
||||
mkdir -p $_EXTRACTED_TARBALL_FOLDER
|
||||
tar --strip-components=1 -xf $BINARY_TARBALL -C $_EXTRACTED_TARBALL_FOLDER
|
||||
|
||||
# Adds the librefox config files to the packaged tarball
|
||||
printf "\nCopying librewolf settings to extracted binary tarball\n";
|
||||
|
||||
git clone $_SETTINGS_REPO $_EXTRACTED_TARBALL_FOLDER/settings;
|
||||
cd $_EXTRACTED_TARBALL_FOLDER/settings
|
||||
#git checkout $_SETTINGS_TAG
|
||||
cd -
|
||||
# no need to keep that in there:
|
||||
rm -rf "${_EXTRACTED_TARBALL_FOLDER}/settings/.git";
|
||||
cp $TOGGLE_SETTINGS_SCRIPT $_EXTRACTED_TARBALL_FOLDER/settings;
|
||||
cp $LAUNCHER_SCRIPT $_EXTRACTED_TARBALL_FOLDER/launch_librewolf.sh;
|
||||
|
||||
# Somewhat crude workaround to use settings per default
|
||||
# until we've worked out how to use `--install-settings` with links
|
||||
# in all major packages instead
|
||||
printf "\nWorkaround: auto-enable Settings\n"
|
||||
cp -r $_EXTRACTED_TARBALL_FOLDER/settings/* $_EXTRACTED_TARBALL_FOLDER;
|
||||
|
||||
# Add distribution.ini
|
||||
distini="$_EXTRACTED_TARBALL_FOLDER/distribution/distribution.ini"
|
||||
|
||||
install -Dvm644 /dev/stdin "$distini" <<END
|
||||
[Global]
|
||||
id=io.gitlab.librewolf-community
|
||||
version=1.0
|
||||
about=Foxgirl
|
||||
|
||||
[Preferences]
|
||||
app.distributor="idk lmao"
|
||||
app.distributor.channel=foxgirl
|
||||
app.partner.librewolf=foxgirl
|
||||
END
|
||||
|
||||
# Create Appstream metadate file
|
||||
export DATE=$(date +%Y-%m-%d)
|
||||
envsubst < ${_SCRIPT_FOLDER}/../content/io.gitlab.librewolf-community.appdata.xml.in > ${_EXTRACTED_TARBALL_FOLDER}/io.gitlab.librewolf-community.appdata.xml
|
||||
|
||||
# Repacks the binary tarball
|
||||
printf "\nRecompressing binary tarball\n";
|
||||
tar -jvcf $BINARY_TARBALL -C $_EXTRACTED_TARBALL_FOLDER .
|
Loading…
Reference in a new issue