diff --git a/packages/addons/addon-depends/atk/package.mk b/packages/addons/addon-depends/atk/package.mk
deleted file mode 100644
index a32bb6751f..0000000000
--- a/packages/addons/addon-depends/atk/package.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="atk"
-PKG_VERSION="2.27.1"
-PKG_SHA256="673a953987b301ab1e24e7d11677b6e7ba3226411a168449ba946765b6d44297"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://library.gnome.org/devel/atk/"
-PKG_URL="http://ftp.gnome.org/pub/gnome/sources/$PKG_NAME/2.27/$PKG_NAME-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_TARGET="toolchain glib glib:host"
-PKG_SECTION="accessibility"
-PKG_SHORTDESC="ATK - Accessibility Toolkit"
-PKG_LONGDESC="ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications."
-PKG_TOOLCHAIN="autotools"
-PKG_BUILD_FLAGS="+pic"
-
-PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \
- --disable-rebuilds --enable-introspection=no"
diff --git a/packages/addons/addon-depends/chrome-depends/at-spi2-atk/package.mk b/packages/addons/addon-depends/chrome-depends/at-spi2-atk/package.mk
new file mode 100644
index 0000000000..1d447a1a46
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/at-spi2-atk/package.mk
@@ -0,0 +1,27 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+# Copyright (C) 2017 Escalade
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="at-spi2-atk"
+PKG_VERSION="2.26.2"
+PKG_ARCH="any"
+PKG_LICENSE="OSS"
+PKG_SITE="http://www.gnome.org/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/at-spi2-atk/${PKG_VERSION:0:4}/at-spi2-atk-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain at-spi2-core atk libX11 libxml2"
+PKG_SHORTDESC="A GTK+ module that bridges ATK to D-Bus at-spi"
diff --git a/packages/addons/addon-depends/chrome-depends/at-spi2-core/package.mk b/packages/addons/addon-depends/chrome-depends/at-spi2-core/package.mk
new file mode 100644
index 0000000000..add2aa4e2c
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/at-spi2-core/package.mk
@@ -0,0 +1,34 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+# Copyright (C) 2017 Escalade
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="at-spi2-core"
+PKG_VERSION="2.28.0"
+PKG_ARCH="any"
+PKG_LICENSE="OSS"
+PKG_SITE="http://www.gnome.org/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/at-spi2-core/${PKG_VERSION:0:4}/at-spi2-core-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain atk dbus glib libXtst"
+PKG_LONGDESC="Protocol definitions and daemon for D-Bus at-spi"
+
+PKG_MESON_OPTS_TARGET="-Denable_docs=false \
+ -Denable-introspection=no"
+
+pre_configure_target() {
+ LDFLAGS="$LDFLAGS -lXext"
+}
diff --git a/packages/addons/addon-depends/chrome-depends/atk/package.mk b/packages/addons/addon-depends/chrome-depends/atk/package.mk
new file mode 100644
index 0000000000..4d30daf8c3
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/atk/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="atk"
+PKG_VERSION="2.29.1"
+PKG_SHA256="1aa7707c6297c1797fe4d79a22a57ede4d5586b0f7a3b30e886d7ca9d75f20da"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="http://library.gnome.org/devel/atk/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/atk/${PKG_VERSION:0:4}/atk-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain glib glib:host"
+PKG_LONGDESC="ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications."
+PKG_BUILD_FLAGS="+pic"
+
+PKG_MESON_OPTS_TARGET="-Ddocs=false \
+ -Dintrospection=false"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXcomposite/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXcomposite/package.mk
new file mode 100644
index 0000000000..07e3992853
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXcomposite/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXcomposite)/package.mk
+
+PKG_NAME="chrome-libXcomposite"
+PKG_LONGDESC="libXcomposite for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXcomposite/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXcomposite/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXdamage/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXdamage/package.mk
new file mode 100644
index 0000000000..c7b171d541
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXdamage/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXdamage)/package.mk
+
+PKG_NAME="chrome-libXdamage"
+PKG_LONGDESC="libXdamage for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXdamage/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXdamage/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXfixes/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXfixes/package.mk
new file mode 100644
index 0000000000..182a9ea580
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXfixes/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXfixes)/package.mk
+
+PKG_NAME="chrome-libXfixes"
+PKG_LONGDESC="libXfixes for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXfixes/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXfixes/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXi/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXi/package.mk
new file mode 100644
index 0000000000..b98d8d477c
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXi/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXi)/package.mk
+
+PKG_NAME="chrome-libXi"
+PKG_LONGDESC="libXi for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXi/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXi/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXrender/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXrender/package.mk
new file mode 100644
index 0000000000..40f3957be9
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXrender/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXrender)/package.mk
+
+PKG_NAME="chrome-libXrender"
+PKG_LONGDESC="libXrender for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXrender/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXrender/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXtst/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libXtst/package.mk
new file mode 100644
index 0000000000..ea839368f6
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libXtst/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libXtst)/package.mk
+
+PKG_NAME="chrome-libXtst"
+PKG_LONGDESC="libXtst for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libXtst/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libXtst/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libxcb/package.mk b/packages/addons/addon-depends/chrome-depends/chrome-libxcb/package.mk
new file mode 100644
index 0000000000..ea9364328e
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/chrome-libxcb/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. $(get_pkg_directory libxcb)/package.mk
+
+PKG_NAME="chrome-libxcb"
+PKG_LONGDESC="libxcb for chrome"
+PKG_URL=""
+
+unpack() {
+ mkdir -p $PKG_BUILD
+ tar --strip-components=1 -xf $SOURCES/${PKG_NAME:7}/${PKG_NAME:7}-$PKG_VERSION.tar.bz2 -C $PKG_BUILD
+}
+
+PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET \
+ --disable-static \
+ --enable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/chrome-libxcb/sources/trigger_unpack b/packages/addons/addon-depends/chrome-depends/chrome-libxcb/sources/trigger_unpack
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/addons/addon-depends/chrome-depends/cups/package.mk b/packages/addons/addon-depends/chrome-depends/cups/package.mk
new file mode 100644
index 0000000000..fc765bb89d
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/cups/package.mk
@@ -0,0 +1,45 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+# Copyright (C) 2017 Escalade
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="cups"
+PKG_VERSION="2.2.8"
+PKG_SHA256="8f87157960b9d80986f52989781d9de79235aa060e05008e4cf4c0a6ef6bca72"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="http://www.cups.org"
+PKG_URL="https://github.com/apple/cups/archive/v$PKG_VERSION.tar.gz"
+PKG_DEPENDS_TARGET="toolchain openssl zlib"
+PKG_LONGDESC="CUPS printing system"
+PKG_BUILD_FLAGS="+pic"
+
+pre_configure_target() {
+ cd ..
+ rm -rf .$TARGET_NAME
+}
+
+PKG_CONFIGURE_OPTS_TARGET="--libdir=/usr/lib \
+ --disable-gssapi \
+ --disable-avahi \
+ --disable-systemd \
+ --disable-launchd \
+ --disable-unit-tests"
+
+makeinstall_target() {
+ make BUILDROOT="$INSTALL/../.INSTALL_PKG"
+}
diff --git a/packages/addons/addon-depends/chrome-depends/gconf/package.mk b/packages/addons/addon-depends/chrome-depends/gconf/package.mk
new file mode 100644
index 0000000000..8284e0292e
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gconf/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="gconf"
+PKG_VERSION="3.2.6"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="https://projects-old.gnome.org/gconf/"
+PKG_URL="https://download.gnome.org/sources/GConf/3.2/GConf-$PKG_VERSION.tar.xz"
+PKG_SOURCE_DIR="GConf-$PKG_VERSION"
+PKG_DEPENDS_TARGET="toolchain zlib glib dbus-glib glfw"
+PKG_LONGDESC="GConf is a system for storing application preferences."
+
+PKG_CONFIGURE_OPTS_TARGET="--disable-shared \
+ --enable-static \
+ --disable-gtk-doc \
+ --disable-orbit"
diff --git a/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/package.mk b/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/package.mk
new file mode 100644
index 0000000000..f8933cc3c8
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/package.mk
@@ -0,0 +1,33 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="gdk-pixbuf"
+PKG_VERSION="2.36.12"
+PKG_SHA256="fff85cf48223ab60e3c3c8318e2087131b590fd6f1737e42cb3759a3b427a334"
+PKG_ARCH="any"
+PKG_LICENSE="OSS"
+PKG_SITE="http://www.gtk.org/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/${PKG_VERSION:0:4}/gdk-pixbuf-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain glib libjpeg-turbo libpng jasper shared-mime-info tiff"
+PKG_LONGDESC="GdkPixbuf is a a GNOME library for image loading and manipulation."
+
+PKG_MESON_OPTS_TARGET="-Ddocs=false \
+ -Dgir=false \
+ -Dman=false \
+ -Drelocatable=false"
diff --git a/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/patches/gdk-pixbuf-01-meson-crosscompile-fix.patch b/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/patches/gdk-pixbuf-01-meson-crosscompile-fix.patch
new file mode 100644
index 0000000000..e7a28e5612
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gdk-pixbuf/patches/gdk-pixbuf-01-meson-crosscompile-fix.patch
@@ -0,0 +1,85 @@
+diff -Naur a/gdk-pixbuf/meson.build b/gdk-pixbuf/meson.build
+--- a/gdk-pixbuf/meson.build 2018-06-15 20:13:23.593361199 +0200
++++ b/gdk-pixbuf/meson.build 2018-06-15 20:13:42.601469091 +0200
+@@ -232,15 +232,15 @@
+
+ # The 'loaders.cache' used for testing, so we don't accidentally
+ # load the installed cache; we always build it by default
+-loaders_cache = custom_target('loaders.cache',
+- output: 'loaders.cache',
+- capture: true,
+- command: [
+- gdk_pixbuf_query_loaders,
+- dynamic_loaders,
+- ],
+- build_by_default: true)
+-loaders_dep = declare_dependency(sources: [ loaders_cache ])
++#loaders_cache = custom_target('loaders.cache',
++# output: 'loaders.cache',
++# capture: true,
++# command: [
++# gdk_pixbuf_query_loaders,
++# dynamic_loaders,
++# ],
++# build_by_default: true)
++#loaders_dep = declare_dependency(sources: [ loaders_cache ])
+
+ build_gir = get_option('gir')
+ if build_gir
+diff -Naur a/meson.build b/meson.build
+--- a/meson.build 2018-06-15 20:13:23.573361085 +0200
++++ b/meson.build 2018-06-15 20:13:32.761413236 +0200
+@@ -398,7 +398,7 @@
+ # i18n
+ subdir('po')
+
+-subdir('tests')
++#subdir('tests')
+ subdir('thumbnailer')
+
+ # Documentation
+diff -Naur a/thumbnailer/meson.build b/thumbnailer/meson.build
+--- a/thumbnailer/meson.build 2018-06-15 20:13:23.605361267 +0200
++++ b/thumbnailer/meson.build 2018-06-15 20:13:50.305512825 +0200
+@@ -12,22 +12,22 @@
+ c_args: common_cflags,
+ dependencies: gdk_pixbuf_deps + [ gdkpixbuf_dep ])
+
+-custom_target('thumbnailer',
+- input: 'gdk-pixbuf-thumbnailer.thumbnailer.in',
+- output: 'gdk-pixbuf-thumbnailer.thumbnailer',
+- command: [
+- gen_thumbnailer,
+- '--printer=@0@'.format(gdk_pixbuf_print_mime_types.full_path()),
+- '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()),
+- '--loaders=@0@'.format(loaders_cache.full_path()),
+- '--bindir=@0@'.format(gdk_pixbuf_bindir),
+- '@INPUT@',
+- '@OUTPUT@',
+- ],
+- depends: [
+- gdk_pixbuf_print_mime_types,
+- gdk_pixbuf_pixdata,
+- loaders_cache,
+- ],
+- install: true,
+- install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers'))
++#custom_target('thumbnailer',
++# input: 'gdk-pixbuf-thumbnailer.thumbnailer.in',
++# output: 'gdk-pixbuf-thumbnailer.thumbnailer',
++# command: [
++# gen_thumbnailer,
++# '--printer=@0@'.format(gdk_pixbuf_print_mime_types.full_path()),
++# '--pixdata=@0@'.format(gdk_pixbuf_pixdata.full_path()),
++# '--loaders=@0@'.format(loaders_cache.full_path()),
++# '--bindir=@0@'.format(gdk_pixbuf_bindir),
++# '@INPUT@',
++# '@OUTPUT@',
++# ],
++# depends: [
++# gdk_pixbuf_print_mime_types,
++# gdk_pixbuf_pixdata,
++# loaders_cache,
++# ],
++# install: true,
++# install_dir: join_paths(gdk_pixbuf_datadir, 'thumbnailers'))
diff --git a/packages/addons/addon-depends/chrome-depends/gtk3/files/settings.ini b/packages/addons/addon-depends/chrome-depends/gtk3/files/settings.ini
new file mode 100644
index 0000000000..c6bdb7fa46
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gtk3/files/settings.ini
@@ -0,0 +1,4 @@
+[Settings]
+gtk-icon-theme-name = Adwaita
+gtk-theme-name = Adwaita
+gtk-font-name = Liberation Sans 12
diff --git a/packages/addons/addon-depends/chrome-depends/gtk3/package.mk b/packages/addons/addon-depends/chrome-depends/gtk3/package.mk
new file mode 100644
index 0000000000..604c76722a
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gtk3/package.mk
@@ -0,0 +1,45 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+# Copyright (C) 2017 Escalade
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="gtk3"
+PKG_VERSION="3.22.30"
+PKG_SHA256="a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567"
+PKG_ARCH="any"
+PKG_LICENSE="LGPL"
+PKG_SITE="http://www.gtk.org/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/gtk+/${PKG_VERSION:0:4}/gtk+-$PKG_VERSION.tar.xz"
+PKG_SOURCE_DIR="gtk+-$PKG_VERSION"
+PKG_DEPENDS_TARGET="toolchain at-spi2-atk atk cairo gdk-pixbuf glib libX11 libXi libXrandr libepoxy pango"
+PKG_LONGDESC="The Gimp ToolKit (GTK) is a library for creating graphical user interfaces for the X Window System."
+
+PKG_CONFIGURE_OPTS_TARGET="--disable-cups \
+ --disable-debug \
+ --enable-explicit-deps=no \
+ --disable-glibtest \
+ --disable-gtk-doc \
+ --disable-gtk-doc-html \
+ --disable-man \
+ --enable-modules \
+ --disable-papi \
+ --disable-xinerama \
+ --enable-xkb"
+
+pre_configure_target() {
+ LIBS="$LIBS -lXcursor"
+}
diff --git a/packages/addons/addon-depends/chrome-depends/gtk3/patches/gtk3-subdirs.patch b/packages/addons/addon-depends/chrome-depends/gtk3/patches/gtk3-subdirs.patch
new file mode 100644
index 0000000000..c3be473373
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/gtk3/patches/gtk3-subdirs.patch
@@ -0,0 +1,13 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -566,8 +566,8 @@
+ || { echo "Gtk+Tests:ERROR: Failed to start Xvfb environment for X11 target tests."; exit 1; } \
+ && DISPLAY=:$$XID && export DISPLAY
+
+-SRC_SUBDIRS = gdk gtk libgail-util modules demos tests testsuite examples
+-SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
++SRC_SUBDIRS = gdk gtk modules
++SUBDIRS = po po-properties $(SRC_SUBDIRS) m4macros build
+ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
+ MAINTAINERCLEANFILES = \
+ $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
diff --git a/packages/addons/addon-depends/xdotool/package.mk b/packages/addons/addon-depends/chrome-depends/harfbuzz/package.mk
similarity index 55%
rename from packages/addons/addon-depends/xdotool/package.mk
rename to packages/addons/addon-depends/chrome-depends/harfbuzz/package.mk
index d848ec088c..de62ae1bab 100644
--- a/packages/addons/addon-depends/xdotool/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/harfbuzz/package.mk
@@ -1,7 +1,7 @@
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
-# Copyright (C) 2009-2015 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2016-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,27 +17,22 @@
# along with LibreELEC. If not, see .
################################################################################
-PKG_NAME="xdotool"
-PKG_VERSION="2.20110530.1"
-PKG_SHA256="e7b42c8b1d391970e1c1009b256033f30e57d8e0a2a3de229fd61ecfc27baf67"
+PKG_NAME="harfbuzz"
+PKG_VERSION="1.8.1"
+PKG_SHA256="fbed6392ddb085e45e6090a9f389f72926d0e355f4b0a2ef51d35cf21686df45"
PKG_ARCH="any"
PKG_LICENSE="GPL"
-PKG_SITE="http://www.semicomplete.com/projects/xdotool/"
-PKG_URL="http://semicomplete.googlecode.com/files/${PKG_NAME}-${PKG_VERSION}.tar.gz"
-PKG_DEPENDS_TARGET="toolchain libXinerama libXtst"
-PKG_SECTION="x11/app"
-PKG_SHORTDESC="This tool lets you simulate keyboard input and mouse activity, move and resize windows, etc."
-PKG_LONGDESC="This tool lets you simulate keyboard input and mouse activity, move and resize windows, etc."
+PKG_SITE="http://www.freedesktop.org/wiki/Software/HarfBuzz"
+PKG_URL="https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-$PKG_VERSION.tar.bz2"
+PKG_DEPENDS_TARGET="toolchain cairo freetype glib icu"
+PKG_LONGDESC="HarfBuzz is an OpenType text shaping engine."
+PKG_TOOLCHAIN="configure"
+
+PKG_CONFIGURE_OPTS_TARGET="--with-icu \
+ --disable-gtk-doc \
+ --disable-gtk-doc-html \
+ --disable-gtk-doc-pdf"
pre_configure_target() {
- LDFLAGS="$LDFLAGS -lXext"
-}
-
-make_target() {
- make xdotool.static
- mv xdotool.static xdotool
-}
-
-makeinstall_target() {
- : # nothing to do here
+ export LDFLAGS="$LDFLAGS -ldl"
}
diff --git a/packages/addons/addon-depends/icu/package.mk b/packages/addons/addon-depends/chrome-depends/icu/package.mk
similarity index 64%
rename from packages/addons/addon-depends/icu/package.mk
rename to packages/addons/addon-depends/chrome-depends/icu/package.mk
index c1acaa318a..727688a572 100644
--- a/packages/addons/addon-depends/icu/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/icu/package.mk
@@ -17,24 +17,31 @@
################################################################################
PKG_NAME="icu"
-PKG_VERSION="57.1"
-PKG_SHA256="ff8c67cb65949b1e7808f2359f2b80f722697048e90e7cfc382ec1fe229e9581"
+PKG_VERSION="61.1"
+PKG_SHA256="d007f89ae8a2543a53525c74359b65b36412fa84b3349f1400be6dcf409fafef"
PKG_ARCH="any"
PKG_LICENSE="Custom"
PKG_SITE="http://www.icu-project.org"
-PKG_URL="http://download.icu-project.org/files/${PKG_NAME}4c/${PKG_VERSION}/${PKG_NAME}4c-${PKG_VERSION//./_}-src.tgz"
+PKG_URL="http://download.icu-project.org/files/icu4c/${PKG_VERSION}/icu4c-${PKG_VERSION//./_}-src.tgz"
PKG_SOURCE_DIR="icu"
PKG_DEPENDS_TARGET="toolchain icu:host"
-PKG_SECTION="textproc"
-PKG_SHORTDESC="International Components for Unicode library"
PKG_LONGDESC="International Components for Unicode library"
-PKG_BUILD_FLAGS="+pic"
-PKG_CONFIGURE_OPTS_HOST="--enable-static --disable-shared"
+PKG_ICU_OPTS="--disable-extras \
+ --disable-icuio \
+ --disable-layout \
+ --disable-renaming \
+ --disable-samples \
+ --disable-tests \
+ --disable-tools"
-PKG_CONFIGURE_OPTS_TARGET="--enable-static \
- --disable-shared \
- --with-cross-build=$PKG_BUILD/.$HOST_NAME"
+
+PKG_CONFIGURE_OPTS_HOST="--enable-static \
+ --disable-shared \
+ $PKG_ICU_OPTS"
+
+PKG_CONFIGURE_OPTS_TARGET="--with-cross-build=$PKG_BUILD/.$HOST_NAME \
+ $PKG_ICU_OPTS"
PKG_CONFIGURE_SCRIPT="source/configure"
diff --git a/packages/addons/addon-depends/libXScrnSaver/package.mk b/packages/addons/addon-depends/chrome-depends/libXScrnSaver/package.mk
similarity index 63%
rename from packages/addons/addon-depends/libXScrnSaver/package.mk
rename to packages/addons/addon-depends/chrome-depends/libXScrnSaver/package.mk
index 18287192a3..ca1aa9e804 100644
--- a/packages/addons/addon-depends/libXScrnSaver/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/libXScrnSaver/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="libXScrnSaver"
@@ -22,10 +23,10 @@ PKG_SHA256="8ff1efa7341c7f34bcf9b17c89648d6325ddaae22e3904e091794e0b4426ce1d"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://xorg.freedesktop.org/"
-PKG_URL="http://xorg.freedesktop.org/releases/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://xorg.freedesktop.org/releases/individual/lib/libXScrnSaver-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain scrnsaverproto"
-PKG_SECTION="x11/lib"
-PKG_SHORTDESC="X11 Screen Saver extension client library"
PKG_LONGDESC="X11 Screen Saver extension client library"
-PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared --enable-malloc0returnsnull"
+PKG_CONFIGURE_OPTS_TARGET="--disable-static \
+ --enable-shared \
+ --enable-malloc0returnsnull"
diff --git a/packages/addons/addon-depends/chrome-depends/libXcursor/package.mk b/packages/addons/addon-depends/chrome-depends/libXcursor/package.mk
new file mode 100644
index 0000000000..c575540b3b
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/libXcursor/package.mk
@@ -0,0 +1,29 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="libXcursor"
+PKG_VERSION="1.1.15"
+PKG_SHA256="294e670dd37cd23995e69aae626629d4a2dfe5708851bbc13d032401b7a3df6b"
+PKG_ARCH="any"
+PKG_LICENSE="OSS"
+PKG_SITE="http://www.X.org"
+PKG_URL="https://xorg.freedesktop.org/archive/individual/lib/libXcursor-$PKG_VERSION.tar.bz2"
+PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
+PKG_LONGDESC="X11 Cursor management library"
+PKG_BUILD_FLAGS="+pic"
diff --git a/packages/addons/addon-depends/libXft/package.mk b/packages/addons/addon-depends/chrome-depends/libXft/package.mk
similarity index 59%
rename from packages/addons/addon-depends/libXft/package.mk
rename to packages/addons/addon-depends/chrome-depends/libXft/package.mk
index 0e699beb68..a08a5f4a80 100644
--- a/packages/addons/addon-depends/libXft/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/libXft/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="libXft"
@@ -22,10 +23,10 @@ PKG_SHA256="f5a3c824761df351ca91827ac221090943ef28b248573486050de89f4bfcdc4c"
PKG_ARCH="any"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
-PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain util-macros xproto libXrender fontconfig freetype"
-PKG_SECTION="x11/lib"
-PKG_SHORTDESC="libxft: X FreeType library"
+PKG_URL="https://xorg.freedesktop.org/archive/individual/lib/libXft-$PKG_VERSION.tar.bz2"
+PKG_DEPENDS_TARGET="toolchain fontconfig freetype libXrender util-macros xorgproto"
PKG_LONGDESC="X FreeType library"
+PKG_BUILD_FLAGS="+pic"
-PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared"
+PKG_CONFIGURE_OPTS_TARGET="--enable-static \
+ --disable-shared"
diff --git a/packages/addons/addon-depends/chrome-depends/libxss/package.mk b/packages/addons/addon-depends/chrome-depends/libxss/package.mk
new file mode 100644
index 0000000000..ea1eacd8b0
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/libxss/package.mk
@@ -0,0 +1,30 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="libxss"
+PKG_VERSION="1.2.2"
+PKG_ARCH="any"
+PKG_LICENSE="OSS"
+PKG_SITE="http://www.X.org"
+PKG_URL="https://xorg.freedesktop.org/archive/individual/lib/libXScrnSaver-$PKG_VERSION.tar.bz2"
+PKG_SOURCE_DIR="libXScrnSaver-$PKG_VERSION"
+PKG_DEPENDS_TARGET="toolchain util-macros libXext scrnsaverproto"
+PKG_LONGDESC="X11 Screen Saver extension library"
+PKG_BUILD_FLAGS="+pic"
+
+PKG_CONFIGURE_OPTS_TARGET="--enable-malloc0returnsnull"
diff --git a/packages/addons/addon-depends/pango/config/pango.modules b/packages/addons/addon-depends/chrome-depends/pango/config/pango.modules
similarity index 100%
rename from packages/addons/addon-depends/pango/config/pango.modules
rename to packages/addons/addon-depends/chrome-depends/pango/config/pango.modules
diff --git a/packages/addons/addon-depends/pango/config/pangorc b/packages/addons/addon-depends/chrome-depends/pango/config/pangorc
similarity index 100%
rename from packages/addons/addon-depends/pango/config/pangorc
rename to packages/addons/addon-depends/chrome-depends/pango/config/pangorc
diff --git a/packages/addons/addon-depends/chrome-depends/pango/package.mk b/packages/addons/addon-depends/chrome-depends/pango/package.mk
new file mode 100644
index 0000000000..ce90db7f68
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/pango/package.mk
@@ -0,0 +1,32 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="pango"
+PKG_VERSION="1.42.1"
+PKG_SHA256="915a6756b298578ff27c7a6393f8c2e62e6e382f9411f2504d7af1a13c7bce32"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="http://www.pango.org/"
+PKG_URL="https://ftp.gnome.org/pub/gnome/sources/pango/${PKG_VERSION:0:4}/pango-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain cairo freetype fontconfig fribidi glib harfbuzz libX11 libXft"
+PKG_LONGDESC="The Pango library for layout and rendering of internationalized text."
+PKG_TOOLCHAIN="meson"
+
+PKG_MESON_OPTS_TARGET="-Denable_docs=false \
+ -Dgir=false"
diff --git a/packages/addons/addon-depends/scrnsaverproto/package.mk b/packages/addons/addon-depends/chrome-depends/scrnsaverproto/package.mk
similarity index 68%
rename from packages/addons/addon-depends/scrnsaverproto/package.mk
rename to packages/addons/addon-depends/chrome-depends/scrnsaverproto/package.mk
index a0c8a6a044..8108cf07fc 100644
--- a/packages/addons/addon-depends/scrnsaverproto/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/scrnsaverproto/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="scrnsaverproto"
@@ -22,8 +23,6 @@ PKG_SHA256="8bb70a8da164930cceaeb4c74180291660533ad3cc45377b30a795d1b85bcd65"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://xorg.freedesktop.org/"
-PKG_URL="http://xorg.freedesktop.org/releases/individual/proto/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://xorg.freedesktop.org/releases/individual/proto/scrnsaverproto-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain"
-PKG_SECTION="x11/proto"
-PKG_SHORTDESC="X11 Screen Saver extension wire protocol"
PKG_LONGDESC="X11 Screen Saver extension wire protocol"
diff --git a/packages/addons/addon-depends/chrome-depends/shared-mime-info/package.mk b/packages/addons/addon-depends/chrome-depends/shared-mime-info/package.mk
new file mode 100644
index 0000000000..79a781a4ee
--- /dev/null
+++ b/packages/addons/addon-depends/chrome-depends/shared-mime-info/package.mk
@@ -0,0 +1,31 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="shared-mime-info"
+PKG_VERSION="1.9"
+PKG_SHA256="5c0133ec4e228e41bdf52f726d271a2d821499c2ab97afd3aa3d6cf43efcdc83"
+PKG_ARCH="any"
+PKG_LICENSE="GPL2"
+PKG_SITE="https://freedesktop.org/wiki/Software/shared-mime-info/"
+PKG_URL="http://freedesktop.org/~hadess/shared-mime-info-$PKG_VERSION.tar.xz"
+PKG_DEPENDS_TARGET="toolchain libxml2"
+PKG_LONGDESC="The shared-mime-info package contains the core database of common types."
+PKG_BUILD_FLAGS="-parallel"
+
+PKG_CONFIGURE_OPTS_TARGET="--disable-nls \
+ --disable-update-mimedb"
diff --git a/packages/addons/addon-depends/unclutter/package.mk b/packages/addons/addon-depends/chrome-depends/unclutter/package.mk
similarity index 79%
rename from packages/addons/addon-depends/unclutter/package.mk
rename to packages/addons/addon-depends/chrome-depends/unclutter/package.mk
index c7475908d3..0b6c637350 100644
--- a/packages/addons/addon-depends/unclutter/package.mk
+++ b/packages/addons/addon-depends/chrome-depends/unclutter/package.mk
@@ -22,11 +22,9 @@ PKG_SHA256="3a53575fe2a75a34bc9a2b0ad92ee0f8a7dbedc05d8783f191c500060a40a9bd"
PKG_ARCH="any"
PKG_LICENSE="Public Domain"
PKG_SITE="https://sourceforge.net/projects/unclutter/"
-PKG_URL="http://jaist.dl.sourceforge.net/project/unclutter/unclutter/source_$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_URL="https://sourceforge.net/projects/unclutter/unclutter/source_$PKG_VERSION/unclutter-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain libX11"
-PKG_SECTION="x11"
-PKG_SHORTDESC="Unclutter: Hide X11 Cursor"
-PKG_LONGDESC="Unclutter runs in the background of an X11 session and after a specified period of inactivity hides the cursor from display. When the cursor is moved its display is restored. Users may specify specific windows to be ignored by unclutter."
+PKG_LONGDESC="Unclutter runs in the background of an X11 session and hides the X11 Cursor."
make_target() {
rm -f Makefile
diff --git a/packages/addons/addon-depends/gdk-pixbuf/config/gdk-pixbuf.loaders b/packages/addons/addon-depends/gdk-pixbuf/config/gdk-pixbuf.loaders
deleted file mode 100644
index 87a9bb58a6..0000000000
--- a/packages/addons/addon-depends/gdk-pixbuf/config/gdk-pixbuf.loaders
+++ /dev/null
@@ -1,132 +0,0 @@
-# GdkPixbuf Image Loader Modules file
-# Automatically generated file, do not edit
-# Created by gdk-pixbuf-query-loaders from gdk-pixbuf-2.21.5
-#
-# LoaderDir = /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders
-#
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so"
-"ani" 4 "gdk-pixbuf" "The ANI image format" "LGPL"
-"application/x-navi-animation" ""
-"ani" ""
-"RIFF ACON" " xxxx " 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so"
-"bmp" 5 "gdk-pixbuf" "The BMP image format" "LGPL"
-"image/bmp" "image/x-bmp" "image/x-MS-bmp" ""
-"bmp" ""
-"BM" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so"
-"gif" 4 "gdk-pixbuf" "The GIF image format" "LGPL"
-"image/gif" ""
-"gif" ""
-"GIF8" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so"
-"icns" 4 "gdk-pixbuf" "The ICNS image format" "GPL"
-"image/x-icns" ""
-"icns" ""
-"icns" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so"
-"ico" 5 "gdk-pixbuf" "The ICO image format" "LGPL"
-"image/x-icon" "image/x-ico" "image/x-win-bitmap" ""
-"ico" "cur" ""
-" \001 " "zz znz" 100
-" \002 " "zz znz" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jasper.so"
-"jpeg2000" 4 "gdk-pixbuf" "The JPEG 2000 image format" "LGPL"
-"image/jp2" "image/jpeg2000" "image/jpx" ""
-"jp2" "jpc" "jpx" "j2k" "jpf" ""
-" jP" "!!!! " 100
-"\377O\377Q" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jpeg.so"
-"jpeg" 5 "gdk-pixbuf" "The JPEG image format" "LGPL"
-"image/jpeg" ""
-"jpeg" "jpe" "jpg" ""
-"\377\330" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pcx.so"
-"pcx" 4 "gdk-pixbuf" "The PCX image format" "LGPL"
-"image/x-pcx" ""
-"pcx" ""
-"\n \001" "" 100
-"\n\002\001" "" 100
-"\n\003\001" "" 100
-"\n\004\001" "" 100
-"\n\005\001" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-png.so"
-"png" 5 "gdk-pixbuf" "The PNG image format" "LGPL"
-"image/png" ""
-"png" ""
-"\211PNG\r\n\032\n" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so"
-"pnm" 4 "gdk-pixbuf" "The PNM/PBM/PGM/PPM image format family" "LGPL"
-"image/x-portable-anymap" "image/x-portable-bitmap" "image/x-portable-graymap" "image/x-portable-pixmap" ""
-"pnm" "pbm" "pgm" "ppm" ""
-"P1" "" 100
-"P2" "" 100
-"P3" "" 100
-"P4" "" 100
-"P5" "" 100
-"P6" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so"
-"qtif" 4 "gdk-pixbuf" "The QTIF image format" "LGPL"
-"image/x-quicktime" "image/qtif" ""
-"qtif" "qif" ""
-"abcdidsc" "xxxx " 100
-"abcdidat" "xxxx " 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ras.so"
-"ras" 4 "gdk-pixbuf" "The Sun raster image format" "LGPL"
-"image/x-cmu-raster" "image/x-sun-raster" ""
-"ras" ""
-"Y\246j\225" "" 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so"
-"tga" 4 "gdk-pixbuf" "The Targa image format" "LGPL"
-"image/x-tga" ""
-"tga" "targa" ""
-" \001\001" "x " 100
-" \001\t" "x " 100
-" \002" "xz " 99
-" \003" "xz " 100
-" \n" "xz " 100
-" \013" "xz " 100
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so"
-"tiff" 1 "gdk-pixbuf" "The TIFF image format" "LGPL"
-"image/tiff" ""
-"tiff" "tif" ""
-"MM *" " z " 100
-"II* " " z" 100
-"II* \020 CR\002 " " z zzz z" 0
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-wbmp.so"
-"wbmp" 4 "gdk-pixbuf" "The WBMP image format" "LGPL"
-"image/vnd.wap.wbmp" ""
-"wbmp" ""
-" " "zz" 1
-" `" "z " 1
-" @" "z " 1
-" " "z " 1
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so"
-"xbm" 4 "gdk-pixbuf" "The XBM image format" "LGPL"
-"image/x-xbitmap" ""
-"xbm" ""
-"#define " "" 100
-"/*" "" 50
-
-"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so"
-"xpm" 4 "gdk-pixbuf" "The XPM image format" "LGPL"
-"image/x-xpixmap" ""
-"xpm" ""
-"/* XPM */" "" 100
-
-
diff --git a/packages/addons/addon-depends/gdk-pixbuf/package.mk b/packages/addons/addon-depends/gdk-pixbuf/package.mk
deleted file mode 100644
index cac488929f..0000000000
--- a/packages/addons/addon-depends/gdk-pixbuf/package.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="gdk-pixbuf"
-PKG_VERSION="2.34.0"
-PKG_SHA256="d55e5b383ee219bd0e23bf6ed4427d56a7db5379729a6e3e0a0e0eba9a8d8879"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://www.gtk.org/"
-PKG_URL="http://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/2.34/$PKG_NAME-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_TARGET="toolchain glib libjpeg-turbo libpng jasper tiff"
-PKG_SECTION="x11/toolkits"
-PKG_SHORTDESC="gdk-pixbuf: a GNOME library for image loading and manipulation."
-PKG_LONGDESC="gdk-pixbuf (GdkPixbuf) is a GNOME library for image loading and manipulation. The GdkPixbuf documentation contains both the programmer's guide and the API reference."
-PKG_TOOLCHAIN="autotools"
-
-PKG_CONFIGURE_OPTS_TARGET="gio_can_sniff=yes \
- --disable-gtk-doc \
- --disable-gtk-doc-html \
- --disable-gtk-doc-pdf \
- --disable-man \
- --with-libpng \
- --with-libjpeg \
- --with-libtiff \
- --enable-introspection=no \
- --with-libjasper"
diff --git a/packages/addons/addon-depends/gdk-pixbuf/patches/gdk-pixbuf-01_meh.patch b/packages/addons/addon-depends/gdk-pixbuf/patches/gdk-pixbuf-01_meh.patch
deleted file mode 100644
index d43ca77418..0000000000
--- a/packages/addons/addon-depends/gdk-pixbuf/patches/gdk-pixbuf-01_meh.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am
-index 8319b49..8f27c5c 100644
---- a/gdk-pixbuf/Makefile.am
-+++ b/gdk-pixbuf/Makefile.am
-@@ -617,51 +617,21 @@ MAINTAINERCLEANFILES = \
- #
- # gdk-pixbuf-enum-types.h
- #
--gdk-pixbuf-enum-types.h: s-enum-types-h
-+gdk-pixbuf-enum-types.h:
- @true
-
--s-enum-types-h: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.h.template
-- $(AM_V_GEN)( cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.h.template \
-- $(gdk_pixbuf_headers) ) > tmp-gdk-pixbuf-enum-types.h \
-- && (cmp -s tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h || cp tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h ) \
-- && rm -f tmp-gdk-pixbuf-enum-types.h \
-- && echo timestamp > $(@F)
--
- CLEANFILES += tmp-gdk-pixbuf-enum-types.h
- MAINTAINERCLEANFILES += s-enum-types-h
-
- #
--# gdk-pixbuf-enum-types.c
--#
--gdk-pixbuf-enum-types.c: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.c.template
-- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.c.template \
-- $(gdk_pixbuf_headers)) > gdk-pixbuf-enum-types.c
--
--#
- # gdk-pixbuf-marshal.h
- #
--gdk-pixbuf-marshal.h: @REBUILD@ stamp-gdk-pixbuf-marshal.h
-+gdk-pixbuf-marshal.h:
- @true
-
--stamp-gdk-pixbuf-marshal.h: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
-- $(AM_V_GEN)echo "#if !defined(GDK_PIXBUF_DISABLE_DEPRECATED) || defined(GDK_PIXBUF_COMPILATION)" > xgen-gmh \
-- && $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --header >> xgen-gmh \
-- && echo "#endif /* !GDK_PIXBUF_DISABLE_DEPRECATED || GDK_PIXBUF_COMPILATION */" >> xgen-gmh \
-- && (cmp -s xgen-gmh gdk-pixbuf-marshal.h || cp xgen-gmh gdk-pixbuf-marshal.h) \
-- && rm -f xgen-gmh xgen-gmh~ \
-- && echo timestamp > $(@F)
--
- CLEANFILES += xgen-gmh
- MAINTAINERCLEANFILES += stamp-gdk-pixbuf-marshal.h
-
--#
--# gdk-pixbuf-marshal.c
--#
--$(srcdir)/gdk-pixbuf-marshal.c: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
-- $(AM_V_GEN)(echo -e "#include \n" | $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --body ) >> xgen-gmc \
-- && cp xgen-gmc gdk-pixbuf-marshal.c \
-- && rm -f xgen-gmc xgen-gmc~
--
- CLEANFILES += xgen-gmc
-
- # if srcdir!=builddir, clean out maintainer-clean files from builddir
diff --git a/packages/addons/addon-depends/gtk+/package.mk b/packages/addons/addon-depends/gtk+/package.mk
deleted file mode 100644
index 5ae70ff2f0..0000000000
--- a/packages/addons/addon-depends/gtk+/package.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="gtk+"
-PKG_VERSION="2.24.30"
-PKG_SHA256="0d15cec3b6d55c60eac205b1f3ba81a1ed4eadd9d0f8e7c508bc7065d0c4ca50"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://www.gtk.org/"
-PKG_URL="http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/$PKG_NAME-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_TARGET="toolchain atk libX11 libXrandr libXi glib pango cairo gdk-pixbuf"
-PKG_SECTION="x11/toolkits"
-PKG_SHORTDESC="gtk+: The Gimp ToolKit (GTK)"
-PKG_LONGDESC="This is GTK+. GTK+, which stands for the Gimp ToolKit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach."
-PKG_TOOLCHAIN="autotools"
-
-PKG_CONFIGURE_OPTS_TARGET="ac_cv_path_GLIB_GENMARSHAL=$TOOLCHAIN/bin/glib-genmarshal \
- --disable-glibtest \
- --enable-modules \
- --enable-explicit-deps=no \
- --disable-debug \
- --enable-shm \
- --disable-cups \
- --disable-papi \
- --enable-xkb \
- --disable-xinerama \
- --disable-gtk-doc-html \
- --with-xinput"
-
-make_target() {
- make SRC_SUBDIRS="gdk gtk modules"
- $MAKEINSTALL SRC_SUBDIRS="gdk gtk modules"
-}
-
-makeinstall_target() {
- make install DESTDIR=$INSTALL SRC_SUBDIRS="gdk gtk modules"
-}
diff --git a/packages/addons/addon-depends/gtk+/patches/gtk+-01_no-gtk-doc.patch b/packages/addons/addon-depends/gtk+/patches/gtk+-01_no-gtk-doc.patch
deleted file mode 100644
index b264b45dbc..0000000000
--- a/packages/addons/addon-depends/gtk+/patches/gtk+-01_no-gtk-doc.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From fca2ac06da064b133101f215efd5fbd738fb3ef9 Mon Sep 17 00:00:00 2001
-From: Stefan Saraev
-Date: Thu, 27 Mar 2014 14:26:27 +0200
-Subject: [PATCH] no gtk-doc
-
----
- Makefile.am | 3 +--
- configure.ac | 12 ------------
- 2 files changed, 1 insertions(+), 14 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 8e3a2f1..35e94d2 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -2,7 +2,7 @@
- include $(top_srcdir)/Makefile.decl
-
- SRC_SUBDIRS = gdk gtk modules demos tests perf
--SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
-+SUBDIRS = po po-properties $(SRC_SUBDIRS) m4macros build
-
- # require automake 1.4
- AUTOMAKE_OPTIONS = 1.7
-@@ -136,7 +136,6 @@ MAINTAINERCLEANFILES = \
- $(srcdir)/mkinstalldirs \
- $(srcdir)/omf.make \
- $(srcdir)/xmldocs.make \
-- $(srcdir)/gtk-doc.make \
- $(srcdir)/ChangeLog \
- `find "$(srcdir)" -type f -name Makefile.in -print`
-
-diff --git a/configure.ac b/configure.ac
-index 245a87f..f6ede8a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1594,8 +1594,6 @@ GOBJECT_INTROSPECTION_CHECK([0.9.3])
- # Checks for gtk-doc and docbook-tools
- ##################################################
-
--GTK_DOC_CHECK([1.11])
--
- AC_CHECK_PROG(DB2HTML, db2html, true, false)
- AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
-
-@@ -1727,16 +1725,6 @@ demos/Makefile
- demos/gtk-demo/Makefile
- demos/gtk-demo/geninclude.pl
- tests/Makefile
--docs/Makefile
--docs/reference/Makefile
--docs/reference/gdk/Makefile
--docs/reference/gdk/version.xml
--docs/reference/gtk/Makefile
--docs/reference/gtk/version.xml
--docs/reference/libgail-util/Makefile
--docs/faq/Makefile
--docs/tools/Makefile
--docs/tutorial/Makefile
- build/Makefile
- build/win32/Makefile
- build/win32/vs9/Makefile
---
-1.7.2.5
-
diff --git a/packages/addons/addon-depends/gtk+/patches/gtk+-02_meh-glib.patch b/packages/addons/addon-depends/gtk+/patches/gtk+-02_meh-glib.patch
deleted file mode 100644
index 7ea8a7f0c4..0000000000
--- a/packages/addons/addon-depends/gtk+/patches/gtk+-02_meh-glib.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 3cb23c7b05be36e130bd1930dad3382ce8c08c51 Mon Sep 17 00:00:00 2001
-From: Stefan Saraev
-Date: Sun, 26 Oct 2014 00:26:09 +0300
-Subject: [PATCH] meh glib
-
----
- gdk/Makefile.am | 4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/gdk/Makefile.am b/gdk/Makefile.am
-index c880f6e..7661530 100644
---- a/gdk/Makefile.am
-+++ b/gdk/Makefile.am
-@@ -307,7 +307,7 @@ lib_LTLIBRARIES = $(gdktargetlib)
-
- EXTRA_LTLIBRARIES = libgdk-x11-2.0.la libgdk-win32-2.0.la libgdk-quartz-2.0.la libgdk-directfb-2.0.la
-
--MAINTAINERCLEANFILES = $(gdk_built_sources) stamp-gdkenumtypes.h
-+MAINTAINERCLEANFILES = $(gdk_built_sources)
- EXTRA_DIST += $(gdk_built_sources)
- EXTRA_HEADERS =
-
-@@ -333,7 +333,7 @@ BUILT_SOURCES = \
- $(gdk_built_sources) \
- gdkconfig.h
-
--gdkenumtypes.h: stamp-gdkenumtypes.h
-+gdkenumtypes.h:
- @true
- stamp-gdkenumtypes.h: @REBUILD@ $(gdk_public_h_sources) gdkenumtypes.h.template
- ( cd $(srcdir) && $(GLIB_MKENUMS) --template gdkenumtypes.h.template \
---
-1.7.2.5
-
diff --git a/packages/addons/addon-depends/harfbuzz/package.mk b/packages/addons/addon-depends/harfbuzz/package.mk
deleted file mode 100644
index 6e28b2ca41..0000000000
--- a/packages/addons/addon-depends/harfbuzz/package.mk
+++ /dev/null
@@ -1,41 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="harfbuzz"
-PKG_VERSION="1.4.5"
-PKG_SHA256="d0e05438165884f21658154c709075feaf98c93ee5c694b951533ac425a9a711"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.freedesktop.org/wiki/Software/HarfBuzz"
-PKG_URL="http://www.freedesktop.org/software/harfbuzz/release/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain glib freetype icu"
-PKG_SECTION="x11/toolkits"
-PKG_SHORTDESC="harfbuzz: an OpenType text shaping engine."
-PKG_LONGDESC="HarfBuzz is an OpenType text shaping engine."
-
-PKG_CONFIGURE_OPTS_TARGET="--with-icu=yes"
-
-if [ "$DISPLAYSERVER" = "x11" ] ; then
- PKG_DEPENDS_TARGET+=" cairo"
-fi
-
-pre_configure_target() {
- export LIBS="-ldl"
-}
diff --git a/packages/addons/addon-depends/libXcursor/package.mk b/packages/addons/addon-depends/libXcursor/package.mk
deleted file mode 100644
index b9dd67f225..0000000000
--- a/packages/addons/addon-depends/libXcursor/package.mk
+++ /dev/null
@@ -1,33 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="libXcursor"
-PKG_VERSION="1.1.14"
-PKG_SHA256="9bc6acb21ca14da51bda5bc912c8955bc6e5e433f0ab00c5e8bef842596c33df"
-PKG_ARCH="any"
-PKG_LICENSE="OSS"
-PKG_SITE="http://www.X.org"
-PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
-PKG_SECTION="x11/lib"
-PKG_SHORTDESC="libXcursor: X Cursor Library"
-PKG_LONGDESC="X11 Cursor management library"
-
-PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static"
diff --git a/packages/addons/addon-depends/libva-vdpau-driver/package.mk b/packages/addons/addon-depends/libva-vdpau-driver/package.mk
deleted file mode 100644
index 282b4a14f3..0000000000
--- a/packages/addons/addon-depends/libva-vdpau-driver/package.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="libva-vdpau-driver"
-PKG_VERSION="0.7.4"
-PKG_SHA256="155c1982f0ac3f5435ba20b221bcaa11be212c37db548cd1f2a030ffa17e9bb9"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://freedesktop.org/wiki/Software/vaapi"
-PKG_URL="http://freedesktop.org/software/vaapi/releases/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS_TARGET="toolchain libva libvdpau mesa"
-PKG_SECTION="graphics"
-PKG_SHORTDESC="VDPAU backend for VA API"
-PKG_LONGDESC="VDPAU backend for VA API"
-PKG_TOOLCHAIN="autotools"
-
-post_makeinstall_target() {
- rm -rf $INSTALL/usr/lib/va/s3g_drv_video.so
-}
diff --git a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0001_drop-formats.patch b/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0001_drop-formats.patch
deleted file mode 100644
index 74caee3483..0000000000
--- a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0001_drop-formats.patch
+++ /dev/null
@@ -1,29 +0,0 @@
->From fda3706eb74ba5ad874853969f3df3e372739c8d Mon Sep 17 00:00:00 2001
-From: "Xiang, Haihao"
-Date: Fri, 21 Jun 2013 12:55:30 +0800
-Subject: [PATCH] VAEncH264VUIBufferType and VAEncH264SEIBufferType are
- dropped from VA API
-
-The driver doesn't use them indeed
-
-Signed-off-by: Xiang, Haihao
----
- src/vdpau_dump.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/src/vdpau_dump.c b/src/vdpau_dump.c
-index 899888b..610e7cd 100644
---- a/src/vdpau_dump.c
-+++ b/src/vdpau_dump.c
-@@ -59,8 +59,6 @@ const char *string_of_VABufferType(VABufferType type)
- _(VAEncSequenceParameterBufferType);
- _(VAEncPictureParameterBufferType);
- _(VAEncSliceParameterBufferType);
-- _(VAEncH264VUIBufferType);
-- _(VAEncH264SEIBufferType);
- #endif
- #if VA_CHECK_VERSION(0,31,1)
- _(VAQMatrixBufferType);
---
-1.7.9.5
-
diff --git a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0002_glext-missing-definition.patch b/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0002_glext-missing-definition.patch
deleted file mode 100644
index b56d268343..0000000000
--- a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0002_glext-missing-definition.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/src/utils_glx.h~ 2012-10-05 16:02:58.000000000 +0100
-+++ b/src/utils_glx.h 2012-10-19 08:44:12.469642440 +0100
-@@ -48,6 +48,13 @@
- typedef void (*PFNGLXRELEASETEXIMAGEEXTPROC)(Display *, GLXDrawable, int);
- #endif
-
-+#if GL_GLEXT_VERSION >= 85
-+/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the GL_VERSION_1_3_DEPRECATED
-+ block and is not defined if GL_VERSION_1_3 is defined in
-+ Redefine the type here as an interim solution */
-+typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
-+#endif
-+
- #ifndef GL_FRAMEBUFFER_BINDING
- #define GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_EXT
- #endif
diff --git a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0003_libvdpau-0.8.patch b/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0003_libvdpau-0.8.patch
deleted file mode 100644
index ab3a479986..0000000000
--- a/packages/addons/addon-depends/libva-vdpau-driver/patches/libva-vdpau-driver-0003_libvdpau-0.8.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/vdpau_decode.c
-+++ b/src/vdpau_decode.c
-@@ -1289,7 +1289,7 @@
- driver_data,
- obj_context->vdp_decoder,
- obj_surface->vdp_surface,
-- (VdpPictureInfo)&obj_context->vdp_picture_info,
-+ (VdpPictureInfo *)&obj_context->vdp_picture_info,
- obj_context->vdp_bitstream_buffers_count,
- obj_context->vdp_bitstream_buffers
- );
diff --git a/packages/addons/addon-depends/node/package.mk b/packages/addons/addon-depends/node/package.mk
deleted file mode 100644
index 4e61840ff1..0000000000
--- a/packages/addons/addon-depends/node/package.mk
+++ /dev/null
@@ -1,38 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
-#
-# OpenELEC is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# OpenELEC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
-################################################################################
-
-PKG_NAME="node"
-PKG_VERSION="8.9.3"
-PKG_SHA256="a5042d983f9815ee18a5c6fd75f8b3b2022ed96a2aaa8834300cd1ee81e8870c"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="https://nodejs.org"
-PKG_URL="https://github.com/nodejs/node/archive/v$PKG_VERSION.tar.gz"
-PKG_DEPENDS_HOST="toolchain"
-PKG_SHORTDESC="Node.js JavaScript runtime"
-PKG_LONGDESC="Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. The Node.js package ecosystem, npm, is the largest ecosystem of open source libraries in the world."
-
-HOST_CONFIGURE_OPTS="--prefix=$TOOLCHAIN \
- --fully-static \
- --with-intl=none \
- --without-npm \
- --without-ssl"
-
-pre_configure_host() {
- cd ..
-}
diff --git a/packages/addons/addon-depends/pango/package.mk b/packages/addons/addon-depends/pango/package.mk
deleted file mode 100644
index 338f57ae77..0000000000
--- a/packages/addons/addon-depends/pango/package.mk
+++ /dev/null
@@ -1,46 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="pango"
-PKG_VERSION="1.40.6"
-PKG_SHA256="ca152b7383a1e9f7fd74ae96023dc6770dc5043414793bfe768ff06b6759e573"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.pango.org/"
-PKG_URL="http://ftp.gnome.org/pub/gnome/sources/pango/1.40/$PKG_NAME-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_TARGET="toolchain glib freetype fontconfig harfbuzz"
-PKG_SECTION="x11/toolkits"
-PKG_SHORTDESC="pango: Library for layout and rendering of internationalized text"
-PKG_LONGDESC="The goal of the Pango project is to provide an open-source framework for the layout and rendering of internationalized text. Pango is an offshoot of the GTK+ and GNOME projects, and the initial focus is operation in those environments, however there is nothing fundamentally GTK+ or GNOME specific about Pango. Pango uses Unicode for all of its encoding, and will eventually support output in all the worlds major languages."
-PKG_TOOLCHAIN="autotools"
-
-PKG_CONFIGURE_OPTS_TARGET="--disable-doc-cross-references \
- --disable-gtk-doc \
- --disable-man \
- --enable-debug=no"
-
-if [ "$DISPLAYSERVER" = "x11" ] ; then
- PKG_DEPENDS_TARGET+=" cairo libX11 libXft"
- PKG_CONFIGURE_OPTS_TARGET+=" --with-xft"
-fi
-
-if [ "$DISPLAYSERVER" = "weston" ] ; then
- PKG_DEPENDS_TARGET+=" wayland"
-fi
diff --git a/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch b/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch
deleted file mode 100644
index c4b14271c7..0000000000
--- a/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff -Naur pango-1.38.1/configure.ac pango-1.38.1.patch/configure.ac
---- pango-1.38.1/configure.ac 2015-10-12 21:13:25.000000000 +0200
-+++ pango-1.38.1.patch/configure.ac 2015-11-14 23:14:05.714344868 +0100
-@@ -483,15 +483,6 @@
- dnl *** Checks for gtk-doc ***
- dnl **************************
-
--if $have_cairo ; then : ; else
-- if test x$enable_gtk_doc = xyes ; then
-- AC_MSG_WARN([Cairo not present, disabling doc building])
-- enable_gtk_doc=no
-- fi
--fi
--
--GTK_DOC_CHECK([1.15], [--flavour no-tmpl])
--
- AC_ARG_ENABLE(doc-cross-references,
- AC_HELP_STRING([--disable-doc-cross-references],
- [cross reference glib and cairo symbols @<:@default=yes@:>@]),
-@@ -606,7 +597,6 @@
- pango/pangoxft.rc
- pango-view/Makefile
- examples/Makefile
--docs/Makefile
- docs/version.xml
- tools/Makefile
- tests/Makefile
-diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am
---- pango-1.38.1/Makefile.am 2015-04-15 19:37:43.000000000 +0200
-+++ pango-1.38.1.patch/Makefile.am 2015-11-14 23:05:52.738361176 +0100
-@@ -1,6 +1,6 @@
- ## Process this file with automake to create Makefile.in.
-
--SUBDIRS= pango pango-view examples docs tools tests win32
-+SUBDIRS= pango pango-view examples tools tests win32
-
- EXTRA_DIST = \
- autogen.sh \
-@@ -38,7 +38,6 @@
- $(srcdir)/INSTALL \
- $(srcdir)/omf.make \
- $(srcdir)/xmldocs.make \
-- $(srcdir)/gtk-doc.make \
- $(srcdir)/ChangeLog
-
- ### ChangeLog generation
diff --git a/packages/addons/addon-depends/pango/patches/pango-02_meh.patch b/packages/addons/addon-depends/pango/patches/pango-02_meh.patch
deleted file mode 100644
index 3b02d3ceca..0000000000
--- a/packages/addons/addon-depends/pango/patches/pango-02_meh.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am
---- pango-1.38.1/Makefile.am 2015-11-14 23:05:52.000000000 +0100
-+++ pango-1.38.1.patch/Makefile.am 2015-11-14 23:19:07.548943525 +0100
-@@ -1,6 +1,6 @@
- ## Process this file with automake to create Makefile.in.
-
--SUBDIRS= pango pango-view examples tools tests win32
-+SUBDIRS= pango win32
-
- EXTRA_DIST = \
- autogen.sh \
-diff -Naur pango-1.38.1/pango/Makefile.am pango-1.38.1.patch/pango/Makefile.am
---- pango-1.38.1/pango/Makefile.am 2015-09-01 00:47:11.000000000 +0200
-+++ pango-1.38.1.patch/pango/Makefile.am 2015-11-14 23:21:14.081145117 +0100
-@@ -31,7 +31,7 @@
- $(LIBTHAI_CFLAGS) \
- $(X_CFLAGS)
-
--BUILT_SOURCES = pango-enum-types.h pango-enum-types.c pango-features.h
-+BUILT_SOURCES = pango-features.h
-
- pangoincludedir=$(includedir)/pango-1.0/pango
-
-@@ -127,22 +127,6 @@
- pango-features.h \
- pango-enum-types.h
-
--pango-enum-types.h: s-enum-types-h
--s-enum-types-h: $(pango_headers) Makefile.am pango-enum-types.h.template
-- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
-- --template pango-enum-types.h.template \
-- $(pango_headers) ) > pango-enum-types.h.tmp \
-- && mv pango-enum-types.h.tmp pango-enum-types.h \
-- && echo timestamp > $@
--
--pango-enum-types.c: s-enum-types-c
--s-enum-types-c: $(pango_headers) Makefile.am pango-enum-types.c.template
-- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
-- --template pango-enum-types.c.template \
-- $(pango_headers) ) > pango-enum-types.c.tmp \
-- && mv pango-enum-types.c.tmp pango-enum-types.c \
-- && echo timestamp > $@
--
- pango-features.h:
- $(AM_V_GEN) cd $(top_builddir) && ./config.status pango/pango-features.h
-
-diff -Naur pango-1.38.1/pango/pango-context.c pango-1.38.1.patch/pango/pango-context.c
---- pango-1.38.1/pango/pango-context.c 2015-09-13 17:05:39.000000000 +0200
-+++ pango-1.38.1.patch/pango/pango-context.c 2015-11-14 23:22:57.512225981 +0100
-@@ -38,6 +38,7 @@
-
- #include "pango-engine-private.h"
- #include "pango-script-private.h"
-+#include "pango-enum-types.h"
-
- /**
- * PangoContext:
-diff -Naur pango-1.38.1/pango/pangofc-font.c pango-1.38.1.patch/pango/pangofc-font.c
---- pango-1.38.1/pango/pangofc-font.c 2015-04-15 19:37:43.000000000 +0200
-+++ pango-1.38.1.patch/pango/pangofc-font.c 2015-11-14 23:23:49.840316980 +0100
-@@ -45,6 +45,7 @@
- #include "pango-engine.h"
- #include "pango-layout.h"
- #include "pango-impl-utils.h"
-+#include "pango-enum-types.h"
-
- #include
-
-diff -Naur pango-1.38.1/pango/pango-layout.c pango-1.38.1.patch/pango/pango-layout.c
---- pango-1.38.1/pango/pango-layout.c 2015-09-01 18:20:54.000000000 +0200
-+++ pango-1.38.1.patch/pango/pango-layout.c 2015-11-14 23:23:19.280262638 +0100
-@@ -77,6 +77,7 @@
- #include
-
- #include "pango-layout-private.h"
-+#include "pango-enum-types.h"
-
-
- typedef struct _Extents Extents;
diff --git a/packages/addons/browser/chrome/changelog.txt b/packages/addons/browser/chrome/changelog.txt
new file mode 100644
index 0000000000..fbac0f5bdd
--- /dev/null
+++ b/packages/addons/browser/chrome/changelog.txt
@@ -0,0 +1,2 @@
+100
+- initial release
diff --git a/packages/addons/browser/chromium/config/Xdefaults b/packages/addons/browser/chrome/config/Xdefaults
similarity index 100%
rename from packages/addons/browser/chromium/config/Xdefaults
rename to packages/addons/browser/chrome/config/Xdefaults
diff --git a/packages/addons/browser/chrome/config/pango.modules b/packages/addons/browser/chrome/config/pango.modules
new file mode 100644
index 0000000000..bd3e97457d
--- /dev/null
+++ b/packages/addons/browser/chrome/config/pango.modules
@@ -0,0 +1,13 @@
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-arabic-lang.so ArabicScriptEngineLang PangoEngineLang PangoRenderNone arabic:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-basic-fc.so BasicScriptEngineFc PangoEngineShape PangoRenderFc common:
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so devaIndicScriptEngineLang PangoEngineLang PangoRenderNone devanagari:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so bengIndicScriptEngineLang PangoEngineLang PangoRenderNone bengali:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so guruIndicScriptEngineLang PangoEngineLang PangoRenderNone gurmukhi:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so gujrIndicScriptEngineLang PangoEngineLang PangoRenderNone gujarati:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so oryaIndicScriptEngineLang PangoEngineLang PangoRenderNone oriya:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so tamlIndicScriptEngineLang PangoEngineLang PangoRenderNone tamil:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so teluIndicScriptEngineLang PangoEngineLang PangoRenderNone telugu:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so kndaIndicScriptEngineLang PangoEngineLang PangoRenderNone kannada:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so mlymIndicScriptEngineLang PangoEngineLang PangoRenderNone malayalam:*
+/storage/.kodi/addons/browser.chrome/pango-modules/pango-indic-lang.so sinhIndicScriptEngineLang PangoEngineLang PangoRenderNone sinhala:*
+
diff --git a/packages/addons/browser/chromium/config/pangorc b/packages/addons/browser/chrome/config/pangorc
similarity index 52%
rename from packages/addons/browser/chromium/config/pangorc
rename to packages/addons/browser/chrome/config/pangorc
index e7a942d712..49fb9237bb 100644
--- a/packages/addons/browser/chromium/config/pangorc
+++ b/packages/addons/browser/chrome/config/pangorc
@@ -4,7 +4,7 @@
#
[Pango]
-ModuleFiles = /storage/.kodi/addons/browser.chromium/config/pango.modules
+ModuleFiles = /storage/.kodi/addons/browser.chrome/config/pango.modules
[PangoX]
-AliasFiles = /storage/.kodi/addons/browser.chromium/config/pangx.aliases
+AliasFiles = /storage/.kodi/addons/browser.chrome/config/pangx.aliases
diff --git a/packages/addons/browser/chrome/config/pixbuf.loaders.cache b/packages/addons/browser/chrome/config/pixbuf.loaders.cache
new file mode 100644
index 0000000000..9effded69b
--- /dev/null
+++ b/packages/addons/browser/chrome/config/pixbuf.loaders.cache
@@ -0,0 +1,104 @@
+# How to generate those file
+# cd /LE/build.LibreELEC-Generic/gdk-pixbuf-2.36.12/.install_pkg/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders
+# cp /LE/build.LibreELEC-Generic/gdk-pixbuf-2.36.12/.install_pkg/usr/bin/gdk-pixbuf-query-loaders .
+# ./gdk-pixbuf-query-loaders *.so > pixbuf.loaders.cache
+
+
+# GdkPixbuf Image Loader Modules file
+# Automatically generated file, do not edit
+# Created by gdk-pixbuf-query-loaders from gdk-pixbuf-2.36.12
+#
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-ani.so"
+"ani" 4 "gdk-pixbuf" "Windows animated cursor" "LGPL"
+"application/x-navi-animation" ""
+"ani" ""
+"RIFF ACON" " xxxx " 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-bmp.so"
+"bmp" 5 "gdk-pixbuf" "BMP" "LGPL"
+"image/bmp" "image/x-bmp" "image/x-MS-bmp" ""
+"bmp" ""
+"BM" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-gif.so"
+"gif" 4 "gdk-pixbuf" "GIF" "LGPL"
+"image/gif" ""
+"gif" ""
+"GIF8" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-icns.so"
+"icns" 4 "gdk-pixbuf" "MacOS X icon" "GPL"
+"image/x-icns" ""
+"icns" ""
+"icns" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-ico.so"
+"ico" 5 "gdk-pixbuf" "Windows icon" "LGPL"
+"image/x-icon" "image/x-ico" "image/x-win-bitmap" "image/vnd.microsoft.icon" "application/ico" "image/ico" "image/icon" "text/ico" ""
+"ico" "cur" ""
+" \001 " "zz znz" 100
+" \002 " "zz znz" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-jpeg.so"
+"jpeg" 5 "gdk-pixbuf" "JPEG" "LGPL"
+"image/jpeg" ""
+"jpeg" "jpe" "jpg" ""
+"\377\330" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-png.so"
+"png" 5 "gdk-pixbuf" "PNG" "LGPL"
+"image/png" ""
+"png" ""
+"\211PNG\r\n\032\n" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-pnm.so"
+"pnm" 4 "gdk-pixbuf" "PNM/PBM/PGM/PPM" "LGPL"
+"image/x-portable-anymap" "image/x-portable-bitmap" "image/x-portable-graymap" "image/x-portable-pixmap" ""
+"pnm" "pbm" "pgm" "ppm" ""
+"P1" "" 100
+"P2" "" 100
+"P3" "" 100
+"P4" "" 100
+"P5" "" 100
+"P6" "" 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-qtif.so"
+"qtif" 4 "gdk-pixbuf" "QuickTime" "LGPL"
+"image/x-quicktime" "image/qtif" ""
+"qtif" "qif" ""
+"abcdidsc" "xxxx " 100
+"abcdidat" "xxxx " 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-tga.so"
+"tga" 4 "gdk-pixbuf" "Targa" "LGPL"
+"image/x-tga" ""
+"tga" "targa" ""
+" \001\001" "x " 100
+" \001\t" "x " 100
+" \002" "xz " 99
+" \003" "xz " 100
+" \n" "xz " 100
+" \v" "xz " 100
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-tiff.so"
+"tiff" 5 "gdk-pixbuf" "TIFF" "LGPL"
+"image/tiff" ""
+"tiff" "tif" ""
+"MM *" " z " 100
+"II* " " z" 100
+"II* \020 CR\002 " " z zzz z" 0
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-xbm.so"
+"xbm" 4 "gdk-pixbuf" "XBM" "LGPL"
+"image/x-xbitmap" ""
+"xbm" ""
+"#define " "" 100
+"/*" "" 50
+
+"/storage/.kodi/addons/browser.chrome/gdk-pixbuf-modules/libpixbufloader-xpm.so"
+"xpm" 4 "gdk-pixbuf" "XPM" "LGPL"
+"image/x-xpixmap" ""
+"xpm" ""
+"/* XPM */" "" 100
+
+
diff --git a/packages/addons/browser/chrome/icon/icon.png b/packages/addons/browser/chrome/icon/icon.png
new file mode 100644
index 0000000000..0baf8a3234
Binary files /dev/null and b/packages/addons/browser/chrome/icon/icon.png differ
diff --git a/packages/addons/browser/chrome/package.mk b/packages/addons/browser/chrome/package.mk
new file mode 100644
index 0000000000..d1d9755f09
--- /dev/null
+++ b/packages/addons/browser/chrome/package.mk
@@ -0,0 +1,117 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="chrome"
+PKG_VERSION="1.0"
+PKG_REV="100"
+PKG_ARCH="x86_64"
+PKG_LICENSE="Custom"
+PKG_SITE="http://www.google.com/chrome"
+PKG_DEPENDS_TARGET="toolchain at-spi2-atk atk cairo chrome-libXcomposite \
+ chrome-libXdamage chrome-libXfixes chrome-libXi chrome-libXrender \
+ chrome-libXtst chrome-libxcb cups gdk-pixbuf gtk3 harfbuzz \
+ libXcursor libxss nss pango scrnsaverproto unclutter"
+PKG_SECTION="browser"
+PKG_SHORTDESC="Google Chrome Browser"
+PKG_LONGDESC="Google Chrome Browser"
+PKG_TOOLCHAIN="manual"
+
+PKG_IS_ADDON="yes"
+PKG_ADDON_NAME="Chrome"
+PKG_ADDON_TYPE="xbmc.python.script"
+PKG_ADDON_PROVIDES="executable"
+
+make_target() {
+ :
+}
+
+addon() {
+ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin \
+ $ADDON_BUILD/$PKG_ADDON_ID/config \
+ $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules \
+ $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # config
+ cp -P $PKG_DIR/config/* $ADDON_BUILD/$PKG_ADDON_ID/config
+
+ # atk
+ cp -PL $(get_build_dir atk)/.install_pkg/usr/lib/libatk-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # cairo
+ cp -PL $(get_build_dir cairo)/.install_pkg/usr/lib/libcairo-gobject.so.2 $ADDON_BUILD/$PKG_ADDON_ID/lib
+ cp -PL $(get_build_dir cairo)/.install_pkg/usr/lib/libcairo.so.2 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # gdk-pixbuf
+ cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/libgdk_pixbuf-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # gdk-pixbuf modules
+ cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/* $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules
+
+ # gtk3 gdk3
+ cp -PL $(get_build_dir gtk3)/.install_pkg/usr/lib/libgtk-3.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+ cp -PL $(get_build_dir gtk3)/.install_pkg/usr/lib/libgdk-3.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # harfbuzz
+ cp -PL $(get_build_dir harfbuzz)/.install_pkg/usr/lib/libharfbuzz.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+ cp -PL $(get_build_dir harfbuzz)/.install_pkg/usr/lib/libharfbuzz-icu.so* $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libatk-bridge
+ cp -PL $(get_build_dir at-spi2-atk)/.install_pkg/usr/lib/libatk-bridge-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libatspi
+ cp -PL $(get_build_dir at-spi2-core)/.install_pkg/usr/lib/libatspi.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libcups
+ cp -PL $(get_build_dir cups)/cups/libcups.so.2 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libxcb
+ cp -PL $(get_build_dir chrome-libxcb)/.install_pkg/usr/lib/libxcb.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXcomposite
+ cp -PL $(get_build_dir chrome-libXcomposite)/.install_pkg/usr/lib/libXcomposite.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXcursor
+ cp -PL $(get_build_dir libXcursor)/.install_pkg/usr/lib/libXcursor.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXdamage
+ cp -PL $(get_build_dir chrome-libXdamage)/.install_pkg/usr/lib/libXdamage.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXfixes
+ cp -PL $(get_build_dir chrome-libXfixes)/.install_pkg/usr/lib/libXfixes.so.3 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXi
+ cp -PL $(get_build_dir chrome-libXi)/.install_pkg/usr/lib/libXi.so.6 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXrender
+ cp -PL $(get_build_dir chrome-libXrender)/.install_pkg/usr/lib/libXrender.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libxss
+ cp -PL $(get_build_dir libxss)/.install_pkg/usr/lib/libXss.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # libXtst
+ cp -PL $(get_build_dir chrome-libXtst)/.install_pkg/usr/lib/libXtst.so.6 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # pango
+ cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangocairo-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+ cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpango-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+ cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangoft2-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
+
+ # unclutter
+ cp -P $(get_build_dir unclutter)/.install_pkg/usr/bin/unclutter $ADDON_BUILD/$PKG_ADDON_ID/bin
+
+}
diff --git a/packages/addons/browser/chrome/source/bin/chrome-downloader b/packages/addons/browser/chrome/source/bin/chrome-downloader
new file mode 100644
index 0000000000..6ee97c3cc2
--- /dev/null
+++ b/packages/addons/browser/chrome/source/bin/chrome-downloader
@@ -0,0 +1,94 @@
+#!/bin/bash
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+. /etc/profile
+oe_setup_addon browser.chrome
+
+ICON=$ADDON_DIR/resources/icon.png
+CONTROL_FILE=/tmp/curl.done
+DATA_FILE=/tmp/curl.data
+
+# check chrome version
+case "$1" in
+ 'latest')
+ CHROME_VER="$(curl -s https://dl.google.com/linux/chrome/rpm/stable/x86_64/repodata/other.xml.gz | \
+ gzip -df | awk -F\" '/pkgid.*-stable/{ print $10 }')"
+ ;;
+ 'repo')
+ CHROME_VER="67.0.3396.87"
+ ;;
+ *)
+ echo "Usage $0 { latest | repo }"
+ exit 0;
+ ;;
+esac
+
+# check for enough free disk space
+if [ $(df . | awk 'END {print $4}') -lt 400000 ]; then
+ kodi-send --action="Notification(Not enough disk space, at least 400mb are required,30000,${ICON})" >/dev/null
+ exit 0;
+fi
+
+# remove install status and folders
+if [ -f $ADDON_DIR/extract.ok ]; then
+ rm $ADDON_DIR/extract.ok
+fi
+
+if [ -d $ADDON_DIR/chrome-bin ]; then
+ rm -rf $ADDON_DIR/chrome-bin
+fi
+
+if [ -d $ADDON_DIR/tmp_download ]; then
+ rm -rf $ADDON_DIR/tmp_download
+fi
+
+# create tmp download dir
+mkdir -p $ADDON_DIR/tmp_download
+cd $ADDON_DIR/tmp_download
+
+echo "Downloading Chrome version $CHROME_VER"
+
+# download chrome
+rm -f ${CONTROL_FILE} ${DATA_FILE}
+(
+ curl -# -O -C - http://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_$CHROME_VER-1_amd64.deb 2>${DATA_FILE}
+ touch ${CONTROL_FILE}
+) | \
+ while [ : ]; do
+ [ -f ${DATA_FILE} ] && prog="$(tr '\r' '\n' < ${DATA_FILE} | tail -n 1 | sed -r 's/^[# ]+/#/;s/^[^0-9]*//g')" || prog=
+ kodi-send --action="Notification(Downloading Chrome,"${prog:-0.0%}",3000,${ICON})" >/dev/null
+ [ -f ${CONTROL_FILE} ] && break
+ sleep 4
+ done
+
+rm -f ${CONTROL_FILE} ${DATA_FILE}
+
+## extract chrome
+# extrat chrome.deb
+kodi-send --action="Notification(Extracting Chrome,starting,1000,${ICON})" >/dev/null
+ar -x google-chrome-stable_$CHROME_VER-1_amd64.deb
+
+# extract data.tar.xz to chrome-bin directory
+mkdir $ADDON_DIR/chrome-bin
+tar xf data.tar.xz --strip-components=4 -C $ADDON_DIR/chrome-bin ./opt/google/chrome
+
+# cleanup
+rm -rf $ADDON_DIR/tmp_download
+touch $ADDON_DIR/extract.ok
+kodi-send --action="Notification(Extracting Chrome,finished,1000,${ICON})" >/dev/null
diff --git a/packages/addons/browser/chromium/source/bin/chromium b/packages/addons/browser/chrome/source/bin/chrome-start
similarity index 57%
rename from packages/addons/browser/chromium/source/bin/chromium
rename to packages/addons/browser/chrome/source/bin/chrome-start
index 74f59d8f38..a03065ac45 100644
--- a/packages/addons/browser/chromium/source/bin/chromium
+++ b/packages/addons/browser/chrome/source/bin/chrome-start
@@ -1,34 +1,39 @@
#!/bin/sh
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
. /etc/profile
-oe_setup_addon browser.chromium
+oe_setup_addon browser.chrome
+
+# check if chrome is already successful installed
+if [ ! -f "$ADDON_DIR/extract.ok" ]; then
+ cd $ADDON_DIR
+ chrome-downloader repo
+fi
+
if [ -e $ADDON_HOME/env ]
then
. $ADDON_HOME/env
fi
-# drop profile for testing only
-#rm -rf /storage/.kodi/userdata/addon_data/browser.chromium/profile
-
# fix file permissons (zip packaging)
-chmod +x $ADDON_DIR/bin/chromium $ADDON_DIR/bin/chromium.bin
-chmod 4755 $ADDON_DIR/bin/chrome-sandbox
+chmod +x $ADDON_DIR/chrome-bin/chrome
+chmod 4755 $ADDON_DIR/chrome-bin/chrome-sandbox
# make sure we use "own" gtk/pango/nss/etc
export LD_LIBRARY_PATH=$ADDON_DIR/lib
@@ -53,15 +58,15 @@ LIBVA_DRIVER_NAME=''
case $VAAPI_MODE in
'intel')
LIBVA_DRIVER_NAME='i965'
- CHROMIUM_OPTS="$CHROMIUM_OPTS --enable-accelerated-video"
+ chrome_OPTS="$chrome_OPTS --enable-accelerated-video"
;;
'amd')
LIBVA_DRIVER_NAME='vdpau'
- CHROMIUM_OPTS="$CHROMIUM_OPTS --enable-accelerated-video"
+ chrome_OPTS="$chrome_OPTS --enable-accelerated-video"
;;
'nvidia')
LIBVA_DRIVER_NAME='vdpau'
- CHROMIUM_OPTS="$CHROMIUM_OPTS --enable-accelerated-video --allow-no-sandbox-job --disable-gpu-sandbox"
+ chrome_OPTS="$chrome_OPTS --enable-accelerated-video --allow-no-sandbox-job --disable-gpu-sandbox"
;;
*)
LIBGL_ALWAYS_SOFTWARE='1'
@@ -71,29 +76,27 @@ export LIBVA_DRIVER_NAME LIBVA_DRIVERS_PATH
# windowed
case $WINDOW_MODE in
- 'maximized') CHROMIUM_OPTS="$CHROMIUM_OPTS --start-maximized";;
- 'kiosk') CHROMIUM_OPTS="$CHROMIUM_OPTS --kiosk";;
+ 'maximized') chrome_OPTS="$chrome_OPTS --start-maximized";;
+ 'kiosk') chrome_OPTS="$chrome_OPTS --kiosk";;
esac
# rasterization
case $RASTER_MODE in
- 'off') CHROMIUM_OPTS="$CHROMIUM_OPTS --disable-accelerated-2d-canvas --disable-gpu-compositing";;
- 'force') CHROMIUM_OPTS="$CHROMIUM_OPTS --enable-gpu-rasterization --enable-accelerated-2d-canvas --ignore-gpu-blacklist";;
+ 'off') chrome_OPTS="$chrome_OPTS --disable-accelerated-2d-canvas --disable-gpu-compositing";;
+ 'force') chrome_OPTS="$chrome_OPTS --enable-gpu-rasterization --enable-accelerated-2d-canvas --ignore-gpu-blacklist";;
esac
-# flash
-if [ -e $ADDON_DIR/PepperFlash/libpepflashplayer.so ]; then
- CHROMIUM_OPTS="$CHROMIUM_OPTS --ppapi-flash-path=$ADDON_DIR/PepperFlash/libpepflashplayer.so"
-fi
-
# alsa
if [ ! -z $ALSA_DEVICE ]; then
- CHROMIUM_OPTS="$CHROMIUM_OPTS --alsa-output-device=$ALSA_DEVICE"
+ chrome_OPTS="$chrome_OPTS --alsa-output-device=$ALSA_DEVICE"
fi
-# start chromium
-LD_PRELOAD=/usr/lib/libGL.so $ADDON_DIR/bin/chromium.bin \
- $CHROMIUM_OPTS \
+# HACK!!! to get sound at Chrome stop pulseaudio
+systemctl stop pulseaudio
+
+# start chrome
+LD_PRELOAD=/usr/lib/libGL.so $ADDON_DIR/chrome-bin/chrome \
+ $chrome_OPTS \
--no-sandbox \
--user-data-dir=$ADDON_HOME/profile \
--test-type $@ \
@@ -104,3 +107,7 @@ if [ "$HIDE_CURSOR" == "true" ]
then
kill $UNCLUTTER_PID
fi
+
+# HACK!!! to get sound at Kodi start pulseaudio
+sleep 5
+systemctl start pulseaudio
diff --git a/packages/addons/browser/chrome/source/default.py b/packages/addons/browser/chrome/source/default.py
new file mode 100644
index 0000000000..1ac0a2572e
--- /dev/null
+++ b/packages/addons/browser/chrome/source/default.py
@@ -0,0 +1,116 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
+# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+import os
+import sys
+import time
+import xbmcaddon
+import subprocess
+from xml.dom.minidom import parse
+
+sys.path.append('/usr/share/kodi/addons/service.libreelec.settings')
+
+import oe
+
+__addon__ = xbmcaddon.Addon();
+__path__ = os.path.join(__addon__.getAddonInfo('path'), 'bin') + '/'
+
+pauseXBMC = __addon__.getSetting("PAUSE_XBMC")
+
+def pauseXbmc():
+ if pauseXBMC == "true":
+ xbmc.executebuiltin("PlayerControl(Stop)")
+ xbmc.audioSuspend()
+ xbmc.enableNavSounds(False)
+
+def resumeXbmc():
+ if pauseXBMC == "true":
+ xbmc.audioResume()
+ xbmc.enableNavSounds(True)
+
+def startchrome(args):
+ try:
+ new_env = os.environ.copy()
+ new_env['VAAPI_MODE'] = __addon__.getSetting('VAAPI_MODE')
+ new_env['WINDOW_MODE'] = __addon__.getSetting('WINDOW_MODE')
+ new_env['RASTER_MODE'] = __addon__.getSetting('RASTER_MODE')
+
+ new_env['ALSA_DEVICE'] = ''
+ if __addon__.getSetting('USE_CUST_AUDIODEVICE') == 'true':
+ alsa_device = __addon__.getSetting('CUST_AUDIODEVICE_STR')
+ else:
+ alsa_device = getAudioDevice()
+ if not alsa_device == None and not alsa_device == '':
+ new_env['ALSA_DEVICE'] = alsa_device
+
+ chrome_params = args + ' ' + \
+ __addon__.getSetting('HOMEPAGE')
+ subprocess.call(__path__ + 'chrome-start ' + chrome_params, shell=True, env=new_env)
+ except Exception, e:
+ oe.dbg_log('chrome', unicode(e))
+
+def isRuning(pname):
+ tmp = os.popen("ps -Af").read()
+ pcount = tmp.count(pname)
+ if pcount > 0:
+ return True
+ return False
+
+def getAudioDevice():
+ try:
+ dom = parse("/storage/.kodi/userdata/guisettings.xml")
+ audiooutput=dom.getElementsByTagName('audiooutput')
+ for node in audiooutput:
+ dev = node.getElementsByTagName('audiodevice')[0].childNodes[0].nodeValue
+ if dev.startswith("ALSA:"):
+ dev = dev.split("ALSA:")[1]
+ if dev == "@":
+ return None
+ if dev.startswith("@:"):
+ dev = dev.split("@:")[1]
+ else:
+ # not ALSA
+ return None
+ except:
+ return None
+ if dev.startswith("CARD="):
+ dev = "plughw:" + dev
+ return dev
+
+if (not __addon__.getSetting("firstrun")):
+ __addon__.setSetting("firstrun", "1")
+ __addon__.openSettings()
+
+try:
+ args = ' '.join(sys.argv[1:])
+except:
+ args = ""
+
+if args == 'widevine':
+ install_widevine()
+elif args == 'flash':
+ install_flash()
+else:
+ if not isRuning('chrome'):
+ pauseXbmc()
+ startchrome(args)
+ while isRuning('chrome'):
+ time.sleep(1)
+ resumeXbmc()
+
diff --git a/packages/addons/browser/chrome/source/resources/language/English/strings.po b/packages/addons/browser/chrome/source/resources/language/English/strings.po
new file mode 100644
index 0000000000..c112a7613c
--- /dev/null
+++ b/packages/addons/browser/chrome/source/resources/language/English/strings.po
@@ -0,0 +1,46 @@
+# Kodi Media Center language file
+# Addon Name: chrome
+# Addon id: browser.chrome
+# Addon Provider: Team LibreELEC
+msgid ""
+msgstr ""
+
+msgctxt "#30000"
+msgid "General"
+msgstr ""
+
+msgctxt "#30001"
+msgid "Chrome Configuration"
+msgstr ""
+
+msgctxt "#30002"
+msgid "Stop Kodi Player and Suspend AudioEngine"
+msgstr ""
+
+msgctxt "#30003"
+msgid "HW Acceleration Mode"
+msgstr ""
+
+msgctxt "#30004"
+msgid "Rasterization Mode"
+msgstr ""
+
+msgctxt "#30005"
+msgid "Window Mode"
+msgstr ""
+
+msgctxt "#30006"
+msgid "Default Homepage"
+msgstr ""
+
+msgctxt "#30007"
+msgid "Use Custom Audio Device"
+msgstr ""
+
+msgctxt "#30008"
+msgid "Audio Device"
+msgstr ""
+
+msgctxt "#30009"
+msgid "Hide Cursor"
+msgstr ""
diff --git a/packages/addons/browser/chrome/source/resources/settings.xml b/packages/addons/browser/chrome/source/resources/settings.xml
new file mode 100644
index 0000000000..d7fa58d4cf
--- /dev/null
+++ b/packages/addons/browser/chrome/source/resources/settings.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/addons/browser/chrome/source/settings-default.xml b/packages/addons/browser/chrome/source/settings-default.xml
new file mode 100644
index 0000000000..4eace1aefb
--- /dev/null
+++ b/packages/addons/browser/chrome/source/settings-default.xml
@@ -0,0 +1,10 @@
+
+
+ false
+ https://libreelec.tv
+ true
+ default
+ false
+ intel
+ maximized
+
diff --git a/packages/addons/browser/chromium/changelog.txt b/packages/addons/browser/chromium/changelog.txt
deleted file mode 100644
index 5d279814ad..0000000000
--- a/packages/addons/browser/chromium/changelog.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-108
-- Security Update to 63.0.3239.108
-
-107
-- Update to 63.0.3239.84
-
-106
-- Update to 55.0.2883.75
-
-105
-- Update to 55.0.2883.44
-
-104
-- Update to 53.0.2785.92
-
-103
-- add xdotool
-
-102
-- add unclutter
-
-101
-- update to version 50.0.2661.75
-
-100
-- initial LibreELEC release
diff --git a/packages/addons/browser/chromium/config/pango.modules b/packages/addons/browser/chromium/config/pango.modules
deleted file mode 100644
index 3a7ae71db4..0000000000
--- a/packages/addons/browser/chromium/config/pango.modules
+++ /dev/null
@@ -1,13 +0,0 @@
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-arabic-lang.so ArabicScriptEngineLang PangoEngineLang PangoRenderNone arabic:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-basic-fc.so BasicScriptEngineFc PangoEngineShape PangoRenderFc common:
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so devaIndicScriptEngineLang PangoEngineLang PangoRenderNone devanagari:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so bengIndicScriptEngineLang PangoEngineLang PangoRenderNone bengali:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so guruIndicScriptEngineLang PangoEngineLang PangoRenderNone gurmukhi:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so gujrIndicScriptEngineLang PangoEngineLang PangoRenderNone gujarati:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so oryaIndicScriptEngineLang PangoEngineLang PangoRenderNone oriya:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so tamlIndicScriptEngineLang PangoEngineLang PangoRenderNone tamil:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so teluIndicScriptEngineLang PangoEngineLang PangoRenderNone telugu:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so kndaIndicScriptEngineLang PangoEngineLang PangoRenderNone kannada:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so mlymIndicScriptEngineLang PangoEngineLang PangoRenderNone malayalam:*
-/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so sinhIndicScriptEngineLang PangoEngineLang PangoRenderNone sinhala:*
-
diff --git a/packages/addons/browser/chromium/config/pixbuf.loaders.cache b/packages/addons/browser/chromium/config/pixbuf.loaders.cache
deleted file mode 100644
index 62ef3707da..0000000000
--- a/packages/addons/browser/chromium/config/pixbuf.loaders.cache
+++ /dev/null
@@ -1,125 +0,0 @@
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-jpeg.so"
-"jpeg" 5 "gdk-pixbuf" "The JPEG image format" "LGPL"
-"image/jpeg" ""
-"jpeg" "jpe" "jpg" ""
-"\377\330" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ani.so"
-"ani" 4 "gdk-pixbuf" "The ANI image format" "LGPL"
-"application/x-navi-animation" ""
-"ani" ""
-"RIFF ACON" " xxxx " 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ico.so"
-"ico" 5 "gdk-pixbuf" "The ICO image format" "LGPL"
-"image/x-icon" "image/x-ico" "image/x-win-bitmap" ""
-"ico" "cur" ""
-" \001 " "zz znz" 100
-" \002 " "zz znz" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ras.so"
-"ras" 4 "gdk-pixbuf" "The Sun raster image format" "LGPL"
-"image/x-cmu-raster" "image/x-sun-raster" ""
-"ras" ""
-"Y\246j\225" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-jasper.so"
-"jpeg2000" 4 "gdk-pixbuf" "The JPEG 2000 image format" "LGPL"
-"image/jp2" "image/jpeg2000" "image/jpx" ""
-"jp2" "jpc" "jpx" "j2k" "jpf" ""
-" jP" "!!!! " 100
-"\377O\377Q" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-wbmp.so"
-"wbmp" 4 "gdk-pixbuf" "The WBMP image format" "LGPL"
-"image/vnd.wap.wbmp" ""
-"wbmp" ""
-" " "zz" 1
-" `" "z " 1
-" @" "z " 1
-" " "z " 1
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-png.so"
-"png" 5 "gdk-pixbuf" "The PNG image format" "LGPL"
-"image/png" ""
-"png" ""
-"\211PNG\r\n\032\n" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-pcx.so"
-"pcx" 4 "gdk-pixbuf" "The PCX image format" "LGPL"
-"image/x-pcx" ""
-"pcx" ""
-"\n \001" "" 100
-"\n\002\001" "" 100
-"\n\003\001" "" 100
-"\n\004\001" "" 100
-"\n\005\001" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-qtif.so"
-"qtif" 4 "gdk-pixbuf" "The QTIF image format" "LGPL"
-"image/x-quicktime" "image/qtif" ""
-"qtif" "qif" ""
-"abcdidsc" "xxxx " 100
-"abcdidat" "xxxx " 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-tiff.so"
-"tiff" 5 "gdk-pixbuf" "The TIFF image format" "LGPL"
-"image/tiff" ""
-"tiff" "tif" ""
-"MM *" " z " 100
-"II* " " z" 100
-"II* \020 CR\002 " " z zzz z" 0
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-icns.so"
-"icns" 4 "gdk-pixbuf" "The ICNS image format" "GPL"
-"image/x-icns" ""
-"icns" ""
-"icns" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-tga.so"
-"tga" 4 "gdk-pixbuf" "The Targa image format" "LGPL"
-"image/x-tga" ""
-"tga" "targa" ""
-" \001\001" "x " 100
-" \001\t" "x " 100
-" \002" "xz " 99
-" \003" "xz " 100
-" \n" "xz " 100
-" \v" "xz " 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-bmp.so"
-"bmp" 5 "gdk-pixbuf" "The BMP image format" "LGPL"
-"image/bmp" "image/x-bmp" "image/x-MS-bmp" ""
-"bmp" ""
-"BM" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-xbm.so"
-"xbm" 4 "gdk-pixbuf" "The XBM image format" "LGPL"
-"image/x-xbitmap" ""
-"xbm" ""
-"#define " "" 100
-"/*" "" 50
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-xpm.so"
-"xpm" 4 "gdk-pixbuf" "The XPM image format" "LGPL"
-"image/x-xpixmap" ""
-"xpm" ""
-"/* XPM */" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-pnm.so"
-"pnm" 4 "gdk-pixbuf" "The PNM/PBM/PGM/PPM image format family" "LGPL"
-"image/x-portable-anymap" "image/x-portable-bitmap" "image/x-portable-graymap" "image/x-portable-pixmap" ""
-"pnm" "pbm" "pgm" "ppm" ""
-"P1" "" 100
-"P2" "" 100
-"P3" "" 100
-"P4" "" 100
-"P5" "" 100
-"P6" "" 100
-
-"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-gif.so"
-"gif" 4 "gdk-pixbuf" "The GIF image format" "LGPL"
-"image/gif" ""
-"gif" ""
-"GIF8" "" 100
-
diff --git a/packages/addons/browser/chromium/icon/icon.png b/packages/addons/browser/chromium/icon/icon.png
deleted file mode 100644
index 033fb10f71..0000000000
Binary files a/packages/addons/browser/chromium/icon/icon.png and /dev/null differ
diff --git a/packages/addons/browser/chromium/package.mk b/packages/addons/browser/chromium/package.mk
index 90c9ae84d7..749e451253 100644
--- a/packages/addons/browser/chromium/package.mk
+++ b/packages/addons/browser/chromium/package.mk
@@ -1,164 +1,40 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
#
-# This Program is free software; you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
#
-# This Program is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="chromium"
-PKG_VERSION="63.0.3239.108"
-PKG_SHA256="47d80798194da78bdd519b7ce012425b13cf89d6eb287e22a34342a245c31a2b"
-PKG_REV="108"
-PKG_ARCH="x86_64"
-PKG_LICENSE="Mixed"
-PKG_SITE="http://www.chromium.org/Home"
-PKG_URL="https://commondatastorage.googleapis.com/chromium-browser-official/$PKG_NAME-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_HOST="toolchain ninja:host Python2:host"
-PKG_DEPENDS_TARGET="chromium:host node:host pciutils dbus libXcomposite libXcursor libXtst alsa-lib bzip2 yasm nss libXScrnSaver libexif libpng atk gtk+ libva-vdpau-driver unclutter xdotool"
+PKG_VERSION="1.0"
+PKG_REV="100"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE=""
+PKG_URL=""
+PKG_DEPENDS_TARGET="toolchain"
PKG_SECTION="browser"
-PKG_SHORTDESC="Chromium Browser: the open-source web browser from Google"
-PKG_LONGDESC="Chromium Browser ($PKG_VERSION): the open-source web browser from Google"
+PKG_SHORTDESC="Add-on removed"
+PKG_LONGDESC="Add-on removed"
PKG_TOOLCHAIN="manual"
+PKG_ADDON_BROKEN="Chromium is no longer maintained and has been superseded by Chrome."
+
PKG_IS_ADDON="yes"
PKG_ADDON_NAME="Chromium"
-PKG_ADDON_TYPE="xbmc.python.script"
-PKG_ADDON_PROVIDES="executable"
-
-post_patch() {
- cd $(get_build_dir chromium)
-
- # Use Python 2
- find . -name '*.py' -exec sed -i -r "s|/usr/bin/python$|$TOOLCHAIN/bin/python|g" {} +
-
- # set correct widevine
- sed -i -e 's/@WIDEVINE_VERSION@/Pinkie Pie/' ./third_party/widevine/cdm/stub/widevine_cdm_version.h
-}
-
-make_host() {
- ./tools/gn/bootstrap/bootstrap.py --no-rebuild --no-clean --verbose
-}
-
-make_target() {
- export LDFLAGS="$LDFLAGS -ludev"
- export LD=$CXX
-
- # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
- # Note: These are for OpenELEC use ONLY. For your own distribution, please
- # get your own set of keys.
-
- local _google_api_key=AIzaSyAQ6L9vt9cnN4nM0weaa6Y38K4eyPvtKgI
- local _google_default_client_id=740889307901-4bkm4e0udppnp1lradko85qsbnmkfq3b.apps.googleusercontent.com
- local _google_default_client_secret=9TJlhL661hvShQub4cWhANXa
-
- local _flags=(
- "host_toolchain=\"//build/toolchain/linux:x64_host\""
- 'is_clang=false'
- 'clang_use_chrome_plugins=false'
- 'symbol_level=0'
- 'is_debug=false'
- 'fatal_linker_warnings=false'
- 'treat_warnings_as_errors=false'
- 'fieldtrial_testing_like_official_build=true'
- 'remove_webcore_debug_symbols=true'
- 'ffmpeg_branding="Chrome"'
- 'proprietary_codecs=true'
- 'link_pulseaudio=true'
- 'linux_use_bundled_binutils=false'
- 'use_allocator="none"'
- 'use_cups=false'
- 'use_custom_libcxx=false'
- 'use_gconf=false'
- 'use_gnome_keyring=false'
- 'use_gold=false'
- 'use_gtk3=false'
- 'use_kerberos=false'
- 'use_pulseaudio=false'
- 'use_sysroot=true'
- 'use_vaapi=true'
- 'use_v8_context_snapshot=false'
- 'enable_vulkan=false'
- "target_sysroot=\"${SYSROOT_PREFIX}\""
- 'exclude_unwind_tables=true'
- 'enable_hangout_services_extension=true'
- 'enable_widevine=true'
- 'enable_nacl=false'
- 'enable_nacl_nonsfi=false'
- 'enable_swiftshader=false'
- 'enable_vulkan=false'
- "google_api_key=\"${_google_api_key}\""
- "google_default_client_id=\"${_google_default_client_id}\""
- "google_default_client_secret=\"${_google_default_client_secret}\""
- )
-
- ./third_party/libaddressinput/chromium/tools/update-strings.py
-
- ./out/Release/gn gen out/Release --args="${_flags[*]}" --script-executable=$TOOLCHAIN/bin/python
- mkdir -p $PKG_BUILD/third_party/node/linux/node-linux-x64/bin
- ln -fs $TOOLCHAIN/bin/node $PKG_BUILD/third_party/node/linux/node-linux-x64/bin/node
-
- ninja -j${CONCURRENCY_MAKE_LEVEL} -C out/Release chrome chrome_sandbox widevinecdmadapter
-}
+PKG_ADDON_TYPE="xbmc.broken"
addon() {
- mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin
- cp -P $PKG_BUILD/out/Release/chrome $ADDON_BUILD/$PKG_ADDON_ID/bin/chromium.bin
- cp -P $PKG_BUILD/out/Release/chrome_sandbox $ADDON_BUILD/$PKG_ADDON_ID/bin/chrome-sandbox
- cp -P $PKG_BUILD/out/Release/{*.pak,*.dat,*.bin,libwidevinecdmadapter.so} $ADDON_BUILD/$PKG_ADDON_ID/bin
- cp -PR $PKG_BUILD/out/Release/locales $ADDON_BUILD/$PKG_ADDON_ID/bin/
- cp -PR $PKG_BUILD/out/Release/gen/content/content_resources.pak $ADDON_BUILD/$PKG_ADDON_ID/bin/
-
- # config
- mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config
- cp -P $PKG_DIR/config/* $ADDON_BUILD/$PKG_ADDON_ID/config
-
- mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # pango
- cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangocairo-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
- cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpango-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
- cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangoft2-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # cairo
- cp -PL $(get_build_dir cairo)/.install_pkg/usr/lib/libcairo.so.2 $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # gtk
- cp -PL $(get_build_dir gtk+)/.install_pkg/usr/lib/libgdk-x11-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
- cp -PL $(get_build_dir gtk+)/.install_pkg/usr/lib/libgtk-x11-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # harfbuzz
- cp -PL $(get_build_dir harfbuzz)/.install_pkg/usr/lib/libharfbuzz.so* $ADDON_BUILD/$PKG_ADDON_ID/lib
- cp -PL $(get_build_dir harfbuzz)/.install_pkg/usr/lib/libharfbuzz-icu.so* $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # gdk-pixbuf
- cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/libgdk_pixbuf-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # pixbuf loaders
- mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules
- cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/* $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules
-
- # libexif
- cp -PL $(get_build_dir libexif)/.install_pkg/usr/lib/* $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # libva-vdpau-driver
- cp -PL $(get_build_dir libva-vdpau-driver)/.install_pkg/usr/lib/dri/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib
-
- # unclutter
- cp -P $(get_build_dir unclutter)/.install_pkg/usr/bin/unclutter $ADDON_BUILD/$PKG_ADDON_ID/bin
-
- # xdotool
- cp -P $(get_build_dir xdotool)/xdotool $ADDON_BUILD/$PKG_ADDON_ID/bin
+ :
}
diff --git a/packages/addons/browser/chromium/patches/chromium-0001_widevine.patch b/packages/addons/browser/chromium/patches/chromium-0001_widevine.patch
deleted file mode 100644
index a67ae8b1c1..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0001_widevine.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
---- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
-+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
-@@ -12,4 +12,6 @@
-
- #define WIDEVINE_CDM_AVAILABLE
-
-+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
-+
- #endif // WIDEVINE_CDM_VERSION_H_
diff --git a/packages/addons/browser/chromium/patches/chromium-0002-allow-root.patch b/packages/addons/browser/chromium/patches/chromium-0002-allow-root.patch
deleted file mode 100644
index eccfbbf87c..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0002-allow-root.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- chromium-59.0.3071.109/./chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc.org 2017-06-26 20:32:34.907628561 +0200
-+++ chromium-59.0.3071.109/./chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc 2017-06-26 20:31:05.855206203 +0200
-@@ -99,7 +99,7 @@
- IMEDriver::Register();
- #endif
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if 0
- // On the Linux desktop, we want to prevent the user from logging in as root,
- // so that we don't destroy the profile. Now that we have some minimal ui
- // initialized, check to see if we're running as root and bail if we are.
diff --git a/packages/addons/browser/chromium/patches/chromium-0003_oe-root-filesystem-is-readonly.patch b/packages/addons/browser/chromium/patches/chromium-0003_oe-root-filesystem-is-readonly.patch
deleted file mode 100644
index 4982ee8b0b..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0003_oe-root-filesystem-is-readonly.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/sandbox/linux/suid/client/setuid_sandbox_client.cc 2015-11-13 03:04:19.000000000 -0800
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc 2016-01-12 22:06:26.291831672 -0800
-@@ -123,7 +123,6 @@
-
- // We now consider ourselves "fully sandboxed" as far as the
- // setuid sandbox is concerned.
-- CHECK(IsFileSystemAccessDenied());
- sandboxed_ = true;
- return true;
- }
diff --git a/packages/addons/browser/chromium/patches/chromium-0004-vaapi-on-linux.patch b/packages/addons/browser/chromium/patches/chromium-0004-vaapi-on-linux.patch
deleted file mode 100644
index b8dff361a7..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0004-vaapi-on-linux.patch
+++ /dev/null
@@ -1,722 +0,0 @@
-From 7f29b44224439377592be2b75da0b86d82d8ad6d Mon Sep 17 00:00:00 2001
-From: Daniel Charles
-Date: Wed, 18 Oct 2017 17:27:42 -0700
-Subject: [PATCH] Enable VAVDA, VAVEA and VAJDA on linux with VAAPI only
-
-This patch contains all the changes necessary to use VA-API along with
-vaapi-driver to run all media use cases supported with hardware acceleration.
-
-It is intended to remain as experimental accessible from chrome://flags on linux.
-It requires libva/intel-vaapi-driver to be installed on the system path where
-chrome is executed. Other drivers could be tested if available. Flags are
-kept independent for linux, where this feature has to be enabled before
-actually using it. This should not change how other OSes use the flags
-already, the new flags will show at the buttom on the section of unavailable
-experiments
-
-The changes cover a range of compiler pre-processor flags to enable the stack.
-It moves the presandbox operations to the vaapi_wrapper class as the hook function
-is available there. vaInit will open driver on the correct installed folder.
-
-chrome flags consolidtation into only two flags for linux. Mjpeg and accelerated
-video are used. The other flags are kept for ChromeOS and other OSes.
-
-Developer testing was made on skylake hardware, ChromeOS and Ubuntu.
-
-BUG=NONE
-TEST="subjective testing with VAVDA,VAVEA and VAJDA, autotest for encoder"
-TEST="and decoder hardware accelerated"
-TEST="have libva/intel-vaapi-driver installed and not installed in the system"
-TEST="repeat on different hardware families"
-R=posciak@chromium.org
-R=kcwu@chromium.org
-
-Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
-Change-Id: Ifbbf5c9e5221a8b5733fc6d4d0cf984a1f103171
-Signed-off-by: Daniel Charles
----
-
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 3555293..4c3115f 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1246,12 +1246,14 @@
- flag_descriptions::kUiPartialSwapDescription, kOsAll,
- SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
- #if BUILDFLAG(ENABLE_WEBRTC)
-+#if !defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
- {"disable-webrtc-hw-decoding", flag_descriptions::kWebrtcHwDecodingName,
- flag_descriptions::kWebrtcHwDecodingDescription, kOsAndroid | kOsCrOS,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding)},
- {"disable-webrtc-hw-encoding", flag_descriptions::kWebrtcHwEncodingName,
- flag_descriptions::kWebrtcHwEncodingDescription, kOsAndroid | kOsCrOS,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding)},
-+#endif
- {"enable-webrtc-hw-h264-encoding",
- flag_descriptions::kWebrtcHwH264EncodingName,
- flag_descriptions::kWebrtcHwH264EncodingDescription, kOsAndroid | kOsCrOS,
-@@ -1557,6 +1559,13 @@
- flag_descriptions::kSpuriousPowerButtonLidAngleChangeDescription, kOsCrOS,
- MULTI_VALUE_TYPE(kSpuriousPowerButtonLidAngleChangeChoices)},
- #endif // OS_CHROMEOS
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ {
-+ "enable-accelerated-video", flag_descriptions::kAcceleratedVideoName,
-+ flag_descriptions::kAcceleratedVideoDescription, kOsLinux,
-+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedVideo),
-+ },
-+#else
- {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
-@@ -1564,6 +1573,7 @@
- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
-+#endif
- {"mojo-video-encode-accelerator",
- flag_descriptions::kMojoVideoEncodeAcceleratorName,
- flag_descriptions::kMojoVideoEncodeAcceleratorDescription,
-@@ -2229,12 +2239,17 @@
- FEATURE_VALUE_TYPE(features::kWebVrVsyncAlign)},
- #endif // OS_ANDROID
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ {"enable-accelerated-mjpeg-decode",
-+ flag_descriptions::kAcceleratedMjpegDecodeName,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsLinux,
-+ SINGLE_VALUE_TYPE(switches::kEnableAcceleratedMjpegDecode)},
-+#elif defined(OS_CHROMEOS)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif
- {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
- flag_descriptions::kV8CacheOptionsDescription, kOsAll,
- MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
-diff --git a/chrome/browser/chromeos/login/chrome_restart_request.cc b/chrome/browser/chromeos/login/chrome_restart_request.cc
-index 3815e79..d5d3712 100644
---- a/chrome/browser/chromeos/login/chrome_restart_request.cc
-+++ b/chrome/browser/chromeos/login/chrome_restart_request.cc
-@@ -19,6 +19,7 @@
- #include "base/sys_info.h"
- #include "base/timer/timer.h"
- #include "base/values.h"
-+#include "build/build_config.h"
- #include "cc/base/switches.h"
- #include "chrome/browser/browser_process.h"
- #include "chrome/browser/chromeos/boot_times_recorder.h"
-@@ -79,8 +80,13 @@
- ::switches::kDisable2dCanvasImageChromium,
- ::switches::kDisableAccelerated2dCanvas,
- ::switches::kDisableAcceleratedJpegDecoding,
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ ::switches::kEnableAcceleratedMjpegDecode,
-+ ::switches::kEnableAcceleratedVideo,
-+#else
- ::switches::kDisableAcceleratedMjpegDecode,
- ::switches::kDisableAcceleratedVideoDecode,
-+#endif
- ::switches::kDisableBlinkFeatures,
- ::switches::kDisableCastStreamingHWEncoding,
- ::switches::kDisableDistanceFieldText,
-@@ -166,7 +172,7 @@
- ::switches::kDisableWebGLImageChromium,
- ::switches::kEnableWebGLImageChromium,
- ::switches::kEnableWebVR,
--#if BUILDFLAG(ENABLE_WEBRTC)
-+#if BUILDFLAG(ENABLE_WEBRTC) && (defined(OS_CHROMEOS) || defined(OS_ANDROID))
- ::switches::kDisableWebRtcHWDecoding,
- ::switches::kDisableWebRtcHWEncoding,
- #endif
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 74e6bc7..ab184a5 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -14,6 +14,13 @@
- "Enables the use of the GPU to perform 2d canvas rendering instead of "
- "using software rendering.";
-
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+const char kAcceleratedVideoName[] = "Hardware-accelerated video";
-+const char kAcceleratedVideoDescription[] =
-+ "Hardware-accelerated video where VA-API driver is installed on the"
-+ "system.";
-+#endif
-+
- const char kAcceleratedVideoDecodeName[] = "Hardware-accelerated video decode";
- const char kAcceleratedVideoDecodeDescription[] =
- "Hardware-accelerated video decode where available.";
-@@ -1478,6 +1485,7 @@
- const char kWebrtcEchoCanceller3Description[] =
- "Experimental WebRTC echo canceller (AEC3).";
-
-+#if !defined(OS_LINUX) || !defined(OS_CHROMEOS)
- const char kWebrtcHwDecodingName[] = "WebRTC hardware video decoding";
- const char kWebrtcHwDecodingDescription[] =
- "Support in WebRTC for decoding video streams using platform hardware.";
-@@ -1485,6 +1493,7 @@
- const char kWebrtcHwEncodingName[] = "WebRTC hardware video encoding";
- const char kWebrtcHwEncodingDescription[] =
- "Support in WebRTC for encoding video streams using platform hardware.";
-+#endif
-
- const char kWebrtcHwH264EncodingName[] = "WebRTC hardware h264 video encoding";
- const char kWebrtcHwH264EncodingDescription[] =
-@@ -2283,14 +2292,16 @@
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+#endif
-
-+#if defined(OS_CHROMEOS)
- const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
- const char kAllowTouchpadThreeFingerClickDescription[] =
- "Enables touchpad three-finger-click as middle button.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 54a4950..5ace5e0 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -37,6 +37,10 @@
- extern const char kAccelerated2dCanvasName[];
- extern const char kAccelerated2dCanvasDescription[];
-
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+extern const char kAcceleratedVideoName[];
-+extern const char kAcceleratedVideoDescription[];
-+#endif
- extern const char kAcceleratedVideoDecodeName[];
- extern const char kAcceleratedVideoDecodeDescription[];
-
-@@ -1401,13 +1405,17 @@
-
- #endif // defined(OS_MACOSX)
-
--// Chrome OS ------------------------------------------------------------------
--
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+#endif
-+
-+// Chrome OS ------------------------------------------------------------------
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAllowTouchpadThreeFingerClickName[];
- extern const char kAllowTouchpadThreeFingerClickDescription[];
-
-diff --git a/content/browser/gpu/compositor_util.cc b/content/browser/gpu/compositor_util.cc
-index 122282d..bc102a3 100644
---- a/content/browser/gpu/compositor_util.cc
-+++ b/content/browser/gpu/compositor_util.cc
-@@ -105,7 +105,11 @@
- {"video_decode",
- manager->IsFeatureBlacklisted(
- gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE),
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ !command_line.HasSwitch(switches::kEnableAcceleratedVideo),
-+#else
- command_line.HasSwitch(switches::kDisableAcceleratedVideoDecode),
-+#endif
- "Accelerated video decode has been disabled, either via blacklist,"
- " about:flags or the command line.",
- true},
-@@ -113,7 +117,11 @@
- {"video_encode",
- manager->IsFeatureBlacklisted(
- gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_ENCODE),
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ !command_line.HasSwitch(switches::kEnableAcceleratedVideo),
-+#else
- command_line.HasSwitch(switches::kDisableWebRtcHWEncoding),
-+#endif
- "Accelerated video encode has been disabled, either via blacklist,"
- " about:flags or the command line.",
- true},
-diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc
-index 51aa672..963da85 100644
---- a/content/browser/gpu/gpu_data_manager_impl_private.cc
-+++ b/content/browser/gpu/gpu_data_manager_impl_private.cc
-@@ -717,7 +717,11 @@
- DCHECK(command_line);
-
- if (ShouldDisableAcceleratedVideoDecode(command_line))
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ command_line->AppendSwitch(switches::kEnableAcceleratedVideo);
-+#else
- command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode);
-+#endif
-
- #if defined(USE_AURA)
- if (!CanUseGpuBrowserCompositor())
-@@ -748,7 +752,11 @@
- }
-
- if (ShouldDisableAcceleratedVideoDecode(command_line)) {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ command_line->AppendSwitch(switches::kEnableAcceleratedVideo);
-+#else
- command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode);
-+#endif
- }
-
- #if defined(USE_OZONE)
-@@ -826,7 +834,12 @@
- const base::CommandLine* command_line =
- base::CommandLine::ForCurrentProcess();
- if (!ShouldDisableAcceleratedVideoDecode(command_line) &&
-- !command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ command_line->HasSwitch(switches::kEnableAcceleratedVideo)
-+#else
-+ !command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)
-+#endif
-+ ) {
- prefs->pepper_accelerated_video_decode_enabled = true;
- }
- }
-@@ -1016,7 +1029,13 @@
- // to resolve crbug/442039 has been collected.
- const std::string group_name = base::FieldTrialList::FindFullName(
- "DisableAcceleratedVideoDecode");
-- if (command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) {
-+ if (
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo)
-+#else
-+ command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)
-+#endif
-+ ) {
- // It was already disabled on the command line.
- return false;
- }
-diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc
-index 95d4dff..9b26d3f 100644
---- a/content/browser/gpu/gpu_process_host.cc
-+++ b/content/browser/gpu/gpu_process_host.cc
-@@ -111,7 +111,11 @@
-
- // Command-line switches to propagate to the GPU process.
- static const char* const kSwitchNames[] = {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ switches::kEnableAcceleratedVideo,
-+#else
- switches::kDisableAcceleratedVideoDecode,
-+#endif
- switches::kDisableBreakpad,
- switches::kDisableGpuRasterization,
- switches::kDisableGpuSandbox,
-@@ -120,7 +124,7 @@
- switches::kDisableLogging,
- switches::kDisableSeccompFilterSandbox,
- switches::kDisableShaderNameHashing,
--#if BUILDFLAG(ENABLE_WEBRTC)
-+#if BUILDFLAG(ENABLE_WEBRTC) && !defined(OS_LINUX)
- switches::kDisableWebRtcHWEncoding,
- #endif
- #if defined(OS_WIN)
-diff --git a/content/browser/renderer_host/media/video_capture_browsertest.cc b/content/browser/renderer_host/media/video_capture_browsertest.cc
-index 8ca0ad0..8c489d0 100644
---- a/content/browser/renderer_host/media/video_capture_browsertest.cc
-+++ b/content/browser/renderer_host/media/video_capture_browsertest.cc
-@@ -155,8 +155,13 @@
- base::CommandLine::ForCurrentProcess()->AppendSwitch(
- switches::kUseFakeJpegDecodeAccelerator);
- } else {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
-+ switches::kEnableAcceleratedMjpegDecode);
-+#else
- base::CommandLine::ForCurrentProcess()->AppendSwitch(
- switches::kDisableAcceleratedMjpegDecode);
-+#endif
- }
- if (params_.use_mojo_service) {
- base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
-diff --git a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
-index 34afec23..ad77490 100644
---- a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
-+++ b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
-@@ -56,15 +56,21 @@
- bool is_platform_supported =
- base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kUseFakeJpegDecodeAccelerator);
--#if defined(OS_CHROMEOS)
-- // Non-ChromeOS platforms do not support HW JPEG decode now. Do not establish
-- // gpu channel to avoid introducing overhead.
-+#if !defined(OS_ANDROID) && defined(OS_LINUX)
-+ // Non-ChromeOS or Non-Linux platforms do not support HW JPEG decode now. Do
-+ // not establish gpu channel to avoid introducing overhead.
- is_platform_supported = true;
- #endif
-
- if (!is_platform_supported ||
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+ !base::CommandLine::ForCurrentProcess()->HasSwitch(
-+ switches::kEnableAcceleratedMjpegDecode)
-+#else
- base::CommandLine::ForCurrentProcess()->HasSwitch(
-- switches::kDisableAcceleratedMjpegDecode)) {
-+ switches::kDisableAcceleratedMjpegDecode)
-+#endif
-+ ) {
- decoder_status_ = FAILED;
- RecordInitDecodeUMA_Locked();
- return;
-diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
-index fbe4d21..1be295e 100644
---- a/content/browser/renderer_host/render_process_host_impl.cc
-+++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -2506,7 +2506,11 @@
- switches::kDefaultTileHeight,
- switches::kDisable2dCanvasImageChromium,
- switches::kDisableAcceleratedJpegDecoding,
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ switches::kEnableAcceleratedVideo,
-+#else
- switches::kDisableAcceleratedVideoDecode,
-+#endif
- switches::kDisableBackgroundTimerThrottling,
- switches::kDisableBreakpad,
- switches::kDisableBrowserSideNavigation,
-@@ -2660,8 +2664,10 @@
- switches::kDisableMojoRenderer,
- #endif
- #if BUILDFLAG(ENABLE_WEBRTC)
-+#if !defined(OS_LINUX) || defined(OS_CHROMEOS)
- switches::kDisableWebRtcHWDecoding,
- switches::kDisableWebRtcHWEncoding,
-+#endif
- switches::kEnableWebRtcSrtpAesGcm,
- switches::kEnableWebRtcSrtpEncryptedHeaders,
- switches::kEnableWebRtcStunOrigin,
-diff --git a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc b/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
-index 3d815a2..2c96048 100644
---- a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
-+++ b/content/browser/webrtc/webrtc_media_recorder_browsertest.cc
-@@ -58,7 +58,12 @@
- return;
- // This flag is also used for encoding, https://crbug.com/616640.
- base::CommandLine::ForCurrentProcess()->AppendSwitch(
-- switches::kDisableAcceleratedVideoDecode);
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ switches::kEnableAcceleratedVideo
-+#else
-+ switches::kDisableAcceleratedVideoDecode
-+#endif
-+ );
- }
-
- private:
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index a5424bb..b68b802 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -45,7 +45,6 @@
- ]
-
- configs += [ "//content:content_implementation" ]
--
- deps = [
- "//base",
- "//base/third_party/dynamic_annotations",
-@@ -114,4 +113,8 @@
- if (enable_vulkan) {
- deps += [ "//gpu/vulkan" ]
- }
-+
-+ if (is_desktop_linux) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index 556cf00..730f4ae 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -254,7 +254,7 @@
- // Initializes StatisticsRecorder which tracks UMA histograms.
- base::StatisticsRecorder::Initialize();
-
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX)
- // Set thread priority before sandbox initialization.
- base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
- #endif
-@@ -283,7 +283,7 @@
- GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
-
- base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX)
- io_thread_priority = base::ThreadPriority::DISPLAY;
- #endif
-
-diff --git a/content/public/browser/gpu_utils.cc b/content/public/browser/gpu_utils.cc
-index 6aafb06..d4ddd8d 100644
---- a/content/public/browser/gpu_utils.cc
-+++ b/content/public/browser/gpu_utils.cc
-@@ -7,6 +7,7 @@
- #include "base/command_line.h"
- #include "base/single_thread_task_runner.h"
- #include "base/strings/string_number_conversions.h"
-+#include "build/build_config.h"
- #include "content/browser/gpu/gpu_process_host.h"
- #include "content/public/common/content_features.h"
- #include "content/public/common/content_switches.h"
-@@ -57,12 +58,19 @@
- gpu_preferences.ui_prioritize_in_gpu_process =
- command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess);
- gpu_preferences.disable_accelerated_video_decode =
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
-+#else
- command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode);
--#if defined(OS_CHROMEOS)
-+#endif
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ gpu_preferences.disable_vaapi_accelerated_video_encode =
-+ !command_line->HasSwitch(switches::kEnableAcceleratedVideo);
-+#elif defined(OS_CHROMEOS)
- gpu_preferences.disable_vaapi_accelerated_video_encode =
- command_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode);
- #endif
--#if BUILDFLAG(ENABLE_WEBRTC)
-+#if BUILDFLAG(ENABLE_WEBRTC) && (!defined(OS_LINUX) || defined(OS_CHROMEOS))
- gpu_preferences.disable_web_rtc_hw_encoding =
- command_line->HasSwitch(switches::kDisableWebRtcHWEncoding);
- #endif
-diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc
-index 4e699d1..3a7a2b7 100644
---- a/content/public/common/content_switches.cc
-+++ b/content/public/common/content_switches.cc
-@@ -89,12 +89,21 @@
-
- // Disable gpu-accelerated 2d canvas.
- const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas";
--
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+// Enable hardware accelerated mjpeg decode on linux
-+const char kEnableAcceleratedMjpegDecode[] = "enable-accelerated-mjpeg-decode";
-+#else
- // Disable hardware acceleration of mjpeg decode for captured frame, where
- // available.
- const char kDisableAcceleratedMjpegDecode[] =
- "disable-accelerated-mjpeg-decode";
-+#endif
-
-+#if defined(OS_LINUX)
-+// Enables hardware acceleration of video for Linux only. VA-API driver
-+// is required to be present on the system installation.
-+const char kEnableAcceleratedVideo[] = "enable-accelerated-video";
-+#endif
- // Disables hardware acceleration of video decode, where available.
- const char kDisableAcceleratedVideoDecode[] =
- "disable-accelerated-video-decode";
-@@ -932,11 +941,13 @@
- // ignores this switch on its stable and beta channels.
- const char kDisableWebRtcEncryption[] = "disable-webrtc-encryption";
-
-+#if defined(OS_CHROMEOS)
- // Disables HW decode acceleration for WebRTC.
- const char kDisableWebRtcHWDecoding[] = "disable-webrtc-hw-decoding";
-
- // Disables HW encode acceleration for WebRTC.
- const char kDisableWebRtcHWEncoding[] = "disable-webrtc-hw-encoding";
-+#endif
-
- // Enables negotiation of GCM cipher suites from RFC 7714 for SRTP in WebRTC.
- // See https://tools.ietf.org/html/rfc7714 for further information.
-diff --git a/content/public/common/content_switches.h b/content/public/common/content_switches.h
-index 2704924..67d00bb 100644
---- a/content/public/common/content_switches.h
-+++ b/content/public/common/content_switches.h
-@@ -35,7 +35,11 @@
- CONTENT_EXPORT extern const char kDisable3DAPIs[];
- CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[];
- CONTENT_EXPORT extern const char kDisableAcceleratedJpegDecoding[];
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+CONTENT_EXPORT extern const char kEnableAcceleratedMjpegDecode[];
-+#else
- CONTENT_EXPORT extern const char kDisableAcceleratedMjpegDecode[];
-+#endif
- CONTENT_EXPORT extern const char kDisableAcceleratedVideoDecode[];
- CONTENT_EXPORT extern const char kDisableAudioSupportForDesktopShare[];
- extern const char kDisableBackingStoreLimit[];
-@@ -109,6 +113,9 @@
- CONTENT_EXPORT extern const char kDomAutomationController[];
- extern const char kDisable2dCanvasClipAntialiasing[];
- CONTENT_EXPORT extern const char kDumpBlinkRuntimeCallStats[];
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
-+CONTENT_EXPORT extern const char kEnableAcceleratedVideo[];
-+#endif
- CONTENT_EXPORT extern const char kEnableAggressiveDOMStorageFlushing[];
- CONTENT_EXPORT extern const char kEnableAutomation[];
- CONTENT_EXPORT extern const char kEnablePreferCompositingToLCDText[];
-@@ -256,8 +263,10 @@
-
- #if BUILDFLAG(ENABLE_WEBRTC)
- CONTENT_EXPORT extern const char kDisableWebRtcEncryption[];
-+#if defined(OS_CHROMEOS)
- CONTENT_EXPORT extern const char kDisableWebRtcHWDecoding[];
- CONTENT_EXPORT extern const char kDisableWebRtcHWEncoding[];
-+#endif
- CONTENT_EXPORT extern const char kEnableWebRtcSrtpAesGcm[];
- CONTENT_EXPORT extern const char kEnableWebRtcSrtpEncryptedHeaders[];
- CONTENT_EXPORT extern const char kEnableWebRtcStunOrigin[];
-diff --git a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
-index 017056c..825bdce 100644
---- a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
-+++ b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
-@@ -239,10 +239,19 @@
-
- const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
- if (gpu_factories && gpu_factories->IsGpuVideoAcceleratorEnabled()) {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo))
-+#else
- if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWDecoding))
-+#endif
- decoder_factory.reset(new RTCVideoDecoderFactory(gpu_factories));
-
-- if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding)) {
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ if (cmd_line->HasSwitch(switches::kEnableAcceleratedVideo))
-+#else
-+ if (!cmd_line->HasSwitch(switches::kDisableWebRtcHWEncoding))
-+#endif
-+ {
- encoder_factory.reset(new RTCVideoEncoderFactory(gpu_factories));
- }
- }
-diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
-index dc01117..2f9ee03 100644
---- a/content/renderer/render_thread_impl.cc
-+++ b/content/renderer/render_thread_impl.cc
-@@ -1456,7 +1456,11 @@
- scoped_refptr media_task_runner =
- GetMediaThreadTaskRunner();
- const bool enable_video_accelerator =
-+#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideo);
-+#else
- !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode);
-+#endif
- const bool enable_gpu_memory_buffer_video_frames =
- #if defined(OS_MACOSX) || defined(OS_LINUX)
- !cmd_line->HasSwitch(switches::kDisableGpuMemoryBufferVideoFrames) &&
-diff --git a/gpu/command_buffer/service/gpu_preferences.h b/gpu/command_buffer/service/gpu_preferences.h
-index b37c2cc..a721eb7 100644
---- a/gpu/command_buffer/service/gpu_preferences.h
-+++ b/gpu/command_buffer/service/gpu_preferences.h
-@@ -50,7 +50,7 @@
- // Disables hardware acceleration of video decode, where available.
- bool disable_accelerated_video_decode = false;
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- // Disables VA-API accelerated video encode.
- bool disable_vaapi_accelerated_video_encode = false;
- #endif
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 1289a55..22e11e5 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -374,17 +374,6 @@
- ]
- },
- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
-- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
- "cr_bugs": [145531, 332596, 571899, 629434],
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 490722c..1cda2fb 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -189,7 +189,7 @@
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_chromeos) {
-+ if (current_cpu != "arm" && (is_chromeos || is_desktop_linux)) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 729c6fa..4878251 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -24,6 +24,14 @@
- import("//build/config/mac/mac_sdk.gni")
- }
-
-+if (is_desktop_linux && use_vaapi) {
-+ import("//build/config/linux/pkg_config.gni")
-+
-+ pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+ }
-+}
-+
- if (use_vaapi) {
- action("libva_generate_stubs") {
- extra_header = "va_stub_header.fragment"
-@@ -334,6 +342,9 @@
- "vaapi_drm_picture.h",
- ]
- }
-+ if (is_desktop_linux) {
-+ public_configs = [ ":libva_config" ]
-+ }
- }
-
- if (is_win) {
-diff --git a/media/gpu/gpu_video_decode_accelerator_factory.cc b/media/gpu/gpu_video_decode_accelerator_factory.cc
-index 2cee490..de02414 100644
---- a/media/gpu/gpu_video_decode_accelerator_factory.cc
-+++ b/media/gpu/gpu_video_decode_accelerator_factory.cc
-@@ -87,6 +87,7 @@
- // profile (instead of calculating a superset).
- // TODO(posciak,henryhsu): improve this so that we choose a superset of
- // resolutions and other supported profile parameters.
-+ DVLOG(1) << "Get Supported profiles";
- #if defined(OS_WIN)
- capabilities.supported_profiles =
- DXVAVideoDecodeAccelerator::GetSupportedProfiles(gpu_preferences,
-diff --git a/media/gpu/vaapi_wrapper.cc b/media/gpu/vaapi_wrapper.cc
-index 1e72893..6495642 100644
---- a/media/gpu/vaapi_wrapper.cc
-+++ b/media/gpu/vaapi_wrapper.cc
-@@ -1117,6 +1117,7 @@
- if (drm_file.IsValid())
- GetDisplayState()->SetDrmFd(drm_file.GetPlatformFile());
- #endif
-+ GetProfileInfos(); // dlopen all necessary libraries
- }
-
- // static
diff --git a/packages/addons/browser/chromium/patches/chromium-0005-define-toolchains.patch b/packages/addons/browser/chromium/patches/chromium-0005-define-toolchains.patch
deleted file mode 100644
index b512277a4f..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0005-define-toolchains.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- a/build/toolchain/linux/BUILD.gn 2017-08-30 14:08:06.342205027 +0200
-+++ b/build/toolchain/linux/BUILD.gn 2017-08-30 14:15:18.648503216 +0200
-@@ -129,12 +129,13 @@
- }
-
- gcc_toolchain("x64") {
-- cc = "gcc"
-- cxx = "g++"
-+ toolchainprefix = "x86_64-libreelec-linux-gnu-"
-+ cc = "${toolchainprefix}gcc"
-+ cxx = "${toolchainprefix}g++"
-
-- readelf = "readelf"
-- nm = "nm"
-- ar = "ar"
-+ readelf = "${toolchainprefix}readelf"
-+ nm = "${toolchainprefix}nm"
-+ ar = "${toolchainprefix}ar"
- ld = cxx
-
- # Output linker map files for binary size analysis.
-@@ -147,6 +148,26 @@
- }
- }
-
-+gcc_toolchain("x64_host") {
-+ toolchainprefix = "host-"
-+ cc = "${toolchainprefix}gcc"
-+ cxx = "${toolchainprefix}g++"
-+
-+ readelf = "readelf"
-+ nm = "nm"
-+ ar = "ar"
-+ ld = cxx
-+
-+ # Output linker map files for binary size analysis.
-+ enable_linker_map = true
-+
-+ toolchain_args = {
-+ current_cpu = "x64"
-+ current_os = "linux"
-+ is_clang = false
-+ }
-+}
-+
- clang_toolchain("clang_mipsel") {
- toolchain_args = {
- current_cpu = "mipsel"
diff --git a/packages/addons/browser/chromium/patches/chromium-0006-exclude_unwind_tables.patch b/packages/addons/browser/chromium/patches/chromium-0006-exclude_unwind_tables.patch
deleted file mode 100644
index 67232595dd..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0006-exclude_unwind_tables.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 1fc37227522ccd314f82ec893ed15c6129296604 Mon Sep 17 00:00:00 2001
-From: Paul Jensen
-Date: Wed, 11 Oct 2017 08:37:34 -0400
-Subject: [PATCH] Move exclude_unwind_tables back into declare_args
-
-There is desire to adjust this flag manually.
-
-BUG=762629
-R=thakis@chromium.org
-
-Change-Id: I3bd134c19270cd1f729b3ea078674e734493d4ab
----
-
-diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
-index ad40fd9..50e19a4 100644
---- a/build/config/compiler/compiler.gni
-+++ b/build/config/compiler/compiler.gni
-@@ -68,18 +68,18 @@
-
- # Whether or not we should use position independent code.
- use_pic = true
-+
-+ # Exclude unwind tables for official builds as unwinding can be done from
-+ # stack dumps produced by Crashpad at a later time "offline" in the crash
-+ # server. For unofficial (e.g. development) builds and non-Chrome branded
-+ # (e.g. Cronet which doesn't use Crashpad, crbug.com/479283) builds it's
-+ # useful to be able to unwind at runtime.
-+ exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
-+ (is_chromecast && !is_cast_desktop_build && !is_debug)
- }
-
- assert(!is_cfi || use_thin_lto, "CFI requires ThinLTO")
-
--# Exclude unwind tables for official builds as unwinding can be done from stack
--# dumps produced by Crashpad at a later time "offline" in the crash server.
--# For unofficial (e.g. development) builds and non-Chrome branded (e.g. Cronet
--# which doesn't use Crashpad, crbug.com/479283) builds it's useful to be able
--# to unwind at runtime.
--exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
-- (is_chromecast && !is_cast_desktop_build && !is_debug)
--
- # If true, optimize for size. Does not affect windows builds.
- # Linux & Mac favor speed over size.
- # TODO(brettw) it's weird that Mac and desktop Linux are different. We should
diff --git a/packages/addons/browser/chromium/patches/chromium-0007-dont-link-atomic-in-gn.patch b/packages/addons/browser/chromium/patches/chromium-0007-dont-link-atomic-in-gn.patch
deleted file mode 100644
index b271dc7379..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0007-dont-link-atomic-in-gn.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
---- a/tools/gn/bootstrap/bootstrap.py 2017-08-10 17:18:53.767165155 +0200
-+++ b/tools/gn/bootstrap/bootstrap.py 2017-08-10 17:23:28.668750638 +0200
-@@ -657,7 +657,7 @@
- 'base/allocator/allocator_shim.cc',
- 'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
- ])
-- libs.extend(['-lrt', '-latomic'])
-+ libs.extend(['-lrt'])
- static_libraries['libevent']['include_dirs'].extend([
- os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
- ])
diff --git a/packages/addons/browser/chromium/patches/chromium-0008-fix-webrtc.patch b/packages/addons/browser/chromium/patches/chromium-0008-fix-webrtc.patch
deleted file mode 100644
index 7b70999719..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0008-fix-webrtc.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- chromium-63.0.3239.84//third_party/webrtc/p2p/base/port.cc.org 2017-12-09 01:53:55.490672425 +0100
-+++ chromium-63.0.3239.84//third_party/webrtc/p2p/base/port.cc 2017-12-09 01:54:10.826751406 +0100
-@@ -12,6 +12,7 @@
-
- #include
- #include
-+#include
-
- #include "p2p/base/common.h"
- #include "p2p/base/portallocator.h"
diff --git a/packages/addons/browser/chromium/patches/chromium-0009-fix-gtk_ui.patch b/packages/addons/browser/chromium/patches/chromium-0009-fix-gtk_ui.patch
deleted file mode 100644
index edd53b2b02..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0009-fix-gtk_ui.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/chrome/browser/ui/libgtkui/gtk_ui.h 2017-10-19 00:15:47.451704332 +0200
-+++ b/chrome/browser/ui/libgtkui/gtk_ui.h 2017-10-18 23:53:19.328373980 +0200
-@@ -14,6 +14,7 @@
- #include "base/observer_list.h"
- #include "chrome/browser/ui/libgtkui/gtk_signal.h"
- #include "chrome/browser/ui/libgtkui/libgtkui_export.h"
-+#include "chrome/browser/ui/libgtkui/nav_button_layout_manager.h"
- #include "ui/gfx/color_utils.h"
- #include "ui/views/linux_ui/linux_ui.h"
- #include "ui/views/window/frame_buttons.h"
diff --git a/packages/addons/browser/chromium/patches/chromium-0010-fix-gcc.patch b/packages/addons/browser/chromium/patches/chromium-0010-fix-gcc.patch
deleted file mode 100644
index 0101dfa03a..0000000000
--- a/packages/addons/browser/chromium/patches/chromium-0010-fix-gcc.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Source: https://aur.archlinux.org/packages/chromium-vaapi/ chromium-gcc-r1.patch
-
-diff --git a/base/numerics/safe_math_shared_impl.h b/base/numerics/safe_math_shared_impl.h
-index 99f230ce7e9a..de2415d402f5 100644
---- a/base/numerics/safe_math_shared_impl.h
-+++ b/base/numerics/safe_math_shared_impl.h
-@@ -21,8 +21,7 @@
- #if !defined(__native_client__) && \
- ((defined(__clang__) && \
- ((__clang_major__ > 3) || \
-- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \
-- (defined(__GNUC__) && __GNUC__ >= 5))
-+ (__clang_major__ == 3 && __clang_minor__ >= 4))))
- #include "base/numerics/safe_math_clang_gcc_impl.h"
- #define BASE_HAS_OPTIMIZED_SAFE_MATH (1)
- #else
diff --git a/packages/addons/browser/chromium/source/default.py b/packages/addons/browser/chromium/source/default.py
deleted file mode 100644
index 02bb7f9bc8..0000000000
--- a/packages/addons/browser/chromium/source/default.py
+++ /dev/null
@@ -1,163 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# This Program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This Program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-import os
-import sys
-import time
-import xbmcaddon
-import subprocess
-from xml.dom.minidom import parse
-
-sys.path.append('/usr/share/kodi/addons/service.libreelec.settings')
-
-import oe
-
-__addon__ = xbmcaddon.Addon();
-__path__ = os.path.join(__addon__.getAddonInfo('path'), 'bin') + '/'
-
-pauseXBMC = __addon__.getSetting("PAUSE_XBMC")
-
-# widevine and flash stuff
-def install_flash():
- __url__ = 'https://fpdownload.adobe.com/pub/flashplayer/pdc/24.0.0.186/flash_player_ppapi_linux.x86_64.tar.gz'
- __file__ = __url__.split('/')[-1]
- __tmp__ = '/tmp/pepperflash/'
- __lib__ = 'libpepflashplayer.so'
- try:
- if not os.path.isdir(__tmp__):
- os.mkdir(__tmp__)
- if not os.path.exists(__tmp__ + __file__):
- oe.download_file(__url__, __tmp__ + __file__)
- if not os.path.exists(__tmp__ + __file__):
- oe.notify('Chromium', 'Could not download file')
- else:
- oe.notify('Chromium', 'Extracting libpepflashplayer.so')
- if not os.path.isdir(__tmp__ + __file__):
- oe.execute('tar zxf ' + __tmp__ + __file__ + ' -C ' + __tmp__ + '')
- if not os.path.isdir(__path__ + 'PepperFlash'):
- os.mkdir(__path__ + 'PepperFlash')
- oe.copy_file(__tmp__ + __lib__, __path__ + 'PepperFlash/' + __lib__)
- oe.notify('Chromium', 'Installation of libpepflashplayer.so succeeded')
- except Exception, e:
- oe.notify('Chromium', 'Installation of libpepflashplayer.so failed')
-
-def install_widevine():
- __url__ = 'https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb'
- __file__ = __url__.split('/')[-1]
- __tar__ = 'data.tar.xz'
- __tmp__ = '/tmp/widevine/'
- __lib__ = 'opt/google/chrome/libwidevinecdm.so'
- try:
- if not os.path.isdir(__tmp__):
- os.mkdir(__tmp__)
- if not os.path.exists(__tmp__ + __file__):
- oe.download_file(__url__, __tmp__ + __file__)
- if not os.path.exists(__tmp__ + __file__):
- oe.notify('Chromium', 'Could not download file')
- else:
- oe.notify('Chromium', 'Extracting libwidevinecdm.so')
- if not os.path.isdir(__tmp__ + __tar__):
- oe.execute('cd ' + __tmp__ + ' && ar -x ' + __file__)
- oe.execute('tar xf ' + __tmp__ + __tar__ + ' -C ' + __tmp__ + ' ./' + __lib__)
- oe.copy_file(__tmp__ + __lib__, __path__ + __lib__.split('/')[-1])
- oe.notify('Chromium', 'Installation of libwidevinecdm.so succeeded')
- except Exception, e:
- oe.notify('Chromium', 'Installation of libwidevinecdm.so failed')
-
-def pauseXbmc():
- if pauseXBMC == "true":
- xbmc.executebuiltin("PlayerControl(Stop)")
- xbmc.audioSuspend()
- xbmc.enableNavSounds(False)
-
-def resumeXbmc():
- if pauseXBMC == "true":
- xbmc.audioResume()
- xbmc.enableNavSounds(True)
-
-def startChromium(args):
- try:
- new_env = os.environ.copy()
- new_env['VAAPI_MODE'] = __addon__.getSetting('VAAPI_MODE')
- new_env['WINDOW_MODE'] = __addon__.getSetting('WINDOW_MODE')
- new_env['RASTER_MODE'] = __addon__.getSetting('RASTER_MODE')
-
- new_env['ALSA_DEVICE'] = ''
- if __addon__.getSetting('USE_CUST_AUDIODEVICE') == 'true':
- alsa_device = __addon__.getSetting('CUST_AUDIODEVICE_STR')
- else:
- alsa_device = getAudioDevice()
- if not alsa_device == None and not alsa_device == '':
- new_env['ALSA_DEVICE'] = alsa_device
-
- chrome_params = args + ' ' + \
- __addon__.getSetting('HOMEPAGE')
- subprocess.call(__path__ + 'chromium ' + chrome_params, shell=True, env=new_env)
- except Exception, e:
- oe.dbg_log('chromium', unicode(e))
-
-def isRuning(pname):
- tmp = os.popen("ps -Af").read()
- pcount = tmp.count(pname)
- if pcount > 0:
- return True
- return False
-
-def getAudioDevice():
- try:
- dom = parse("/storage/.kodi/userdata/guisettings.xml")
- audiooutput=dom.getElementsByTagName('audiooutput')
- for node in audiooutput:
- dev = node.getElementsByTagName('audiodevice')[0].childNodes[0].nodeValue
- if dev.startswith("ALSA:"):
- dev = dev.split("ALSA:")[1]
- if dev == "@":
- return None
- if dev.startswith("@:"):
- dev = dev.split("@:")[1]
- else:
- # not ALSA
- return None
- except:
- return None
- if dev.startswith("CARD="):
- dev = "plughw:" + dev
- return dev
-
-if (not __addon__.getSetting("firstrun")):
- __addon__.setSetting("firstrun", "1")
- __addon__.openSettings()
-
-try:
- args = ' '.join(sys.argv[1:])
-except:
- args = ""
-
-if args == 'widevine':
- install_widevine()
-elif args == 'flash':
- install_flash()
-else:
- if not isRuning('chromium.bin'):
- pauseXbmc()
- startChromium(args)
- while isRuning('chromium.bin'):
- time.sleep(1)
- resumeXbmc()
diff --git a/packages/addons/browser/chromium/source/resources/language/English/strings.xml b/packages/addons/browser/chromium/source/resources/language/English/strings.xml
deleted file mode 100644
index c3837d366d..0000000000
--- a/packages/addons/browser/chromium/source/resources/language/English/strings.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
- General
- Actions
- Chromium Configuration
- Stop Kodi Player and Suspend AudioEngine
- HW Acceleration Mode
- Rasterization Mode
- Window Mode
- Default Homepage
- Use Custom Audio Device
- Audio Device
- Hide Cursor
- Chromium Actions
- Install libwidevinecdm.so (Netflix Support)
- Install libpepflashplayer.so (Flash Player Support)
-
diff --git a/packages/addons/browser/chromium/source/resources/settings.xml b/packages/addons/browser/chromium/source/resources/settings.xml
deleted file mode 100644
index 75c56dbba7..0000000000
--- a/packages/addons/browser/chromium/source/resources/settings.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/graphics/cairo/package.mk b/packages/graphics/cairo/package.mk
index 0ef9d6941c..eb624d4cbf 100644
--- a/packages/graphics/cairo/package.mk
+++ b/packages/graphics/cairo/package.mk
@@ -90,9 +90,7 @@ PKG_CONFIGURE_OPTS_TARGET="$PKG_CAIRO_CONFIG \
--disable-beos \
--disable-cogl \
--disable-drm \
- --disable-drm-xr \
--disable-gallium \
- --disable-xcb-drm \
--enable-png \
--disable-directfb \
--disable-vg \
@@ -107,7 +105,7 @@ PKG_CONFIGURE_OPTS_TARGET="$PKG_CAIRO_CONFIG \
--disable-tee \
--disable-xml \
--enable-pthread \
- --disable-gobject \
+ --enable-gobject=yes \
--disable-full-testing \
--disable-trace \
--enable-interpreter \
diff --git a/packages/graphics/tiff/package.mk b/packages/graphics/tiff/package.mk
index e5a13734f2..b49923f165 100644
--- a/packages/graphics/tiff/package.mk
+++ b/packages/graphics/tiff/package.mk
@@ -1,44 +1,42 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="tiff"
-#PKG_VERSION="4.0.3"
-PKG_VERSION="3.9.7"
-PKG_SHA256="f5d64dd4ce61c55f5e9f6dc3920fbe5a41e02c2e607da7117a35eb5c320cef6a"
+PKG_VERSION="4.0.9"
+PKG_SHA256="6e7bdeec2c310734e734d19aae3a71ebe37a4d842e0e23dbb1b8921c0026cfcd"
PKG_ARCH="any"
PKG_LICENSE="OSS"
PKG_SITE="http://www.remotesensing.org/libtiff/"
PKG_URL="http://download.osgeo.org/libtiff/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain libjpeg-turbo zlib"
PKG_SECTION="graphics"
-PKG_SHORTDESC="libtiff: A library for reading and writing TIFF files"
-PKG_LONGDESC="libtiff is a library for reading and writing data files encoded with the Tag Image File format, Revision 6.0 (or revision 5.0 or revision 4.0). This file format is suit- able for archiving multi-color and monochromatic image data."
+PKG_LONGDESC="libtiff is a library for reading and writing TIFF files."
PKG_BUILD_FLAGS="+pic"
+PKG_TOOLCHAIN="configure"
PKG_CONFIGURE_OPTS_TARGET="--enable-static \
--disable-shared \
--disable-mdi \
--enable-cxx \
- --with-gl=no \
--with-jpeg-lib-dir=$SYSROOT_PREFIX/usr/lib \
--with-jpeg-include-dir=$SYSROOT_PREFIX/usr/include \
- --without-x \
- --with-gl=no"
+ --without-x"
post_makeinstall_target() {
rm -rf $INSTALL/usr/bin
diff --git a/packages/x11/lib/libXi/package.mk b/packages/x11/lib/libXi/package.mk
index 8af4d86387..9fc2de7cf7 100644
--- a/packages/x11/lib/libXi/package.mk
+++ b/packages/x11/lib/libXi/package.mk
@@ -28,6 +28,7 @@ PKG_DEPENDS_TARGET="toolchain util-macros libX11 libXfixes"
PKG_SECTION="x11/lib"
PKG_SHORTDESC="libxi: X11 Input extension library"
PKG_LONGDESC="LibXi provides an X Window System client interface to the XINPUT extension to the X protocol."
+PKG_BUILD_FLAGS="+pic"
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \
--enable-malloc0returnsnull \