--- a/MozillaFirefox/mozilla.sh.in Sun Jun 28 08:52:27 2020 +0200
+++ b/MozillaFirefox/mozilla.sh.in Thu Jul 23 16:00:58 2020 +0200
@@ -58,6 +58,8 @@
MOZ_DIST_LIB="%PROGDIR"
MOZ_APPNAME="%APPNAME"
MOZ_PROGRAM="$MOZ_DIST_LIB/$MOZ_APPNAME"
+MOZ_LANGPACKS_DIR="$MOZ_DIST_LIB/langpacks"
+MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
MOZ_APP_LAUNCHER="$MOZ_DIST_LIB/$MOZ_APPNAME.sh"
if [ "$0" = "$MOZ_APP_LAUNCHER" ]; then
@@ -87,9 +89,85 @@
export MOZ_ENABLE_WAYLAND=1
fi
-# enable xinput2 (boo#1032003)
-# breaks too many things right now (boo#1053959)
-#export MOZ_USE_XINPUT2=1
+##
+## Use D-Bus remote exclusively when there's Wayland display.
+##
+if [ "$WAYLAND_DISPLAY" ]; then
+ export MOZ_DBUS_REMOTE=1
+fi
+
+# xinput2 (boo#1173320)
+source /etc/os-release
+if [ "$ID" = "opensuse-tumbleweed" ]; then
+ export MOZ_USE_XINPUT2=1
+fi
+
+##
+## To disable the use of Firefox localization handling for
+## the home profile, set MOZ_DISABLE_LANGPACKS=1
+## in your environment before launching Firefox.
+## currently disabled by default since langpacks
+## are shipped as app sideloading addons
+##
+#
+MOZ_DISABLE_LANGPACKS=1
+export MOZ_DISABLE_LANGPACKS
+#
+
+##
+## Automatically installed langpacks are tracked by .suse-langpack-install
+## config file.
+##
+SUSE_LANGPACK_CONFIG="$MOZ_EXTENSIONS_PROFILE_DIR/.suse-langpack-install"
+
+# MOZ_DISABLE_LANGPACKS disables language packs completely
+MOZILLA_DOWN=0
+if ! [ $MOZ_DISABLE_LANGPACKS ] || [ $MOZ_DISABLE_LANGPACKS -eq 0 ]; then
+ if [ -x $MOZ_PROGRAM ]; then
+ # Is firefox running?
+ /bin/pidof %APPNAME% > /dev/null 2>&1
+ MOZILLA_DOWN=$?
+ fi
+fi
+
+# Modify language pack configuration only when firefox is not running
+# and language packs are not disabled
+if [ $MOZILLA_DOWN -ne 0 ]; then
+ # Clear already installed langpacks
+ mkdir -p $MOZ_EXTENSIONS_PROFILE_DIR
+ if [ -f $SUSE_LANGPACK_CONFIG ]; then
+ rm `cat $SUSE_LANGPACK_CONFIG` > /dev/null 2>&1
+ rm $SUSE_LANGPACK_CONFIG > /dev/null 2>&1
+ # remove all empty langpacks dirs while they block installation of langpacks
+ rmdir $MOZ_EXTENSIONS_PROFILE_DIR/langpack* > /dev/null 2>&1
+ fi
+ # Get locale from system
+ CURRENT_LOCALE=$LC_ALL
+ CURRENT_LOCALE=${CURRENT_LOCALE:-$LC_MESSAGES}
+ CURRENT_LOCALE=${CURRENT_LOCALE:-$LANG}
+ # Try with a local variant first, then without a local variant
+ SHORTMOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*||g" | sed "s|\..*||g"`
+ MOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*|-\1|g" | sed "s|\..*||g"`
+ function create_langpack_link() {
+ local language=$*
+ local langpack=langpack-${language}@firefox.mozilla.org.xpi
+ if [ -f $MOZ_LANGPACKS_DIR/$langpack ]; then
+ rm -rf $MOZ_EXTENSIONS_PROFILE_DIR/$langpack
+ # If the target file is a symlink (the fallback langpack),
+ # install the original file instead of the fallback one
+ if [ -h $MOZ_LANGPACKS_DIR/$langpack ]; then
+ langpack=`readlink $MOZ_LANGPACKS_DIR/$langpack`
+ fi
+ ln -s $MOZ_LANGPACKS_DIR/$langpack \
+ $MOZ_EXTENSIONS_PROFILE_DIR/$langpack
+ echo $MOZ_EXTENSIONS_PROFILE_DIR/$langpack > $SUSE_LANGPACK_CONFIG
+ return 0
+ fi
+ return 1
+ }
+ create_langpack_link $MOZLOCALE || create_langpack_link $SHORTMOZLOCALE || true
+fi
+
moz_debug=0
script_args=""