Adding debian version 140.0-1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
This commit is contained in:
parent
5e9a113729
commit
8baeab6532
75 changed files with 20037 additions and 0 deletions
3
debian/browser-dev.links.in
vendored
Normal file
3
debian/browser-dev.links.in
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
%if USE_SYSTEM_NSPR
|
||||||
|
usr/bin/nspr-config usr/lib/@browser@-devel-@GRE_VERSION@/sdk/bin/nspr-config
|
||||||
|
%endif
|
4
debian/browser-symbolic.svg.in
vendored
Normal file
4
debian/browser-symbolic.svg.in
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
%if 0
|
||||||
|
# Within dummy preprocessor directive to make the preprocessor happy.
|
||||||
|
%endif
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><title>newtab-firefox-gry</title><path d="M31.359,14.615h0c-.044-.289-.088-.459-.088-.459s-.113.131-.3.378A10.77,10.77,0,0,0,30.6,12.5a13.846,13.846,0,0,0-.937-2.411,10.048,10.048,0,0,0-.856-1.468q-.176-.263-.359-.51c-.57-.931-1.224-1.5-1.981-2.576a7.806,7.806,0,0,1-.991-2.685A10.844,10.844,0,0,0,25,4.607c-.777-.784-1.453-1.341-1.861-1.721C21.126,1.006,21.36.031,21.36.031h0S17.6,4.228,19.229,8.6a8.4,8.4,0,0,0,2.8,3.733c1.576,1.3,3.273,2.323,4.168,4.937a8.377,8.377,0,0,0-3.144-3.317,7.573,7.573,0,0,1,.6,3,7.124,7.124,0,0,1-8.711,6.94,6.561,6.561,0,0,1-1.765-.6,7.183,7.183,0,0,1-2.115-1.955l-.01-.017.126.046a6.5,6.5,0,0,0,.9.241,5.628,5.628,0,0,0,3.583-.423c1.126-.625,1.808-1.088,2.361-.905l.01,0c.54.172.966-.352.58-.9a2.94,2.94,0,0,0-2.848-1.112c-1.127.164-2.16.965-3.637.189a3.129,3.129,0,0,1-.277-.163c-.1-.057.317.087.22.022a7.33,7.33,0,0,1-.928-.554c-.022-.018.223.07.2.052a3.581,3.581,0,0,1-.968-.979,1.741,1.741,0,0,1-.066-1.554,1.371,1.371,0,0,1,.6-.564c.191.094.309.165.309.165s-.087-.16-.134-.244c.017-.006.032,0,.049-.011.167.072.537.26.732.375a1.016,1.016,0,0,1,.335.3s.067-.033.017-.173a.9.9,0,0,0-.346-.424l.016,0a2.94,2.94,0,0,1,.426.265,2.079,2.079,0,0,0,.17-.9,1.178,1.178,0,0,0-.069-.5c-.053-.1.03-.14.123-.035a.976.976,0,0,0-.079-.238v-.008h0s.053-.069.077-.094a1.43,1.43,0,0,1,.216-.176,9.973,9.973,0,0,1,1.465-.747c.414-.181.757-.319.827-.359a2.3,2.3,0,0,0,.293-.225,1.968,1.968,0,0,0,.66-1.14,1.6,1.6,0,0,0,.017-.178v-.05l0-.03v0l0-.012v0l0-.013h0c-.06-.225-.448-.394-2.476-.584a1.773,1.773,0,0,1-1.45-1.36l0,.009c-.029.074-.055.149-.081.225.026-.075.052-.15.081-.225l0-.016a5.138,5.138,0,0,1,1.986-2.466c.052-.042-.208.011-.156-.032a5.156,5.156,0,0,1,.53-.224c.091-.038-.39-.222-.815-.177a2.2,2.2,0,0,0-.756.178c.1-.086.4-.2.329-.2a4.865,4.865,0,0,0-1.542.583.314.314,0,0,1,.03-.14,2.4,2.4,0,0,0-.964.744,1.275,1.275,0,0,0,.01-.174,2.876,2.876,0,0,0-.473.444l-.009.007a6.285,6.285,0,0,0-3.517-.3l-.01-.009.012,0a2.943,2.943,0,0,1-.625-.7L6.1,5.852,6.081,5.83c-.077-.114-.156-.243-.237-.387-.058-.1-.117-.217-.176-.338,0-.008-.009-.011-.013-.012-.024,0-.041.111-.061.082l0-.006a4.308,4.308,0,0,1-.283-1.687l-.016.008a1.884,1.884,0,0,0-.714.934c-.061.137-.1.212-.14.287,0,.006,0-.01,0-.035.009-.069.039-.211.032-.2s-.012.019-.019.029a1.733,1.733,0,0,0-.251.372,2.355,2.355,0,0,0-.15.382c-.006.021,0-.018,0-.064s.009-.128,0-.111l-.022.043a9.5,9.5,0,0,0-.8,3.035A3.022,3.022,0,0,0,3.2,8.7v.016a6.628,6.628,0,0,0-.817,1.1,15.606,15.606,0,0,0-1.727,4.23,10.351,10.351,0,0,1,.925-1.621,15,15,0,0,0-1.045,5.5,14.233,14.233,0,0,1,.45-1.629A13.807,13.807,0,0,0,2.234,22.76a15.037,15.037,0,0,0,5.951,6.748h0a13.016,13.016,0,0,0,3.468,1.662c.162.059.326.117.494.173-.053-.021-.1-.044-.153-.067a15.7,15.7,0,0,0,4.5.662c5.394,0,7.175-2.054,7.339-2.259h0a2.73,2.73,0,0,0,.637-.856h0q.156-.064.315-.137l.067-.03.121-.057a11.312,11.312,0,0,0,2.277-1.426,5.5,5.5,0,0,0,2.123-3.1h0a1.938,1.938,0,0,0,.029-1.428q.083-.131.171-.28a12.706,12.706,0,0,0,1.907-6.181v-.006c0-.059,0-.118,0-.177A7.731,7.731,0,0,0,31.359,14.615Z" fill="#d7d7db"/></svg>
|
105
debian/browser.1.in
vendored
Normal file
105
debian/browser.1.in
vendored
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
.TH @BROWSER@ 1 "November 4, 2004" @browser@ "Linux User's Manual"
|
||||||
|
.SH NAME
|
||||||
|
@browser@ - a Web browser for X11 derived from the Mozilla browser
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.B @browser@
|
||||||
|
[\fIOPTIONS\fR] [\fIURL\fR]
|
||||||
|
|
||||||
|
.B /usr/lib/@browser@/@browser@
|
||||||
|
[\fIOPTIONS\fR] [\fIURL\fR]
|
||||||
|
|
||||||
|
.SH DESCRIPTION
|
||||||
|
\fB@Browser@\fR is an open-source web browser, designed for
|
||||||
|
standards compliance, performance and portability.
|
||||||
|
|
||||||
|
.SH USAGE
|
||||||
|
If there is an @Browser@ browser already running, \fB@browser@\fR will
|
||||||
|
arrange for it to create a new browser window; otherwise it will start
|
||||||
|
a new instance.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
A summary of the options supported by \fB@browser@\fR is included below.
|
||||||
|
|
||||||
|
.SS "X11 options"
|
||||||
|
.TP
|
||||||
|
.BI \-\-display= DISPLAY
|
||||||
|
X display to use
|
||||||
|
.TP
|
||||||
|
.B \-\-sync
|
||||||
|
Make X calls synchronous
|
||||||
|
.TP
|
||||||
|
.B \-\-no\-xshm
|
||||||
|
Don't use X shared memory extension
|
||||||
|
.TP
|
||||||
|
.BI \-\-xim\-preedit= STYLE
|
||||||
|
.TP
|
||||||
|
.BI \-\-xim\-status= STYLE
|
||||||
|
.TP
|
||||||
|
.B \-\-g\-fatal\-warnings
|
||||||
|
Make all warnings fatal
|
||||||
|
|
||||||
|
.SS "Mozilla options"
|
||||||
|
.TP
|
||||||
|
.B \-h, \-help
|
||||||
|
Show summary of options.
|
||||||
|
.TP
|
||||||
|
.B \-v, \-version
|
||||||
|
Print @Browser@ version.
|
||||||
|
.TP
|
||||||
|
\fB\-P\fR [\fIprofile\fR]
|
||||||
|
Start with \fIprofile\fR. When no profile is given, displays the Profile Manager. May require \fB\-no\-remote\fR, see below.
|
||||||
|
.TP
|
||||||
|
.B \-migration
|
||||||
|
Start with migration wizard. May require \fB\-no\-remote\fR, see below.
|
||||||
|
.TP
|
||||||
|
.B \-ProfileManager
|
||||||
|
Start with profile manager. May require \fB\-no\-remote\fR, see below.
|
||||||
|
.TP
|
||||||
|
.B \-no\-remote
|
||||||
|
Don't connect to a running @Browser@ instance. This option can be necessary
|
||||||
|
in conjunction to several of the options above, that won't have any effect
|
||||||
|
when an @Browser@ instance is running unless \fB\-no\-remote\fR is used at
|
||||||
|
the same time.
|
||||||
|
.TP
|
||||||
|
\fB\-UILocale\fR \fIlocale\fR
|
||||||
|
Start with \fIlocale\fR resources as User Interface locale. By default, it is
|
||||||
|
guessed from environment and available locales for @Browser@.
|
||||||
|
.TP
|
||||||
|
.B \-safe\-mode
|
||||||
|
Starts @Browser@ in safe mode, i.e. disabling all extensions and
|
||||||
|
showing a bit more debugging messages.
|
||||||
|
.TP
|
||||||
|
.B \-jsconsole
|
||||||
|
Start with Javascript Console
|
||||||
|
.TP
|
||||||
|
\fB\-new-window\fR \fIURL\fR
|
||||||
|
Open \fIURL\fR in a new window in an already running @Browser@ process.
|
||||||
|
.TP
|
||||||
|
\fB\-new-tab\fR \fIURL\fR
|
||||||
|
Open \fIURL\fR in a new tab in an already running @Browser@ process.
|
||||||
|
.TP
|
||||||
|
\fB\-chrome\fR \fIurl\fR
|
||||||
|
Load the specified chrome.
|
||||||
|
|
||||||
|
.SH ENVIRONMENT
|
||||||
|
\fIMOZILLA_DISABLE_PLUGINS\fR - when set, totally disables loading browser plugins
|
||||||
|
(the ones that appear at the about:plugins url)
|
||||||
|
|
||||||
|
.SH FILES
|
||||||
|
\fI/usr/bin/@browser@\fR - symbolic link to \fB/usr/lib/@browser@/@browser@\fR.
|
||||||
|
.br
|
||||||
|
|
||||||
|
\fI/usr/lib/@browser@/@browser@\fR - @Browser@ executable.
|
||||||
|
|
||||||
|
\fI/usr/lib/@browser@/firefox\-bin\fR - Legacy executable.
|
||||||
|
.br
|
||||||
|
|
||||||
|
.SH BUGS
|
||||||
|
To report a bug, please visit \fIhttp://bugzilla.mozilla.org/\fR and/or report bugs
|
||||||
|
to the Debian Bug Tracking System, as usual.
|
||||||
|
|
||||||
|
.SH AUTHORS
|
||||||
|
.TP
|
||||||
|
.B The Mozilla Organization
|
||||||
|
.I http://www.mozilla.org/about.html
|
21
debian/browser.NEWS.in
vendored
Normal file
21
debian/browser.NEWS.in
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
%define firefox_esr firefox-esr
|
||||||
|
%if browser == firefox_esr
|
||||||
|
%define esr esr
|
||||||
|
%else
|
||||||
|
%define esr
|
||||||
|
%endif
|
||||||
|
@browser@ (60.0@esr@-1) unstable; urgency=medium
|
||||||
|
|
||||||
|
* The use of `lockPref` in preferences under /etc/@browser@ is deprecated.
|
||||||
|
Please use `pref("name", value, locked)` instead. `lockPref` will still
|
||||||
|
be supported for compatibility purpose until version 67.
|
||||||
|
|
||||||
|
-- Mike Hommey <glandium@debian.org> Thu, 10 May 2018 09:36:46 +0900
|
||||||
|
|
||||||
|
%if browser == firefox_esr
|
||||||
|
@browser@ (45.0esr-1) unstable; urgency=medium
|
||||||
|
|
||||||
|
* The iceweasel package was replaced with the firefox-esr package.
|
||||||
|
|
||||||
|
-- Mike Hommey <glandium@debian.org> Mon, 7 Mar 2016 07:45:02 +0900
|
||||||
|
%endif
|
61
debian/browser.README.Debian.in
vendored
Normal file
61
debian/browser.README.Debian.in
vendored
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
@Browser@ for Debian
|
||||||
|
====================
|
||||||
|
|
||||||
|
Please read the file /usr/share/bug/@browser@/presubj for information
|
||||||
|
you may want to know if you will report a bug.
|
||||||
|
|
||||||
|
Buttons
|
||||||
|
-------
|
||||||
|
|
||||||
|
Some people have complained that the button order in dialogs is
|
||||||
|
non-intuitive (ie, they don't like it). To reverse the order, add the
|
||||||
|
following to your chrome/userChrome.css file, under the
|
||||||
|
~/.mozilla/firefox directory:
|
||||||
|
|
||||||
|
.dialog-button-box { -moz-box-direction: reverse; -moz-box-pack: right; }
|
||||||
|
.dialog-button-box spacer { display: none ! important; }
|
||||||
|
|
||||||
|
Emacs keybindings
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
Versions of Firefox before 1.0 supported Emacs style keybindings in
|
||||||
|
text entry boxes. Version 1.0 now merely follows the GTK keybindings
|
||||||
|
settings. To enable Emacs keybindings in GTK, follow the instructions
|
||||||
|
at http://kb.mozillazine.org/Emacs_Keybindings_(Firefox).
|
||||||
|
|
||||||
|
Well Known Ports
|
||||||
|
----------------
|
||||||
|
|
||||||
|
To prevent @Browser@ from being used to launch attacks against other
|
||||||
|
protocols, certain ports cannot be connected to by default. See
|
||||||
|
http://www.mozilla.org/projects/netlib/PortBanning.html for further
|
||||||
|
information. To allow the port numbers being used, enter
|
||||||
|
"about:config" in the URL bar and edit the
|
||||||
|
"network.security.ports.banned.override" entry to list the ports you
|
||||||
|
wish to allow (eg "2049,4045,6000").
|
||||||
|
|
||||||
|
Safe Browsing
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Phishing and malware protection, also known as Safe Browsing, makes use
|
||||||
|
of a third party web service and regularly downloads updates. More
|
||||||
|
information on how this works and what is being sent and downloaded are
|
||||||
|
available on the following page:
|
||||||
|
http://www.mozilla.com/en-US/firefox/phishing-protection/
|
||||||
|
|
||||||
|
NTLM
|
||||||
|
----
|
||||||
|
|
||||||
|
Since version 30.0, NTLMv1 authentication has been disabled because
|
||||||
|
it's known as insecure. Companies and organizations still deploying
|
||||||
|
the older protocol should upgrade to NTLMv2, unfortunately, it's not
|
||||||
|
supported by @Browser@.
|
||||||
|
It is however still possible to toggle the preference to continue using
|
||||||
|
NTLMv1, though the NTLM auth support is considered deprecated, by
|
||||||
|
switching the network.negotiate-auth.allow-insecure-ntlm-v1 preference
|
||||||
|
in about:config.
|
||||||
|
|
||||||
|
See https://developer.mozilla.org/en-US/Firefox/Releases/30/Site_Compatibility#Security
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
-- Mike Hommey <glandium@debian.org>, Mon, 7 Mar 2016 07:42:57 +0200
|
1
debian/browser.bug-control.in
vendored
Normal file
1
debian/browser.bug-control.in
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
report-with: xulrunner-@GRE_VERSION@
|
45
debian/browser.bug-presubj.in
vendored
Normal file
45
debian/browser.bug-presubj.in
vendored
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
*** Please submit non packaging issue (e.g. feature requests) bugs to
|
||||||
|
the Debian BTS and the upstream bugzilla
|
||||||
|
(https://bugzilla.mozilla.org/enter_bug.cgi?product=Firefox) and put a
|
||||||
|
reference to the bugzilla bug in the Debian bug report to ease bug
|
||||||
|
triage for the maintainers. You may need to reproduce this with
|
||||||
|
upstream's Firefox for upstream to take you seriously. Thank you. ***
|
||||||
|
|
||||||
|
@Browser@ extensions being a big source of problems, please either try
|
||||||
|
to reproduce your bug with a clean user or with your current user in
|
||||||
|
safe mode, with the "@browser@ -safe-mode" command line before filing
|
||||||
|
any bugs. If your bug disappears with a clean user or in safe mode,
|
||||||
|
you might want to find which extension is responsible for it and file
|
||||||
|
a bug to the appropriate package, bug tracking system, or author.
|
||||||
|
|
||||||
|
If your previous @Browser@ installation pre-dates 3.0, you might have
|
||||||
|
had problems since upgrading from one release to another can lack clean
|
||||||
|
support for some features. Please try moving your ~/.mozilla/firefox
|
||||||
|
directory out of the way to see if it helps with your issue.
|
||||||
|
|
||||||
|
@Browser@ requires the loopback interface (lo) to be up and unfiltered
|
||||||
|
to accept keyboard input and function correctly. Please make sure this
|
||||||
|
is the case before filing any bugs.
|
||||||
|
|
||||||
|
If you get crashes and none of the above hints helped, please also
|
||||||
|
try to run "MOZILLA_DISABLE_PLUGINS=1 @browser@".
|
||||||
|
|
||||||
|
If @Browser@ still crashes, please submit the crash to Mozilla, then
|
||||||
|
visit `about:crashes` and paste the url to the corresponding submitted
|
||||||
|
crash report in your bug report.
|
||||||
|
|
||||||
|
Alternatively, please install the @browser@-dbgsym package and run
|
||||||
|
@Browser@ under gdb with:
|
||||||
|
|
||||||
|
gdb --args @browser@ [command-line-arguments]
|
||||||
|
|
||||||
|
At the gdb prompt, type the following commands:
|
||||||
|
|
||||||
|
set pagination off
|
||||||
|
run
|
||||||
|
bt full
|
||||||
|
|
||||||
|
And attach the resulting backtrace to your bug report.
|
||||||
|
|
||||||
|
If you see XML parsing errors, please make sure you kill all running
|
||||||
|
@Browser@s and reload before filing any bugs.
|
19
debian/browser.bug-script.in
vendored
Normal file
19
debian/browser.bug-script.in
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Don't run as root
|
||||||
|
[ "$(id -u)" -eq 0 ] && exit
|
||||||
|
|
||||||
|
tmp="$(mktemp)"
|
||||||
|
tmp2="$(mktemp)"
|
||||||
|
@browser@ -dump-addons-info "$tmp"
|
||||||
|
awk -F: '$1 == "Location" {print $2}' "$tmp" | xargs dpkg -S 2>/dev/null > "$tmp2"
|
||||||
|
echo >&3
|
||||||
|
awk -F": " 'BEGIN { while (i = getline < "'"$tmp2"'") { p[$2] = $1; } }
|
||||||
|
{ print $0 }
|
||||||
|
$1 == "Location" && p[$2] { print "Package: " p[$2] }' "$tmp" >&3
|
||||||
|
|
||||||
|
echo >&3
|
||||||
|
echo -- Addons package information >&3
|
||||||
|
awk -F": " '{ print $1 }' "$tmp2" | sort -u | COLUMNS=79 xargs -r dpkg -l 2> /dev/null | grep ^i >&3
|
||||||
|
|
||||||
|
rm -f "$tmp" "$tmp2"
|
104
debian/browser.desktop.in
vendored
Normal file
104
debian/browser.desktop.in
vendored
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=@Browser@
|
||||||
|
Name[bg]=@Browser@
|
||||||
|
Name[ca]=@Browser@
|
||||||
|
Name[cs]=@Browser@
|
||||||
|
Name[el]=@Browser@
|
||||||
|
Name[es]=@Browser@
|
||||||
|
Name[fa]=@Browser@
|
||||||
|
Name[fi]=@Browser@
|
||||||
|
Name[fr]=@Browser@
|
||||||
|
Name[hu]=@Browser@
|
||||||
|
Name[it]=@Browser@
|
||||||
|
Name[ja]=@Browser@
|
||||||
|
Name[ko]=@Browser@
|
||||||
|
Name[nb]=@Browser@
|
||||||
|
Name[nl]=@Browser@
|
||||||
|
Name[nn]=@Browser@
|
||||||
|
Name[no]=@Browser@
|
||||||
|
Name[pl]=@Browser@
|
||||||
|
Name[pt]=@Browser@
|
||||||
|
Name[pt_BR]=@Browser@
|
||||||
|
Name[ru]=@Browser@
|
||||||
|
Name[sk]=@Browser@
|
||||||
|
Name[sv]=@Browser@
|
||||||
|
Comment=Browse the World Wide Web
|
||||||
|
Comment[bg]=Сърфиране в Мрежата
|
||||||
|
Comment[ca]=Navegueu per el web
|
||||||
|
Comment[cs]=Prohlížení stránek World Wide Webu
|
||||||
|
Comment[de]=Im Internet surfen
|
||||||
|
Comment[el]=Περιηγηθείτε στον παγκόσμιο ιστό
|
||||||
|
Comment[es]=Navegue por la web
|
||||||
|
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
|
||||||
|
Comment[fi]=Selaa Internetin WWW-sivuja
|
||||||
|
Comment[fr]=Navigue sur Internet
|
||||||
|
Comment[hu]=A világháló böngészése
|
||||||
|
Comment[it]=Esplora il web
|
||||||
|
Comment[ja]=ウェブを閲覧します
|
||||||
|
Comment[ko]=웹을 돌아 다닙니다
|
||||||
|
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[ru]=Обозреватель Всемирной Паутины
|
||||||
|
Comment[sk]=Prehliadanie internetu
|
||||||
|
Comment[sv]=Surfa på webben
|
||||||
|
GenericName=Web Browser
|
||||||
|
GenericName[bg]=Интернет браузър
|
||||||
|
GenericName[ca]=Navegador web
|
||||||
|
GenericName[cs]=Webový prohlížeč
|
||||||
|
GenericName[de]=Webbrowser
|
||||||
|
GenericName[el]=Περιηγητής ιστού
|
||||||
|
GenericName[es]=Navegador web
|
||||||
|
GenericName[fa]=مرورگر اینترنتی
|
||||||
|
GenericName[fi]=WWW-selain
|
||||||
|
GenericName[fr]=Navigateur Web
|
||||||
|
GenericName[hu]=Webböngésző
|
||||||
|
GenericName[it]=Browser Web
|
||||||
|
GenericName[ja]=ウェブ・ブラウザ
|
||||||
|
GenericName[ko]=웹 브라우저
|
||||||
|
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[ru]=Интернет-браузер
|
||||||
|
GenericName[sk]=Internetový prehliadač
|
||||||
|
GenericName[sv]=Webbläsare
|
||||||
|
X-GNOME-FullName=@Browser@ Web Browser
|
||||||
|
X-GNOME-FullName[bg]=Интернет браузър (@Browser@)
|
||||||
|
X-GNOME-FullName[ca]=Navegador web @Browser@
|
||||||
|
X-GNOME-FullName[cs]=@Browser@ Webový prohlížeč
|
||||||
|
X-GNOME-FullName[el]=Περιηγήτης Ιστού @Browser@
|
||||||
|
X-GNOME-FullName[es]=Navegador web @Browser@
|
||||||
|
X-GNOME-FullName[fa]=مرورگر اینترنتی @Browser@
|
||||||
|
X-GNOME-FullName[fi]=@Browser@-selain
|
||||||
|
X-GNOME-FullName[fr]=Navigateur Web @Browser@
|
||||||
|
X-GNOME-FullName[hu]=@Browser@ webböngésző
|
||||||
|
X-GNOME-FullName[it]=@Browser@ Browser Web
|
||||||
|
X-GNOME-FullName[ja]=@Browser@ ウェブ・ブラウザ
|
||||||
|
X-GNOME-FullName[ko]=@Browser@ 웹 브라우저
|
||||||
|
X-GNOME-FullName[nb]=@Browser@ Nettleser
|
||||||
|
X-GNOME-FullName[nl]=@Browser@ webbrowser
|
||||||
|
X-GNOME-FullName[nn]=@Browser@ Nettlesar
|
||||||
|
X-GNOME-FullName[no]=@Browser@ Nettleser
|
||||||
|
X-GNOME-FullName[pl]=Przeglądarka WWW @Browser@
|
||||||
|
X-GNOME-FullName[pt]=@Browser@ Navegador Web
|
||||||
|
X-GNOME-FullName[pt_BR]=Navegador Web @Browser@
|
||||||
|
X-GNOME-FullName[ru]=Интернет-браузер @Browser@
|
||||||
|
X-GNOME-FullName[sk]=Internetový prehliadač @Browser@
|
||||||
|
X-GNOME-FullName[sv]=Webbläsaren @Browser@
|
||||||
|
Exec=/usr/lib/@browser@/@browser@ %u
|
||||||
|
Terminal=false
|
||||||
|
X-MultipleArgs=false
|
||||||
|
Type=Application
|
||||||
|
Icon=@browser@
|
||||||
|
Categories=Network;WebBrowser;
|
||||||
|
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
|
||||||
|
StartupWMClass=@MOZ_APP_REMOTINGNAME@
|
||||||
|
StartupNotify=true
|
9
debian/browser.dirs.in
vendored
Normal file
9
debian/browser.dirs.in
vendored
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
etc/@browser@
|
||||||
|
usr/lib/mozilla/plugins
|
||||||
|
usr/lib/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
|
||||||
|
usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}
|
||||||
|
usr/share/icons/hicolor/16x16/apps
|
||||||
|
usr/share/icons/hicolor/32x32/apps
|
||||||
|
usr/share/icons/hicolor/48x48/apps
|
||||||
|
usr/share/icons/hicolor/64x64/apps
|
||||||
|
usr/share/icons/hicolor/128x128/apps
|
74
debian/browser.install.in
vendored
Normal file
74
debian/browser.install.in
vendored
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
usr/lib/@browser@/platform.ini
|
||||||
|
|
||||||
|
usr/lib/@browser@/libxul.so
|
||||||
|
usr/lib/@browser@/dependentlibs.list
|
||||||
|
|
||||||
|
usr/lib/@browser@/omni.ja
|
||||||
|
|
||||||
|
usr/lib/@browser@/libmozsqlite3.so
|
||||||
|
%ifndef USE_SYSTEM_NSPR
|
||||||
|
usr/lib/@browser@/libnspr4.so
|
||||||
|
usr/lib/@browser@/libplc4.so
|
||||||
|
usr/lib/@browser@/libplds4.so
|
||||||
|
%endif
|
||||||
|
%ifndef USE_SYSTEM_NSS
|
||||||
|
usr/lib/@browser@/libfreeblpriv3.so
|
||||||
|
usr/lib/@browser@/libnss3.so
|
||||||
|
usr/lib/@browser@/libnssutil3.so
|
||||||
|
usr/lib/@browser@/libsmime3.so
|
||||||
|
usr/lib/@browser@/libsoftokn3.so
|
||||||
|
usr/lib/@browser@/libssl3.so
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if SHORT_SOURCE_CHANNEL == central
|
||||||
|
usr/lib/@browser@/libreplace_jemalloc.so
|
||||||
|
%endif
|
||||||
|
|
||||||
|
usr/lib/@browser@/libmozgtk.so
|
||||||
|
usr/lib/@browser@/libmozwayland.so
|
||||||
|
usr/lib/@browser@/liblgpllibs.so
|
||||||
|
usr/lib/@browser@/libmozavcodec.so
|
||||||
|
usr/lib/@browser@/libmozavutil.so
|
||||||
|
%if DEB_HOST_ARCH == i386 || DEB_HOST_ARCH == amd64 || DEB_HOST_ARCH == arm64 || DEB_HOST_ARCH == armhf || DEB_HOST_ARCH == armel
|
||||||
|
usr/lib/@browser@/libmozsandbox.so
|
||||||
|
%endif
|
||||||
|
usr/lib/@browser@/libgkcodecs.so
|
||||||
|
|
||||||
|
usr/lib/@browser@/defaults/pref/channel-prefs.js
|
||||||
|
|
||||||
|
usr/lib/@browser@/@browser@ usr/lib/@browser@
|
||||||
|
|
||||||
|
usr/lib/@browser@/browser/defaults/preferences usr/share/@browser@/browser/defaults
|
||||||
|
usr/lib/@browser@/browser/chrome usr/share/@browser@/browser
|
||||||
|
|
||||||
|
usr/lib/@browser@/application.ini usr/lib/@browser@
|
||||||
|
usr/lib/@browser@/browser/omni.ja usr/lib/@browser@/browser
|
||||||
|
|
||||||
|
debian/@browser@.desktop usr/share/applications
|
||||||
|
|
||||||
|
debian/@browser@.js etc/@browser@
|
||||||
|
debian/vendor.js usr/share/@browser@/browser/defaults/preferences
|
||||||
|
|
||||||
|
debian/debsearch.xml usr/share/@browser@/distribution/searchplugins/common
|
||||||
|
|
||||||
|
%if browser != firefox
|
||||||
|
debian/firefox usr/bin
|
||||||
|
%endif
|
||||||
|
|
||||||
|
usr/lib/@browser@/gmp-clearkey/0.1/manifest.json
|
||||||
|
usr/lib/@browser@/gmp-clearkey/0.1/libclearkey.so
|
||||||
|
|
||||||
|
%if CRASH_REPORTER
|
||||||
|
usr/lib/@browser@/crashreporter
|
||||||
|
usr/lib/@browser@/crashhelper
|
||||||
|
%endif
|
||||||
|
|
||||||
|
usr/lib/@browser@/fonts/TwemojiMozilla.ttf
|
||||||
|
usr/lib/@browser@/pingsender
|
||||||
|
usr/lib/@browser@/glxtest
|
||||||
|
%if MOZ_ENABLE_V4L2
|
||||||
|
usr/lib/@browser@/v4l2test
|
||||||
|
%endif
|
||||||
|
usr/lib/@browser@/vaapitest
|
||||||
|
|
||||||
|
debian/@browser@-symbolic.svg usr/share/icons/hicolor/symbolic/apps
|
30
debian/browser.js.in
vendored
Normal file
30
debian/browser.js.in
vendored
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
// This is the Debian specific preferences file for @Browser@
|
||||||
|
// You can make any change in here, it is the purpose of this file.
|
||||||
|
// You can, with this file and all files present in the
|
||||||
|
// /etc/@browser@ directory, override any preference you can see in
|
||||||
|
// about:config.
|
||||||
|
//
|
||||||
|
// Note that pref("name", value, locked) is allowed in these
|
||||||
|
// preferences files if you don't want users to be able to override
|
||||||
|
// some preferences.
|
||||||
|
|
||||||
|
pref("extensions.update.enabled", true);
|
||||||
|
|
||||||
|
// Use LANG environment variable to choose locale
|
||||||
|
pref("intl.locale.requested", "");
|
||||||
|
|
||||||
|
// Disable default browser checking.
|
||||||
|
pref("browser.shell.checkDefaultBrowser", false);
|
||||||
|
|
||||||
|
// Disable openh264.
|
||||||
|
pref("media.gmp-gmpopenh264.enabled", false);
|
||||||
|
|
||||||
|
// Default to classic view for about:newtab
|
||||||
|
pref("browser.newtabpage.enhanced", false, sticky);
|
||||||
|
|
||||||
|
// Disable health report upload
|
||||||
|
pref("datareporting.healthreport.uploadEnabled", false);
|
||||||
|
|
||||||
|
// Default to no suggestions in the urlbar. This still brings a panel asking
|
||||||
|
// the user whether they want to opt-in on first use.
|
||||||
|
pref("browser.urlbar.suggest.searches", false);
|
13
debian/browser.links.in
vendored
Normal file
13
debian/browser.links.in
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
/usr/lib/@browser@/@browser@ /usr/bin/@browser@
|
||||||
|
/usr/lib/@browser@/@browser@ /usr/lib/@browser@/firefox-bin
|
||||||
|
/usr/share/icons/hicolor/16x16/apps/@browser@.png /usr/share/@browser@/browser/chrome/icons/default/default16.png
|
||||||
|
/usr/share/icons/hicolor/32x32/apps/@browser@.png /usr/share/@browser@/browser/chrome/icons/default/default32.png
|
||||||
|
/usr/share/icons/hicolor/48x48/apps/@browser@.png /usr/share/@browser@/browser/chrome/icons/default/default48.png
|
||||||
|
/usr/share/icons/hicolor/64x64/apps/@browser@.png /usr/share/@browser@/browser/chrome/icons/default/default64.png
|
||||||
|
/usr/share/icons/hicolor/128x128/apps/@browser@.png /usr/share/@browser@/browser/chrome/icons/default/default128.png
|
||||||
|
/etc/@browser@ /usr/share/@browser@/browser/defaults/syspref
|
||||||
|
|
||||||
|
/usr/share/@browser@/browser/chrome /usr/lib/@browser@/browser/chrome
|
||||||
|
/usr/share/@browser@/browser/defaults /usr/lib/@browser@/browser/defaults
|
||||||
|
|
||||||
|
/usr/share/@browser@/distribution /usr/lib/@browser@/distribution
|
24
debian/browser.lintian-overrides.in
vendored
Normal file
24
debian/browser.lintian-overrides.in
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
# The embedded libjpeg is libjpeg-turbo, not libjpeg.
|
||||||
|
@browser@: embedded-library libjpeg [usr/lib/@browser@/libxul.so]
|
||||||
|
# The embedded libpng is patched for APNG support
|
||||||
|
@browser@: embedded-library libpng [usr/lib/@browser@/libxul.so]
|
||||||
|
# Upstream code is not ready to use system library
|
||||||
|
@browser@: embedded-library srtp [usr/lib/@browser@/libxul.so]
|
||||||
|
# False positive from gfx/ots/src/name.cc
|
||||||
|
@browser@: embedded-library freetype [usr/lib/@browser@/libxul.so]
|
||||||
|
# A version without C++ exceptions
|
||||||
|
@browser@: embedded-library libjsoncpp [usr/lib/@browser@/libxul.so]
|
||||||
|
@browser@: embedded-library libjsoncpp [usr/lib/@browser@/minidump-analyzer]
|
||||||
|
# This is a stripped down libavutil
|
||||||
|
@browser@: embedded-library libavutil [usr/lib/@browser@/libmozavutil.so]
|
||||||
|
%ifndef USE_SYSTEM_NSS
|
||||||
|
# Debian doesn't have the right version.
|
||||||
|
@browser@: embedded-library nss [usr/lib/@browser@/libnss3.so]
|
||||||
|
%endif
|
||||||
|
%ifndef USE_SYSTEM_NSPR
|
||||||
|
# Debian doesn't have the right version.
|
||||||
|
@browser@: embedded-library nspr [usr/lib/@browser@/libnspr4.so]
|
||||||
|
%endif
|
||||||
|
# The following libraries are stubs to help support both X11 and Wayland.
|
||||||
|
@browser@: shared-library-lacks-prerequisites [usr/lib/@browser@/libmozwayland.so]
|
||||||
|
@browser@: library-not-linked-against-libc [usr/lib/@browser@/libmozgtk.so]
|
1
debian/browser.manpages.in
vendored
Normal file
1
debian/browser.manpages.in
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
debian/@browser@.1
|
5
debian/browser.mime.in
vendored
Normal file
5
debian/browser.mime.in
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
text/html; /usr/bin/@browser@ %s; description=HTML Text; test=test -n "$DISPLAY"; nametemplate=%s.html; priority=5
|
||||||
|
text/xml; /usr/bin/@browser@ %s; description=XML Text; test=test -n "$DISPLAY"; nametemplate=%s.xml; priority=5
|
||||||
|
image/png; /usr/bin/@browser@ %s; description=PNG Image; test=test -n "$DISPLAY"; nametemplate=%s.png; priority=2
|
||||||
|
image/jpeg; /usr/bin/@browser@ %s; description=JPEG Image; test=test -n "$DISPLAY"; nametemplate=%s.jpeg; priority=2
|
||||||
|
image/gif; /usr/bin/@browser@ %s; description=GIF Image; test=test -n "$DISPLAY"; nametemplate=%s.gif; priority=2
|
35
debian/browser.mozconfig.in
vendored
Normal file
35
debian/browser.mozconfig.in
vendored
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
# Please don't use this mozconfig unless you are planning to build
|
||||||
|
# packages for Debian or a derivative.
|
||||||
|
ac_add_options --with-app-name=@browser@
|
||||||
|
ac_add_options --enable-release
|
||||||
|
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
|
||||||
|
ac_add_options --with-google-location-service-api-keyfile=$topsrcdir/debian/google.key
|
||||||
|
ac_add_options --with-google-safebrowsing-api-keyfile=$topsrcdir/debian/google.key
|
||||||
|
ac_add_options --with-mozilla-api-keyfile=$topsrcdir/debian/mls.key
|
||||||
|
%if USE_SYSTEM_ZLIB
|
||||||
|
ac_add_options --with-system-zlib # MOZ_SYSTEM_ZLIB=1
|
||||||
|
%endif
|
||||||
|
ac_add_options --disable-strip
|
||||||
|
ac_add_options --disable-install-strip
|
||||||
|
%if USE_SYSTEM_FFI
|
||||||
|
ac_add_options --enable-system-ffi # MOZ_SYSTEM_FFI=1
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_LIBEVENT
|
||||||
|
ac_add_options --with-system-libevent # MOZ_SYSTEM_LIBEVENT=1
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_NSPR
|
||||||
|
ac_add_options --with-system-nspr # MOZ_SYSTEM_NSPR=1
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_NSS
|
||||||
|
ac_add_options --with-system-nss # MOZ_SYSTEM_NSS=1
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_VPX
|
||||||
|
ac_add_options --with-system-libvpx # MOZ_SYSTEM_LIBVPX=1
|
||||||
|
%endif
|
||||||
|
ac_add_options --disable-updater
|
||||||
|
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||||
|
ac_add_options --allow-addon-sideload
|
||||||
|
ac_add_options --enable-alsa
|
||||||
|
%if DIST == bullseye || DEB_HOST_ARCH_ENDIAN == big
|
||||||
|
ac_add_options --without-wasm-sandboxed-libraries
|
||||||
|
%endif
|
19
debian/browser.postinst.in
vendored
Normal file
19
debian/browser.postinst.in
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] ; then
|
||||||
|
update-alternatives --install /usr/bin/x-www-browser \
|
||||||
|
x-www-browser /usr/bin/@browser@ 70 \
|
||||||
|
--slave /usr/share/man/man1/x-www-browser.1.gz \
|
||||||
|
x-www-browser.1.gz /usr/share/man/man1/@browser@.1.gz
|
||||||
|
update-alternatives --remove mozilla /usr/bin/@browser@
|
||||||
|
update-alternatives --install /usr/bin/gnome-www-browser \
|
||||||
|
gnome-www-browser /usr/bin/@browser@ 70 \
|
||||||
|
--slave /usr/share/man/man1/gnome-www-browser.1.gz \
|
||||||
|
gnome-www-browser.1.gz /usr/share/man/man1/@browser@.1.gz
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$1" = "configure" ] ; then
|
||||||
|
rm -rf /usr/lib/@browser@/updates
|
||||||
|
fi
|
||||||
|
|
||||||
|
#DEBHELPER#
|
7
debian/browser.postrm.in
vendored
Normal file
7
debian/browser.postrm.in
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
if [ "$1" = "remove" ]; then
|
||||||
|
dpkg-divert --package @browser@ --rename --remove /usr/bin/firefox
|
||||||
|
fi
|
||||||
|
|
||||||
|
#DEBHELPER#
|
7
debian/browser.preinst.in
vendored
Normal file
7
debian/browser.preinst.in
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
if [ "$1" = "upgrade" ] || [ "$1" = "install" ] ; then
|
||||||
|
dpkg-divert --package @browser@ --divert /usr/bin/firefox.real --rename /usr/bin/firefox
|
||||||
|
fi
|
||||||
|
|
||||||
|
#DEBHELPER#
|
12
debian/browser.prerm.in
vendored
Normal file
12
debian/browser.prerm.in
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] ; then
|
||||||
|
update-alternatives --remove x-www-browser /usr/bin/@browser@
|
||||||
|
update-alternatives --remove gnome-www-browser /usr/bin/@browser@
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$1" = "remove" ]; then
|
||||||
|
rm -rf /usr/lib/@browser@/updates
|
||||||
|
fi
|
||||||
|
|
||||||
|
#DEBHELPER#
|
10218
debian/changelog
vendored
Normal file
10218
debian/changelog
vendored
Normal file
File diff suppressed because it is too large
Load diff
2969
debian/changelog.xulrunner
vendored
Normal file
2969
debian/changelog.xulrunner
vendored
Normal file
File diff suppressed because it is too large
Load diff
1270
debian/control
vendored
Normal file
1270
debian/control
vendored
Normal file
File diff suppressed because it is too large
Load diff
128
debian/control.in
vendored
Normal file
128
debian/control.in
vendored
Normal file
|
@ -0,0 +1,128 @@
|
||||||
|
Source: @browser@
|
||||||
|
Section: web
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: Maintainers of Mozilla-related packages <team+pkg-mozilla@tracker.debian.org>
|
||||||
|
Uploaders: Mike Hommey <glandium@debian.org>
|
||||||
|
Build-Depends: debhelper-compat (= 12),
|
||||||
|
libx11-dev,
|
||||||
|
libx11-xcb-dev,
|
||||||
|
libxt-dev,
|
||||||
|
libgtk-3-dev,
|
||||||
|
libglib2.0-dev,
|
||||||
|
libdrm-dev,
|
||||||
|
libstartup-notification0-dev,
|
||||||
|
libjpeg-dev,
|
||||||
|
%if USE_SYSTEM_ZLIB
|
||||||
|
zlib1g-dev,
|
||||||
|
%endif
|
||||||
|
libreadline-dev,
|
||||||
|
python3 (>= 3.8),
|
||||||
|
%if USE_SYSTEM_NSPR
|
||||||
|
%define NSPR_VERSION 4.32
|
||||||
|
libnspr4-dev (>= 2:@NSPR_VERSION@~),
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_NSS
|
||||||
|
%define NSS_VERSION 3.110
|
||||||
|
libnss3-dev (>= 2:@NSS_VERSION@~),
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_VPX
|
||||||
|
libvpx-dev (>= 1.10.0),
|
||||||
|
%endif
|
||||||
|
libdbus-1-dev,
|
||||||
|
%if USE_SYSTEM_FFI
|
||||||
|
libffi-dev,
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_LIBEVENT
|
||||||
|
libevent-dev,
|
||||||
|
%endif
|
||||||
|
libpulse-dev,
|
||||||
|
libasound2-dev,
|
||||||
|
nasm (>= 2.14) [amd64 i386],
|
||||||
|
%if DIST == bookworm
|
||||||
|
g++-11,
|
||||||
|
%endif
|
||||||
|
%define RUST_VERSION 1.82
|
||||||
|
%if DIST == bookworm || DIST == bullseye
|
||||||
|
rustc-web (>= @RUST_VERSION@),
|
||||||
|
cargo-web (>= @RUST_VERSION@),
|
||||||
|
%else
|
||||||
|
rustc (>= @RUST_VERSION@),
|
||||||
|
cargo (>= @RUST_VERSION@),
|
||||||
|
%endif
|
||||||
|
llvm-dev,
|
||||||
|
libclang-dev,
|
||||||
|
clang,
|
||||||
|
%if DIST != bullseye
|
||||||
|
libc++-dev-wasm32,
|
||||||
|
libclang-rt-dev-wasm32,
|
||||||
|
lld,
|
||||||
|
%endif
|
||||||
|
%define CBINDGEN_VERSION 0.27.0
|
||||||
|
%if DIST == bookworm || DIST == bullseye
|
||||||
|
cbindgen-web (>= @CBINDGEN_VERSION@),
|
||||||
|
%else
|
||||||
|
cbindgen (>= @CBINDGEN_VERSION@),
|
||||||
|
%endif
|
||||||
|
nodejs (>= 12.22.1),
|
||||||
|
zip,
|
||||||
|
unzip,
|
||||||
|
locales,
|
||||||
|
xvfb,
|
||||||
|
xfonts-base,
|
||||||
|
xauth,
|
||||||
|
ttf-bitstream-vera,
|
||||||
|
fonts-freefont-ttf,
|
||||||
|
fonts-dejima-mincho,
|
||||||
|
iso-codes
|
||||||
|
Build-Conflicts: graphicsmagick-imagemagick-compat,
|
||||||
|
liboss4-salsa-dev,
|
||||||
|
libhildonmime-dev,
|
||||||
|
libosso-dev
|
||||||
|
Standards-Version: 3.9.8.0
|
||||||
|
Vcs-Git: https://salsa.debian.org/mozilla-team/firefox.git -b @SHORT_SOURCE_CHANNEL@/master
|
||||||
|
Vcs-Browser: https://salsa.debian.org/mozilla-team/firefox/commits/@SHORT_SOURCE_CHANNEL@/master
|
||||||
|
|
||||||
|
Package: @browser@
|
||||||
|
Architecture: any
|
||||||
|
Depends: ${shlibs:Depends},
|
||||||
|
${misc:Depends},
|
||||||
|
fontconfig,
|
||||||
|
procps,
|
||||||
|
debianutils (>= 1.16),
|
||||||
|
%if USE_SYSTEM_NSPR
|
||||||
|
libnspr4 (>= 2:@NSPR_VERSION@~),
|
||||||
|
%endif
|
||||||
|
%if USE_SYSTEM_NSS
|
||||||
|
libnss3 (>= 2:@NSS_VERSION@~)
|
||||||
|
%endif
|
||||||
|
Recommends: @LIBAVCODEC@
|
||||||
|
Suggests: fonts-stix | otf-stix,
|
||||||
|
fonts-lmodern,
|
||||||
|
libgssapi-krb5-2 | libkrb53,
|
||||||
|
libcanberra0,
|
||||||
|
pulseaudio
|
||||||
|
Provides: www-browser,
|
||||||
|
gnome-www-browser
|
||||||
|
%define RAW_DESCRIPTION Mozilla Firefox web browser
|
||||||
|
%define LONGDESC1 @Browser@ is a powerful, extensible web browser with support for modern
|
||||||
|
%define LONGDESC2 web application technologies.
|
||||||
|
%define firefox_esr firefox-esr
|
||||||
|
%if browser == firefox_esr
|
||||||
|
%define DESCRIPTION @RAW_DESCRIPTION@ - Extended Support Release (ESR)
|
||||||
|
%else
|
||||||
|
%define DESCRIPTION @RAW_DESCRIPTION@
|
||||||
|
%endif
|
||||||
|
Description: @DESCRIPTION@
|
||||||
|
@LONGDESC1@
|
||||||
|
@LONGDESC2@
|
||||||
|
|
||||||
|
Package: @browser@-l10n-all
|
||||||
|
Architecture: all
|
||||||
|
Section: metapackages
|
||||||
|
Depends: ${misc:Depends}, @L10N_PACKAGES_DEPS@
|
||||||
|
Description: All language packages for @Browser@ (meta)
|
||||||
|
@LONGDESC1@
|
||||||
|
@LONGDESC2@
|
||||||
|
.
|
||||||
|
This is a metapackage depending on all available localizations of @Browser@.
|
||||||
|
%include l10n/browser-l10n.control
|
1613
debian/copyright
vendored
Normal file
1613
debian/copyright
vendored
Normal file
File diff suppressed because it is too large
Load diff
8
debian/debsearch.xml
vendored
Normal file
8
debian/debsearch.xml
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
|
||||||
|
<os:ShortName>Debian packages</os:ShortName>
|
||||||
|
<os:Description>Debian packages name search</os:Description>
|
||||||
|
<os:InputEncoding>UTF-8</os:InputEncoding>
|
||||||
|
<os:Image width="16" height="16">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAFo9M/3AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAJnKAACZygHjkaQiAAAAB3RJTUUH1gsYEToVv17oJgAAAXpJREFUOMuN0s+LjWEUB/DPvabrR9EYpVFkoWbxFv+ADE2JxSkLUVLKQmo2FvYUKzulqVmQSMpSvck0Slmyms2xYMNCoiaFGsqPzfPk7XZv5rs57/e83+/3OefpASnuGY0UD3odch5fKtk3LF1IMVfJq1K3pZjq42mKY/jWaFelmBx35FoNT7E1xRr0S2Ox0W7CIWi0X7E3xUR1v+4knUxxdNQRcymmhvvdTWdwGyu41mg/d923Uix2+KMUlyrZmOJ0+d5dbyTFUhUc7zgHpW5J8aGu+acz04kU0/iB2SpYTnG4CJZxBhsa7dvukG/8DymejOr3hkR9XMVl/MISPmEHjhTZDdxstP8CivEgHuNco23HTDHAC+zB/ka72i//DuAOpqs5xWSKCyVcikGj/YlT+F7fZw3YhYdFUDGPu432d+GbS92OZ1U0Uer7YujiPq6keFcMMynOYqHRzo/a7/q4m143UsymeF6fzHrQGxO0ExfxEiuN9uO4gL9fqYR9Njj9WAAAAABJRU5ErkJggg==</os:Image>
|
||||||
|
<os:Url type="text/html" method="GET" template="http://packages.debian.org/search?keywords={searchTerms}&searchon=names&suite=all&section=all&sourceid=mozilla-search"/>
|
||||||
|
<SearchForm>http://packages.debian.org/</SearchForm>
|
||||||
|
</SearchPlugin>
|
25
debian/dh
vendored
Executable file
25
debian/dh
vendored
Executable file
|
@ -0,0 +1,25 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Wrapper around dh to enable parallelism in debian/rules if not already
|
||||||
|
# enabled.
|
||||||
|
|
||||||
|
case "$MAKEFLAGS" in
|
||||||
|
*-j*)
|
||||||
|
# Already enabled, do nothing.
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
parallel=
|
||||||
|
for opt in "$DEB_BUILD_OPTIONS"; do
|
||||||
|
case "$opt" in
|
||||||
|
parallel=*)
|
||||||
|
parallel=${opt#parallel=}
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
if [ -n "$parallel" ]; then
|
||||||
|
export MAKEFLAGS="-j$parallel${MAKEFLAGS:+ $MAKEFLAGS}"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exec dh "$@"
|
0
debian/extra-stuff/Makefile.in
vendored
Normal file
0
debian/extra-stuff/Makefile.in
vendored
Normal file
11
debian/extra-stuff/addonsInfo.conf
vendored
Normal file
11
debian/extra-stuff/addonsInfo.conf
vendored
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
Classes = [
|
||||||
|
{
|
||||||
|
'cid': '17a1f091-70f7-411c-a9d7-191689552d01',
|
||||||
|
'contract_ids': [
|
||||||
|
'@mozilla.org/toolkit/addonsInfo-clh;1',
|
||||||
|
],
|
||||||
|
'esModule': 'resource://gre/modules/addonsInfo.sys.mjs',
|
||||||
|
'constructor': 'addonsInfoHandler',
|
||||||
|
'categories': {'command-line-handler': 'a-addons-info'},
|
||||||
|
},
|
||||||
|
]
|
77
debian/extra-stuff/addonsInfo.sys.mjs
vendored
Normal file
77
debian/extra-stuff/addonsInfo.sys.mjs
vendored
Normal file
|
@ -0,0 +1,77 @@
|
||||||
|
import {XPCOMUtils} from "resource://gre/modules/XPCOMUtils.sys.mjs";
|
||||||
|
import {AddonManager} from "resource://gre/modules/AddonManager.sys.mjs";
|
||||||
|
|
||||||
|
function compare(a, b) {
|
||||||
|
return a.name.localeCompare(b.name);
|
||||||
|
}
|
||||||
|
|
||||||
|
function dump_addons(path) {
|
||||||
|
AddonManager.getAllAddons().then(function(addons) {
|
||||||
|
var resProtoHandler;
|
||||||
|
var file = Cc["@mozilla.org/file/local;1"]
|
||||||
|
.createInstance(Ci.nsIFile);
|
||||||
|
file.initWithPath(path);
|
||||||
|
var outstream = Cc["@mozilla.org/network/file-output-stream;1"]
|
||||||
|
.createInstance(Ci.nsIFileOutputStream);
|
||||||
|
outstream.init(file, 0x2A /* TRUNCATE | WRONLY | CREATE */, 0o666, 0);
|
||||||
|
var out = Cc["@mozilla.org/intl/converter-output-stream;1"]
|
||||||
|
.createInstance(Ci.nsIConverterOutputStream);
|
||||||
|
out.init(outstream, "UTF-8", 0, 0);
|
||||||
|
|
||||||
|
addons.sort(compare);
|
||||||
|
out.writeString("-- Extensions information\n");
|
||||||
|
addons.forEach(function(extension) {
|
||||||
|
if (extension.type == "plugin")
|
||||||
|
return;
|
||||||
|
out.writeString("Name: " + extension.name);
|
||||||
|
if (extension.type != "extension")
|
||||||
|
out.writeString(" " + extension.type);
|
||||||
|
out.writeString("\n");
|
||||||
|
if (extension.getResourceURI) {
|
||||||
|
var location = extension.getResourceURI("");
|
||||||
|
if (location.scheme == "resource") {
|
||||||
|
if (!resProtoHandler) {
|
||||||
|
resProtoHandler = Services.io.getProtocolHandler("resource")
|
||||||
|
.QueryInterface(Ci.nsIResProtocolHandler);
|
||||||
|
}
|
||||||
|
location = Services.io.newURI(resProtoHandler.resolveURI(location));
|
||||||
|
}
|
||||||
|
if (location instanceof Ci.nsIJARURI) {
|
||||||
|
location = location.JARFile;
|
||||||
|
}
|
||||||
|
location = location.QueryInterface(Ci.nsIFileURL).file;
|
||||||
|
if (!extension.isBuiltin && extension.scope == AddonManager.SCOPE_PROFILE)
|
||||||
|
out.writeString("Location: ${PROFILE_EXTENSIONS}/" +
|
||||||
|
location.leafName + "\n");
|
||||||
|
else
|
||||||
|
out.writeString("Location: " + location.path + "\n");
|
||||||
|
}
|
||||||
|
out.writeString("Status: " + (extension.appDisabled ? "app-disabled" :
|
||||||
|
(extension.softDisabled ? "soft-disabled" :
|
||||||
|
(extension.userDisabled ? "user-disabled" :
|
||||||
|
"enabled"))) + "\n");
|
||||||
|
out.writeString("\n");
|
||||||
|
});
|
||||||
|
|
||||||
|
out.close();
|
||||||
|
// Avoid running -dumps-addons-info without a running Firefox counting as
|
||||||
|
// a crash.
|
||||||
|
Services.startup.trackStartupCrashEnd();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function addonsInfoHandler() {}
|
||||||
|
addonsInfoHandler.prototype = {
|
||||||
|
handle: function clh_handle(cmdLine) {
|
||||||
|
var path = cmdLine.handleFlagWithParam("dump-addons-info", false);
|
||||||
|
if (!path)
|
||||||
|
return;
|
||||||
|
|
||||||
|
cmdLine.preventDefault = true;
|
||||||
|
|
||||||
|
dump_addons(path);
|
||||||
|
},
|
||||||
|
|
||||||
|
classDescription: "addonsInfoHandler",
|
||||||
|
QueryInterface: ChromeUtils.generateQI([Ci.nsICommandLineHandler]),
|
||||||
|
};
|
7
debian/extra-stuff/moz.build
vendored
Normal file
7
debian/extra-stuff/moz.build
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
XPCOM_MANIFESTS += [
|
||||||
|
'addonsInfo.conf',
|
||||||
|
]
|
||||||
|
|
||||||
|
EXTRA_JS_MODULES += [
|
||||||
|
'addonsInfo.sys.mjs',
|
||||||
|
]
|
6
debian/firefox.in
vendored
Normal file
6
debian/firefox.in
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
FIREFOX="$(command -v firefox)"
|
||||||
|
[ -x "$FIREFOX.real" ] && exec "$FIREFOX.real" "$@"
|
||||||
|
|
||||||
|
exec @browser@ "$@"
|
1
debian/google.key
vendored
Normal file
1
debian/google.key
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
AIzaSyD3uzXks34szqk9WhKoFZypVPgdDbT3uPw
|
97
debian/import-tar.py
vendored
Executable file
97
debian/import-tar.py
vendored
Executable file
|
@ -0,0 +1,97 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import glob
|
||||||
|
import tarfile
|
||||||
|
import sys
|
||||||
|
from optparse import OptionParser
|
||||||
|
import os
|
||||||
|
|
||||||
|
class GitImportTar(object):
|
||||||
|
def __init__(self, filename, head):
|
||||||
|
self.mark = 1
|
||||||
|
self.git = sys.stdout
|
||||||
|
self.files = {}
|
||||||
|
self.name = filename
|
||||||
|
self.mtime = 0
|
||||||
|
self.head = head
|
||||||
|
|
||||||
|
def addfile(self, info, prefix = '', file = None):
|
||||||
|
if info.isdir():
|
||||||
|
return
|
||||||
|
self.git.write("blob\n" +
|
||||||
|
"mark :%d\n" % self.mark)
|
||||||
|
mode = info.mode
|
||||||
|
if info.issym():
|
||||||
|
self.git.write("data %d\n" % len(info.linkname) +
|
||||||
|
info.linkname)
|
||||||
|
mode = 0o120000
|
||||||
|
elif file:
|
||||||
|
self.git.write("data %d\n" % (info.size))
|
||||||
|
self.git.flush()
|
||||||
|
self.git.buffer.write(file.read(info.size))
|
||||||
|
|
||||||
|
self.git.write("\n")
|
||||||
|
if not prefix in self.files:
|
||||||
|
self.files[prefix] = {}
|
||||||
|
self.files[prefix][info.name] = (self.mark, mode)
|
||||||
|
self.mark += 1
|
||||||
|
if info.mtime > self.mtime:
|
||||||
|
self.mtime = info.mtime
|
||||||
|
|
||||||
|
def close(self):
|
||||||
|
self.git.write("commit refs/heads/%s\n" % (self.head) +
|
||||||
|
"author T Ar Creator' <tar@example.com> %d +0000\n" % (self.mtime) +
|
||||||
|
"committer T Ar Creator' <tar@example.com> %d +0000\n" % (self.mtime) +
|
||||||
|
"data <<EOM\n" +
|
||||||
|
"Imported from %s\n" % (self.name) +
|
||||||
|
"EOM\n\n" +
|
||||||
|
"from refs/heads/%s^0\n" % (self.head) +
|
||||||
|
"deleteall\n")
|
||||||
|
for prefix, fileset in self.files.items():
|
||||||
|
basedir = os.path.commonprefix(list(fileset.keys()))
|
||||||
|
for path, info in fileset.items():
|
||||||
|
(mark, mode) = info
|
||||||
|
if mode != 0o120000:
|
||||||
|
mode = 0o755 if (mode & 0o111) else 0o644
|
||||||
|
path = path[len(basedir):].lstrip('/')
|
||||||
|
if prefix != '':
|
||||||
|
path = prefix + '/' + path
|
||||||
|
self.git.write("M %o :%d %s\n" % (mode, mark, path))
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = OptionParser()
|
||||||
|
parser.add_option("-H", "--head", dest="head",
|
||||||
|
help="import on the given head", metavar="NAME")
|
||||||
|
(options, args) = parser.parse_args()
|
||||||
|
|
||||||
|
if not options.head:
|
||||||
|
options.head = "upstream"
|
||||||
|
|
||||||
|
(name, ext) = os.path.splitext(args[0])
|
||||||
|
if ext[0:2] != '.t':
|
||||||
|
(name, ext) = os.path.splitext(name)
|
||||||
|
|
||||||
|
git_import = GitImportTar(os.path.basename(args[0]), options.head)
|
||||||
|
for file in [args[0]] + glob.glob(name + "-*" + ext + "*"):
|
||||||
|
(_, this_ext) = os.path.splitext(file)
|
||||||
|
if this_ext == ext:
|
||||||
|
prefix = file[len(name)+1:-len(this_ext)]
|
||||||
|
else:
|
||||||
|
prefix = file[len(name)+1:-len(this_ext) - len(ext)]
|
||||||
|
tar = tarfile.open(file, "r:*")
|
||||||
|
|
||||||
|
while True:
|
||||||
|
info = tar.next()
|
||||||
|
if not info:
|
||||||
|
break
|
||||||
|
if info.isfile():
|
||||||
|
file = tar.extractfile(info)
|
||||||
|
git_import.addfile(info, prefix, file)
|
||||||
|
else:
|
||||||
|
git_import.addfile(info, prefix)
|
||||||
|
|
||||||
|
tar.close()
|
||||||
|
git_import.close()
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
1
debian/l10n.filter
vendored
Normal file
1
debian/l10n.filter
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
.hg*
|
510
debian/l10n/browser-l10n.control
vendored
Normal file
510
debian/l10n/browser-l10n.control
vendored
Normal file
|
@ -0,0 +1,510 @@
|
||||||
|
|
||||||
|
%define L10N_LANG ach
|
||||||
|
%define L10N_LANGUAGE Acoli
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG af
|
||||||
|
%define L10N_LANGUAGE Afrikaans
|
||||||
|
%define L10N_RECOMMENDS hunspell-af
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG an
|
||||||
|
%define L10N_LANGUAGE Aragonese
|
||||||
|
%define L10N_RECOMMENDS hunspell-an
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ar
|
||||||
|
%define L10N_LANGUAGE Arabic
|
||||||
|
%define L10N_RECOMMENDS hunspell-ar
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ast
|
||||||
|
%define L10N_LANGUAGE Asturian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG az
|
||||||
|
%define L10N_LANGUAGE Azerbaijani
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG be
|
||||||
|
%define L10N_LANGUAGE Belarusian
|
||||||
|
%define L10N_RECOMMENDS hunspell-be
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG bg
|
||||||
|
%define L10N_LANGUAGE Bulgarian
|
||||||
|
%define L10N_RECOMMENDS hunspell-bg | myspell-bg
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG bn
|
||||||
|
%define L10N_LANGUAGE Bengali
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG br
|
||||||
|
%define L10N_LANGUAGE Breton
|
||||||
|
%define L10N_RECOMMENDS hunspell-br
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG bs
|
||||||
|
%define L10N_LANGUAGE Bosnian
|
||||||
|
%define L10N_RECOMMENDS hunspell-bs
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ca
|
||||||
|
%define L10N_LANGUAGE Catalan
|
||||||
|
%define L10N_RECOMMENDS hunspell-ca
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ca-valencia
|
||||||
|
%define L10N_LANGUAGE Catalan (Valencia)
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG cak
|
||||||
|
%define L10N_LANGUAGE Kaqchikel
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG cs
|
||||||
|
%define L10N_LANGUAGE Czech
|
||||||
|
%define L10N_RECOMMENDS hunspell-cs
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG cy
|
||||||
|
%define L10N_LANGUAGE Welsh
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG da
|
||||||
|
%define L10N_LANGUAGE Danish
|
||||||
|
%define L10N_RECOMMENDS hunspell-da | myspell-da
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG de
|
||||||
|
%define L10N_LANGUAGE German
|
||||||
|
%define L10N_RECOMMENDS hunspell-de-de | hunspell-de-at | hunspell-de-ch
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG dsb
|
||||||
|
%define L10N_LANGUAGE Lower Sorbian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG el
|
||||||
|
%define L10N_LANGUAGE Modern Greek
|
||||||
|
%define L10N_RECOMMENDS hunspell-el | myspell-el-gr
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG en-ca
|
||||||
|
%define L10N_LANGUAGE English (Canada)
|
||||||
|
%define L10N_RECOMMENDS hunspell-en-gb | hunspell-en-us
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG en-gb
|
||||||
|
%define L10N_LANGUAGE English (United Kingdom)
|
||||||
|
%define L10N_RECOMMENDS hunspell-en-gb | hunspell-en-us
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG eo
|
||||||
|
%define L10N_LANGUAGE Esperanto
|
||||||
|
%define L10N_RECOMMENDS myspell-eo
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG es-ar
|
||||||
|
%define L10N_LANGUAGE Spanish (Argentina)
|
||||||
|
%define L10N_RECOMMENDS hunspell-es | myspell-es
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG es-cl
|
||||||
|
%define L10N_LANGUAGE Spanish (Chile)
|
||||||
|
%define L10N_RECOMMENDS hunspell-es | myspell-es
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG es-es
|
||||||
|
%define L10N_LANGUAGE Spanish (Spain)
|
||||||
|
%define L10N_RECOMMENDS hunspell-es | myspell-es
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG es-mx
|
||||||
|
%define L10N_LANGUAGE Spanish (Mexico)
|
||||||
|
%define L10N_RECOMMENDS hunspell-es | myspell-es
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG et
|
||||||
|
%define L10N_LANGUAGE Estonian
|
||||||
|
%define L10N_RECOMMENDS myspell-et
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG eu
|
||||||
|
%define L10N_LANGUAGE Basque
|
||||||
|
%define L10N_RECOMMENDS hunspell-eu
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG fa
|
||||||
|
%define L10N_LANGUAGE Persian
|
||||||
|
%define L10N_RECOMMENDS myspell-fa
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ff
|
||||||
|
%define L10N_LANGUAGE Fulah
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG fi
|
||||||
|
%define L10N_LANGUAGE Finnish
|
||||||
|
%define L10N_RECOMMENDS xul-ext-mozvoikko
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG fr
|
||||||
|
%define L10N_LANGUAGE French
|
||||||
|
%define L10N_RECOMMENDS hunspell-fr | myspell-fr | myspell-fr-gut
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG fur
|
||||||
|
%define L10N_LANGUAGE Friulian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG fy-nl
|
||||||
|
%define L10N_LANGUAGE Western Frisian (Netherlands)
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ga-ie
|
||||||
|
%define L10N_LANGUAGE Irish (Ireland)
|
||||||
|
%define L10N_RECOMMENDS myspell-ga
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG gd
|
||||||
|
%define L10N_LANGUAGE Scottish Gaelic
|
||||||
|
%define L10N_RECOMMENDS hunspell-gd | myspell-gd
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG gl
|
||||||
|
%define L10N_LANGUAGE Galician
|
||||||
|
%define L10N_RECOMMENDS hunspell-gl-es | hunspell-gl
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG gn
|
||||||
|
%define L10N_LANGUAGE Guarani
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG gu-in
|
||||||
|
%define L10N_LANGUAGE Gujarati (India)
|
||||||
|
%define L10N_RECOMMENDS hunspell-gu
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG he
|
||||||
|
%define L10N_LANGUAGE Hebrew
|
||||||
|
%define L10N_RECOMMENDS hunspell-he | myspell-he
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG hi-in
|
||||||
|
%define L10N_LANGUAGE Hindi (India)
|
||||||
|
%define L10N_RECOMMENDS hunspell-hi
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG hr
|
||||||
|
%define L10N_LANGUAGE Croatian
|
||||||
|
%define L10N_RECOMMENDS hunspell-hr
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG hsb
|
||||||
|
%define L10N_LANGUAGE Upper Sorbian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG hu
|
||||||
|
%define L10N_LANGUAGE Hungarian
|
||||||
|
%define L10N_RECOMMENDS hunspell-hu | myspell-hu
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG hy-am
|
||||||
|
%define L10N_LANGUAGE Armenian (Armenia)
|
||||||
|
%define L10N_RECOMMENDS myspell-hy
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ia
|
||||||
|
%define L10N_LANGUAGE Interlingua
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG id
|
||||||
|
%define L10N_LANGUAGE Indonesian
|
||||||
|
%define L10N_RECOMMENDS hunspell-id
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG is
|
||||||
|
%define L10N_LANGUAGE Icelandic
|
||||||
|
%define L10N_RECOMMENDS hunspell-is
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG it
|
||||||
|
%define L10N_LANGUAGE Italian
|
||||||
|
%define L10N_RECOMMENDS hunspell-it
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ja
|
||||||
|
%define L10N_LANGUAGE Japanese
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ka
|
||||||
|
%define L10N_LANGUAGE Georgian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG kab
|
||||||
|
%define L10N_LANGUAGE Kabyle
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG kk
|
||||||
|
%define L10N_LANGUAGE Kazakh
|
||||||
|
%define L10N_RECOMMENDS hunspell-kk
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG km
|
||||||
|
%define L10N_LANGUAGE Khmer
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG kn
|
||||||
|
%define L10N_LANGUAGE Kannada
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ko
|
||||||
|
%define L10N_LANGUAGE Korean
|
||||||
|
%define L10N_RECOMMENDS hunspell-ko
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG lij
|
||||||
|
%define L10N_LANGUAGE Ligurian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG lt
|
||||||
|
%define L10N_LANGUAGE Lithuanian
|
||||||
|
%define L10N_RECOMMENDS hunspell-lt
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG lv
|
||||||
|
%define L10N_LANGUAGE Latvian
|
||||||
|
%define L10N_RECOMMENDS hunspell-lv | myspell-lv
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG mk
|
||||||
|
%define L10N_LANGUAGE Macedonian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG mr
|
||||||
|
%define L10N_LANGUAGE Marathi
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ms
|
||||||
|
%define L10N_LANGUAGE Malay
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG my
|
||||||
|
%define L10N_LANGUAGE Burmese
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG nb-no
|
||||||
|
%define L10N_LANGUAGE Norwegian Bokmål (Norway)
|
||||||
|
%define L10N_RECOMMENDS myspell-nb
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ne-np
|
||||||
|
%define L10N_LANGUAGE Nepali (Nepal)
|
||||||
|
%define L10N_RECOMMENDS hunspell-ne
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG nl
|
||||||
|
%define L10N_LANGUAGE Dutch
|
||||||
|
%define L10N_RECOMMENDS hunspell-nl
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG nn-no
|
||||||
|
%define L10N_LANGUAGE Norwegian Nynorsk (Norway)
|
||||||
|
%define L10N_RECOMMENDS myspell-nn
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG oc
|
||||||
|
%define L10N_LANGUAGE Occitan
|
||||||
|
%define L10N_RECOMMENDS hunspell-oc
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG pa-in
|
||||||
|
%define L10N_LANGUAGE Panjabi (India)
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG pl
|
||||||
|
%define L10N_LANGUAGE Polish
|
||||||
|
%define L10N_RECOMMENDS hunspell-pl | myspell-pl
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG pt-br
|
||||||
|
%define L10N_LANGUAGE Portuguese (Brazil)
|
||||||
|
%define L10N_RECOMMENDS hunspell-pt-br | myspell-pt-br
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG pt-pt
|
||||||
|
%define L10N_LANGUAGE Portuguese (Portugal)
|
||||||
|
%define L10N_RECOMMENDS hunspell-pt-pt | myspell-pt-pt
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG rm
|
||||||
|
%define L10N_LANGUAGE Romansh
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ro
|
||||||
|
%define L10N_LANGUAGE Romanian
|
||||||
|
%define L10N_RECOMMENDS hunspell-ro
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ru
|
||||||
|
%define L10N_LANGUAGE Russian
|
||||||
|
%define L10N_RECOMMENDS hunspell-ru | myspell-ru
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sat
|
||||||
|
%define L10N_LANGUAGE Santali
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sc
|
||||||
|
%define L10N_LANGUAGE Sardinian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sco
|
||||||
|
%define L10N_LANGUAGE Scots
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG si
|
||||||
|
%define L10N_LANGUAGE Sinhala
|
||||||
|
%define L10N_RECOMMENDS hunspell-si
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sk
|
||||||
|
%define L10N_LANGUAGE Slovak
|
||||||
|
%define L10N_RECOMMENDS hunspell-sk | myspell-sk
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG skr
|
||||||
|
%define L10N_LANGUAGE Saraiki
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sl
|
||||||
|
%define L10N_LANGUAGE Slovenian
|
||||||
|
%define L10N_RECOMMENDS hunspell-sl
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG son
|
||||||
|
%define L10N_LANGUAGE Songhai languages
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sq
|
||||||
|
%define L10N_LANGUAGE Albanian
|
||||||
|
%define L10N_RECOMMENDS myspell-sq
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sr
|
||||||
|
%define L10N_LANGUAGE Serbian
|
||||||
|
%define L10N_RECOMMENDS hunspell-sr
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG sv-se
|
||||||
|
%define L10N_LANGUAGE Swedish (Sweden)
|
||||||
|
%define L10N_RECOMMENDS hunspell-sv-se
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG szl
|
||||||
|
%define L10N_LANGUAGE Silesian
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ta
|
||||||
|
%define L10N_LANGUAGE Tamil
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG te
|
||||||
|
%define L10N_LANGUAGE Telugu
|
||||||
|
%define L10N_RECOMMENDS hunspell-te
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG tg
|
||||||
|
%define L10N_LANGUAGE Tajik
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG th
|
||||||
|
%define L10N_LANGUAGE Thai
|
||||||
|
%define L10N_RECOMMENDS hunspell-th
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG tl
|
||||||
|
%define L10N_LANGUAGE Tagalog
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG tr
|
||||||
|
%define L10N_LANGUAGE Turkish
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG trs
|
||||||
|
%define L10N_LANGUAGE Chicahuaxtla Triqui
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG uk
|
||||||
|
%define L10N_LANGUAGE Ukrainian
|
||||||
|
%define L10N_RECOMMENDS hunspell-uk | myspell-uk
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG ur
|
||||||
|
%define L10N_LANGUAGE Urdu
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG uz
|
||||||
|
%define L10N_LANGUAGE Uzbek
|
||||||
|
%define L10N_RECOMMENDS hunspell-uz
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG vi
|
||||||
|
%define L10N_LANGUAGE Vietnamese
|
||||||
|
%define L10N_RECOMMENDS hunspell-vi
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG xh
|
||||||
|
%define L10N_LANGUAGE Xhosa
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG zh-cn
|
||||||
|
%define L10N_LANGUAGE Chinese (China)
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
||||||
|
|
||||||
|
%define L10N_LANG zh-tw
|
||||||
|
%define L10N_LANGUAGE Chinese (Taiwan)
|
||||||
|
%undef L10N_RECOMMENDS
|
||||||
|
%include @PRODUCT@-l10n.control.in
|
18
debian/l10n/browser-l10n.control.in
vendored
Normal file
18
debian/l10n/browser-l10n.control.in
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
Package: @browser@-l10n-@L10N_LANG@
|
||||||
|
Architecture: all
|
||||||
|
Section: localization
|
||||||
|
Depends: ${misc:Depends},
|
||||||
|
@browser@ (>= ${source:Version}), @browser@ (<< ${source:Version}.1~)
|
||||||
|
%ifdef L10N_RECOMMENDS
|
||||||
|
Recommends: @L10N_RECOMMENDS@
|
||||||
|
%endif
|
||||||
|
%if L10N_LANG == bn
|
||||||
|
Breaks: @browser@-l10n-bn-in (<< 68), @browser@-l10n-bn-bd (<< 68)
|
||||||
|
Replaces: @browser@-l10n-bn-in (<< 68), @browser@-l10n-bn-bd (<< 68)
|
||||||
|
Provides: @browser@-l10n-bn-in, @browser@-l10n-bn-bd
|
||||||
|
%endif
|
||||||
|
Description: @L10N_LANGUAGE@ language package for @Browser@
|
||||||
|
@LONGDESC1@
|
||||||
|
@LONGDESC2@
|
||||||
|
.
|
||||||
|
This package contains the localization of @Browser@ in @L10N_LANGUAGE@.
|
108
debian/l10n/gen
vendored
Normal file
108
debian/l10n/gen
vendored
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
#!/usr/bin/env python2.7
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
import codecs
|
||||||
|
from xml import sax
|
||||||
|
|
||||||
|
class Iso3166(sax.handler.ContentHandler, dict):
|
||||||
|
def startElement(self, name, attrs):
|
||||||
|
if 'alpha_2_code' in attrs:
|
||||||
|
self[attrs['alpha_2_code'].lower()] = attrs['name']
|
||||||
|
|
||||||
|
class Iso639(sax.handler.ContentHandler, dict):
|
||||||
|
def startElement(self, name, attrs):
|
||||||
|
if 'iso_639_1_code' in attrs:
|
||||||
|
self[attrs['iso_639_1_code']] = attrs['name']
|
||||||
|
if 'iso_639_2B_code' in attrs:
|
||||||
|
self[attrs['iso_639_2B_code']] = attrs['name']
|
||||||
|
|
||||||
|
class Iso639_3(sax.handler.ContentHandler, dict):
|
||||||
|
def startElement(self, name, attrs):
|
||||||
|
if 'id' in attrs:
|
||||||
|
self[attrs['id']] = attrs['name']
|
||||||
|
if 'part1_code' in attrs:
|
||||||
|
self[attrs['part1_code']] = attrs['name']
|
||||||
|
if 'part2_code' in attrs and not attrs['part2_code'] in self:
|
||||||
|
self[attrs['part2_code']] = attrs['name']
|
||||||
|
|
||||||
|
if os.path.exists('/usr/share/iso-codes/json/iso_639-2.json'):
|
||||||
|
with open('/usr/share/iso-codes/json/iso_639-2.json') as fh:
|
||||||
|
iso639 = {}
|
||||||
|
for data in json.load(fh)['639-2']:
|
||||||
|
for k in ('alpha_2', 'alpha_3', 'bibliographic'):
|
||||||
|
if k in data:
|
||||||
|
iso639[data[k]] = data['name']
|
||||||
|
|
||||||
|
with open('/usr/share/iso-codes/json/iso_639-3.json') as fh:
|
||||||
|
iso639_3 = {}
|
||||||
|
for data in json.load(fh)['639-3']:
|
||||||
|
for k in ('alpha_2', 'alpha_3', 'bibliographic'):
|
||||||
|
if k in data:
|
||||||
|
iso639_3[data[k]] = \
|
||||||
|
data.get('inverted_name') or data['name']
|
||||||
|
|
||||||
|
with open('/usr/share/iso-codes/json/iso_3166-1.json') as fh:
|
||||||
|
iso3166 = {}
|
||||||
|
for data in json.load(fh)['3166-1']:
|
||||||
|
if 'alpha_2' in data:
|
||||||
|
iso3166[data['alpha_2'].lower()] = data['name']
|
||||||
|
else:
|
||||||
|
parser = sax.make_parser()
|
||||||
|
iso639_3 = Iso639_3()
|
||||||
|
parser.setContentHandler(iso639_3)
|
||||||
|
parser.parse('/usr/share/xml/iso-codes/iso_639_3.xml')
|
||||||
|
|
||||||
|
iso639 = Iso639()
|
||||||
|
parser.setContentHandler(iso639)
|
||||||
|
parser.parse('/usr/share/xml/iso-codes/iso_639.xml')
|
||||||
|
|
||||||
|
iso3166 = Iso3166()
|
||||||
|
parser.setContentHandler(iso3166)
|
||||||
|
parser.parse('/usr/share/xml/iso-codes/iso_3166.xml')
|
||||||
|
|
||||||
|
recommends = {}
|
||||||
|
with open('debian/l10n/recommends') as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
lang, value = line.split(':')
|
||||||
|
recommends[lang.strip()] = value.strip()
|
||||||
|
|
||||||
|
RE = re.compile(r'^([^,\(]+)(?:, *([^\(]+) *)?(?: *\(.*\))?$')
|
||||||
|
|
||||||
|
for code in sys.argv[1:]:
|
||||||
|
if '-' in code:
|
||||||
|
lang, country = code.split('-')
|
||||||
|
else:
|
||||||
|
lang = code
|
||||||
|
country = None
|
||||||
|
|
||||||
|
if lang in iso639_3:
|
||||||
|
str = iso639_3[lang.lower()]
|
||||||
|
else:
|
||||||
|
str = iso639[lang.lower()]
|
||||||
|
m = RE.match(str)
|
||||||
|
if m.group(2):
|
||||||
|
str = ' '.join([m.group(2).strip(), m.group(1).strip()])
|
||||||
|
else:
|
||||||
|
str = m.group(1).strip()
|
||||||
|
if country:
|
||||||
|
country_ = iso3166.get(country.lower())
|
||||||
|
if country_:
|
||||||
|
country = country_
|
||||||
|
else:
|
||||||
|
country = {
|
||||||
|
'valencia': 'Valencia',
|
||||||
|
}[country.lower()]
|
||||||
|
if ',' in country:
|
||||||
|
country = country[:country.index(',')]
|
||||||
|
str += ' (' + country + ')'
|
||||||
|
print()
|
||||||
|
print('%define L10N_LANG', code.lower())
|
||||||
|
print('%define L10N_LANGUAGE', str)
|
||||||
|
if code.lower() in recommends:
|
||||||
|
print('%define L10N_RECOMMENDS', recommends[code.lower()])
|
||||||
|
else:
|
||||||
|
print('%undef L10N_RECOMMENDS')
|
||||||
|
print('%include @PRODUCT@-l10n.control.in')
|
66
debian/l10n/recommends
vendored
Normal file
66
debian/l10n/recommends
vendored
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
af: hunspell-af
|
||||||
|
an: hunspell-an
|
||||||
|
ar: hunspell-ar
|
||||||
|
be: hunspell-be
|
||||||
|
bg: hunspell-bg | myspell-bg
|
||||||
|
bn-bd: hunspell-bn
|
||||||
|
bn-in: hunspell-bn
|
||||||
|
br: hunspell-br
|
||||||
|
bs: hunspell-bs
|
||||||
|
ca: hunspell-ca
|
||||||
|
cs: hunspell-cs
|
||||||
|
da: hunspell-da | myspell-da
|
||||||
|
de: hunspell-de-de | hunspell-de-at | hunspell-de-ch
|
||||||
|
el: hunspell-el | myspell-el-gr
|
||||||
|
en-ca: hunspell-en-gb | hunspell-en-us
|
||||||
|
en-gb: hunspell-en-gb | hunspell-en-us
|
||||||
|
en-za: hunspell-en-gb | hunspell-en-us
|
||||||
|
eo: myspell-eo
|
||||||
|
es-ar: hunspell-es | myspell-es
|
||||||
|
es-cl: hunspell-es | myspell-es
|
||||||
|
es-es: hunspell-es | myspell-es
|
||||||
|
es-mx: hunspell-es | myspell-es
|
||||||
|
et: myspell-et
|
||||||
|
eu: hunspell-eu
|
||||||
|
fa: myspell-fa
|
||||||
|
fi: xul-ext-mozvoikko
|
||||||
|
fr: hunspell-fr | myspell-fr | myspell-fr-gut
|
||||||
|
ga-ie: myspell-ga
|
||||||
|
gd: hunspell-gd | myspell-gd
|
||||||
|
gl: hunspell-gl-es | hunspell-gl
|
||||||
|
gu-in: hunspell-gu
|
||||||
|
he: hunspell-he | myspell-he
|
||||||
|
hi-in: hunspell-hi
|
||||||
|
hr: hunspell-hr
|
||||||
|
hu: hunspell-hu | myspell-hu
|
||||||
|
hy-am: myspell-hy
|
||||||
|
id: hunspell-id
|
||||||
|
is: hunspell-is
|
||||||
|
it: hunspell-it
|
||||||
|
kk: hunspell-kk
|
||||||
|
ko: hunspell-ko
|
||||||
|
ku: myspell-ku
|
||||||
|
lt: hunspell-lt
|
||||||
|
lv: hunspell-lv | myspell-lv
|
||||||
|
ml: hunspell-ml
|
||||||
|
nb-no: myspell-nb
|
||||||
|
ne-np: hunspell-ne
|
||||||
|
nl: hunspell-nl
|
||||||
|
nn-no: myspell-nn
|
||||||
|
oc: hunspell-oc
|
||||||
|
pl: hunspell-pl | myspell-pl
|
||||||
|
pt-br: hunspell-pt-br | myspell-pt-br
|
||||||
|
pt-pt: hunspell-pt-pt | myspell-pt-pt
|
||||||
|
ro: hunspell-ro
|
||||||
|
ru: hunspell-ru | myspell-ru
|
||||||
|
si: hunspell-si
|
||||||
|
sk: hunspell-sk | myspell-sk
|
||||||
|
sl: hunspell-sl
|
||||||
|
sq: myspell-sq
|
||||||
|
sr: hunspell-sr
|
||||||
|
sv-se: hunspell-sv-se
|
||||||
|
te: hunspell-te
|
||||||
|
th: hunspell-th
|
||||||
|
uk: hunspell-uk | myspell-uk
|
||||||
|
uz: hunspell-uz
|
||||||
|
vi: hunspell-vi
|
8
debian/l10n_revs.py
vendored
Normal file
8
debian/l10n_revs.py
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
import json
|
||||||
|
import sys
|
||||||
|
|
||||||
|
|
||||||
|
data = json.load(sys.stdin)
|
||||||
|
for k, v in sorted(data.items()):
|
||||||
|
if 'linux64' in v['platforms']:
|
||||||
|
print('{}:{}'.format(k, v['revision']))
|
50
debian/latest_nightly.py
vendored
Normal file
50
debian/latest_nightly.py
vendored
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
import http.client
|
||||||
|
import urllib.request, urllib.error, urllib.parse
|
||||||
|
import urllib.parse
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
product = sys.argv[1]
|
||||||
|
|
||||||
|
conn = http.client.HTTPSConnection('download.mozilla.org')
|
||||||
|
conn.request('HEAD', '/?product=%s-latest&os=linux&lang=en-US' % product)
|
||||||
|
res = conn.getresponse()
|
||||||
|
assert res.status == 302
|
||||||
|
location = res.getheader('Location')
|
||||||
|
|
||||||
|
if '-' in product:
|
||||||
|
product, variant = product.split('-', 1)
|
||||||
|
else:
|
||||||
|
variant = ''
|
||||||
|
|
||||||
|
u = urllib.parse.urlparse(location)
|
||||||
|
p = u.path.split('/')
|
||||||
|
assert p[0] == ''
|
||||||
|
assert p[1] == 'pub'
|
||||||
|
assert p[2] == product
|
||||||
|
assert p[3] in ('releases', 'nightly')
|
||||||
|
if p[3] == 'nightly':
|
||||||
|
filename = os.path.basename(location)
|
||||||
|
assert filename.startswith(product + '-')
|
||||||
|
version = filename[len(product) + 1:]
|
||||||
|
m = re.match(r'([0-9]+(?:\.[0-9]+)*(?:[ab][0-9]+)?)\.', version)
|
||||||
|
assert m
|
||||||
|
version = m.group(1)
|
||||||
|
|
||||||
|
url = location.replace('.tar.bz2', '.txt')
|
||||||
|
assert url != location
|
||||||
|
|
||||||
|
f = urllib.request.urlopen(url.replace('-l10n', ''))
|
||||||
|
print(version, ' '.join(l.decode().rstrip() for l in f.readlines()))
|
||||||
|
f.close()
|
||||||
|
elif p[3] == 'releases':
|
||||||
|
version = p[4]
|
||||||
|
print(version)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
14
debian/make.mk
vendored
Normal file
14
debian/make.mk
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
lazy = $(eval $(1) = $$(if $$(___$(1)),,$$(eval ___$(1) := $(2)))$$(___$(1)))
|
||||||
|
letters = a b c d e f g h i j k l m n o p q r s t u v w x y z
|
||||||
|
lc = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$1))))))))))))))))))))))))))
|
||||||
|
uc = $(subst a,A,$(subst b,B,$(subst c,C,$(subst d,D,$(subst e,E,$(subst f,F,$(subst g,G,$(subst h,H,$(subst i,I,$(subst j,J,$(subst k,K,$(subst l,L,$(subst m,M,$(subst n,N,$(subst o,O,$(subst p,P,$(subst q,Q,$(subst r,R,$(subst s,S,$(subst t,T,$(subst u,U,$(subst v,V,$(subst w,W,$(subst x,X,$(subst y,Y,$(subst z,Z,$1))))))))))))))))))))))))))
|
||||||
|
|
||||||
|
__VARS := $(.VARIABLES)
|
||||||
|
|
||||||
|
dump:
|
||||||
|
@$(foreach var,$(sort $(filter-out $(__VARS) __VARS CR define_package download_package preprocess system_lib ___%,$(.VARIABLES))),echo '$(var) = $(subst ','\'',$(subst \,\\,$($(var))))';)
|
||||||
|
|
||||||
|
dump-%:
|
||||||
|
@echo '$(subst ','\'',$(subst \,\\,$($*)))'
|
||||||
|
|
||||||
|
.PHONY: dump
|
1
debian/mls.key
vendored
Normal file
1
debian/mls.key
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
91e66841-a83b-487f-9b5d-e460f5225ebf
|
4
debian/noinstall.in
vendored
Normal file
4
debian/noinstall.in
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
usr/bin/@browser@
|
||||||
|
usr/lib/@browser@/removed-files
|
||||||
|
usr/lib/@browser@/@browser@-bin
|
||||||
|
usr/lib/@browser@/browser/defaults/preferences/firefox-l10n.js
|
47
debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
vendored
Normal file
47
debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
vendored
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Mon, 27 Dec 2010 10:44:28 +0100
|
||||||
|
Subject: Add a 2 minutes timeout on xpcshell tests
|
||||||
|
|
||||||
|
---
|
||||||
|
testing/xpcshell/runxpcshelltests.py | 21 ++++++++++++++++++---
|
||||||
|
1 file changed, 18 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/testing/xpcshell/runxpcshelltests.py b/testing/xpcshell/runxpcshelltests.py
|
||||||
|
index ed0885e..03d9d04 100755
|
||||||
|
--- a/testing/xpcshell/runxpcshelltests.py
|
||||||
|
+++ b/testing/xpcshell/runxpcshelltests.py
|
||||||
|
@@ -10,6 +10,7 @@ import os
|
||||||
|
import platform
|
||||||
|
import random
|
||||||
|
import re
|
||||||
|
+import select
|
||||||
|
import shlex
|
||||||
|
import shutil
|
||||||
|
import signal
|
||||||
|
@@ -922,9 +923,23 @@ class XPCShellTestThread(Thread):
|
||||||
|
if self.interactive:
|
||||||
|
self.log.info("%s | Process ID: %d" % (name, self.proc_ident))
|
||||||
|
|
||||||
|
- # Communicate returns a tuple of (stdout, stderr), however we always
|
||||||
|
- # redirect stderr to stdout, so the second element is ignored.
|
||||||
|
- process_output, _ = self.communicate(proc)
|
||||||
|
+ if self.pStdout == PIPE:
|
||||||
|
+ process_stdout = ""
|
||||||
|
+ while True:
|
||||||
|
+ (r, w, e) = select.select([proc.stdout], [], [], 120)
|
||||||
|
+ if len(r) == 0:
|
||||||
|
+ process_stdout += "TEST-UNEXPECTED-FAIL | %s | application timed out after 120 seconds with no output" % (test)
|
||||||
|
+ proc.kill()
|
||||||
|
+ break
|
||||||
|
+ line = proc.stdout.read(1)
|
||||||
|
+ if line == "":
|
||||||
|
+ break
|
||||||
|
+ process_stdout += line
|
||||||
|
+ proc.wait()
|
||||||
|
+ else:
|
||||||
|
+ # Communicate returns a tuple of (stdout, stderr), however we always
|
||||||
|
+ # redirect stderr to stdout, so the second element is ignored.
|
||||||
|
+ process_output, _ = self.communicate(proc)
|
||||||
|
|
||||||
|
if self.interactive:
|
||||||
|
# Not sure what else to do here...
|
34
debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch
vendored
Normal file
34
debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch
vendored
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
From: Mike Hommey <glandium@debian.org>
|
||||||
|
Date: Sat, 21 Jun 2008 03:09:21 +0200
|
||||||
|
Subject: Add another preferences directory for applications:
|
||||||
|
preferences/syspref
|
||||||
|
|
||||||
|
It was existing in previous versions of iceweasel as a symlink to
|
||||||
|
/etc/iceweasel/pref.
|
||||||
|
|
||||||
|
This has the side effect to make these preferences there work again, and
|
||||||
|
to disable the "set as default browser" dialog.
|
||||||
|
---
|
||||||
|
toolkit/xre/nsXREDirProvider.cpp | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp
|
||||||
|
index 9c94cb8..1be170f4 100644
|
||||||
|
--- a/toolkit/xre/nsXREDirProvider.cpp
|
||||||
|
+++ b/toolkit/xre/nsXREDirProvider.cpp
|
||||||
|
@@ -500,6 +500,7 @@ static const char* const kAppendPrefDir[] = {"defaults", "preferences",
|
||||||
|
static const char* const kAppendBackgroundTasksPrefDir[] = {
|
||||||
|
"defaults", "backgroundtasks", nullptr};
|
||||||
|
#endif
|
||||||
|
+static const char *const kAppendSysPrefDir[] = { "defaults", "syspref", nullptr };
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsXREDirProvider::GetFiles(const char* aProperty,
|
||||||
|
@@ -517,6 +518,7 @@ nsXREDirProvider::GetFiles(const char* aProperty,
|
||||||
|
LoadDirIntoArray(mXULAppDir, kAppendBackgroundTasksPrefDir, directories);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
+ LoadDirIntoArray(mXULAppDir, kAppendSysPrefDir, directories);
|
||||||
|
|
||||||
|
rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
|
||||||
|
} else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
|
20
debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
vendored
Normal file
20
debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Mon, 16 Dec 2013 10:53:58 +0900
|
||||||
|
Subject: Add debian/extra-stuff to upstream build system directory traversal
|
||||||
|
|
||||||
|
---
|
||||||
|
moz.build | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/moz.build b/moz.build
|
||||||
|
index a931749..adcaaf0 100644
|
||||||
|
--- a/moz.build
|
||||||
|
+++ b/moz.build
|
||||||
|
@@ -231,4 +231,7 @@ SPHINX_TREES["content-security"] = "docs/content-security"
|
||||||
|
|
||||||
|
SPHINX_TREES["jsloader"] = "docs/jsloader"
|
||||||
|
|
||||||
|
+if not CONFIG["LIBXUL_SDK"]:
|
||||||
|
+ DIRS += ["debian/extra-stuff"]
|
||||||
|
+
|
||||||
|
include("build/templates.mozbuild")
|
21
debian/patches/debian-hacks/Adjust-our-gfx-skia-moz.build-patch-to-upstream-chan.patch
vendored
Normal file
21
debian/patches/debian-hacks/Adjust-our-gfx-skia-moz.build-patch-to-upstream-chan.patch
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Wed, 24 Jan 2024 08:48:37 +0900
|
||||||
|
Subject: Adjust our gfx/skia/moz.build patch to upstream changes
|
||||||
|
|
||||||
|
---
|
||||||
|
gfx/skia/moz.build | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/gfx/skia/moz.build b/gfx/skia/moz.build
|
||||||
|
index 2a5f7f1..4178db8 100644
|
||||||
|
--- a/gfx/skia/moz.build
|
||||||
|
+++ b/gfx/skia/moz.build
|
||||||
|
@@ -382,7 +382,7 @@ UNIFIED_SOURCES += [
|
||||||
|
]
|
||||||
|
|
||||||
|
# Work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110606
|
||||||
|
-if CONFIG['CC_TYPE'] == 'gcc' and CONFIG['CPU_ARCH'] == 'ppc64':
|
||||||
|
+if CONFIG['CC_TYPE'] == 'gcc' and CONFIG['TARGET_CPU'] == 'ppc64':
|
||||||
|
SOURCES += ['skia/src/sksl/SkSLInliner.cpp']
|
||||||
|
else:
|
||||||
|
UNIFIED_SOURCES += ['skia/src/sksl/SkSLInliner.cpp']
|
81
debian/patches/debian-hacks/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
vendored
Normal file
81
debian/patches/debian-hacks/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
vendored
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
From: Mike Hommey <glandium@debian.org>
|
||||||
|
Date: Sat, 21 Jun 2008 02:48:46 +0200
|
||||||
|
Subject: Allow .js preference files to set locked prefs with lockPref()
|
||||||
|
|
||||||
|
Upstream now supports locked prefs, but with a different syntax from
|
||||||
|
the syntax we had supported for a while.
|
||||||
|
---
|
||||||
|
modules/libpref/parser/src/lib.rs | 20 +++++++++++++-------
|
||||||
|
1 file changed, 13 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules/libpref/parser/src/lib.rs b/modules/libpref/parser/src/lib.rs
|
||||||
|
index 3a0ad2c..c6e34be 100644
|
||||||
|
--- a/modules/libpref/parser/src/lib.rs
|
||||||
|
+++ b/modules/libpref/parser/src/lib.rs
|
||||||
|
@@ -11,8 +11,9 @@
|
||||||
|
//! ```text
|
||||||
|
//! <pref-file> = <pref>*
|
||||||
|
//! <pref> = <pref-spec> "(" <pref-name> "," <pref-value> <pref-attrs> ")" ";"
|
||||||
|
-//! <pref-spec> = "user_pref" | "pref" | "sticky_pref" // in default pref files
|
||||||
|
+//! <pref-spec> = "user_pref" | "pref" | "sticky_pref" | "lockPref" // in default pref files
|
||||||
|
//! <pref-spec> = "user_pref" // in user pref files
|
||||||
|
+//! <pref-spec> = "user_pref" | "pref" | "sticky_pref | lockPref"
|
||||||
|
//! <pref-name> = <string-literal>
|
||||||
|
//! <pref-value> = <string-literal> | "true" | "false" | <int-value>
|
||||||
|
//! <int-value> = <sign>? <int-literal>
|
||||||
|
@@ -169,6 +170,7 @@ enum Token {
|
||||||
|
// Keywords
|
||||||
|
Pref, // pref
|
||||||
|
StickyPref, // sticky_pref
|
||||||
|
+ LockPref, // lockPref
|
||||||
|
UserPref, // user_pref
|
||||||
|
True, // true
|
||||||
|
False, // false
|
||||||
|
@@ -291,7 +293,7 @@ struct KeywordInfo {
|
||||||
|
token: Token,
|
||||||
|
}
|
||||||
|
|
||||||
|
-const KEYWORD_INFOS: [KeywordInfo; 7] = [
|
||||||
|
+const KEYWORD_INFOS: [KeywordInfo; 8] = [
|
||||||
|
// These are ordered by frequency.
|
||||||
|
KeywordInfo {
|
||||||
|
string: b"pref",
|
||||||
|
@@ -321,6 +323,10 @@ const KEYWORD_INFOS: [KeywordInfo; 7] = [
|
||||||
|
string: b"sticky_pref",
|
||||||
|
token: Token::StickyPref,
|
||||||
|
},
|
||||||
|
+ KeywordInfo {
|
||||||
|
+ string: b"lockPref",
|
||||||
|
+ token: Token::LockPref,
|
||||||
|
+ },
|
||||||
|
];
|
||||||
|
|
||||||
|
struct Parser<'t> {
|
||||||
|
@@ -373,14 +379,15 @@ impl<'t> Parser<'t> {
|
||||||
|
// this will be either the first token of a new pref, or EOF.
|
||||||
|
loop {
|
||||||
|
// <pref-spec>
|
||||||
|
- let (pref_value_kind, mut is_sticky) = match token {
|
||||||
|
+ let (pref_value_kind, mut is_sticky, mut is_locked) = match token {
|
||||||
|
Token::Pref if self.kind == PrefValueKind::Default => {
|
||||||
|
- (PrefValueKind::Default, false)
|
||||||
|
+ (PrefValueKind::Default, false, false)
|
||||||
|
}
|
||||||
|
Token::StickyPref if self.kind == PrefValueKind::Default => {
|
||||||
|
- (PrefValueKind::Default, true)
|
||||||
|
+ (PrefValueKind::Default, true, false)
|
||||||
|
}
|
||||||
|
- Token::UserPref => (PrefValueKind::User, false),
|
||||||
|
+ Token::LockPref => (PrefValueKind::Default, false, true),
|
||||||
|
+ Token::UserPref => (PrefValueKind::User, false, false),
|
||||||
|
Token::SingleChar(EOF) => return !self.has_errors,
|
||||||
|
_ => {
|
||||||
|
token = self.error_and_recover(
|
||||||
|
@@ -490,7 +497,6 @@ impl<'t> Parser<'t> {
|
||||||
|
};
|
||||||
|
|
||||||
|
// ("," <pref-attr>)* // default pref files only
|
||||||
|
- let mut is_locked = false;
|
||||||
|
let mut has_attrs = false;
|
||||||
|
if self.kind == PrefValueKind::Default {
|
||||||
|
let ok = loop {
|
31
debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch
vendored
Normal file
31
debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch
vendored
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Sun, 14 Aug 2022 15:05:23 +0900
|
||||||
|
Subject: Allow to override rust LTO flag
|
||||||
|
|
||||||
|
---
|
||||||
|
config/makefiles/rust.mk | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk
|
||||||
|
index ba024e87..4621b2d 100644
|
||||||
|
--- a/config/makefiles/rust.mk
|
||||||
|
+++ b/config/makefiles/rust.mk
|
||||||
|
@@ -101,8 +101,9 @@ ifndef rustflags_sancov
|
||||||
|
# Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
|
||||||
|
ifndef MOZ_CODE_COVERAGE
|
||||||
|
ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
|
||||||
|
-cargo_rustc_flags += -Clto$(if $(filter full,$(MOZ_LTO_RUST_CROSS)),=fat)
|
||||||
|
+cargo_rustc_flags += $(or $(DEBIAN_RUST_LTO),-Clto$(if $(filter full,$(MOZ_LTO_RUST_CROSS)),=fat))
|
||||||
|
endif
|
||||||
|
+ifneq (-Clto=off,$(DEBIAN_RUST_LTO))
|
||||||
|
# We need -Cembed-bitcode=yes for all crates when using -Clto.
|
||||||
|
RUSTFLAGS += -Cembed-bitcode=yes
|
||||||
|
endif
|
||||||
|
@@ -110,6 +111,7 @@ endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
+endif
|
||||||
|
|
||||||
|
ifdef CARGO_INCREMENTAL
|
||||||
|
export CARGO_INCREMENTAL
|
21
debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
vendored
Normal file
21
debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Tue, 22 May 2018 07:51:56 +0900
|
||||||
|
Subject: Avoid using vmrs/vmsr on armel
|
||||||
|
|
||||||
|
---
|
||||||
|
dom/media/webaudio/blink/DenormalDisabler.h | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/dom/media/webaudio/blink/DenormalDisabler.h b/dom/media/webaudio/blink/DenormalDisabler.h
|
||||||
|
index 646482b..8803a7d 100644
|
||||||
|
--- a/dom/media/webaudio/blink/DenormalDisabler.h
|
||||||
|
+++ b/dom/media/webaudio/blink/DenormalDisabler.h
|
||||||
|
@@ -45,7 +45,7 @@ namespace WebCore {
|
||||||
|
# define HAVE_DENORMAL 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(__arm__) || defined(__aarch64__)
|
||||||
|
+#if (defined(__arm__) && !defined(__SOFTFP__)) || defined(__aarch64__)
|
||||||
|
# define HAVE_DENORMAL 1
|
||||||
|
#endif
|
||||||
|
|
37
debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
vendored
Normal file
37
debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
vendored
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Thu, 12 Nov 2009 17:18:31 +0100
|
||||||
|
Subject: Avoid wrong sessionstore data to keep windows out of user sight
|
||||||
|
|
||||||
|
It happens that sessionstore can keep wrong information for the window
|
||||||
|
position or minimized state. Workaround this until the real bug is found
|
||||||
|
and fixed (probably in xulrunner).
|
||||||
|
|
||||||
|
Closes: #552426, #553453
|
||||||
|
---
|
||||||
|
browser/components/sessionstore/SessionStore.sys.mjs | 5 ++---
|
||||||
|
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/browser/components/sessionstore/SessionStore.sys.mjs b/browser/components/sessionstore/SessionStore.sys.mjs
|
||||||
|
index be02937..9cd6ff0 100644
|
||||||
|
--- a/browser/components/sessionstore/SessionStore.sys.mjs
|
||||||
|
+++ b/browser/components/sessionstore/SessionStore.sys.mjs
|
||||||
|
@@ -6589,7 +6589,7 @@ var SessionStoreInternal = {
|
||||||
|
// _getWindowDimension.
|
||||||
|
let desktopToCssScale =
|
||||||
|
aWindow.desktopToDeviceScale / aWindow.devicePixelRatio;
|
||||||
|
- aWindow.moveTo(aLeft * desktopToCssScale, aTop * desktopToCssScale);
|
||||||
|
+ aWindow.moveTo((aLeft < -aWidth) ? 0 : aLeft * desktopToCssScale, (aTop < -aHeight) ? 0 : aTop * desktopToCssScale);
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
aWidth &&
|
||||||
|
@@ -6617,9 +6617,8 @@ var SessionStoreInternal = {
|
||||||
|
case "minimized":
|
||||||
|
if (aSizeModeBeforeMinimized == "maximized") {
|
||||||
|
aWindow.maximize();
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
- aWindow.minimize();
|
||||||
|
- break;
|
||||||
|
case "normal":
|
||||||
|
aWindow.restore();
|
||||||
|
break;
|
18
debian/patches/debian-hacks/Disable-format-security-warning-when-disabling-forma.patch
vendored
Normal file
18
debian/patches/debian-hacks/Disable-format-security-warning-when-disabling-forma.patch
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Wed, 5 Mar 2025 07:16:17 +0900
|
||||||
|
Subject: Disable format-security warning when disabling format warning
|
||||||
|
|
||||||
|
---
|
||||||
|
js/src/xsum/moz.build | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/js/src/xsum/moz.build b/js/src/xsum/moz.build
|
||||||
|
index dc7a4f2..30f64cd 100644
|
||||||
|
--- a/js/src/xsum/moz.build
|
||||||
|
+++ b/js/src/xsum/moz.build
|
||||||
|
@@ -17,4 +17,4 @@ SOURCES += [
|
||||||
|
]
|
||||||
|
|
||||||
|
# Suppress warnings in third-party code.
|
||||||
|
-SOURCES['xsum.cpp'].flags += ['-Wno-implicit-fallthrough', '-Wno-format', '-Wno-unused-value']
|
||||||
|
+SOURCES['xsum.cpp'].flags += ['-Wno-implicit-fallthrough', '-Wno-format', '-Wno-format-security', '-Wno-unused-value']
|
21
debian/patches/debian-hacks/Don-t-auto-disable-extensions-in-system-directories.patch
vendored
Normal file
21
debian/patches/debian-hacks/Don-t-auto-disable-extensions-in-system-directories.patch
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Fri, 17 Feb 2012 17:47:15 +0100
|
||||||
|
Subject: Don't auto-disable extensions in system directories
|
||||||
|
|
||||||
|
---
|
||||||
|
browser/app/profile/firefox.js | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
|
||||||
|
index 412e087..734caec 100644
|
||||||
|
--- a/browser/app/profile/firefox.js
|
||||||
|
+++ b/browser/app/profile/firefox.js
|
||||||
|
@@ -58,7 +58,7 @@ pref("extensions.systemAddon.update.enabled", true);
|
||||||
|
|
||||||
|
// Disable add-ons that are not installed by the user in all scopes by default.
|
||||||
|
// See the SCOPE constants in AddonManager.sys.mjs for values to use here.
|
||||||
|
-pref("extensions.autoDisableScopes", 15);
|
||||||
|
+pref("extensions.autoDisableScopes", 3);
|
||||||
|
// Scopes to scan for changes at startup.
|
||||||
|
pref("extensions.startupScanScopes", 0);
|
||||||
|
|
23
debian/patches/debian-hacks/Don-t-build-image-gtests.patch
vendored
Normal file
23
debian/patches/debian-hacks/Don-t-build-image-gtests.patch
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Thu, 9 Jun 2016 14:45:44 +0900
|
||||||
|
Subject: Don't build image/ gtests
|
||||||
|
|
||||||
|
Building them causes an ICE with GCC 4.7. As they are not part of what
|
||||||
|
is shipped, and not currently run either, just skip building them.
|
||||||
|
---
|
||||||
|
image/moz.build | 2 --
|
||||||
|
1 file changed, 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/image/moz.build b/image/moz.build
|
||||||
|
index 7fbd88d..689bf57 100644
|
||||||
|
--- a/image/moz.build
|
||||||
|
+++ b/image/moz.build
|
||||||
|
@@ -5,8 +5,6 @@
|
||||||
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
|
|
||||||
|
DIRS += ["build", "decoders", "encoders"]
|
||||||
|
-if CONFIG["ENABLE_TESTS"]:
|
||||||
|
- DIRS += ["test/gtest"]
|
||||||
|
|
||||||
|
if CONFIG["FUZZING_INTERFACES"]:
|
||||||
|
DIRS += ["test/fuzzing"]
|
24
debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
vendored
Normal file
24
debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Sat, 27 Nov 2021 06:49:44 +0900
|
||||||
|
Subject: Fix math_private.h for i386 FTBFS
|
||||||
|
|
||||||
|
---
|
||||||
|
modules/fdlibm/src/math_private.h | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h
|
||||||
|
index 45f7401..29ca8a8 100644
|
||||||
|
--- a/modules/fdlibm/src/math_private.h
|
||||||
|
+++ b/modules/fdlibm/src/math_private.h
|
||||||
|
@@ -30,7 +30,11 @@
|
||||||
|
* Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
|
||||||
|
*/
|
||||||
|
|
||||||
|
+#if defined __FLT_EVAL_METHOD__ && (__FLT_EVAL_METHOD__ == 2)
|
||||||
|
+typedef long double __double_t;
|
||||||
|
+#else
|
||||||
|
typedef double __double_t;
|
||||||
|
+#endif
|
||||||
|
typedef __double_t double_t;
|
||||||
|
typedef float __float_t;
|
||||||
|
|
21
debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch
vendored
Normal file
21
debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Wed, 21 Sep 2022 08:48:27 +0900
|
||||||
|
Subject: Relax nodejs minimum version
|
||||||
|
|
||||||
|
---
|
||||||
|
python/mozbuild/mozbuild/nodeutil.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/python/mozbuild/mozbuild/nodeutil.py b/python/mozbuild/mozbuild/nodeutil.py
|
||||||
|
index 3721929..3b5d37b 100644
|
||||||
|
--- a/python/mozbuild/mozbuild/nodeutil.py
|
||||||
|
+++ b/python/mozbuild/mozbuild/nodeutil.py
|
||||||
|
@@ -10,7 +10,7 @@ from mozboot.util import get_tools_dir
|
||||||
|
from mozfile import which
|
||||||
|
from packaging.version import Version
|
||||||
|
|
||||||
|
-NODE_MIN_VERSION = Version("12.22.12")
|
||||||
|
+NODE_MIN_VERSION = Version("12.22")
|
||||||
|
NPM_MIN_VERSION = Version("6.14.16")
|
||||||
|
|
||||||
|
|
56
debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
vendored
Normal file
56
debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
vendored
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Mon, 15 Aug 2022 14:49:40 +0900
|
||||||
|
Subject: Remove workaround for old libstdc++ problem, which now causes
|
||||||
|
problems with GCC 12 on arm
|
||||||
|
|
||||||
|
---
|
||||||
|
intl/icu/source/common/unicode/std_string.h | 5 -----
|
||||||
|
intl/icu/source/common/utypeinfo.h | 3 ---
|
||||||
|
intl/icu/source/io/unicode/ustream.h | 4 ----
|
||||||
|
3 files changed, 12 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/intl/icu/source/common/unicode/std_string.h b/intl/icu/source/common/unicode/std_string.h
|
||||||
|
index bf872301..c8388ef 100644
|
||||||
|
--- a/intl/icu/source/common/unicode/std_string.h
|
||||||
|
+++ b/intl/icu/source/common/unicode/std_string.h
|
||||||
|
@@ -29,11 +29,6 @@
|
||||||
|
|
||||||
|
#if U_SHOW_CPLUSPLUS_API
|
||||||
|
|
||||||
|
-// Workaround for a libstdc++ bug before libstdc++4.6 (2011).
|
||||||
|
-// https://bugs.llvm.org/show_bug.cgi?id=13364
|
||||||
|
-#if defined(__GLIBCXX__)
|
||||||
|
-namespace std { class type_info; }
|
||||||
|
-#endif
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
#endif /* U_SHOW_CPLUSPLUS_API */
|
||||||
|
diff --git a/intl/icu/source/common/utypeinfo.h b/intl/icu/source/common/utypeinfo.h
|
||||||
|
index c666373..5d97240 100644
|
||||||
|
--- a/intl/icu/source/common/utypeinfo.h
|
||||||
|
+++ b/intl/icu/source/common/utypeinfo.h
|
||||||
|
@@ -24,9 +24,6 @@
|
||||||
|
#include <exception>
|
||||||
|
using std::exception;
|
||||||
|
#endif
|
||||||
|
-#if defined(__GLIBCXX__)
|
||||||
|
-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
|
||||||
|
-#endif
|
||||||
|
#include <typeinfo> // for 'typeid' to work
|
||||||
|
|
||||||
|
#endif
|
||||||
|
diff --git a/intl/icu/source/io/unicode/ustream.h b/intl/icu/source/io/unicode/ustream.h
|
||||||
|
index 927342c..93ef51c 100644
|
||||||
|
--- a/intl/icu/source/io/unicode/ustream.h
|
||||||
|
+++ b/intl/icu/source/io/unicode/ustream.h
|
||||||
|
@@ -34,10 +34,6 @@
|
||||||
|
* C++ I/O stream API.
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#if defined(__GLIBCXX__)
|
||||||
|
-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
U_NAMESPACE_BEGIN
|
21
debian/patches/debian-hacks/Set-DPI-to-system-settings.patch
vendored
Normal file
21
debian/patches/debian-hacks/Set-DPI-to-system-settings.patch
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
From: Mike Hommey <glandium@debian.org>
|
||||||
|
Date: Thu, 13 Mar 2008 20:30:19 +0100
|
||||||
|
Subject: Set DPI to system settings
|
||||||
|
|
||||||
|
---
|
||||||
|
modules/libpref/init/StaticPrefList.yaml | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml
|
||||||
|
index acadd3a..27e0648 100644
|
||||||
|
--- a/modules/libpref/init/StaticPrefList.yaml
|
||||||
|
+++ b/modules/libpref/init/StaticPrefList.yaml
|
||||||
|
@@ -9563,7 +9563,7 @@
|
||||||
|
# interpretation of physical units such as "pt".
|
||||||
|
- name: layout.css.dpi
|
||||||
|
type: int32_t
|
||||||
|
- value: -1
|
||||||
|
+ value: 0
|
||||||
|
mirror: always
|
||||||
|
|
||||||
|
# Whether to always underline links.
|
26
debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
vendored
Normal file
26
debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Sun, 2 Apr 2017 06:33:19 +0900
|
||||||
|
Subject: Use the Mozilla Location Service key when the Google Key is not there
|
||||||
|
|
||||||
|
---
|
||||||
|
modules/libpref/init/all.js | 7 ++++++-
|
||||||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
|
||||||
|
index 95bcd71..f3a6dcc 100644
|
||||||
|
--- a/modules/libpref/init/all.js
|
||||||
|
+++ b/modules/libpref/init/all.js
|
||||||
|
@@ -3077,7 +3077,12 @@ pref("network.tcp.keepalive.idle_time", 600); // seconds; 10 mins
|
||||||
|
|
||||||
|
// All the Geolocation preferences are here.
|
||||||
|
//
|
||||||
|
-pref("geo.provider.network.url", "https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_LOCATION_SERVICE_API_KEY%");
|
||||||
|
+#if defined(GOOGLE_LOCATION_SERVICE_API_KEY)
|
||||||
|
+ pref("geo.provider.network.url", "https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_LOCATION_SERVICE_API_KEY%");
|
||||||
|
+#else
|
||||||
|
+ // Use MLS on Nightly and early Beta.
|
||||||
|
+ pref("geo.provider.network.url", "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%");
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
// Timeout to wait before sending the location request.
|
||||||
|
pref("geo.provider.network.timeToWaitBeforeSending", 5000);
|
29
debian/patches/debian-hacks/Work-around-GCC-ICE-on-ppc64el.patch
vendored
Normal file
29
debian/patches/debian-hacks/Work-around-GCC-ICE-on-ppc64el.patch
vendored
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Tue, 11 Jul 2023 06:34:59 +0900
|
||||||
|
Subject: Work around GCC ICE on ppc64el
|
||||||
|
|
||||||
|
---
|
||||||
|
gfx/skia/moz.build | 10 +++++++++-
|
||||||
|
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/gfx/skia/moz.build b/gfx/skia/moz.build
|
||||||
|
index b096171..2a5f7f1 100644
|
||||||
|
--- a/gfx/skia/moz.build
|
||||||
|
+++ b/gfx/skia/moz.build
|
||||||
|
@@ -379,7 +379,15 @@ UNIFIED_SOURCES += [
|
||||||
|
'skia/src/sksl/SkSLConstantFolder.cpp',
|
||||||
|
'skia/src/sksl/SkSLContext.cpp',
|
||||||
|
'skia/src/sksl/SkSLErrorReporter.cpp',
|
||||||
|
- 'skia/src/sksl/SkSLInliner.cpp',
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+# Work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110606
|
||||||
|
+if CONFIG['CC_TYPE'] == 'gcc' and CONFIG['CPU_ARCH'] == 'ppc64':
|
||||||
|
+ SOURCES += ['skia/src/sksl/SkSLInliner.cpp']
|
||||||
|
+else:
|
||||||
|
+ UNIFIED_SOURCES += ['skia/src/sksl/SkSLInliner.cpp']
|
||||||
|
+
|
||||||
|
+UNIFIED_SOURCES += [
|
||||||
|
'skia/src/sksl/SkSLIntrinsicList.cpp',
|
||||||
|
'skia/src/sksl/SkSLMangler.cpp',
|
||||||
|
'skia/src/sksl/SkSLModule.cpp',
|
24
debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch
vendored
Normal file
24
debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
From: Mike Hommey <mh@glandium.org>
|
||||||
|
Date: Wed, 5 Jul 2023 05:25:35 +0900
|
||||||
|
Subject: Work around https://sourceware.org/bugzilla/show_bug.cgi?id=30578
|
||||||
|
|
||||||
|
---
|
||||||
|
media/ffvpx/config_unix64.h | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/media/ffvpx/config_unix64.h b/media/ffvpx/config_unix64.h
|
||||||
|
index 7d63f47..086eaa3 100644
|
||||||
|
--- a/media/ffvpx/config_unix64.h
|
||||||
|
+++ b/media/ffvpx/config_unix64.h
|
||||||
|
@@ -204,7 +204,11 @@
|
||||||
|
#define HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
|
||||||
|
#define HAVE_CABS 0
|
||||||
|
#define HAVE_CEXP 0
|
||||||
|
+#ifdef FFMPEG_DISABLE_INLINE_ASM
|
||||||
|
+#define HAVE_INLINE_ASM 0
|
||||||
|
+#else
|
||||||
|
#define HAVE_INLINE_ASM 1
|
||||||
|
+#endif
|
||||||
|
#define HAVE_SYMVER 1
|
||||||
|
#define HAVE_X86ASM 1
|
||||||
|
#define HAVE_BIGENDIAN 0
|
18
debian/patches/series
vendored
Normal file
18
debian/patches/series
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
|
||||||
|
debian-hacks/Add-another-preferences-directory-for-applications-p.patch
|
||||||
|
debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
|
||||||
|
debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
|
||||||
|
debian-hacks/Don-t-build-image-gtests.patch
|
||||||
|
debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
|
||||||
|
debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
|
||||||
|
debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
|
||||||
|
debian-hacks/Allow-to-override-rust-LTO-flag.patch
|
||||||
|
debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
|
||||||
|
debian-hacks/Relax-nodejs-minimum-version.patch
|
||||||
|
debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch
|
||||||
|
debian-hacks/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
|
||||||
|
debian-hacks/Set-DPI-to-system-settings.patch
|
||||||
|
debian-hacks/Don-t-auto-disable-extensions-in-system-directories.patch
|
||||||
|
debian-hacks/Work-around-GCC-ICE-on-ppc64el.patch
|
||||||
|
debian-hacks/Adjust-our-gfx-skia-moz.build-patch-to-upstream-chan.patch
|
||||||
|
debian-hacks/Disable-format-security-warning-when-disabling-forma.patch
|
673
debian/removed_conffiles
vendored
Normal file
673
debian/removed_conffiles
vendored
Normal file
|
@ -0,0 +1,673 @@
|
||||||
|
iceweaselrc
|
||||||
|
pref/iceweasel.js
|
||||||
|
profile/bookmarks.html
|
||||||
|
profile/localstore.rdf
|
||||||
|
profile/chrome/userChrome-example.css
|
||||||
|
profile/chrome/userContent-example.css
|
||||||
|
profile/mimeTypes.rdf
|
||||||
|
profile/prefs.js
|
||||||
|
searchplugins/common/debsearch.xml
|
||||||
|
searchplugins/common/duckduckgo.xml
|
||||||
|
searchplugins/locale/en-US/amazondotcom.xml
|
||||||
|
searchplugins/locale/en-US/bing.xml
|
||||||
|
searchplugins/locale/en-US/ddg.xml
|
||||||
|
searchplugins/locale/en-US/eBay.xml
|
||||||
|
searchplugins/locale/en-US/google.xml
|
||||||
|
searchplugins/locale/en-US/twitter.xml
|
||||||
|
searchplugins/locale/en-US/wikipedia.xml
|
||||||
|
searchplugins/locale/en-US/yahoo.xml
|
||||||
|
searchplugins/locale/ach/amazondotcom.xml
|
||||||
|
searchplugins/locale/ach/bing.xml
|
||||||
|
searchplugins/locale/ach/ddg.xml
|
||||||
|
searchplugins/locale/ach/eBay.xml
|
||||||
|
searchplugins/locale/ach/google.xml
|
||||||
|
searchplugins/locale/ach/twitter.xml
|
||||||
|
searchplugins/locale/ach/wikipedia.xml
|
||||||
|
searchplugins/locale/ach/yahoo.xml
|
||||||
|
searchplugins/locale/af/amazondotcom.xml
|
||||||
|
searchplugins/locale/af/bing.xml
|
||||||
|
searchplugins/locale/af/ddg.xml
|
||||||
|
searchplugins/locale/af/eBay.xml
|
||||||
|
searchplugins/locale/af/google.xml
|
||||||
|
searchplugins/locale/af/wikipedia-af.xml
|
||||||
|
searchplugins/locale/af/yahoo.xml
|
||||||
|
searchplugins/locale/an/bing.xml
|
||||||
|
searchplugins/locale/an/ddg.xml
|
||||||
|
searchplugins/locale/an/eBay-es.xml
|
||||||
|
searchplugins/locale/an/google.xml
|
||||||
|
searchplugins/locale/an/twitter.xml
|
||||||
|
searchplugins/locale/an/wikipedia-an.xml
|
||||||
|
searchplugins/locale/an/yahoo-es.xml
|
||||||
|
searchplugins/locale/ar/amazondotcom.xml
|
||||||
|
searchplugins/locale/ar/bing.xml
|
||||||
|
searchplugins/locale/ar/ddg.xml
|
||||||
|
searchplugins/locale/ar/eBay.xml
|
||||||
|
searchplugins/locale/ar/google.xml
|
||||||
|
searchplugins/locale/ar/wikipedia-ar.xml
|
||||||
|
searchplugins/locale/ar/yahoo.xml
|
||||||
|
searchplugins/locale/as/amazondotcom.xml
|
||||||
|
searchplugins/locale/as/creativecommons.xml
|
||||||
|
searchplugins/locale/as/ddg.xml
|
||||||
|
searchplugins/locale/as/eBay-in.xml
|
||||||
|
searchplugins/locale/as/google.xml
|
||||||
|
searchplugins/locale/as/wikipedia-as.xml
|
||||||
|
searchplugins/locale/as/yahoo-in.xml
|
||||||
|
searchplugins/locale/ast/bing.xml
|
||||||
|
searchplugins/locale/ast/ddg.xml
|
||||||
|
searchplugins/locale/ast/diccionariu-alla.xml
|
||||||
|
searchplugins/locale/ast/eBay-es.xml
|
||||||
|
searchplugins/locale/ast/google.xml
|
||||||
|
searchplugins/locale/ast/wikipedia-ast.xml
|
||||||
|
searchplugins/locale/ast/yahoo-es.xml
|
||||||
|
searchplugins/locale/az/amazondotcom.xml
|
||||||
|
searchplugins/locale/az/azerdict.xml
|
||||||
|
searchplugins/locale/az/bing.xml
|
||||||
|
searchplugins/locale/az/ddg.xml
|
||||||
|
searchplugins/locale/az/eBay.xml
|
||||||
|
searchplugins/locale/az/google.xml
|
||||||
|
searchplugins/locale/az/wikipedia-az.xml
|
||||||
|
searchplugins/locale/az/yandex-az.xml
|
||||||
|
searchplugins/locale/be/be-x-old.wikipedia.org.xml
|
||||||
|
searchplugins/locale/be/be.wikipedia.org.xml
|
||||||
|
searchplugins/locale/be/ddg.xml
|
||||||
|
searchplugins/locale/be/google.xml
|
||||||
|
searchplugins/locale/be/ru.wikipedia.org-be.xml
|
||||||
|
searchplugins/locale/be/tut.by.xml
|
||||||
|
searchplugins/locale/be/yahoo.xml
|
||||||
|
searchplugins/locale/be/yandex.by.xml
|
||||||
|
searchplugins/locale/bg/911bg.xml
|
||||||
|
searchplugins/locale/bg/amazondotcom.xml
|
||||||
|
searchplugins/locale/bg/ddg.xml
|
||||||
|
searchplugins/locale/bg/diribg.xml
|
||||||
|
searchplugins/locale/bg/google.xml
|
||||||
|
searchplugins/locale/bg/pe-bg.xml
|
||||||
|
searchplugins/locale/bg/portalbgdict.xml
|
||||||
|
searchplugins/locale/bg/wikipedia-bg.xml
|
||||||
|
searchplugins/locale/bn-BD/bing.xml
|
||||||
|
searchplugins/locale/bn-BD/ddg.xml
|
||||||
|
searchplugins/locale/bn-BD/google.xml
|
||||||
|
searchplugins/locale/bn-BD/wikipedia-bn.xml
|
||||||
|
searchplugins/locale/bn-BD/yahoo.xml
|
||||||
|
searchplugins/locale/bn-IN/amazondotcom.xml
|
||||||
|
searchplugins/locale/bn-IN/bing.xml
|
||||||
|
searchplugins/locale/bn-IN/ddg.xml
|
||||||
|
searchplugins/locale/bn-IN/eBay-in.xml
|
||||||
|
searchplugins/locale/bn-IN/google.xml
|
||||||
|
searchplugins/locale/bn-IN/rediff.xml
|
||||||
|
searchplugins/locale/bn-IN/technorati.xml
|
||||||
|
searchplugins/locale/bn-IN/wikipedia-bn.xml
|
||||||
|
searchplugins/locale/bn-IN/yahoo-in.xml
|
||||||
|
searchplugins/locale/br/amazon-france.xml
|
||||||
|
searchplugins/locale/br/ddg.xml
|
||||||
|
searchplugins/locale/br/freelang.xml
|
||||||
|
searchplugins/locale/br/google.xml
|
||||||
|
searchplugins/locale/br/klask.xml
|
||||||
|
searchplugins/locale/br/wikipedia-br.xml
|
||||||
|
searchplugins/locale/br/yahoo-france.xml
|
||||||
|
searchplugins/locale/bs/ddg.xml
|
||||||
|
searchplugins/locale/bs/eBay.xml
|
||||||
|
searchplugins/locale/bs/google.xml
|
||||||
|
searchplugins/locale/bs/pik.xml
|
||||||
|
searchplugins/locale/bs/tajpi.xml
|
||||||
|
searchplugins/locale/bs/twitter.xml
|
||||||
|
searchplugins/locale/bs/wikipedia-bs.xml
|
||||||
|
searchplugins/locale/bs/yahoo.xml
|
||||||
|
searchplugins/locale/ca/bing.xml
|
||||||
|
searchplugins/locale/ca/ddg.xml
|
||||||
|
searchplugins/locale/ca/diec2.xml
|
||||||
|
searchplugins/locale/ca/google.xml
|
||||||
|
searchplugins/locale/ca/twitter.xml
|
||||||
|
searchplugins/locale/ca/wikipedia-ca.xml
|
||||||
|
searchplugins/locale/cs/ddg.xml
|
||||||
|
searchplugins/locale/cs/google.xml
|
||||||
|
searchplugins/locale/cs/heureka-cz.xml
|
||||||
|
searchplugins/locale/cs/mapy-cz.xml
|
||||||
|
searchplugins/locale/cs/seznam-cz.xml
|
||||||
|
searchplugins/locale/cs/slunecnice-cz.xml
|
||||||
|
searchplugins/locale/cs/wikipedia-cz.xml
|
||||||
|
searchplugins/locale/cy/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/cy/creativecommons.xml
|
||||||
|
searchplugins/locale/cy/ddg.xml
|
||||||
|
searchplugins/locale/cy/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/cy/google.xml
|
||||||
|
searchplugins/locale/cy/palasprint.xml
|
||||||
|
searchplugins/locale/cy/termau.xml
|
||||||
|
searchplugins/locale/cy/wikipedia-cy.xml
|
||||||
|
searchplugins/locale/cy/yahoo-en-GB.xml
|
||||||
|
searchplugins/locale/da/amazon-co-uk.xml
|
||||||
|
searchplugins/locale/da/bing.xml
|
||||||
|
searchplugins/locale/da/ddg.xml
|
||||||
|
searchplugins/locale/da/eBay.xml
|
||||||
|
searchplugins/locale/da/google.xml
|
||||||
|
searchplugins/locale/da/wikipedia-da.xml
|
||||||
|
searchplugins/locale/de/amazondotcom-de.xml
|
||||||
|
searchplugins/locale/de/bing.xml
|
||||||
|
searchplugins/locale/de/ddg.xml
|
||||||
|
searchplugins/locale/de/eBay-de.xml
|
||||||
|
searchplugins/locale/de/google.xml
|
||||||
|
searchplugins/locale/de/leo_ende_de.xml
|
||||||
|
searchplugins/locale/de/wikipedia-de.xml
|
||||||
|
searchplugins/locale/de/yahoo-de.xml
|
||||||
|
searchplugins/locale/dsb/amazondotcom-de.xml
|
||||||
|
searchplugins/locale/dsb/bing.xml
|
||||||
|
searchplugins/locale/dsb/ddg.xml
|
||||||
|
searchplugins/locale/dsb/eBay-de.xml
|
||||||
|
searchplugins/locale/dsb/google.xml
|
||||||
|
searchplugins/locale/dsb/leo_ende_de.xml
|
||||||
|
searchplugins/locale/dsb/wikipedia-dsb.xml
|
||||||
|
searchplugins/locale/dsb/yahoo-de.xml
|
||||||
|
searchplugins/locale/el/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/el/bing.xml
|
||||||
|
searchplugins/locale/el/ddg.xml
|
||||||
|
searchplugins/locale/el/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/el/google.xml
|
||||||
|
searchplugins/locale/el/wikipedia-el.xml
|
||||||
|
searchplugins/locale/el/yahoo.xml
|
||||||
|
searchplugins/locale/en-GB/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/en-GB/bing.xml
|
||||||
|
searchplugins/locale/en-GB/chambers-en-GB.xml
|
||||||
|
searchplugins/locale/en-GB/ddg.xml
|
||||||
|
searchplugins/locale/en-GB/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/en-GB/google.xml
|
||||||
|
searchplugins/locale/en-GB/twitter.xml
|
||||||
|
searchplugins/locale/en-GB/wikipedia.xml
|
||||||
|
searchplugins/locale/en-GB/yahoo-en-GB.xml
|
||||||
|
searchplugins/locale/en-ZA/amazondotcom.xml
|
||||||
|
searchplugins/locale/en-ZA/bing.xml
|
||||||
|
searchplugins/locale/en-ZA/ddg.xml
|
||||||
|
searchplugins/locale/en-ZA/google.xml
|
||||||
|
searchplugins/locale/en-ZA/twitter.xml
|
||||||
|
searchplugins/locale/en-ZA/wikipedia.xml
|
||||||
|
searchplugins/locale/eo/amazondotcom.xml
|
||||||
|
searchplugins/locale/eo/bing.xml
|
||||||
|
searchplugins/locale/eo/creativecommons.xml
|
||||||
|
searchplugins/locale/eo/ddg.xml
|
||||||
|
searchplugins/locale/eo/eBay.xml
|
||||||
|
searchplugins/locale/eo/google.xml
|
||||||
|
searchplugins/locale/eo/reta-vortaro.xml
|
||||||
|
searchplugins/locale/eo/wikipedia-eo.xml
|
||||||
|
searchplugins/locale/eo/yahoo.xml
|
||||||
|
searchplugins/locale/es-AR/amazondotcom.xml
|
||||||
|
searchplugins/locale/es-AR/creativecommons.xml
|
||||||
|
searchplugins/locale/es-AR/ddg.xml
|
||||||
|
searchplugins/locale/es-AR/drae.xml
|
||||||
|
searchplugins/locale/es-AR/google.xml
|
||||||
|
searchplugins/locale/es-AR/mercadolibre-ar.xml
|
||||||
|
searchplugins/locale/es-AR/wikipedia-es.xml
|
||||||
|
searchplugins/locale/es-AR/yahoo-ar.xml
|
||||||
|
searchplugins/locale/es-CL/bing.xml
|
||||||
|
searchplugins/locale/es-CL/ddg.xml
|
||||||
|
searchplugins/locale/es-CL/drae.xml
|
||||||
|
searchplugins/locale/es-CL/google.xml
|
||||||
|
searchplugins/locale/es-CL/mercadolibre-cl.xml
|
||||||
|
searchplugins/locale/es-CL/wikipedia-es.xml
|
||||||
|
searchplugins/locale/es-CL/yahoo-cl.xml
|
||||||
|
searchplugins/locale/es-ES/bing.xml
|
||||||
|
searchplugins/locale/es-ES/ddg.xml
|
||||||
|
searchplugins/locale/es-ES/drae.xml
|
||||||
|
searchplugins/locale/es-ES/eBay-es.xml
|
||||||
|
searchplugins/locale/es-ES/google.xml
|
||||||
|
searchplugins/locale/es-ES/twitter.xml
|
||||||
|
searchplugins/locale/es-ES/wikipedia-es.xml
|
||||||
|
searchplugins/locale/es-ES/yahoo-es.xml
|
||||||
|
searchplugins/locale/es-MX/bing.xml
|
||||||
|
searchplugins/locale/es-MX/ddg.xml
|
||||||
|
searchplugins/locale/es-MX/google.xml
|
||||||
|
searchplugins/locale/es-MX/mercadolibre-mx.xml
|
||||||
|
searchplugins/locale/es-MX/wikipedia-es.xml
|
||||||
|
searchplugins/locale/es-MX/yahoo-mx.xml
|
||||||
|
searchplugins/locale/et/ddg.xml
|
||||||
|
searchplugins/locale/et/eBay.xml
|
||||||
|
searchplugins/locale/et/eki-ee.xml
|
||||||
|
searchplugins/locale/et/google.xml
|
||||||
|
searchplugins/locale/et/neti-ee.xml
|
||||||
|
searchplugins/locale/et/osta-ee.xml
|
||||||
|
searchplugins/locale/et/wikipedia-et.xml
|
||||||
|
searchplugins/locale/eu/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/eu/bing.xml
|
||||||
|
searchplugins/locale/eu/creativecommons.xml
|
||||||
|
searchplugins/locale/eu/ddg.xml
|
||||||
|
searchplugins/locale/eu/eBay-es.xml
|
||||||
|
searchplugins/locale/eu/elebila.xml
|
||||||
|
searchplugins/locale/eu/google.xml
|
||||||
|
searchplugins/locale/eu/wikipedia-eu.xml
|
||||||
|
searchplugins/locale/eu/yahoo.xml
|
||||||
|
searchplugins/locale/fa/amazondotcom.xml
|
||||||
|
searchplugins/locale/fa/answers.xml
|
||||||
|
searchplugins/locale/fa/bing.xml
|
||||||
|
searchplugins/locale/fa/ddg.xml
|
||||||
|
searchplugins/locale/fa/google.xml
|
||||||
|
searchplugins/locale/fa/wikipedia-fa.xml
|
||||||
|
searchplugins/locale/fa/yahoo.xml
|
||||||
|
searchplugins/locale/ff/amazon-france.xml
|
||||||
|
searchplugins/locale/ff/bing.xml
|
||||||
|
searchplugins/locale/ff/cnrtl-tlfi-fr.xml
|
||||||
|
searchplugins/locale/ff/ddg.xml
|
||||||
|
searchplugins/locale/ff/eBay-france.xml
|
||||||
|
searchplugins/locale/ff/google.xml
|
||||||
|
searchplugins/locale/ff/wikipedia-fr.xml
|
||||||
|
searchplugins/locale/ff/yahoo-france.xml
|
||||||
|
searchplugins/locale/fi/bing.xml
|
||||||
|
searchplugins/locale/fi/bookplus-fi.xml
|
||||||
|
searchplugins/locale/fi/ddg.xml
|
||||||
|
searchplugins/locale/fi/eBay-fi.xml
|
||||||
|
searchplugins/locale/fi/google.xml
|
||||||
|
searchplugins/locale/fi/wikipedia-fi.xml
|
||||||
|
searchplugins/locale/fi/yahoo-fi.xml
|
||||||
|
searchplugins/locale/fr/amazon-france.xml
|
||||||
|
searchplugins/locale/fr/bing.xml
|
||||||
|
searchplugins/locale/fr/cnrtl-tlfi-fr.xml
|
||||||
|
searchplugins/locale/fr/ddg.xml
|
||||||
|
searchplugins/locale/fr/eBay-france.xml
|
||||||
|
searchplugins/locale/fr/google.xml
|
||||||
|
searchplugins/locale/fr/wikipedia-fr.xml
|
||||||
|
searchplugins/locale/fr/yahoo-france.xml
|
||||||
|
searchplugins/locale/fy-NL/bing.xml
|
||||||
|
searchplugins/locale/fy-NL/bolcom-fy-NL.xml
|
||||||
|
searchplugins/locale/fy-NL/ddg.xml
|
||||||
|
searchplugins/locale/fy-NL/google.xml
|
||||||
|
searchplugins/locale/fy-NL/marktplaats-fy-NL.xml
|
||||||
|
searchplugins/locale/fy-NL/wikipedia-fy-NL.xml
|
||||||
|
searchplugins/locale/fy-NL/yahoo-fy-NL.xml
|
||||||
|
searchplugins/locale/ga-IE/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/ga-IE/answers.xml
|
||||||
|
searchplugins/locale/ga-IE/creativecommons.xml
|
||||||
|
searchplugins/locale/ga-IE/ddg.xml
|
||||||
|
searchplugins/locale/ga-IE/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/ga-IE/focal.xml
|
||||||
|
searchplugins/locale/ga-IE/google.xml
|
||||||
|
searchplugins/locale/ga-IE/twitter.xml
|
||||||
|
searchplugins/locale/ga-IE/wikipedia-ga-IE.xml
|
||||||
|
searchplugins/locale/ga-IE/yahoo-en-GB.xml
|
||||||
|
searchplugins/locale/gd/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/gd/bbc-alba.xml
|
||||||
|
searchplugins/locale/gd/ddg.xml
|
||||||
|
searchplugins/locale/gd/duckduckgo.xml
|
||||||
|
searchplugins/locale/gd/faclair-beag.xml
|
||||||
|
searchplugins/locale/gd/google.xml
|
||||||
|
searchplugins/locale/gd/wikipedia-gd.xml
|
||||||
|
searchplugins/locale/gd/yahoo-en-GB.xml
|
||||||
|
searchplugins/locale/gl/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/gl/creativecommons.xml
|
||||||
|
searchplugins/locale/gl/ddg.xml
|
||||||
|
searchplugins/locale/gl/eBay-es.xml
|
||||||
|
searchplugins/locale/gl/google.xml
|
||||||
|
searchplugins/locale/gl/wikipedia-gl.xml
|
||||||
|
searchplugins/locale/gl/yahoo-es.xml
|
||||||
|
searchplugins/locale/gu-IN/bing.xml
|
||||||
|
searchplugins/locale/gu-IN/ddg.xml
|
||||||
|
searchplugins/locale/gu-IN/eBay-in.xml
|
||||||
|
searchplugins/locale/gu-IN/google.xml
|
||||||
|
searchplugins/locale/gu-IN/gujaratilexicon.xml
|
||||||
|
searchplugins/locale/gu-IN/wikipedia-gu.xml
|
||||||
|
searchplugins/locale/gu-IN/yahoo-in.xml
|
||||||
|
searchplugins/locale/he/ddg.xml
|
||||||
|
searchplugins/locale/he/google.xml
|
||||||
|
searchplugins/locale/he/morfix-dic.xml
|
||||||
|
searchplugins/locale/he/wikipedia-he.xml
|
||||||
|
searchplugins/locale/he/yahoo.xml
|
||||||
|
searchplugins/locale/hi-IN/bing.xml
|
||||||
|
searchplugins/locale/hi-IN/ddg.xml
|
||||||
|
searchplugins/locale/hi-IN/eBay-in.xml
|
||||||
|
searchplugins/locale/hi-IN/google.xml
|
||||||
|
searchplugins/locale/hi-IN/wikipedia-hi.xml
|
||||||
|
searchplugins/locale/hi-IN/yahoo-in.xml
|
||||||
|
searchplugins/locale/hr/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/hr/bing.xml
|
||||||
|
searchplugins/locale/hr/ddg.xml
|
||||||
|
searchplugins/locale/hr/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/hr/eudict.xml
|
||||||
|
searchplugins/locale/hr/google.xml
|
||||||
|
searchplugins/locale/hr/twitter.xml
|
||||||
|
searchplugins/locale/hr/wikipedia-hr.xml
|
||||||
|
searchplugins/locale/hr/yahoo.xml
|
||||||
|
searchplugins/locale/hsb/amazondotcom-de.xml
|
||||||
|
searchplugins/locale/hsb/bing.xml
|
||||||
|
searchplugins/locale/hsb/ddg.xml
|
||||||
|
searchplugins/locale/hsb/eBay-de.xml
|
||||||
|
searchplugins/locale/hsb/google.xml
|
||||||
|
searchplugins/locale/hsb/leo_ende_de.xml
|
||||||
|
searchplugins/locale/hsb/wikipedia-hsb.xml
|
||||||
|
searchplugins/locale/hsb/yahoo-de.xml
|
||||||
|
searchplugins/locale/hu/ddg.xml
|
||||||
|
searchplugins/locale/hu/eBay-hu.xml
|
||||||
|
searchplugins/locale/hu/google.xml
|
||||||
|
searchplugins/locale/hu/sztaki-en-hu.xml
|
||||||
|
searchplugins/locale/hu/vatera.xml
|
||||||
|
searchplugins/locale/hu/wikipedia-hu.xml
|
||||||
|
searchplugins/locale/hy-AM/amazondotcom.xml
|
||||||
|
searchplugins/locale/hy-AM/ddg.xml
|
||||||
|
searchplugins/locale/hy-AM/eBay.xml
|
||||||
|
searchplugins/locale/hy-AM/google.xml
|
||||||
|
searchplugins/locale/hy-AM/list-am.xml
|
||||||
|
searchplugins/locale/hy-AM/wikipedia-hy.xml
|
||||||
|
searchplugins/locale/hy-AM/yahoo.xml
|
||||||
|
searchplugins/locale/id/ddg.xml
|
||||||
|
searchplugins/locale/id/google.xml
|
||||||
|
searchplugins/locale/id/wikipedia-id.xml
|
||||||
|
searchplugins/locale/id/yahoo-id.xml
|
||||||
|
searchplugins/locale/is/amazondotcom.xml
|
||||||
|
searchplugins/locale/is/bing.xml
|
||||||
|
searchplugins/locale/is/ddg.xml
|
||||||
|
searchplugins/locale/is/eBay.xml
|
||||||
|
searchplugins/locale/is/google.xml
|
||||||
|
searchplugins/locale/is/leit-is.xml
|
||||||
|
searchplugins/locale/is/wikipedia-is.xml
|
||||||
|
searchplugins/locale/is/yahoo.xml
|
||||||
|
searchplugins/locale/it/amazon-it.xml
|
||||||
|
searchplugins/locale/it/bing.xml
|
||||||
|
searchplugins/locale/it/ddg.xml
|
||||||
|
searchplugins/locale/it/eBay-it.xml
|
||||||
|
searchplugins/locale/it/google.xml
|
||||||
|
searchplugins/locale/it/hoepli.xml
|
||||||
|
searchplugins/locale/it/wikipedia-it.xml
|
||||||
|
searchplugins/locale/it/yahoo-it.xml
|
||||||
|
searchplugins/locale/ja/amazon-jp.xml
|
||||||
|
searchplugins/locale/ja/bing.xml
|
||||||
|
searchplugins/locale/ja/ddg.xml
|
||||||
|
searchplugins/locale/ja/google-jp.xml
|
||||||
|
searchplugins/locale/ja/oshiete-goo.xml
|
||||||
|
searchplugins/locale/ja/rakuten.xml
|
||||||
|
searchplugins/locale/ja/twitter-ja.xml
|
||||||
|
searchplugins/locale/ja/wikipedia-ja.xml
|
||||||
|
searchplugins/locale/ja/yahoo-jp-auctions.xml
|
||||||
|
searchplugins/locale/ja/yahoo-jp.xml
|
||||||
|
searchplugins/locale/kk/ddg.xml
|
||||||
|
searchplugins/locale/kk/flip.xml
|
||||||
|
searchplugins/locale/kk/google.xml
|
||||||
|
searchplugins/locale/kk/kaz-kk.xml
|
||||||
|
searchplugins/locale/kk/twitter.xml
|
||||||
|
searchplugins/locale/kk/wikipedia-kk.xml
|
||||||
|
searchplugins/locale/kk/yandex.xml
|
||||||
|
searchplugins/locale/km/amazondotcom.xml
|
||||||
|
searchplugins/locale/km/bing.xml
|
||||||
|
searchplugins/locale/km/ddg.xml
|
||||||
|
searchplugins/locale/km/eBay.xml
|
||||||
|
searchplugins/locale/km/google.xml
|
||||||
|
searchplugins/locale/km/twitter.xml
|
||||||
|
searchplugins/locale/km/wikipedia-km.xml
|
||||||
|
searchplugins/locale/km/yahoo.xml
|
||||||
|
searchplugins/locale/kn/amazondotcom.xml
|
||||||
|
searchplugins/locale/kn/bing.xml
|
||||||
|
searchplugins/locale/kn/ddg.xml
|
||||||
|
searchplugins/locale/kn/google.xml
|
||||||
|
searchplugins/locale/kn/kannadastore.xml
|
||||||
|
searchplugins/locale/kn/wikipedia-kn.xml
|
||||||
|
searchplugins/locale/kn/yahoo-in.xml
|
||||||
|
searchplugins/locale/ko/danawa-kr.xml
|
||||||
|
searchplugins/locale/ko/daum-kr.xml
|
||||||
|
searchplugins/locale/ko/ddg.xml
|
||||||
|
searchplugins/locale/ko/google.xml
|
||||||
|
searchplugins/locale/ko/naver-kr.xml
|
||||||
|
searchplugins/locale/ko/wikipedia-kr.xml
|
||||||
|
searchplugins/locale/lij/amazon-it.xml
|
||||||
|
searchplugins/locale/lij/bing.xml
|
||||||
|
searchplugins/locale/lij/ddg.xml
|
||||||
|
searchplugins/locale/lij/eBay-it.xml
|
||||||
|
searchplugins/locale/lij/google.xml
|
||||||
|
searchplugins/locale/lij/paroledigenova-lij.xml
|
||||||
|
searchplugins/locale/lij/wikipedia-lij.xml
|
||||||
|
searchplugins/locale/lij/yahoo-it.xml
|
||||||
|
searchplugins/locale/lt/amazondotcom.xml
|
||||||
|
searchplugins/locale/lt/bing.xml
|
||||||
|
searchplugins/locale/lt/ddg.xml
|
||||||
|
searchplugins/locale/lt/eBay.xml
|
||||||
|
searchplugins/locale/lt/google.xml
|
||||||
|
searchplugins/locale/lt/twitter.xml
|
||||||
|
searchplugins/locale/lt/wikipedia-lt.xml
|
||||||
|
searchplugins/locale/lv/ddg.xml
|
||||||
|
searchplugins/locale/lv/dict-enlv.xml
|
||||||
|
searchplugins/locale/lv/google.xml
|
||||||
|
searchplugins/locale/lv/salidzinilv.xml
|
||||||
|
searchplugins/locale/lv/sslv.xml
|
||||||
|
searchplugins/locale/lv/wikipedia-lv.xml
|
||||||
|
searchplugins/locale/lv/yahoo.xml
|
||||||
|
searchplugins/locale/mai/bing.xml
|
||||||
|
searchplugins/locale/mai/ddg.xml
|
||||||
|
searchplugins/locale/mai/eBay-in.xml
|
||||||
|
searchplugins/locale/mai/google.xml
|
||||||
|
searchplugins/locale/mai/twitter.xml
|
||||||
|
searchplugins/locale/mai/wikipedia-hi.xml
|
||||||
|
searchplugins/locale/mai/yahoo-in.xml
|
||||||
|
searchplugins/locale/mk/amazondotcom.xml
|
||||||
|
searchplugins/locale/mk/answers.xml
|
||||||
|
searchplugins/locale/mk/bing.xml
|
||||||
|
searchplugins/locale/mk/creativecommons.xml
|
||||||
|
searchplugins/locale/mk/ddg.xml
|
||||||
|
searchplugins/locale/mk/eBay.xml
|
||||||
|
searchplugins/locale/mk/google.xml
|
||||||
|
searchplugins/locale/mk/wikipedia-mk.xml
|
||||||
|
searchplugins/locale/mk/yahoo.xml
|
||||||
|
searchplugins/locale/ml/bing.xml
|
||||||
|
searchplugins/locale/ml/ddg.xml
|
||||||
|
searchplugins/locale/ml/eBay-in.xml
|
||||||
|
searchplugins/locale/ml/google.xml
|
||||||
|
searchplugins/locale/ml/rediff.xml
|
||||||
|
searchplugins/locale/ml/webdunia.xml
|
||||||
|
searchplugins/locale/ml/wikipedia-ml.xml
|
||||||
|
searchplugins/locale/ml/wikipedia.xml
|
||||||
|
searchplugins/locale/mr/amazondotcom.xml
|
||||||
|
searchplugins/locale/mr/creativecommons.xml
|
||||||
|
searchplugins/locale/mr/ddg.xml
|
||||||
|
searchplugins/locale/mr/eBay-in.xml
|
||||||
|
searchplugins/locale/mr/google.xml
|
||||||
|
searchplugins/locale/mr/rediff.xml
|
||||||
|
searchplugins/locale/mr/wikipedia-mr.xml
|
||||||
|
searchplugins/locale/mr/yahoo-in.xml
|
||||||
|
searchplugins/locale/ms/amazondotcom.xml
|
||||||
|
searchplugins/locale/ms/bing.xml
|
||||||
|
searchplugins/locale/ms/ddg.xml
|
||||||
|
searchplugins/locale/ms/eBay.xml
|
||||||
|
searchplugins/locale/ms/google.xml
|
||||||
|
searchplugins/locale/ms/twitter.xml
|
||||||
|
searchplugins/locale/ms/wikipedia-ms.xml
|
||||||
|
searchplugins/locale/ms/yahoo.xml
|
||||||
|
searchplugins/locale/nb-NO/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/nb-NO/bing.xml
|
||||||
|
searchplugins/locale/nb-NO/bok-NO.xml
|
||||||
|
searchplugins/locale/nb-NO/ddg.xml
|
||||||
|
searchplugins/locale/nb-NO/google.xml
|
||||||
|
searchplugins/locale/nb-NO/gulesider-NO.xml
|
||||||
|
searchplugins/locale/nb-NO/qxl-NO.xml
|
||||||
|
searchplugins/locale/nb-NO/wikipedia-NO.xml
|
||||||
|
searchplugins/locale/nb-NO/yahoo-NO.xml
|
||||||
|
searchplugins/locale/nl/bing.xml
|
||||||
|
searchplugins/locale/nl/bolcom-nl.xml
|
||||||
|
searchplugins/locale/nl/ddg.xml
|
||||||
|
searchplugins/locale/nl/google.xml
|
||||||
|
searchplugins/locale/nl/marktplaats-nl.xml
|
||||||
|
searchplugins/locale/nl/wikipedia-nl.xml
|
||||||
|
searchplugins/locale/nn-NO/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/nn-NO/bing.xml
|
||||||
|
searchplugins/locale/nn-NO/bok-NO.xml
|
||||||
|
searchplugins/locale/nn-NO/ddg.xml
|
||||||
|
searchplugins/locale/nn-NO/google.xml
|
||||||
|
searchplugins/locale/nn-NO/gulesider-NO.xml
|
||||||
|
searchplugins/locale/nn-NO/qxl-NO.xml
|
||||||
|
searchplugins/locale/nn-NO/wikipedia-NN.xml
|
||||||
|
searchplugins/locale/or/amazondotcom.xml
|
||||||
|
searchplugins/locale/or/bing.xml
|
||||||
|
searchplugins/locale/or/ddg.xml
|
||||||
|
searchplugins/locale/or/eBay-in.xml
|
||||||
|
searchplugins/locale/or/google.xml
|
||||||
|
searchplugins/locale/or/wikipedia-or.xml
|
||||||
|
searchplugins/locale/or/yahoo-in.xml
|
||||||
|
searchplugins/locale/pa-IN/bing.xml
|
||||||
|
searchplugins/locale/pa-IN/ddg.xml
|
||||||
|
searchplugins/locale/pa-IN/eBay-in.xml
|
||||||
|
searchplugins/locale/pa-IN/google.xml
|
||||||
|
searchplugins/locale/pa-IN/wikipedia-pa.xml
|
||||||
|
searchplugins/locale/pa-IN/yahoo-in.xml
|
||||||
|
searchplugins/locale/pl/allegro-pl.xml
|
||||||
|
searchplugins/locale/pl/ddg.xml
|
||||||
|
searchplugins/locale/pl/google.xml
|
||||||
|
searchplugins/locale/pl/merlin-pl.xml
|
||||||
|
searchplugins/locale/pl/pwn-pl.xml
|
||||||
|
searchplugins/locale/pl/wikipedia-pl.xml
|
||||||
|
searchplugins/locale/pl/wolnelektury-pl.xml
|
||||||
|
searchplugins/locale/pl/wp-pl.xml
|
||||||
|
searchplugins/locale/pt-BR/bing.xml
|
||||||
|
searchplugins/locale/pt-BR/buscape.xml
|
||||||
|
searchplugins/locale/pt-BR/ddg.xml
|
||||||
|
searchplugins/locale/pt-BR/google.xml
|
||||||
|
searchplugins/locale/pt-BR/mercadolivre.xml
|
||||||
|
searchplugins/locale/pt-BR/twitter.xml
|
||||||
|
searchplugins/locale/pt-BR/wikipedia-br.xml
|
||||||
|
searchplugins/locale/pt-BR/yahoo-br.xml
|
||||||
|
searchplugins/locale/pt-PT/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/pt-PT/ddg.xml
|
||||||
|
searchplugins/locale/pt-PT/google.xml
|
||||||
|
searchplugins/locale/pt-PT/priberam.xml
|
||||||
|
searchplugins/locale/pt-PT/sapo.xml
|
||||||
|
searchplugins/locale/pt-PT/wikipedia-ptpt.xml
|
||||||
|
searchplugins/locale/rm/bing.xml
|
||||||
|
searchplugins/locale/rm/ddg.xml
|
||||||
|
searchplugins/locale/rm/google.xml
|
||||||
|
searchplugins/locale/rm/leo_ende_de.xml
|
||||||
|
searchplugins/locale/rm/pledarigrond.xml
|
||||||
|
searchplugins/locale/rm/wikipedia-rm.xml
|
||||||
|
searchplugins/locale/rm/yahoo-ch.xml
|
||||||
|
searchplugins/locale/ro/amazondotcom.xml
|
||||||
|
searchplugins/locale/ro/bing.xml
|
||||||
|
searchplugins/locale/ro/ddg.xml
|
||||||
|
searchplugins/locale/ro/eBay.xml
|
||||||
|
searchplugins/locale/ro/google.xml
|
||||||
|
searchplugins/locale/ro/wikipediaro.xml
|
||||||
|
searchplugins/locale/ro/yahoo.xml
|
||||||
|
searchplugins/locale/ru/ddg.xml
|
||||||
|
searchplugins/locale/ru/google.xml
|
||||||
|
searchplugins/locale/ru/mailru.xml
|
||||||
|
searchplugins/locale/ru/ozonru.xml
|
||||||
|
searchplugins/locale/ru/priceru.xml
|
||||||
|
searchplugins/locale/ru/wikipedia-ru.xml
|
||||||
|
searchplugins/locale/ru/yandex-slovari.xml
|
||||||
|
searchplugins/locale/ru/yandex.xml
|
||||||
|
searchplugins/locale/si/amazondotcom.xml
|
||||||
|
searchplugins/locale/si/answers.xml
|
||||||
|
searchplugins/locale/si/creativecommons.xml
|
||||||
|
searchplugins/locale/si/ddg.xml
|
||||||
|
searchplugins/locale/si/eBay.xml
|
||||||
|
searchplugins/locale/si/google.xml
|
||||||
|
searchplugins/locale/si/wikipedia-si.xml
|
||||||
|
searchplugins/locale/si/yahoo.xml
|
||||||
|
searchplugins/locale/sk/atlas-sk.xml
|
||||||
|
searchplugins/locale/sk/azet-sk.xml
|
||||||
|
searchplugins/locale/sk/ddg.xml
|
||||||
|
searchplugins/locale/sk/dunaj-sk.xml
|
||||||
|
searchplugins/locale/sk/eBay.xml
|
||||||
|
searchplugins/locale/sk/google.xml
|
||||||
|
searchplugins/locale/sk/slovnik-sk.xml
|
||||||
|
searchplugins/locale/sk/wikipedia-sk.xml
|
||||||
|
searchplugins/locale/sk/zoznam-sk.xml
|
||||||
|
searchplugins/locale/sl/ceneji.xml
|
||||||
|
searchplugins/locale/sl/ddg.xml
|
||||||
|
searchplugins/locale/sl/google.xml
|
||||||
|
searchplugins/locale/sl/najdi-si.xml
|
||||||
|
searchplugins/locale/sl/odpiralni.xml
|
||||||
|
searchplugins/locale/sl/twitter.xml
|
||||||
|
searchplugins/locale/sl/wikipedia-sl.xml
|
||||||
|
searchplugins/locale/son/amazon-france.xml
|
||||||
|
searchplugins/locale/son/bing.xml
|
||||||
|
searchplugins/locale/son/cnrtl-tlfi-fr.xml
|
||||||
|
searchplugins/locale/son/ddg.xml
|
||||||
|
searchplugins/locale/son/eBay-france.xml
|
||||||
|
searchplugins/locale/son/google.xml
|
||||||
|
searchplugins/locale/son/wikipedia-fr.xml
|
||||||
|
searchplugins/locale/son/yahoo-france.xml
|
||||||
|
searchplugins/locale/sq/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/sq/bing.xml
|
||||||
|
searchplugins/locale/sq/ddg.xml
|
||||||
|
searchplugins/locale/sq/eBay.xml
|
||||||
|
searchplugins/locale/sq/google.xml
|
||||||
|
searchplugins/locale/sq/wikipedia-sq.xml
|
||||||
|
searchplugins/locale/sq/yahoo.xml
|
||||||
|
searchplugins/locale/sr/amazon-en-GB.xml
|
||||||
|
searchplugins/locale/sr/bing.xml
|
||||||
|
searchplugins/locale/sr/ddg.xml
|
||||||
|
searchplugins/locale/sr/eBay-en-GB.xml
|
||||||
|
searchplugins/locale/sr/google.xml
|
||||||
|
searchplugins/locale/sr/pogodakyu.xml
|
||||||
|
searchplugins/locale/sr/vokabular.xml
|
||||||
|
searchplugins/locale/sr/wikipedia-sr.xml
|
||||||
|
searchplugins/locale/sv-SE/allaannonser-sv-SE.xml
|
||||||
|
searchplugins/locale/sv-SE/bing.xml
|
||||||
|
searchplugins/locale/sv-SE/ddg.xml
|
||||||
|
searchplugins/locale/sv-SE/google.xml
|
||||||
|
searchplugins/locale/sv-SE/prisjakt-sv-SE.xml
|
||||||
|
searchplugins/locale/sv-SE/tyda-sv-SE.xml
|
||||||
|
searchplugins/locale/sv-SE/wikipedia-sv-SE.xml
|
||||||
|
searchplugins/locale/sv-SE/yahoo-sv-SE.xml
|
||||||
|
searchplugins/locale/ta/creativecommons.xml
|
||||||
|
searchplugins/locale/ta/ddg.xml
|
||||||
|
searchplugins/locale/ta/eBay-in.xml
|
||||||
|
searchplugins/locale/ta/google.xml
|
||||||
|
searchplugins/locale/ta/wikipedia-ta.xml
|
||||||
|
searchplugins/locale/ta/yahoo-in.xml
|
||||||
|
searchplugins/locale/te/amazondotcom.xml
|
||||||
|
searchplugins/locale/te/creativecommons.xml
|
||||||
|
searchplugins/locale/te/ddg.xml
|
||||||
|
searchplugins/locale/te/eBay-in.xml
|
||||||
|
searchplugins/locale/te/google.xml
|
||||||
|
searchplugins/locale/te/wikipedia-te.xml
|
||||||
|
searchplugins/locale/te/wiktionary-te.xml
|
||||||
|
searchplugins/locale/te/yahoo-in.xml
|
||||||
|
searchplugins/locale/th/amazondotcom.xml
|
||||||
|
searchplugins/locale/th/bing.xml
|
||||||
|
searchplugins/locale/th/creativecommons.xml
|
||||||
|
searchplugins/locale/th/ddg.xml
|
||||||
|
searchplugins/locale/th/eBay.xml
|
||||||
|
searchplugins/locale/th/google.xml
|
||||||
|
searchplugins/locale/th/longdo.xml
|
||||||
|
searchplugins/locale/th/wikipedia-th.xml
|
||||||
|
searchplugins/locale/th/yahoo.xml
|
||||||
|
searchplugins/locale/tr/amazondotcom.xml
|
||||||
|
searchplugins/locale/tr/ddg.xml
|
||||||
|
searchplugins/locale/tr/eBay.xml
|
||||||
|
searchplugins/locale/tr/google.xml
|
||||||
|
searchplugins/locale/tr/twitter.xml
|
||||||
|
searchplugins/locale/tr/wikipedia-tr.xml
|
||||||
|
searchplugins/locale/tr/yandex-tr.xml
|
||||||
|
searchplugins/locale/uk/ddg.xml
|
||||||
|
searchplugins/locale/uk/google.xml
|
||||||
|
searchplugins/locale/uk/meta-ua.xml
|
||||||
|
searchplugins/locale/uk/metamarket.xml
|
||||||
|
searchplugins/locale/uk/wikipedia-uk.xml
|
||||||
|
searchplugins/locale/uk/yandex.xml
|
||||||
|
searchplugins/locale/uz/amazondotcom.xml
|
||||||
|
searchplugins/locale/uz/bing.xml
|
||||||
|
searchplugins/locale/uz/ddg.xml
|
||||||
|
searchplugins/locale/uz/eBay.xml
|
||||||
|
searchplugins/locale/uz/google.xml
|
||||||
|
searchplugins/locale/uz/twitter.xml
|
||||||
|
searchplugins/locale/uz/wikipedia-uz.xml
|
||||||
|
searchplugins/locale/uz/yahoo.xml
|
||||||
|
searchplugins/locale/vi/5giay.xml
|
||||||
|
searchplugins/locale/vi/baambootratuav.xml
|
||||||
|
searchplugins/locale/vi/creativecommons.xml
|
||||||
|
searchplugins/locale/vi/ddg.xml
|
||||||
|
searchplugins/locale/vi/google.xml
|
||||||
|
searchplugins/locale/vi/muare.xml
|
||||||
|
searchplugins/locale/vi/wikipedia-vi.xml
|
||||||
|
searchplugins/locale/vi/zing-mp3.xml
|
||||||
|
searchplugins/locale/xh/bing.xml
|
||||||
|
searchplugins/locale/xh/ddg.xml
|
||||||
|
searchplugins/locale/xh/google.xml
|
||||||
|
searchplugins/locale/xh/wikipedia.xml
|
||||||
|
searchplugins/locale/zh-CN/amazondotcn.xml
|
||||||
|
searchplugins/locale/zh-CN/baidu.xml
|
||||||
|
searchplugins/locale/zh-CN/baiduzhidao.xml
|
||||||
|
searchplugins/locale/zh-CN/bing.xml
|
||||||
|
searchplugins/locale/zh-CN/creativecommons.xml
|
||||||
|
searchplugins/locale/zh-CN/ddg.xml
|
||||||
|
searchplugins/locale/zh-CN/eachnet.xml
|
||||||
|
searchplugins/locale/zh-CN/google.xml
|
||||||
|
searchplugins/locale/zh-CN/paipai.xml
|
||||||
|
searchplugins/locale/zh-CN/wikipedia-zh-CN.xml
|
||||||
|
searchplugins/locale/zh-TW/creativecommons.xml
|
||||||
|
searchplugins/locale/zh-TW/ddg.xml
|
||||||
|
searchplugins/locale/zh-TW/findbook-zh-TW.xml
|
||||||
|
searchplugins/locale/zh-TW/google.xml
|
||||||
|
searchplugins/locale/zh-TW/wikipedia-zh-TW.xml
|
||||||
|
searchplugins/locale/zh-TW/yahoo-answer-zh-TW.xml
|
||||||
|
searchplugins/locale/zh-TW/yahoo-bid-zh-TW.xml
|
||||||
|
searchplugins/locale/zh-TW/yahoo-zh-TW.xml
|
326
debian/repack.py
vendored
Executable file
326
debian/repack.py
vendored
Executable file
|
@ -0,0 +1,326 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
from optparse import OptionParser
|
||||||
|
import fnmatch
|
||||||
|
import struct
|
||||||
|
import tarfile
|
||||||
|
import zipfile
|
||||||
|
from datetime import datetime, timezone
|
||||||
|
from io import BytesIO
|
||||||
|
import re
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import email.message
|
||||||
|
import urllib.request
|
||||||
|
from urllib.parse import urlparse
|
||||||
|
|
||||||
|
class URLFile(object):
|
||||||
|
'''Simple proxy to urllib.request.urlopen, that responds to seek only if
|
||||||
|
it's called before read. This is enough for tarfile to be happy'''
|
||||||
|
|
||||||
|
def __init__(self, url):
|
||||||
|
self.file = urllib.request.urlopen(url)
|
||||||
|
|
||||||
|
def seekable(self):
|
||||||
|
return True
|
||||||
|
|
||||||
|
def seek(self, offset, whence = os.SEEK_SET):
|
||||||
|
if whence != os.SEEK_SET or offset != 0 or self.read == self._read:
|
||||||
|
raise Exception("unsupported")
|
||||||
|
|
||||||
|
def _read(self, size = -1):
|
||||||
|
return self.file.read(size)
|
||||||
|
|
||||||
|
def read(self, size = -1):
|
||||||
|
self.read = self._read
|
||||||
|
return self._read(size)
|
||||||
|
|
||||||
|
def close(self):
|
||||||
|
self.file.close()
|
||||||
|
|
||||||
|
def dirname(filespec):
|
||||||
|
'''Returns os.path.dirname if a file, and '' if an url'''
|
||||||
|
if urlparse(filespec).scheme:
|
||||||
|
return ''
|
||||||
|
return os.path.dirname(filespec)
|
||||||
|
|
||||||
|
class TarFilterList(object):
|
||||||
|
def __init__(self, filename):
|
||||||
|
self.patterns = {}
|
||||||
|
for filt in open(filename).readlines():
|
||||||
|
f = filt.strip().split(None, 1)
|
||||||
|
if len(f) == 1:
|
||||||
|
[pat] = f
|
||||||
|
cmd = None
|
||||||
|
else:
|
||||||
|
[pat, cmd] = f
|
||||||
|
|
||||||
|
pat = pat.split(os.sep)
|
||||||
|
self.add_pattern(pat, self.patterns, cmd)
|
||||||
|
|
||||||
|
def add_pattern(self, pat, patterns, cmd):
|
||||||
|
if re.search(r'[\[\?\*]', pat[0]):
|
||||||
|
if not '*' in patterns:
|
||||||
|
patterns['*'] = []
|
||||||
|
patterns['*'].append([os.sep.join(pat), cmd, False])
|
||||||
|
else:
|
||||||
|
if len(pat) >= 2:
|
||||||
|
if not pat[0] in patterns:
|
||||||
|
patterns[pat[0]] = {}
|
||||||
|
self.add_pattern(pat[1:], patterns[pat[0]], cmd)
|
||||||
|
else:
|
||||||
|
if not '*' in patterns:
|
||||||
|
patterns['*'] = []
|
||||||
|
patterns['*'].append([pat[0], cmd, False])
|
||||||
|
|
||||||
|
def match(self, name):
|
||||||
|
name = name.split(os.sep)[1:]
|
||||||
|
if len(name) == 0:
|
||||||
|
return False
|
||||||
|
return self._match(name, self.patterns)
|
||||||
|
|
||||||
|
def _match(self, name, patterns):
|
||||||
|
if len(name) > 1 and name[0] in patterns:
|
||||||
|
cmd = self._match(name[1:], patterns[name[0]])
|
||||||
|
if cmd != False:
|
||||||
|
return cmd
|
||||||
|
if '*' in patterns:
|
||||||
|
for pat in patterns['*']:
|
||||||
|
if fnmatch.fnmatch(name[0], pat[0]) or fnmatch.fnmatch(os.sep.join(name), pat[0]):
|
||||||
|
pat[2] = True
|
||||||
|
return pat[1]
|
||||||
|
return False
|
||||||
|
|
||||||
|
def unused(self, patterns=None, root=''):
|
||||||
|
result = []
|
||||||
|
if root:
|
||||||
|
root += '/'
|
||||||
|
if not patterns:
|
||||||
|
patterns = self.patterns
|
||||||
|
for pat in patterns:
|
||||||
|
if pat != '*':
|
||||||
|
result += self.unused(patterns[pat], root + pat)
|
||||||
|
else:
|
||||||
|
for p in patterns[pat]:
|
||||||
|
if not p[2]:
|
||||||
|
result.append(root + p[0])
|
||||||
|
return result
|
||||||
|
|
||||||
|
def file_extension(name):
|
||||||
|
return os.path.splitext(name)[1][1:]
|
||||||
|
|
||||||
|
class ZipAsTar(object):
|
||||||
|
def __init__(self, zip):
|
||||||
|
self.zip = zip
|
||||||
|
self.infos = {}
|
||||||
|
|
||||||
|
def close(self):
|
||||||
|
self.zip.close()
|
||||||
|
|
||||||
|
def extractfile(self, info):
|
||||||
|
return self.zip.open(self.infos[info], mode="r")
|
||||||
|
|
||||||
|
def __iter__(self):
|
||||||
|
for info in self.zip.infolist():
|
||||||
|
tar_info = tarfile.TarInfo(info.filename)
|
||||||
|
self.infos[tar_info] = info.filename
|
||||||
|
tar_info.size = info.file_size
|
||||||
|
mtime = datetime(*info.date_time, tzinfo=timezone.utc)
|
||||||
|
tar_info.mtime = mtime.timestamp()
|
||||||
|
|
||||||
|
extra = info.extra
|
||||||
|
while len(extra) >= 4:
|
||||||
|
signature, length = struct.unpack("<HH", extra[:4])
|
||||||
|
assert len(extra) >= length + 4
|
||||||
|
if signature == 0x5455: # extended timestamps
|
||||||
|
(flags,) = struct.unpack("B", extra[4:5])
|
||||||
|
if flags & 0x1: # mtime
|
||||||
|
assert length >= 5
|
||||||
|
(mtime,) = struct.unpack("<L", extra[5:9])
|
||||||
|
tar_info.mtime = float(mtime)
|
||||||
|
extra = extra[length + 4:]
|
||||||
|
|
||||||
|
tar_info.mode = (info.external_attr >> 16) & 0o777
|
||||||
|
if len(info.filename) > tarfile.LENGTH_NAME:
|
||||||
|
tar_info.pax_headers["path"] = info.filename
|
||||||
|
|
||||||
|
yield tar_info
|
||||||
|
|
||||||
|
|
||||||
|
def filter_archive(orig, new, filt, topdir=None, strip=0, split_off=None):
|
||||||
|
filt = TarFilterList(filt)
|
||||||
|
is_url = urlparse(orig).scheme
|
||||||
|
if orig.endswith(".zip"):
|
||||||
|
if is_url:
|
||||||
|
# zipfile needs to seek so doesn't work with the simple URLFile. Only
|
||||||
|
# the l10n packages are zipfiles and they are small so buffering the
|
||||||
|
# whole archive in memory is fine
|
||||||
|
orig_bytes = urllib.request.urlopen(orig).read()
|
||||||
|
zip = zipfile.ZipFile(BytesIO(orig_bytes))
|
||||||
|
else:
|
||||||
|
zip = zipfile.ZipFile(orig)
|
||||||
|
tar = ZipAsTar(zip)
|
||||||
|
format = tarfile.PAX_FORMAT
|
||||||
|
else:
|
||||||
|
fileobj = URLFile(orig) if is_url else None
|
||||||
|
tar = tarfile.open(orig, "r:" + file_extension(orig), fileobj)
|
||||||
|
format = tar.format
|
||||||
|
|
||||||
|
new_tars = {}
|
||||||
|
|
||||||
|
def apply_filter(info, namefilt):
|
||||||
|
info.name = namefilt(info.name)
|
||||||
|
if "path" in info.pax_headers:
|
||||||
|
info.pax_headers["path"] = namefilt(info.pax_headers["path"])
|
||||||
|
|
||||||
|
this_new = new
|
||||||
|
this_topdir = topdir
|
||||||
|
|
||||||
|
for info in tar:
|
||||||
|
if strip:
|
||||||
|
apply_filter(info, lambda n: "/".join(n.split("/")[strip:]))
|
||||||
|
|
||||||
|
if split_off:
|
||||||
|
first = info.name.partition("/")[0]
|
||||||
|
if first not in split_off:
|
||||||
|
continue
|
||||||
|
this_new = new.replace("%", first)
|
||||||
|
if topdir:
|
||||||
|
this_topdir = topdir.replace("%", first)
|
||||||
|
|
||||||
|
new_tar = new_tars.get(this_new)
|
||||||
|
if not new_tar:
|
||||||
|
if split_off:
|
||||||
|
print(this_new)
|
||||||
|
new_tar = new_tars[this_new] = tarfile.open(
|
||||||
|
this_new + ".new", "w:" + file_extension(this_new), format=format
|
||||||
|
)
|
||||||
|
|
||||||
|
if this_topdir:
|
||||||
|
apply_filter(info, lambda n: "/".join([this_topdir] + n.split("/")[1:]))
|
||||||
|
|
||||||
|
do_filt = filt.match(info.name)
|
||||||
|
if do_filt == None:
|
||||||
|
print("Removing", info.name, file=sys.stderr)
|
||||||
|
continue
|
||||||
|
|
||||||
|
if info.isfile():
|
||||||
|
file = tar.extractfile(info)
|
||||||
|
if do_filt:
|
||||||
|
print("Filtering", info.name, file=sys.stderr)
|
||||||
|
orig = file
|
||||||
|
file = BytesIO()
|
||||||
|
the_filt = lambda l: l
|
||||||
|
if do_filt[0].isalpha():
|
||||||
|
f = do_filt.split(do_filt[1])
|
||||||
|
if f[0] == 's':
|
||||||
|
the_filt = lambda l: re.sub(f[1], f[2],
|
||||||
|
l.decode()).encode('utf-8')
|
||||||
|
else:
|
||||||
|
f = do_filt.split(do_filt[0])
|
||||||
|
if f[2] == 'd':
|
||||||
|
the_filt = lambda l: b'' if re.search(f[1],
|
||||||
|
l.decode()) else l
|
||||||
|
for l in orig.readlines():
|
||||||
|
file.write(the_filt(l))
|
||||||
|
info.size = file.tell()
|
||||||
|
file.seek(0);
|
||||||
|
new_tar.addfile(info, file)
|
||||||
|
else:
|
||||||
|
new_tar.addfile(info)
|
||||||
|
|
||||||
|
tar.close()
|
||||||
|
if split_off:
|
||||||
|
expected_new = set(new.replace("%", s) for s in split_off)
|
||||||
|
got_new = set(new_tars)
|
||||||
|
missing = expected_new - got_new
|
||||||
|
for m in sorted(missing):
|
||||||
|
print(f"Missing {m}")
|
||||||
|
if missing:
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
for new, new_tar in new_tars.items():
|
||||||
|
new_tar.close()
|
||||||
|
os.rename(new_tar.name, new)
|
||||||
|
unused = filt.unused()
|
||||||
|
if unused:
|
||||||
|
print('Unused filters:')
|
||||||
|
print('', '\n '.join(unused))
|
||||||
|
|
||||||
|
def get_package_name():
|
||||||
|
control = os.path.join(os.path.dirname(__file__), "control")
|
||||||
|
return email.message.Message(open(control))["Source"]
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = OptionParser()
|
||||||
|
parser.add_option("-u", "--upstream-version", dest="upstream_version",
|
||||||
|
help="define upstream version number to use when creating the file",
|
||||||
|
metavar="VERSION")
|
||||||
|
parser.add_option("-f", "--filter", dest="filter",
|
||||||
|
help="use the given filter list", metavar="FILE")
|
||||||
|
parser.add_option("-p", "--package", dest="package",
|
||||||
|
help="use the given package name", metavar="NAME")
|
||||||
|
parser.add_option("--strip", dest="strip", type=int, default=0,
|
||||||
|
help="Strip n first elements of the path")
|
||||||
|
parser.add_option("--split-off", dest="split_off",
|
||||||
|
help="Comma-separated list of top-level directories to split in different output tarballs")
|
||||||
|
parser.add_option("-o", "--output", dest="new_file",
|
||||||
|
help="save the filtered tarball as the given file name", metavar="FILE")
|
||||||
|
parser.add_option("-t", "--topdir", dest="topdir",
|
||||||
|
help="replace the top directory with the given name", metavar="NAME")
|
||||||
|
(options, args) = parser.parse_args()
|
||||||
|
|
||||||
|
if not options.upstream_version and not options.new_file:
|
||||||
|
parser.error("Need an upstream version")
|
||||||
|
return
|
||||||
|
|
||||||
|
if len(args) < 1:
|
||||||
|
parser.error("Too few arguments")
|
||||||
|
return
|
||||||
|
if len(args) > 1:
|
||||||
|
parser.error("Too many arguments")
|
||||||
|
return
|
||||||
|
|
||||||
|
if not options.filter:
|
||||||
|
options.filter = os.path.join(os.path.dirname(__file__), "source.filter")
|
||||||
|
if not options.package:
|
||||||
|
options.package = get_package_name()
|
||||||
|
|
||||||
|
if options.new_file:
|
||||||
|
new_file = options.new_file
|
||||||
|
elif options.split_off:
|
||||||
|
parser.error("When using --split-off, --output must be given")
|
||||||
|
|
||||||
|
if options.split_off:
|
||||||
|
split_off = options.split_off.split(",")
|
||||||
|
if options.topdir and "%" not in options.topdir:
|
||||||
|
parser.error("When using --split-off, --topdir must contain a % character")
|
||||||
|
if "%" not in options.new_file:
|
||||||
|
parser.error("When using --split-off, --output must contain a % character")
|
||||||
|
else:
|
||||||
|
split_off = None
|
||||||
|
|
||||||
|
if os.path.islink(args[0]):
|
||||||
|
orig = os.path.realpath(args[0])
|
||||||
|
if not new_file:
|
||||||
|
new_file = args[0]
|
||||||
|
else:
|
||||||
|
orig = args[0]
|
||||||
|
compression = file_extension(orig)
|
||||||
|
if not new_file:
|
||||||
|
new_file = options.package + "_" + options.upstream_version + ".orig.tar." + compression
|
||||||
|
new_file = os.path.realpath(os.path.join(dirname(orig), new_file))
|
||||||
|
|
||||||
|
print(orig, new_file)
|
||||||
|
filter_archive(
|
||||||
|
orig,
|
||||||
|
new_file,
|
||||||
|
options.filter,
|
||||||
|
topdir=options.topdir,
|
||||||
|
strip=options.strip,
|
||||||
|
split_off=split_off,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
338
debian/rules
vendored
Executable file
338
debian/rules
vendored
Executable file
|
@ -0,0 +1,338 @@
|
||||||
|
#!/usr/bin/make -f
|
||||||
|
TESTDIR = $(shell dh_testdir || echo no)
|
||||||
|
ifeq (,$(TESTDIR))
|
||||||
|
include debian/make.mk
|
||||||
|
# Use dpkg-buildflags to get build flags, but exclude -g, that is dealt with
|
||||||
|
# via configure options.
|
||||||
|
dpkg_buildflags = $(and $(1),$(shell DEB_CFLAGS_MAINT_STRIP="-g" DEB_CXXFLAGS_MAINT_STRIP="-g" dpkg-buildflags --get $(1)))
|
||||||
|
$(call lazy,CFLAGS,$$(call dpkg_buildflags,CFLAGS))
|
||||||
|
$(call lazy,CXXFLAGS,$$(call dpkg_buildflags,CXXFLAGS))
|
||||||
|
$(call lazy,CPPFLAGS,$$(call dpkg_buildflags,CPPFLAGS))
|
||||||
|
$(call lazy,LDFLAGS,$$(call dpkg_buildflags,LDFLAGS))
|
||||||
|
|
||||||
|
$(call lazy,DEB_HOST_GNU_TYPE,$$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE))
|
||||||
|
$(call lazy,DEB_BUILD_GNU_TYPE,$$(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE))
|
||||||
|
$(call lazy,DEB_BUILD_ARCH_BITS,$$(shell dpkg-architecture -qDEB_BUILD_ARCH_BITS))
|
||||||
|
$(call lazy,DEB_BUILD_ARCH,$$(shell dpkg-architecture -qDEB_BUILD_ARCH))
|
||||||
|
$(call lazy,DEB_HOST_ARCH,$$(shell dpkg-architecture -qDEB_HOST_ARCH))
|
||||||
|
$(call lazy,DEB_HOST_ARCH_ENDIAN,$$(shell dpkg-architecture -qDEB_HOST_ARCH_ENDIAN))
|
||||||
|
|
||||||
|
PYTHON := PYTHONDONTWRITEBYTECODE=y python3
|
||||||
|
|
||||||
|
PRODUCT := browser
|
||||||
|
include debian/upstream.mk
|
||||||
|
include /usr/share/dpkg/buildopts.mk
|
||||||
|
|
||||||
|
SYSTEM_LIBS = zlib ffi libevent
|
||||||
|
ifeq (,$(filter bullseye,$(DIST)))
|
||||||
|
SYSTEM_LIBS += nspr vpx
|
||||||
|
endif
|
||||||
|
ifeq (,$(filter bullseye bookworm,$(DIST)))
|
||||||
|
SYSTEM_LIBS += nss
|
||||||
|
endif
|
||||||
|
|
||||||
|
define system_lib
|
||||||
|
USE_SYSTEM_$(1) ?= 1
|
||||||
|
SYSTEM_LIBS_VARS += $$(if $$(USE_SYSTEM_$(1)),USE_SYSTEM_$(1))
|
||||||
|
endef
|
||||||
|
$(foreach lib,$(sort $(call uc,$(SYSTEM_LIBS))),$(eval $(call system_lib,$(lib))))
|
||||||
|
|
||||||
|
OFFICIAL_BRANDING := browser/branding/official
|
||||||
|
MOZILLA_OFFICIAL := 1
|
||||||
|
# ESR, Beta and Releases use the official branding
|
||||||
|
ifneq (,$(filter release beta esr%,$(SHORT_SOURCE_CHANNEL)))
|
||||||
|
BRANDING ?= $(OFFICIAL_BRANDING)
|
||||||
|
else
|
||||||
|
ifneq (,$(filter aurora,$(SHORT_SOURCE_CHANNEL)))
|
||||||
|
BRANDING ?= browser/branding/aurora
|
||||||
|
else
|
||||||
|
ifneq (,$(filter central,$(SHORT_SOURCE_CHANNEL)))
|
||||||
|
BRANDING ?= browser/branding/nightly
|
||||||
|
else
|
||||||
|
$(error $(PRODUCT_NAME) branding for $(SOURCE_CHANNEL) is unsupported)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMMON_CONFIGURE_FLAGS += --target=$(DEB_HOST_GNU_TYPE)
|
||||||
|
COMMON_CONFIGURE_FLAGS += --host=$(DEB_BUILD_GNU_TYPE)
|
||||||
|
COMMON_CONFIGURE_FLAGS += --prefix=/usr
|
||||||
|
COMMON_CONFIGURE_FLAGS += --enable-project=$(PRODUCT)
|
||||||
|
|
||||||
|
COMMON_CONFIGURE_FLAGS += $(if $(filter $(BRANDING),$(OFFICIAL_BRANDING)),--enable-official-branding,--with-branding=$(BRANDING))
|
||||||
|
|
||||||
|
# Define PRODUCT, product and Product variables (replacing product with the
|
||||||
|
# actual value of $(PRODUCT))
|
||||||
|
$(PRODUCT) := $(call lc,$(PRODUCT_NAME))
|
||||||
|
uc_first = $(strip $(eval __tmp := $(1))$(foreach l,$(letters),$(eval __tmp := $(subst $(l),$(l) ,$(__tmp))))$(call uc,$(firstword $(__tmp)))$(1:$(firstword $(__tmp))%=%))
|
||||||
|
DISPLAY_NAME := $(call uc_first,$(PRODUCT_DOWNLOAD_NAME))$(if $(filter %-esr,$(PRODUCT_NAME)), ESR)
|
||||||
|
$(call uc,$(PRODUCT)) := $(call uc,$($(PRODUCT)))
|
||||||
|
Product := $(call uc_first,$(PRODUCT))
|
||||||
|
$(Product) := $(DISPLAY_NAME)
|
||||||
|
|
||||||
|
export MOZ_APP_REMOTINGNAME := $($(PRODUCT))
|
||||||
|
|
||||||
|
LIB_DIR := /usr/lib/$($(PRODUCT))
|
||||||
|
SHARE_DIR := /usr/share/$($(PRODUCT))
|
||||||
|
|
||||||
|
# Work around https://github.com/rust-lang/cargo/issues/7147
|
||||||
|
export CARGO_HOME=$(CURDIR)/debian/.cargo
|
||||||
|
|
||||||
|
export MOZBUILD_STATE_PATH = $(CURDIR)/debian/.mozbuild
|
||||||
|
|
||||||
|
LDFLAGS += -Wl,--as-needed
|
||||||
|
|
||||||
|
# Disable debug symbols when building on 32-bits machines, because
|
||||||
|
# a) the rust compiler can't deal with it in the available address
|
||||||
|
# space, and b) the linker can't deal with it in the available address space
|
||||||
|
# either.
|
||||||
|
ifneq (64,$(DEB_BUILD_ARCH_BITS))
|
||||||
|
CONFIGURE_FLAGS += --disable-debug-symbols
|
||||||
|
endif
|
||||||
|
# Also disable them on riscv64, because linking takes so long that buildds
|
||||||
|
# kill the build after 420 minutes of "inactivity".
|
||||||
|
ifeq (riscv64,$(DEB_BUILD_ARCH))
|
||||||
|
CONFIGURE_FLAGS += --disable-debug-symbols
|
||||||
|
endif
|
||||||
|
|
||||||
|
CONFIGURE_FLAGS += --enable-update-channel=$(CHANNEL)
|
||||||
|
|
||||||
|
ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
|
||||||
|
CONFIGURE_FLAGS += --disable-optimize
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS)))
|
||||||
|
CONFIGURE_FLAGS += --enable-debug
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter armel armhf arm64 riscv64,$(DEB_HOST_ARCH)))
|
||||||
|
MOZ_ENABLE_V4L2 = 1
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter i386 amd64 armel armhf arm64,$(DEB_HOST_ARCH)))
|
||||||
|
CRASH_REPORTER = 1
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter mips%,$(DEB_HOST_ARCH)))
|
||||||
|
CONFIGURE_FLAGS += --disable-webrtc
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter ppc64,$(DEB_HOST_ARCH)))
|
||||||
|
CONFIGURE_FLAGS += --enable-linker=bfd
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq (default,$(origin CC))
|
||||||
|
ifneq (,$(filter-out bullseye bookworm,$(DIST)))
|
||||||
|
CC := clang
|
||||||
|
else
|
||||||
|
ifeq ($(DIST),bookworm)
|
||||||
|
CC := gcc-11
|
||||||
|
else
|
||||||
|
CC := gcc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
ifeq (default,$(origin CXX))
|
||||||
|
ifneq (,$(filter-out bullseye bookworm,$(DIST)))
|
||||||
|
CXX := clang++
|
||||||
|
else
|
||||||
|
ifeq ($(DIST),bookworm)
|
||||||
|
CXX := g++-11
|
||||||
|
else
|
||||||
|
CXX := g++
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# When using clang, the build system uses ld.lld instead of BFD ld.
|
||||||
|
ifeq (,$(findstring clang,$(CC)))
|
||||||
|
# Reduce memory usage of the linker at the expense of processing time
|
||||||
|
# This should help on lower-end architectures like arm and mips, which
|
||||||
|
# spend an immense amount of time swapping.
|
||||||
|
LDFLAGS += -Wl,--reduce-memory-overheads
|
||||||
|
# Work around https://sourceware.org/bugzilla/show_bug.cgi?id=30566
|
||||||
|
ifeq (,$(filter i386 amd64 ppc64%,$(DEB_HOST_ARCH)))
|
||||||
|
LDFLAGS += -Wl,--no-keep-memory
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
# Also add execution time and memory usage stats in the logs
|
||||||
|
LDFLAGS += -Wl,--stats
|
||||||
|
|
||||||
|
ifneq (,$(filter mips mipsel,$(DEB_HOST_ARCH)))
|
||||||
|
CONFIGURE_FLAGS += --disable-jit
|
||||||
|
endif
|
||||||
|
|
||||||
|
RUSTFLAGS = --remap-path-prefix=$(CURDIR)=.
|
||||||
|
|
||||||
|
EXPORTS := CC CXX CFLAGS CXXFLAGS CPPFLAGS LDFLAGS MOZILLA_OFFICIAL RUSTFLAGS
|
||||||
|
$(call lazy,CONFIGURE_ENV,$$(foreach export,$(EXPORTS),$$(export)="$$($$(export))"))
|
||||||
|
|
||||||
|
IN_FILES := $(wildcard debian/*.in)
|
||||||
|
ifeq ($(PRODUCT_NAME),firefox)
|
||||||
|
IN_FILES := $(filter-out debian/browser.preinst.in debian/browser.postrm.in debian/$($(PRODUCT)).in,$(IN_FILES))
|
||||||
|
endif
|
||||||
|
preprocessed_filename = $(subst $(PRODUCT),$($(PRODUCT)),$(subst GRE_VERSION,$(GRE_VERSION),$(1:.in=)))
|
||||||
|
define preprocess
|
||||||
|
$(call preprocessed_filename,$(1)): $(1)
|
||||||
|
PREPROCESSED_FILES += $(call preprocessed_filename,$(1))
|
||||||
|
endef
|
||||||
|
$(foreach f,$(IN_FILES),$(eval $(call preprocess, $(f))))
|
||||||
|
|
||||||
|
GENERATED_FILES += $(PREPROCESSED_FILES) debian/l10n/$(PRODUCT)-l10n.control
|
||||||
|
debian/control: debian/rules debian/changelog debian/l10n/$(PRODUCT)-l10n.control
|
||||||
|
|
||||||
|
$(call lazy,L10N_PACKAGES,$$(foreach lang,$$(L10N_LANGS),$($(PRODUCT))-l10n-$$(call lc,$$(lang))))
|
||||||
|
$(call lazy,L10N_PACKAGES_DEPS,$$(shell echo $$(L10N_PACKAGES) | sed 's/ /, /g'))
|
||||||
|
|
||||||
|
debian/l10n/$(PRODUCT)-l10n.control: %: %.in
|
||||||
|
PYTHONIOENCODING=utf-8 LC_ALL=C.UTF-8 $(PYTHON) debian/l10n/gen $(L10N_LANGS) > $@
|
||||||
|
|
||||||
|
$(call lazy,LIBAVCODEC,$$(shell awk -F\" '/libavcodec\.so\./ { sub(/libavcodec\.so\./,"", $$$$2); p = "libavcodec" $$$$2 " | libavcodec-extra" $$$$2; if (d) { d = d " | " p } else { d = p } } END { print d }' dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp))
|
||||||
|
|
||||||
|
$(PREPROCESSED_FILES): stamps/mozbuild-state
|
||||||
|
stamps/mozbuild-state::
|
||||||
|
MOZ_OBJDIR=debian/objdir MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none $(PYTHON) ./mach python --virtualenv build -c ""
|
||||||
|
|
||||||
|
$(PREPROCESSED_FILES): VARS = GRE_VERSION PRODUCT_DOWNLOAD_NAME $(PRODUCT) $(call uc,$(PRODUCT)) $(Product) MOZ_APP_REMOTINGNAME $(SYSTEM_LIBS_VARS) SHORT_SOURCE_CHANNEL DIST MOZ_ENABLE_V4L2 CRASH_REPORTER DEB_HOST_ARCH DEB_HOST_ARCH_ENDIAN
|
||||||
|
debian/control: VARS += L10N_PACKAGES_DEPS PRODUCT LIBAVCODEC
|
||||||
|
$(PREPROCESSED_FILES):
|
||||||
|
MOZ_OBJDIR=debian/objdir MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none $(PYTHON) ./mach python --virtualenv build python/mozbuild/mozbuild/preprocessor.py --marker % -Fsubstitution $(foreach var,$(VARS),-D$(var)="$($(var))" )$< -o $@
|
||||||
|
|
||||||
|
override_dh_auto_configure:
|
||||||
|
|
||||||
|
stamps/configure-check-$(PRODUCT):: stamps/configure-$(PRODUCT)
|
||||||
|
# Ensure --{with,enable}-system options properly set expected variables
|
||||||
|
# according to the definitions in the mozconfig file.
|
||||||
|
@awk -F' *# *| *$$' ' \
|
||||||
|
BEGIN { confs="$(foreach f,autoconf.mk emptyvars.mk,$(CURDIR)/build-$(PRODUCT)/config/$(f))" } \
|
||||||
|
$$1 ~ /system-/ { \
|
||||||
|
if (! $$2) { \
|
||||||
|
print FILENAME ": Missing variable for",$$1; \
|
||||||
|
error=1; \
|
||||||
|
} else { \
|
||||||
|
split($$2,var,"="); \
|
||||||
|
cmd = "grep -l " var[1] " " confs; \
|
||||||
|
cmd | getline dir; \
|
||||||
|
sub(/\/[^\/]*$$/, "", dir); \
|
||||||
|
cmd = "$(MAKE) -C " dir " --no-print-directory echo-variable-" var[1]; \
|
||||||
|
cmd | getline value; \
|
||||||
|
if (value != var[2]) { print $$1, "triggered", var[1] "=" value,"instead of",$$2; error=1 } \
|
||||||
|
} \
|
||||||
|
} \
|
||||||
|
END { if (error) { exit 1 }}' debian/$($(PRODUCT)).mozconfig
|
||||||
|
|
||||||
|
stamps/configure-$(PRODUCT):: debian/$($(PRODUCT)).mozconfig stamps/mozbuild-state
|
||||||
|
ifeq (armhf,$(DEB_BUILD_ARCH))
|
||||||
|
ifeq (,$(shell grep -l cpu:type:aarch64 /sys/devices/system/cpu/modalias))
|
||||||
|
# There is not enough memory in armhf userspace with a 32-bits kernel.
|
||||||
|
$(error Unfortunately cannot build on armhf. Try a 64-bits kernel)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
ifeq (mipsel,$(DEB_BUILD_ARCH))
|
||||||
|
# There is not enough memory in mipsel userspace with neither a 32-bits nor 64-bits kernel.
|
||||||
|
$(error Unfortunately cannot build on mipsel. Try cross-compilation)
|
||||||
|
endif
|
||||||
|
$(if $(wildcard build-$(PRODUCT)),,mkdir build-$(PRODUCT))
|
||||||
|
cd build-$(PRODUCT) && \
|
||||||
|
MOZCONFIG=$(CURDIR)/debian/$($(PRODUCT)).mozconfig \
|
||||||
|
ASFLAGS="-g" \
|
||||||
|
$(CONFIGURE_ENV) \
|
||||||
|
$(CURDIR)/configure \
|
||||||
|
$(COMMON_CONFIGURE_FLAGS) \
|
||||||
|
$(CONFIGURE_FLAGS)
|
||||||
|
|
||||||
|
# Use thinLTO on armhf, to stay in the memory budget with an armhf toolchain.
|
||||||
|
ifeq (armhf,$(DEB_BUILD_ARCH))
|
||||||
|
export DEBIAN_RUST_LTO=-Clto=thin
|
||||||
|
endif
|
||||||
|
|
||||||
|
stamps/build-$(PRODUCT):: stamps/configure-check-$(PRODUCT)
|
||||||
|
+dh_auto_build --parallel --builddirectory=build-$(PRODUCT) -- \
|
||||||
|
_LEAKTEST_FILES=leaktest.py
|
||||||
|
|
||||||
|
L10N_BUILD_STAMPS = $(foreach lang,$(L10N_LANGS),stamps/build-l10n-$(lang))
|
||||||
|
stamps/build-l10n::
|
||||||
|
debian/rules $(addprefix -j,$(DEB_BUILD_OPTION_PARALLEL)) $(L10N_BUILD_STAMPS)
|
||||||
|
|
||||||
|
$(L10N_BUILD_STAMPS):: stamps/build-l10n-%: stamps/mozbuild-state
|
||||||
|
$(if $(wildcard build-l10n/$*),,mkdir -p build-l10n/$*)
|
||||||
|
$(if $(wildcard l10n),,mkdir -p l10n)
|
||||||
|
cd build-l10n/$* && \
|
||||||
|
$(CONFIGURE_ENV) \
|
||||||
|
$(CURDIR)/configure \
|
||||||
|
$(COMMON_CONFIGURE_FLAGS) \
|
||||||
|
--disable-compile-environment \
|
||||||
|
--with-l10n-base=$(CURDIR)/l10n
|
||||||
|
|
||||||
|
$(if $(wildcard l10n/$*),,ln -sf ../l10n-$* l10n/$*)
|
||||||
|
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none $(MAKE) -C build-l10n/$*/$(PRODUCT)/locales langpack-$* MOZ_CHROME_FILE_FORMAT=flat MOZ_LANGPACK_EID=langpack-$*@$($(PRODUCT)).mozilla.org PKG_LANGPACK_BASENAME='$$(MOZ_LANGPACK_EID)' PKG_LANGPACK_PATH=xpi/
|
||||||
|
|
||||||
|
override_dh_auto_build-arch: stamps/build-$(PRODUCT)
|
||||||
|
|
||||||
|
override_dh_auto_build-indep: stamps/build-l10n
|
||||||
|
|
||||||
|
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
|
||||||
|
# Disable tests on stable-security
|
||||||
|
ifeq (,$(findstring ~deb,$(DEBIAN_RELEASE)))
|
||||||
|
# Disable tests until they're fixed
|
||||||
|
#include debian/test.mk
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
override_dh_auto_clean::
|
||||||
|
rm -f $(filter-out debian/control debian/watch,$(GENERATED_FILES))
|
||||||
|
rm -rf stamps l10n $(CARGO_HOME)
|
||||||
|
debian/rules debian/control TESTDIR=
|
||||||
|
|
||||||
|
dh_auto_clean --builddirectory=build-$(PRODUCT)
|
||||||
|
dh_auto_clean --builddirectory=build-l10n
|
||||||
|
find . -name "*.pyc" -o -name "*.pyo" | xargs --no-run-if-empty rm -f
|
||||||
|
rm -rf debian/objdir $(MOZBUILD_STATE_PATH)
|
||||||
|
|
||||||
|
override_dh_auto_install-arch: stamps/install-$(PRODUCT)
|
||||||
|
override_dh_auto_install-indep:
|
||||||
|
|
||||||
|
stamps/install-$(PRODUCT)::
|
||||||
|
dh_auto_install --builddirectory=build-$(PRODUCT) -- installdir=$(LIB_DIR) \
|
||||||
|
MOZ_APP_BASE_VERSION=$(GRE_VERSION) \
|
||||||
|
TAR_CREATE_FLAGS="--exclude=.mkdir.done --hard-dereference -chf" \
|
||||||
|
SIGN_NSS=
|
||||||
|
|
||||||
|
-TZ=UTC unzip -d debian/tmp$(LIB_DIR)/browser debian/tmp$(LIB_DIR)/browser/omni.ja 'defaults/preferences/*'
|
||||||
|
|
||||||
|
L10N_DH_INSTALL_STAMPS = $(foreach lang,$(L10N_LANGS),stamps/dh_install-l10n-$(lang))
|
||||||
|
stamps/dh_install-l10n::
|
||||||
|
debian/rules $(addprefix -j,$(DEB_BUILD_OPTION_PARALLEL)) $(L10N_DH_INSTALL_STAMPS)
|
||||||
|
|
||||||
|
$(L10N_DH_INSTALL_STAMPS):: stamps/dh_install-l10n-%: stamps/build-l10n-%
|
||||||
|
dh_install -p$($(PRODUCT))-l10n-$(call lc,$*) build-l10n/$*/dist/xpi/langpack-$*@$($(PRODUCT)).mozilla.org.xpi $(LIB_DIR)/browser/extensions/
|
||||||
|
|
||||||
|
stamps/dh_install:: debian/noinstall debian/$($(PRODUCT))-symbolic.svg
|
||||||
|
awk '{print "debian/tmp/" $$1 }' < debian/noinstall | xargs rm -r
|
||||||
|
$(foreach size,16 32 48 64 128,mv debian/tmp/usr/lib/$($(PRODUCT))/browser/chrome/icons/default/default$(size).png debian/$($(PRODUCT))/usr/share/icons/hicolor/$(size)x$(size)/apps/$($(PRODUCT)).png;)
|
||||||
|
dh_install
|
||||||
|
dh_missing --fail-missing
|
||||||
|
|
||||||
|
override_dh_install-arch: stamps/dh_install
|
||||||
|
override_dh_install-indep: stamps/dh_install-l10n
|
||||||
|
|
||||||
|
# dwz trips on libxul, after using a lot of memory.
|
||||||
|
override_dh_dwz:
|
||||||
|
dh_dwz -X libxul -X libgkcodecs
|
||||||
|
|
||||||
|
override_dh_strip:
|
||||||
|
dh_strip --dbgsym-migration='$($(PRODUCT))-dbg (<< 49.0-4~)'
|
||||||
|
|
||||||
|
override_dh_strip_nondeterminism:
|
||||||
|
|
||||||
|
override_dh_shlibdeps:
|
||||||
|
dh_shlibdeps -a -l$(CURDIR)/debian/tmp$(LIB_DIR)
|
||||||
|
|
||||||
|
install binary binary-arch binary-indep: $(filter-out %.pc,$(GENERATED_FILES))
|
||||||
|
|
||||||
|
binary binary-arch binary-indep build build-arch build-indep clean install:
|
||||||
|
debian/dh $@
|
||||||
|
|
||||||
|
.PHONY: build clean binary-indep binary-arch binary install
|
||||||
|
|
||||||
|
$(eval ALL_STAMPS := $(shell awk -F:: '$$1 ~ /^stamps\// && !/%/ { print $$1 }' debian/rules) $(L10N_BUILD_STAMPS) $(L10N_DH_INSTALL_STAMPS))
|
||||||
|
$(ALL_STAMPS)::
|
||||||
|
@mkdir -p stamps
|
||||||
|
$(if $(wildcard $@),,touch $@)
|
||||||
|
endif
|
17
debian/source.filter
vendored
Normal file
17
debian/source.filter
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
other-licenses/7zstub/firefox/7zSD.sfx
|
||||||
|
toolkit/mozapps/update/updater/macbuild/Contents/Resources/English.lproj/MainMenu.nib/keyedobjects.nib
|
||||||
|
toolkit/mozapps/update/updater/macbuild/Contents/PkgInfo
|
||||||
|
config/makedep.exe
|
||||||
|
intl/unicharutil/tools/data/case.dat
|
||||||
|
intl/unicharutil/tools/data/cmbcl.dat
|
||||||
|
intl/unicharutil/tools/data/ctype.dat
|
||||||
|
intl/unicharutil/tools/data/decomp.dat
|
||||||
|
intl/unicharutil/tools/data/num.dat
|
||||||
|
netwerk/protocol/ftp/doc/rfc959.txt
|
||||||
|
layout/doc
|
||||||
|
content/xml/tests
|
||||||
|
image/test/reftest/pngsuite-transparency
|
||||||
|
image/test/reftest/reftest.list /pngsuite-transparency/d
|
||||||
|
build/pgo/blueprint/valid.png
|
||||||
|
addon-sdk/source/examples/annotator/data/jquery-1.4.2.min.js
|
||||||
|
addon-sdk/source/examples/reddit-panel/data/jquery-1.4.4.min.js
|
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
3.0 (quilt)
|
58
debian/source/lintian-overrides
vendored
Normal file
58
debian/source/lintian-overrides
vendored
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
# BSD* licenses have slight variations, and giving each one of them a
|
||||||
|
# different name is not very useful.
|
||||||
|
source: dep5-copyright-license-name-not-unique *
|
||||||
|
|
||||||
|
# Ignore JSON "do no evil" license in a test file for a subsystem that
|
||||||
|
# is not part of the browser.
|
||||||
|
source: license-problem-json-evil [dom/system/gonk/tests/marionette/ril_jshint/jshint.js]
|
||||||
|
|
||||||
|
# Ignore missing sources errors for test files (some of which are bogus,
|
||||||
|
# even).
|
||||||
|
source: source-is-missing [*/tests/*]
|
||||||
|
source: source-is-missing [*/test/*]
|
||||||
|
source: source-is-missing [js/src/jit-test/*]
|
||||||
|
source: source-is-missing [js/src/octane/*]
|
||||||
|
source: source-is-missing [testing/*]
|
||||||
|
source: source-is-missing [*/crashtests/*]
|
||||||
|
source: source-is-missing [*/reftests/*]
|
||||||
|
source: source-is-missing [third_party/webkit/PerformanceTests/*]
|
||||||
|
|
||||||
|
# Real source files with really long lines
|
||||||
|
source: source-is-missing [browser/app/profile/firefox.js]
|
||||||
|
source: source-is-missing [modules/libpref/init/all.js]
|
||||||
|
source: source-is-missing [toolkit/content/aboutLogging.js]
|
||||||
|
|
||||||
|
# Ignore missing sources errors for documentation
|
||||||
|
source: source-is-missing [modules/freetype2/docs/*]
|
||||||
|
source: source-is-missing [parser/*.html]
|
||||||
|
source: source-is-missing [security/nss/doc/*]
|
||||||
|
|
||||||
|
# The source for these is in toolkit/components/translation/cld2 with
|
||||||
|
# an accompanying Makefile. It requires emscripten to build, which is
|
||||||
|
# not available on all architectures, so this would require packaging
|
||||||
|
# circumvolutions.
|
||||||
|
source: source-is-missing [toolkit/components/translation/cld2/cld-worker.js]
|
||||||
|
|
||||||
|
# Vendored Windows import libraries.
|
||||||
|
source: unpack-message-for-orig * ar failed for */third_party/rust/winapi-*-pc-windows-gnu/lib/*.a
|
||||||
|
|
||||||
|
# Vendored python modules.
|
||||||
|
source: source-contains-prebuilt-windows-binary [third_party/python/setuptools/setuptools/*.exe]
|
||||||
|
source: source-contains-prebuilt-windows-binary [third_party/python/pip/pip/_vendor/distlib/*.exe]
|
||||||
|
|
||||||
|
# Files for the Windows installer.
|
||||||
|
source: source-contains-prebuilt-windows-binary [other-licenses/nsis/*]
|
||||||
|
source: source-contains-prebuilt-windows-binary [other-licenses/7zstub/*]
|
||||||
|
|
||||||
|
# Test files
|
||||||
|
source: source-contains-prebuilt-windows-binary [netwerk/test/unit/data/signed_win.exe]
|
||||||
|
source: source-contains-prebuilt-windows-binary [toolkit/*/test/unit/*]
|
||||||
|
source: source-contains-prebuilt-windows-binary [toolkit/*/tests/*]
|
||||||
|
source: source-contains-prebuilt-windows-binary [third_party/rust/libloading/tests/*]
|
||||||
|
source: elf-error * [testing/web-platform/tests/tools/third_party/packaging/tests/manylinux/*]
|
||||||
|
|
||||||
|
# Vendored but unused pre-built build-time tools.
|
||||||
|
source: source-contains-prebuilt-windows-binary [toolkit/crashreporter/google-breakpad/src/tools/windows/binaries/*]
|
||||||
|
|
||||||
|
# Vendored but unused.
|
||||||
|
source: source-contains-prebuilt-windows-binary [third_party/libwebrtc/data/voice_engine/stereo_rtp_files/rtpplay.exe]
|
45
debian/test.mk
vendored
Normal file
45
debian/test.mk
vendored
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
LOCALE := fr_FR.UTF-8
|
||||||
|
HAS_LOCALE := $(shell locale -a | grep $(LOCALE:UTF-8=utf8))
|
||||||
|
|
||||||
|
debian/locales/%:
|
||||||
|
mkdir -p debian/locales
|
||||||
|
localedef -f $(word 2,$(subst ., ,$(notdir $@))) -i $(word 1,$(subst ., ,$(notdir $@))) $@
|
||||||
|
|
||||||
|
APP_TESTS := reftest crashtest jstestbrowser
|
||||||
|
TESTS := check xpcshell-tests $(APP_TESTS)
|
||||||
|
|
||||||
|
override_dh_auto_test: $(TESTS)
|
||||||
|
|
||||||
|
ifndef HAS_LOCALE
|
||||||
|
xpcshell-tests: export LOCPATH = $(CURDIR)/debian/locales
|
||||||
|
endif
|
||||||
|
xpcshell-tests: export LC_ALL=$(LOCALE)
|
||||||
|
$(APP_TESTS) xpcshell-tests: XVFB_RUN = xvfb-run -s "-screen 0 1024x768x24"
|
||||||
|
|
||||||
|
ifeq ($(DEB_HOST_ARCH),armel)
|
||||||
|
# Force armel JIT to compile ARMv4T instructions at runtime even when the buildd
|
||||||
|
# is > ARMv4T
|
||||||
|
$(TESTS): export ARM_FORCE_PLATFORM=4
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(TESTS):
|
||||||
|
GNOME22_USER_DIR="$(CURDIR)/build-browser/dist/.gnome2" \
|
||||||
|
HOME="$(CURDIR)/build-browser/dist" \
|
||||||
|
$(XVFB_RUN) $(MAKE) -C build-browser $@ 2>&1 | sed -u 's/^/$@> /'
|
||||||
|
|
||||||
|
xpcshell-tests: $(if $(HAS_LOCALE),,debian/locales/$(LOCALE))
|
||||||
|
|
||||||
|
xpcshell-tests-skip:
|
||||||
|
# This one fails because it supposes some kind of preexisting gnome/mailcap configuration
|
||||||
|
rm -f build-browser/_tests/xpcshell/uriloader/exthandler/tests/unit/test_handlerService.js
|
||||||
|
|
||||||
|
check-skip:
|
||||||
|
# This one fails because it only works in an american time zone. bz#515254
|
||||||
|
rm -f js/src/jit-test/tests/sunspider/check-date-format-tofte.js
|
||||||
|
|
||||||
|
override_dh_auto_clean::
|
||||||
|
rm -rf debian/locales
|
||||||
|
|
||||||
|
$(TESTS): %: %-skip
|
||||||
|
|
||||||
|
.PHONY: test $(TESTS) $(TESTS:%=%-skip)
|
175
debian/upstream.mk
vendored
Normal file
175
debian/upstream.mk
vendored
Normal file
|
@ -0,0 +1,175 @@
|
||||||
|
# Generic rules to help download sources from archive.mozilla.org.
|
||||||
|
# Define the following variables before including this file:
|
||||||
|
# PRODUCT - product codename (e.g. browser)
|
||||||
|
|
||||||
|
include /usr/share/dpkg/pkg-info.mk
|
||||||
|
|
||||||
|
# The VERSION_FILTER transforms upstream version patterns to versions
|
||||||
|
# used in debian/changelog. Versions are to be transformed as follows:
|
||||||
|
# 4.0 -> 4.0
|
||||||
|
# 4.0a1 -> 4.0~a1
|
||||||
|
# 4.0b5 -> 4.0~b5
|
||||||
|
# That should ensure the proper ordering
|
||||||
|
VERSION_FILTER := sed 's/\([0-9]\)\([ab]\)/\1~\2/g'
|
||||||
|
$(call lazy,UPSTREAM_VERSION,$$(shell cat $(PRODUCT)/config/version.txt))
|
||||||
|
GRE_SRCDIR := $(strip $(foreach dir,. mozilla,$(if $(wildcard $(dir)/python/mozbuild/mozbuild/__init__.py),$(dir))))
|
||||||
|
ifndef GRE_SRCDIR
|
||||||
|
$(error Could not determine the top directory for GRE codebase)
|
||||||
|
endif
|
||||||
|
GRE_MILESTONE := $(shell tail -1 $(GRE_SRCDIR)/config/milestone.txt | $(VERSION_FILTER))
|
||||||
|
|
||||||
|
# Construct GRE_VERSION from the first digit in GRE_MILESTONE
|
||||||
|
GRE_VERSION := $(subst ~, ,$(subst ., ,$(GRE_MILESTONE)))
|
||||||
|
export JS_SO_VERSION := $(firstword $(GRE_VERSION))d
|
||||||
|
export GRE_VERSION := $(firstword $(GRE_VERSION))
|
||||||
|
|
||||||
|
# Last version in debian/changelog
|
||||||
|
DEBIAN_SOURCE := $(DEB_SOURCE)
|
||||||
|
DEBIAN_VERSION := $(DEB_VERSION)
|
||||||
|
# Debian part of the above version (anything after the last dash)
|
||||||
|
DEBIAN_RELEASE := $(lastword $(subst -, ,$(DEBIAN_VERSION)))
|
||||||
|
# Upstream part of the debian/changelog version (anything before the last dash)
|
||||||
|
UPSTREAM_RELEASE := $(DEB_VERSION_UPSTREAM)
|
||||||
|
# Aurora builds have the build id in the upstream part of the debian/changelog version
|
||||||
|
export MOZ_BUILD_DATE := $(word 2,$(subst +, ,$(UPSTREAM_RELEASE)))
|
||||||
|
ifndef MOZ_BUILD_DATE
|
||||||
|
export MOZ_BUILD_DATE := $(shell head -1 sourcestamp.txt)
|
||||||
|
endif
|
||||||
|
UPSTREAM_RELEASE := $(firstword $(subst +, ,$(UPSTREAM_RELEASE)))
|
||||||
|
# If the debian part of the version contains ~bpo or ~deb, it's a backport
|
||||||
|
DEBIAN_RELEASE_EXTRA := $(word 2,$(subst ~, ,$(DEBIAN_RELEASE)))
|
||||||
|
DIST = unknown
|
||||||
|
ifneq (,$(filter experimental,$(DEB_DISTRIBUTION)))
|
||||||
|
DIST = experimental
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter testing% unstable sid,$(DEB_DISTRIBUTION)))
|
||||||
|
DIST = trixie
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter bpo% deb%,$(DEBIAN_RELEASE_EXTRA)))
|
||||||
|
DEBIAN_TARGET := $(subst bpo,,$(subst deb,,$(DEBIAN_RELEASE_EXTRA)))
|
||||||
|
ifneq (,$(filter 11%,$(DEBIAN_TARGET)))
|
||||||
|
DIST = bullseye
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter 12%,$(DEBIAN_TARGET)))
|
||||||
|
DIST = bookworm
|
||||||
|
endif
|
||||||
|
ifneq (,$(filter 13%,$(DEBIAN_TARGET)))
|
||||||
|
DIST = trixie
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
PRODUCT_NAME := $(DEBIAN_SOURCE)
|
||||||
|
|
||||||
|
# Check if the version in debian/changelog matches actual upstream version
|
||||||
|
# as VERSION_FILTER transforms it.
|
||||||
|
FILTERED_UPSTREAM_VERSION := $(shell echo $(UPSTREAM_VERSION) | $(VERSION_FILTER))
|
||||||
|
ifneq ($(FILTERED_UPSTREAM_VERSION),$(subst esr,,$(firstword $(subst ~b, ,$(UPSTREAM_RELEASE)))))
|
||||||
|
$(warning Upstream version in debian/changelog ($(UPSTREAM_RELEASE)) does not match actual upstream version ($(FILTERED_UPSTREAM_VERSION)))
|
||||||
|
endif
|
||||||
|
|
||||||
|
VERSION = $(UPSTREAM_RELEASE)
|
||||||
|
$(call lazy,SOURCE_TARBALL_EXT,$$(shell sed -n '/^SOURCE_TAR/s/.*\.tar\.//p' toolkit/mozapps/installer/upload-files.mk))
|
||||||
|
SOURCE_TARBALL = $(DEBIAN_SOURCE)_$(VERSION)$(SOURCE_BUILD_DATE:%=+%).orig.tar.$(SOURCE_TARBALL_EXT)
|
||||||
|
SOURCE_TARBALL_LOCATION = ..
|
||||||
|
|
||||||
|
SOURCE_VERSION = $(subst ~,,$(VERSION))
|
||||||
|
|
||||||
|
# Find the right channel corresponding to the version number
|
||||||
|
ifneq (,$(filter suite mail calendar,$(PRODUCT)))
|
||||||
|
REPO_PREFIX = comm
|
||||||
|
else
|
||||||
|
REPO_PREFIX = mozilla
|
||||||
|
endif
|
||||||
|
ifneq (,$(findstring esr, $(VERSION)))
|
||||||
|
SOURCE_TYPE := releases
|
||||||
|
SHORT_SOURCE_CHANNEL := esr$(firstword $(subst ., ,$(VERSION)))
|
||||||
|
SHORT_L10N_CHANNEL := release
|
||||||
|
CHANNEL := esr
|
||||||
|
else
|
||||||
|
ifneq (,$(findstring ~b, $(VERSION)))
|
||||||
|
# Betas are under releases/
|
||||||
|
SOURCE_TYPE := releases
|
||||||
|
SHORT_SOURCE_CHANNEL := beta
|
||||||
|
CHANNEL := beta
|
||||||
|
else
|
||||||
|
ifneq (,$(filter %~a1, $(VERSION)))
|
||||||
|
# Nightly
|
||||||
|
SOURCE_TYPE := nightly
|
||||||
|
SHORT_SOURCE_CHANNEL := central
|
||||||
|
DOWNLOAD_SOURCE := nightly
|
||||||
|
CHANNEL := nightly
|
||||||
|
else
|
||||||
|
# Release
|
||||||
|
SOURCE_TYPE := releases
|
||||||
|
SHORT_SOURCE_CHANNEL := release
|
||||||
|
CHANNEL := release
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
SOURCE_CHANNEL = $(REPO_PREFIX)-$(SHORT_SOURCE_CHANNEL)
|
||||||
|
ifndef SHORT_L10N_CHANNEL
|
||||||
|
SHORT_L10N_CHANNEL := $(SHORT_SOURCE_CHANNEL)
|
||||||
|
endif
|
||||||
|
|
||||||
|
PRODUCT_DOWNLOAD_NAME := $(firstword $(subst -, ,$(PRODUCT_NAME)))
|
||||||
|
|
||||||
|
BASE_URL = https://archive.mozilla.org/pub/$(PRODUCT_DOWNLOAD_NAME)/$(SOURCE_TYPE)
|
||||||
|
|
||||||
|
ifeq ($(SOURCE_TYPE),releases)
|
||||||
|
SOURCE_URL = $(BASE_URL)/$(SOURCE_VERSION)/source/$(PRODUCT_DOWNLOAD_NAME)-$(SOURCE_VERSION).source.tar.$(SOURCE_TARBALL_EXT)
|
||||||
|
CANDIDATE_BASE_URL = http://archive.mozilla.org/pub/$(PRODUCT_DOWNLOAD_NAME)/candidates/$(SOURCE_VERSION)-candidates
|
||||||
|
CANDIDATE = $(shell curl -s $(CANDIDATE_BASE_URL)/ | sed -n '/href.*build/s/.*>\(build[0-9]*\)\/<.*/\1/p' | tail -1)
|
||||||
|
$(call lazy,SOURCE_REPO_REV,$$(shell curl -s $(CANDIDATE_BASE_URL)/$$(CANDIDATE)/linux-x86_64/en-US/$(PRODUCT_DOWNLOAD_NAME)-$(SOURCE_VERSION).json | python3 -c 'import json, sys; d = json.load(sys.stdin); print(d["moz_source_repo"], d["moz_source_stamp"])'))
|
||||||
|
SOURCE_REV = $(word 2,$(SOURCE_REPO_REV))
|
||||||
|
SOURCE_REPO = $(firstword $(SOURCE_REPO_REV))
|
||||||
|
else
|
||||||
|
ifeq ($(SOURCE_TYPE),nightly)
|
||||||
|
SOURCE_TARBALL_EXT = bz2
|
||||||
|
$(call lazy,LATEST_NIGHTLY,$$(shell $$(PYTHON) debian/latest_nightly.py $(PRODUCT_DOWNLOAD_NAME)-$(DOWNLOAD_SOURCE)))
|
||||||
|
$(call lazy,SOURCE_BUILD_VERSION,$$(shell echo $$(firstword $$(LATEST_NIGHTLY)) | $$(VERSION_FILTER)))
|
||||||
|
SOURCE_BUILD_DATE = $(word 2, $(LATEST_NIGHTLY))
|
||||||
|
SOURCE_URL = $(subst /rev/,/archive/,$(word 3, $(LATEST_NIGHTLY))).tar.bz2
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
L10N_REPO := https://hg.mozilla.org/l10n-central
|
||||||
|
|
||||||
|
ifeq (file,$(origin VERSION))
|
||||||
|
$(call lazy,L10N_CHANGESETS,$$(shell $$(PYTHON) debian/l10n_revs.py < $(PRODUCT)/locales/l10n-changesets.json))
|
||||||
|
else
|
||||||
|
SOURCE_REV ?= $(patsubst %.tar.$(SOURCE_TARBALL_EXT),%,$(notdir $(SOURCE_URL)))
|
||||||
|
SOURCE_REPO ?= $(patsubst %/,%,$(dir $(patsubst %/,%,$(dir $(SOURCE_URL)))))
|
||||||
|
|
||||||
|
$(call lazy,L10N_CHANGESETS,$$(shell curl -sL $(SOURCE_REPO)/raw-file/$(SOURCE_REV)/$(PRODUCT)/locales/l10n-changesets.json | $$(PYTHON) debian/l10n_revs.py))
|
||||||
|
endif
|
||||||
|
|
||||||
|
L10N_REV = $(subst $1:,,$(filter $1:%,$(L10N_CHANGESETS)))
|
||||||
|
L10N_LANGS = $(foreach lang,$(L10N_CHANGESETS),$(firstword $(subst :, ,$(lang))))
|
||||||
|
L10N_REVS = $(sort $(foreach lang,$(L10N_LANGS),$(call L10N_REV,$(lang))))
|
||||||
|
THE_L10N_REV = $(if $(filter 1,$(words $(L10N_REVS))),$(L10N_REVS),$(error multiple l10n revisions))
|
||||||
|
|
||||||
|
ifneq (,$(filter dump dump-% import download,$(MAKECMDGOALS)))
|
||||||
|
L10N_TARBALL = $(SOURCE_TARBALL_LOCATION)/$(SOURCE_TARBALL:%.orig.tar.$(SOURCE_TARBALL_EXT)=%.orig-l10n-$1.tar.bz2)
|
||||||
|
L10N_TARBALLS = $(foreach lang,$(L10N_LANGS),$(call L10N_TARBALL,$(lang)))
|
||||||
|
|
||||||
|
ALL_TARBALLS = $(SOURCE_TARBALL_LOCATION)/$(SOURCE_TARBALL) $(L10N_TARBALLS)
|
||||||
|
|
||||||
|
download: $(ALL_TARBALLS)
|
||||||
|
|
||||||
|
import: $(ALL_TARBALLS)
|
||||||
|
debian/import-tar.py $(addprefix -H ,$(BRANCH)) $< | git fast-import
|
||||||
|
|
||||||
|
$(SOURCE_TARBALL_LOCATION)/$(SOURCE_TARBALL): debian/source.filter
|
||||||
|
$(if $(filter-out $(VERSION),$(SOURCE_BUILD_VERSION)),$(error Downloaded version ($(SOURCE_BUILD_VERSION)) does not match requested version ($(VERSION))))
|
||||||
|
debian/repack.py -o $@ $(SOURCE_URL)
|
||||||
|
|
||||||
|
ifneq (1,$(words $(L10N_REVS)))
|
||||||
|
$(L10N_TARBALLS): $(SOURCE_TARBALL_LOCATION)/$(SOURCE_TARBALL:%.orig.tar.$(SOURCE_TARBALL_EXT)=%.orig-l10n-%.tar.bz2): debian/l10n.filter
|
||||||
|
debian/repack.py -o $@ -t $* -f debian/l10n.filter $(L10N_REPO)/$*/archive/$(call L10N_REV,$*).zip
|
||||||
|
else
|
||||||
|
COMMA=,
|
||||||
|
$(subst -l10n-,%,$(L10N_TARBALLS)): debian/l10n.filter
|
||||||
|
debian/repack.py -o $(call L10N_TARBALL,%) --strip 1 --split-off $(subst $(NULL) $(NULL),$(COMMA),$(L10N_LANGS)) -t l10n-% -f debian/l10n.filter https://github.com/mozilla-l10n/firefox-l10n/archive/$(THE_L10N_REV).tar.gz
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
.PHONY: download
|
10
debian/vendor.js
vendored
Normal file
10
debian/vendor.js
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
pref("distribution.searchplugins.defaultLocale", "en-US");
|
||||||
|
// Forbid application updates
|
||||||
|
pref("app.update.enabled", false, locked);
|
||||||
|
|
||||||
|
pref("devtools.webide.autoinstallADBHelper", false);
|
||||||
|
pref("devtools.webide.autoinstallFxdtAdapters", false);
|
||||||
|
|
||||||
|
pref("extensions.unsignedScopes", 12);
|
||||||
|
|
||||||
|
pref("spellchecker.dictionary_path", "/usr/share/hunspell");
|
3
debian/watch
vendored
Normal file
3
debian/watch
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
version=3
|
||||||
|
opts=dversionmangle=s/^(\d\.[\d\.]+)\+dfsg$/$1/ \
|
||||||
|
https://archive.mozilla.org/pub/firefox/releases/([\d\.]+)/source/firefox-([\d\.]+)[\.-]source\.tar\.xz debian python3 debian/repack.py
|
9
debian/watch.in
vendored
Normal file
9
debian/watch.in
vendored
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
%define firefox_esr firefox-esr
|
||||||
|
%if browser == firefox_esr
|
||||||
|
%define suffix esr
|
||||||
|
%else
|
||||||
|
%define suffix
|
||||||
|
%endif
|
||||||
|
version=3
|
||||||
|
opts=dversionmangle=s/^(\d\.[\d\.]+)\+dfsg$/$1/ \
|
||||||
|
https://archive.mozilla.org/pub/@PRODUCT_DOWNLOAD_NAME@/releases/([\d\.]+@suffix@)/source/@PRODUCT_DOWNLOAD_NAME@-([\d\.]+@suffix@)[\.-]source\.tar\.xz debian python3 debian/repack.py
|
Loading…
Add table
Add a link
Reference in a new issue