firefox: test firefox v133 release
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 7 KiB |
|
|
@ -40,8 +40,9 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
#rightBox {
|
#rightBox {
|
||||||
margin-left: 30px;
|
background-size: auto 64px;
|
||||||
margin-right: 30px;
|
margin-inline: 30px;
|
||||||
|
padding-top: 64px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#bottomBox {
|
#bottomBox {
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 6.9 KiB |
|
|
@ -33,15 +33,6 @@ index c5f7cf3a..f0124235 100644
|
||||||
diff -Nru a/browser/base/content/test/static/browser_all_files_referenced.js b/browser/base/content/test/static/browser_all_files_referenced.js
|
diff -Nru a/browser/base/content/test/static/browser_all_files_referenced.js b/browser/base/content/test/static/browser_all_files_referenced.js
|
||||||
--- a/browser/base/content/test/static/browser_all_files_referenced.js 2022-05-22 09:35:55.336673325 +0000
|
--- a/browser/base/content/test/static/browser_all_files_referenced.js 2022-05-22 09:35:55.336673325 +0000
|
||||||
+++ b/browser/base/content/test/static/browser_all_files_referenced.js 2022-05-22 21:50:33.783348501 +0000
|
+++ b/browser/base/content/test/static/browser_all_files_referenced.js 2022-05-22 21:50:33.783348501 +0000
|
||||||
@@ -32,8 +32,6 @@
|
|
||||||
"chrome://activity-stream/content/data/content/assets/remote/",
|
|
||||||
"chrome://browser/content/assets/moz-vpn.svg",
|
|
||||||
"chrome://browser/content/assets/vpn-logo.svg",
|
|
||||||
- "chrome://browser/content/assets/focus-promo.png",
|
|
||||||
- "chrome://browser/content/assets/klar-qr-code.svg",
|
|
||||||
|
|
||||||
// These app marketplace icons are referenced based on the user's locale
|
|
||||||
// in browser/components/newtab/content-src/aboutwelcome/components/MobileDownloads.jsx
|
|
||||||
@@ -145,15 +145,6 @@ var whitelist = [
|
@@ -145,15 +145,6 @@ var whitelist = [
|
||||||
// extensions/pref/autoconfig/src/nsReadConfig.cpp
|
// extensions/pref/autoconfig/src/nsReadConfig.cpp
|
||||||
{ file: "resource://gre/defaults/autoconfig/prefcalls.js" },
|
{ file: "resource://gre/defaults/autoconfig/prefcalls.js" },
|
||||||
|
|
@ -790,3 +781,16 @@ diff -Nru a/browser/components/privatebrowsing/content/assets/klar-qr-code.svg b
|
||||||
-</defs>
|
-</defs>
|
||||||
-</svg>
|
-</svg>
|
||||||
|
|
||||||
|
diff --git a/browser/base/content/test/static/browser_all_files_referenced.js b/browser/base/content/test/static/browser_all_files_referenced.js
|
||||||
|
index 3888af10..1d6c606f 100644
|
||||||
|
--- a/browser/base/content/test/static/browser_all_files_referenced.js
|
||||||
|
+++ b/browser/base/content/test/static/browser_all_files_referenced.js
|
||||||
|
@@ -41,8 +41,6 @@ var gExceptionPaths = [
|
||||||
|
"chrome://activity-stream/content/data/content/assets/euo-chatbot.svg",
|
||||||
|
"chrome://browser/content/assets/moz-vpn.svg",
|
||||||
|
"chrome://browser/content/assets/vpn-logo.svg",
|
||||||
|
- "chrome://browser/content/assets/focus-promo.png",
|
||||||
|
- "chrome://browser/content/assets/klar-qr-code.svg",
|
||||||
|
"chrome://browser/content/asrouter/assets/fox-with-box-on-cloud.svg",
|
||||||
|
"chrome://browser/content/asrouter/assets/fox-with-devices.svg",
|
||||||
|
"chrome://browser/content/asrouter/assets/fox-with-locked-box.svg",
|
||||||
|
|
|
||||||
|
|
@ -24,3 +24,66 @@ index 12fef6c..c52b65e 100644
|
||||||
const { expectedTimestamp, lastEtag = "", filters = {} } = options;
|
const { expectedTimestamp, lastEtag = "", filters = {} } = options;
|
||||||
|
|
||||||
let url = serverUrl + Utils.CHANGES_PATH;
|
let url = serverUrl + Utils.CHANGES_PATH;
|
||||||
|
diff --git a/toolkit/components/telemetry/app/TelemetryUtils.sys.mjs b/toolkit/components/telemetry/app/TelemetryUtils.sys.mjs
|
||||||
|
index 803d52a1..1a3ef5ba 100644
|
||||||
|
--- a/toolkit/components/telemetry/app/TelemetryUtils.sys.mjs
|
||||||
|
+++ b/toolkit/components/telemetry/app/TelemetryUtils.sys.mjs
|
||||||
|
@@ -124,6 +124,11 @@ export var TelemetryUtils = {
|
||||||
|
* Takes a date and returns it truncated to a date with daily precision.
|
||||||
|
*/
|
||||||
|
truncateToDays(date) {
|
||||||
|
+ console.warn("Function 'truncateToDays' called with:", date);
|
||||||
|
+ if (!date || !(date instanceof Date)) {
|
||||||
|
+ console.warn("Function 'truncateToDays' disabled in Abrowser due to privacy concerns. Received invalid or undefined date.");
|
||||||
|
+ return null; // Retorna null para evitar errores posteriores
|
||||||
|
+ }
|
||||||
|
return new Date(
|
||||||
|
date.getFullYear(),
|
||||||
|
date.getMonth(),
|
||||||
|
@@ -172,6 +172,10 @@ export var TelemetryUtils = {
|
||||||
|
* @return {Object} The Date object representing the next midnight.
|
||||||
|
*/
|
||||||
|
getNextMidnight(date) {
|
||||||
|
+ if (!date || !(date instanceof Date)) {
|
||||||
|
+ console.warn("Function 'getNextMidnight' disabled in Abrowser due to privacy concerns.");
|
||||||
|
+ return null;
|
||||||
|
+ }
|
||||||
|
let nextMidnight = new Date(this.truncateToDays(date));
|
||||||
|
nextMidnight.setDate(nextMidnight.getDate() + 1);
|
||||||
|
return nextMidnight;
|
||||||
|
@@ -185,6 +189,10 @@ export var TelemetryUtils = {
|
||||||
|
* is not within the midnight tolerance.
|
||||||
|
*/
|
||||||
|
getNearestMidnight(date, tolerance) {
|
||||||
|
+ if (!date || !(date instanceof Date)) {
|
||||||
|
+ console.warn("Function 'getNearestMidnight' disabled in Abrowser due to privacy concerns.");
|
||||||
|
+ return null;
|
||||||
|
+ }
|
||||||
|
let lastMidnight = this.truncateToDays(date);
|
||||||
|
if (this.areTimesClose(date.getTime(), lastMidnight.getTime(), tolerance)) {
|
||||||
|
return lastMidnight;
|
||||||
|
diff --git a/toolkit/components/telemetry/app/TelemetryScheduler.sys.mjs b/toolkit/components/telemetry/app/TelemetryScheduler.sys.mjs
|
||||||
|
index 539447a..43d846b 100644
|
||||||
|
--- a/toolkit/components/telemetry/app/TelemetryScheduler.sys.mjs
|
||||||
|
+++ b/toolkit/components/telemetry/app/TelemetryScheduler.sys.mjs
|
||||||
|
@@ -183,8 +183,20 @@ export var TelemetryScheduler = {
|
||||||
|
},
|
||||||
|
|
||||||
|
_sentPingToday(pingTime, nowDate) {
|
||||||
|
+ // Validar 'nowDate' antes de usarlo
|
||||||
|
+ if (!nowDate || !(nowDate instanceof Date)) {
|
||||||
|
+ console.warn("Invalid 'nowDate' passed to _sentPingToday. Function disabled in Abrowser due to privacy concerns.");
|
||||||
|
+ return false; // Devolvemos 'false' para evitar errores
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
// This is today's date and also the previous midnight (0:00).
|
||||||
|
const todayDate = TelemetryUtils.truncateToDays(nowDate);
|
||||||
|
+
|
||||||
|
+ if (!todayDate) {
|
||||||
|
+ console.warn("TelemetryUtils.truncateToDays returned null. Skipping _sentPingToday.");
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
// We consider a ping sent for today if it occured after or at 00:00 today.
|
||||||
|
return pingTime >= todayDate.getTime();
|
||||||
|
},
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"schema": 40960,
|
||||||
|
"imageSize": 48,
|
||||||
|
"attachment": {
|
||||||
|
"hash": "0b077376b224b66159130f587371d67f97454fd692296c449590a9123591c9f6",
|
||||||
|
"size": 3441,
|
||||||
|
"filename": "trisquel-packages-48-firefox.png",
|
||||||
|
"location": "main-workspace/search-config-icons/b5fd21a8-e369-477f-a3f2-b47a370f9030.png",
|
||||||
|
"mimetype": "image/png"
|
||||||
|
},
|
||||||
|
"engineIdentifiers": [
|
||||||
|
"trisquel-packages"
|
||||||
|
],
|
||||||
|
"filter_expression": "env.appinfo.ID == \"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}\"",
|
||||||
|
"id": "b5fd21a8-e369-477f-a3f2-b47a370f9030",
|
||||||
|
"last_modified": 1734316560
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 4.4 KiB |
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"schema": 45056,
|
||||||
|
"imageSize": 48,
|
||||||
|
"attachment": {
|
||||||
|
"hash": "93bc9a505442520b44ae5ffb880979943826308bcc051b966e1cbd67dbc64125",
|
||||||
|
"size": 4493,
|
||||||
|
"filename": "trisquel-48-firefox.png",
|
||||||
|
"location": "main-workspace/search-config-icons/b99ed276-9557-4492-8bbb-d59826381893",
|
||||||
|
"mimetype": "image/png"
|
||||||
|
},
|
||||||
|
"engineIdentifiers": [
|
||||||
|
"trisquel"
|
||||||
|
],
|
||||||
|
"filter_expression": "env.appinfo.ID == \"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}\"",
|
||||||
|
"id": "b99ed276-9557-4492-8bbb-d59826381893",
|
||||||
|
"last_modified": 1734316560
|
||||||
|
}
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
#
|
#
|
||||||
|
|
||||||
VERSION=117
|
VERSION=118
|
||||||
EXTERNAL='deb-src http://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu $UPSTREAM main'
|
EXTERNAL='deb-src http://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu $UPSTREAM main'
|
||||||
REPOKEY=9BDB3D89CE49EC21
|
REPOKEY=9BDB3D89CE49EC21
|
||||||
|
|
||||||
|
|
@ -79,8 +79,8 @@ sed -i '/browser.theme.colorway-closet/s|true|false|' $BAP_FirefoxJs
|
||||||
##disable newtab intro - check adjustment for versions greater than 106
|
##disable newtab intro - check adjustment for versions greater than 106
|
||||||
#grep -rl browser.newtabpage.introShown |xargs -r sed -i '/browser.newtabpage.introShown/s|true|false|'
|
#grep -rl browser.newtabpage.introShown |xargs -r sed -i '/browser.newtabpage.introShown/s|true|false|'
|
||||||
##Remove mailto handlers. 110
|
##Remove mailto handlers. 110
|
||||||
# More info at $DATA/patch_changes/006_remova_mailto_handlers_correctly.patch
|
##More info at $DATA/patch_changes/006_remova_mailto_handlers_correctly.patch
|
||||||
# keep contectRelevancy disabled (first appearence is false thus using /bin/sed)
|
# keep contentRelevancy disabled (first appearence is false thus using /bin/sed)
|
||||||
/bin/sed -i '/"toolkit.contentRelevancy.ingestEnabled"/s|,.*)|, false)|' $BAP_FirefoxJs
|
/bin/sed -i '/"toolkit.contentRelevancy.ingestEnabled"/s|,.*)|, false)|' $BAP_FirefoxJs
|
||||||
|
|
||||||
# Replace ubufox recommendation
|
# Replace ubufox recommendation
|
||||||
|
|
@ -111,7 +111,7 @@ grep -rl toolkit.telemetry.newProfilePing.enabled | xargs -r sed -i '/toolkit.te
|
||||||
grep -rl toolkit.telemetry.firstShutdownPing.enabled | xargs -r sed -i '/toolkit.telemetry.firstShutdownPing.enabled/s|true|false|'
|
grep -rl toolkit.telemetry.firstShutdownPing.enabled | xargs -r sed -i '/toolkit.telemetry.firstShutdownPing.enabled/s|true|false|'
|
||||||
grep -rl toolkit.telemetry.bhrPing.enabled | xargs -r sed -i '/toolkit.telemetry.bhrPing.enabled/s|true|false|'
|
grep -rl toolkit.telemetry.bhrPing.enabled | xargs -r sed -i '/toolkit.telemetry.bhrPing.enabled/s|true|false|'
|
||||||
# fixed by https://bugzilla.mozilla.org/show_bug.cgi?id=1868988
|
# fixed by https://bugzilla.mozilla.org/show_bug.cgi?id=1868988
|
||||||
grep -rl security.certerrors.recordEventTelemetry | xargs -r sed -i '/security.certerrors.recordEventTelemetry/s|true|false|'
|
#grep -rl security.certerrors.recordEventTelemetry | xargs -r sed -i '/security.certerrors.recordEventTelemetry/s|true|false|'
|
||||||
grep -rl services.sync.telemetry.maxPayloadCount modules/ | xargs -r sed -i '/services.sync.telemetry.maxPayloadCount/s|500|-1|'
|
grep -rl services.sync.telemetry.maxPayloadCount modules/ | xargs -r sed -i '/services.sync.telemetry.maxPayloadCount/s|500|-1|'
|
||||||
grep -rl services.sync.telemetry.submissionInterval modules/ | xargs -r sed -i '/services.sync.telemetry.submissionInterval/s|43200|-1|'
|
grep -rl services.sync.telemetry.submissionInterval modules/ | xargs -r sed -i '/services.sync.telemetry.submissionInterval/s|43200|-1|'
|
||||||
echo 'pref("dom.security.unexpected_system_load_telemetry_enabled", false);' | tee -a $BAP_FirefoxJs
|
echo 'pref("dom.security.unexpected_system_load_telemetry_enabled", false);' | tee -a $BAP_FirefoxJs
|
||||||
|
|
@ -123,6 +123,11 @@ grep -rl browser.translations.automaticallyPopup modules/ | xargs -r sed -i '/br
|
||||||
# Disable Firefox Relay
|
# Disable Firefox Relay
|
||||||
sed -i '/signon.firefoxRelay.feature/c pref("signon.firefoxRelay.feature", "disabled");' $BAP_FirefoxJs
|
sed -i '/signon.firefoxRelay.feature/c pref("signon.firefoxRelay.feature", "disabled");' $BAP_FirefoxJs
|
||||||
|
|
||||||
|
# Disable autoupdate GMP chromium repo & extensions
|
||||||
|
sed -i '/media.gmp-manager.chromium-update-url/s|https://update.googleapis.com/service.*"|"|' $BAP_FirefoxJs
|
||||||
|
sed -i 's|\(pref("media\.gmp-widevinecdm-l1\.chromium-guid", \)"[^"]*"|\1""|' $BAP_FirefoxJs
|
||||||
|
sed -i 's|\(pref("media\.gmp-widevinecdm\.chromium-guid", \)"[^"]*"|\1""|' $BAP_FirefoxJs
|
||||||
|
|
||||||
# Update third_party/rust/glean/src/configuration.rs sha256sum at third_party/rust/glean/.cargo-checksum.json
|
# Update third_party/rust/glean/src/configuration.rs sha256sum at third_party/rust/glean/.cargo-checksum.json
|
||||||
GLEAN_CONF_RS_MODIFIED=$(sha256sum third_party/rust/glean/src/configuration.rs|awk '{print$1}')
|
GLEAN_CONF_RS_MODIFIED=$(sha256sum third_party/rust/glean/src/configuration.rs|awk '{print$1}')
|
||||||
sed_csum $GLEAN_CONF_RS_INITIAL \
|
sed_csum $GLEAN_CONF_RS_INITIAL \
|
||||||
|
|
@ -172,18 +177,24 @@ rm debian/patches/ubuntu-bookmarks*
|
||||||
cp $DATA/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/
|
cp $DATA/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/
|
||||||
cp $DATA/newtab/*.png browser/components/newtab/data/content/tippytop/images/
|
cp $DATA/newtab/*.png browser/components/newtab/data/content/tippytop/images/
|
||||||
|
|
||||||
# Custom DDG
|
|
||||||
cp browser/components/search/extensions/ddg browser/components/search/extensions/ddg-html -a
|
|
||||||
sed 's|/duckduckgo.com/|/html.duckduckgo.com/html/|' -i browser/components/search/extensions/ddg-html/manifest.json
|
|
||||||
sed 's|DuckDuckGo|DuckDuckGo (HTML)|' -i browser/components/search/extensions/ddg-html/manifest.json
|
|
||||||
sed 's|ddg@|ddg-html@|' -i browser/components/search/extensions/ddg-html/manifest.json
|
|
||||||
# disable ads, disable redirect
|
|
||||||
#sed '/search/s|q=|k1=-1\&kd=-1\&ko=1\&q=|' -i browser/components/search/extensions/ddg/manifest.json
|
|
||||||
|
|
||||||
#Trisquel custom search engines
|
#Trisquel custom search engines
|
||||||
cp -a $DATA/searchplugins/* browser/components/search/extensions/
|
#cp -a $DATA/searchplugins/* browser/components/search/extensions/
|
||||||
/bin/sed "/\"data\": \[/ r $DATA/searchplugins/trisquel-v2.json" -i ./services/settings/dumps/main/search-config-v2.json
|
/bin/sed "/\"data\": \[/ r $DATA/searchplugins/trisquel-v2.json" -i ./services/settings/dumps/main/search-config-v2.json
|
||||||
/bin/sed "/\"data\": \[/ r $DATA/searchplugins/trisquel-packages-v2.json" -i ./services/settings/dumps/main/search-config-v2.json
|
/bin/sed "/\"data\": \[/ r $DATA/searchplugins/trisquel-packages-v2.json" -i ./services/settings/dumps/main/search-config-v2.json
|
||||||
|
# Setup trisquel's searchengine icons
|
||||||
|
## copy icons and json definitons.
|
||||||
|
cp $DATA/trisquel-search-icons/b99ed276-9557-4492-8bbb-d59826381893.png \
|
||||||
|
services/settings/dumps/main/search-config-icons/b99ed276-9557-4492-8bbb-d59826381893
|
||||||
|
cp $DATA/trisquel-search-icons/b99ed276-trisquel.json \
|
||||||
|
services/settings/dumps/main/search-config-icons/b99ed276-9557-4492-8bbb-d59826381893.meta.json
|
||||||
|
cp $DATA/trisquel-search-icons/b5fd21a8-e369-477f-a3f2-b47a370f9030.png \
|
||||||
|
services/settings/dumps/main/search-config-icons/b5fd21a8-e369-477f-a3f2-b47a370f9030
|
||||||
|
cp $DATA/trisquel-search-icons/b5fd21a8-trisquel-packages.json \
|
||||||
|
services/settings/dumps/main/search-config-icons/b5fd21a8-e369-477f-a3f2-b47a370f9030.meta.json
|
||||||
|
jq --slurpfile newIcon1 "$DATA/trisquel-search-icons/b99ed276-trisquel.json" \
|
||||||
|
--slurpfile newIcon2 "$DATA/trisquel-search-icons/b5fd21a8-trisquel-packages.json" \
|
||||||
|
'.data += [$newIcon1[0], $newIcon2[0]]' services/settings/dumps/main/search-config-icons.json > tmp-s-c-i.json && \
|
||||||
|
mv tmp-s-c-i.json services/settings/dumps/main/search-config-icons.json
|
||||||
|
|
||||||
echo "Customizing search engines..."
|
echo "Customizing search engines..."
|
||||||
# Reprocess search preconfiguration dump
|
# Reprocess search preconfiguration dump
|
||||||
|
|
@ -214,6 +225,9 @@ cp -a $DATA/branding/* browser/branding/official
|
||||||
cp -a $DATA/branding/* browser/branding/unofficial
|
cp -a $DATA/branding/* browser/branding/unofficial
|
||||||
cp -a $DATA/branding/* browser/branding/nightly
|
cp -a $DATA/branding/* browser/branding/nightly
|
||||||
cp -a $DATA/branding/* browser/branding/aurora
|
cp -a $DATA/branding/* browser/branding/aurora
|
||||||
|
# We are using unofficial but also should have abrowser word on the about window.
|
||||||
|
cp browser/branding/official/content/jar.mn browser/branding/unofficial/content/jar.mn
|
||||||
|
echo '#warningDesc, #communityExperimentalDesc, #communityDesc, #contributeDesc {display:none!important}' >> browser/base/content/aboutDialog.css
|
||||||
|
|
||||||
# Replace/remove brand name on used view(s) to avoid branding issues.
|
# Replace/remove brand name on used view(s) to avoid branding issues.
|
||||||
for i in $(find . -name brandings.ftl)
|
for i in $(find . -name brandings.ftl)
|
||||||
|
|
@ -222,8 +236,6 @@ do
|
||||||
sed -i 's|= Firefox |= |' $i
|
sed -i 's|= Firefox |= |' $i
|
||||||
done
|
done
|
||||||
|
|
||||||
sed '/about-wordmark.svg/d' -i browser/base/content/aboutDialog.css
|
|
||||||
echo '#warningDesc, #communityExperimentalDesc, #communityDesc, #contributeDesc {display:none!important}' >> browser/base/content/aboutDialog.css
|
|
||||||
# Disable preprocessor
|
# Disable preprocessor
|
||||||
sed 's/_PP//' -i browser/branding/branding-common.mozbuild
|
sed 's/_PP//' -i browser/branding/branding-common.mozbuild
|
||||||
#Prevent duplicated values.
|
#Prevent duplicated values.
|
||||||
|
|
@ -314,7 +326,7 @@ find -name aboutRights.xhtml |xargs -r sed -i "/rights-intro-point-6/,/<\/li>/d"
|
||||||
find -name aboutRights-unbranded.xhtml |xargs -r sed -i "/rights-intro-point-5/,/<\/li>/d"
|
find -name aboutRights-unbranded.xhtml |xargs -r sed -i "/rights-intro-point-5/,/<\/li>/d"
|
||||||
#EO about: mods.
|
#EO about: mods.
|
||||||
|
|
||||||
sed -i 's/<a\ href\=\"http\:\/\/www.mozilla.org\/\">Mozilla\ Project<\/a>/<a\ href\=\"http\:\/\/www.trisquel.info\/\"\>Trisquel\ Project<\/a>/g' browser/base/content/overrides/app-license.html
|
sed -i 's|<a href="http://www.mozilla.org/">Mozilla Project</a>|<a href="http://www.trisquel.info/">Trisquel Project</a>|g' browser/base/content/overrides/app-license.html
|
||||||
sed -i 's|https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html|https://gitlab.trisquel.org/trisquel/package-helpers|' toolkit/content/license.html
|
sed -i 's|https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html|https://gitlab.trisquel.org/trisquel/package-helpers|' toolkit/content/license.html
|
||||||
|
|
||||||
# We went too far...
|
# We went too far...
|
||||||
|
|
|
||||||