diff options
author | Jonas Heinrich | 2017-11-12 14:19:32 +0100 |
---|---|---|
committer | Jonas Heinrich | 2017-11-12 14:19:32 +0100 |
commit | 9e84c5afbdfc88afb98b68005076ea0b35e62ce3 (patch) | |
tree | 0f501712ec1990f72d201a53ba7a4e45296d9983 | |
download | aur-9e84c5afbdfc88afb98b68005076ea0b35e62ce3.tar.gz |
first commit
-rw-r--r-- | .SRCINFO | 58 | ||||
-rw-r--r-- | PKGBUILD | 155 | ||||
-rw-r--r-- | chromium-widevine.patch | 12 | ||||
-rw-r--r-- | chromium.desktop | 112 | ||||
-rw-r--r-- | chromium.install | 27 | ||||
-rw-r--r-- | unbundle-libvpx_new-fix.patch | 13 |
6 files changed, 377 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..dcdb0e9f11d6 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,58 @@ +# Generated by mksrcinfo v8 +# Sun Nov 12 13:19:08 UTC 2017 +pkgbase = chromium-wayland-git + pkgdesc = The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser + pkgver = 48.0.2548.0 + pkgrel = 1 + url = http://github.com/01org/ozone-wayland/ + install = chromium.install + arch = i686 + arch = x86_64 + license = BSD + makedepends = python2 + makedepends = gperf + makedepends = yasm + makedepends = mesa + makedepends = ninja + makedepends = libexif + makedepends = libsecret + depends = nss + depends = alsa-lib + depends = bzip2 + depends = libevent + depends = icu + depends = libgcrypt + depends = ttf-font + depends = systemd + depends = dbus + depends = flac + depends = snappy + depends = pciutils + depends = harfbuzz + depends = libvpx + depends = perl + depends = perl-file-basedir + depends = desktop-file-utils + depends = libxslt + depends = hicolor-icon-theme + depends = libxkbcommon + depends = gtk2 + depends = libpulse + optdepends = kdebase-kdialog: needed for file dialogs in KDE + optdepends = gnome-keyring: for storing passwords in GNOME keyring + provides = chromium + conflicts = chromium + options = !strip + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-48.0.2548.0.tar.xz + source = chromium.desktop + source = chromium-widevine.patch + source = unbundle-libvpx_new-fix.patch + sha256sums = 4ca4e2adb340b3fb4d502266ad7d6bda45fa3519906dbf63cce11a63f680dbc8 + sha256sums = 028a748a5c275de9b8f776f97909f999a8583a4b77fd1cd600b4fc5c0c3e91e9 + sha256sums = 379b746e187de28f80f5a7cd19edcfa31859656826f802a1ede054fcb6dfb221 + sha256sums = 6a2fd2d8ce5363a67452f6531a6b83f1e535f800286119fd9910d3b31c76c3bc + makedepends_x86_64 = lib32-gcc-libs + makedepends_x86_64 = lib32-zlib + +pkgname = chromium-wayland-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..04d22408472e --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,155 @@ +# Maintainer: Alastair Hughes < hobbitalastair at yandex dot com> +# Contributor: Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Pierre Schmitz <pierre@archlinux.de> +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgname=chromium-wayland-git +_pkgname=chromium +pkgver=48.0.2548.0 +pkgrel=1 +pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" +arch=('i686' 'x86_64') +url="http://github.com/01org/ozone-wayland/" +license=('BSD') +depends=('nss' 'alsa-lib' 'bzip2' 'libevent' 'icu' 'libgcrypt' + 'ttf-font' 'systemd' 'dbus' 'flac' 'snappy' 'pciutils' + 'harfbuzz' 'libvpx' 'perl' 'perl-file-basedir' + 'desktop-file-utils' 'libxslt' 'hicolor-icon-theme' 'libxkbcommon' + 'gtk2' 'libpulse') +makedepends=('python2' 'gperf' 'yasm' 'mesa' 'ninja' 'libexif' 'libsecret') +makedepends_x86_64=('lib32-gcc-libs' 'lib32-zlib') +optdepends=('kdebase-kdialog: needed for file dialogs in KDE' + 'gnome-keyring: for storing passwords in GNOME keyring') +conflicts=('chromium') +provides=('chromium') +options=('!strip') +install=chromium.install +source=(https://commondatastorage.googleapis.com/chromium-browser-official/$_pkgname-$pkgver.tar.xz + chromium.desktop + chromium-widevine.patch + unbundle-libvpx_new-fix.patch) +sha256sums=('4ca4e2adb340b3fb4d502266ad7d6bda45fa3519906dbf63cce11a63f680dbc8' + '028a748a5c275de9b8f776f97909f999a8583a4b77fd1cd600b4fc5c0c3e91e9' + '379b746e187de28f80f5a7cd19edcfa31859656826f802a1ede054fcb6dfb221' + '6a2fd2d8ce5363a67452f6531a6b83f1e535f800286119fd9910d3b31c76c3bc') + +# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) +# Note: These are for Arch Linux use ONLY. For your own distribution, please +# get your own set of keys. Feel free to contact foutrelis@archlinux.org for +# more information. +_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM +_google_default_client_id=413772536636.apps.googleusercontent.com +_google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4 + +# We can't build (P)NaCL on i686 because the toolchain is x86_64 only and the +# instructions on how to build the toolchain from source don't work that well +# (at least not from within the Chromium 39 source tree). +# https://sites.google.com/a/chromium.org/dev/nativeclient/pnacl/building-pnacl-components-for-distribution-packagers +_build_nacl=1 +if [[ $CARCH == i686 ]]; then + _build_nacl=0 +fi + +prepare() { + cd "$srcdir/$_pkgname-$pkgver" + + touch chrome/test/data/webui/i18n_process_css_test.html + + # Enable support for the Widevine CDM plugin + # The actual libraries are not included, but can be copied over from Chrome: + # libwidevinecdmadapter.so + # libwidevinecdm.so + # (Version string doesn't seem to matter so let's go with "Pinkie Pie") + sed "s/@WIDEVINE_VERSION@/Pinkie Pie/" ../chromium-widevine.patch | + patch -Np1 + + # Remove bundled ICU; its header files appear to get picked up instead of + # the system ones, leading to errors during the final link stage. + # https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/BNGvJc08B6Q + find third_party/icu -type f \! -regex '.*\.\(gyp\|gypi\|isolate\)' -delete + + # Use Python 2 + find . -name '*.py' -exec sed -i -r 's|/usr/bin/python$|&2|g' {} + + # There are still a lot of relative calls which need a workaround + mkdir "$srcdir/python2-path" + ln -s /usr/bin/python2 "$srcdir/python2-path/python" + + # Download the PNaCL toolchain on x86_64; i686 toolchain is no longer provided + if (( $_build_nacl )); then + python2 build/download_nacl_toolchains.py \ + --packages nacl_x86_newlib,pnacl_newlib,pnacl_translator \ + sync --extract + fi + + # Ozone-Wayland + mv ../ozone-wayland ozone + + # Patch to fix build with use_system_libvpx + # Chromium bug #541273 + patch -p1 < "${srcdir}/unbundle-libvpx_new-fix.patch" + + # Patch! + for patchfile in ozone/patches/00*; do + echo "Applying ${patchfile}." + patch -p1 <$patchfile + done + +} + +build() { + cd "${srcdir}/" + + mkdir chromium + cd chromium + + export PATH="${srcdir}/depot_tools:$PATH" + export PATH="${srcdir}/path:$PATH" + export GYP_DEFINES="target_arch=x64" + + gclient config --name=src https://github.com/Igalia/chromium.git + gclient sync --with_branch_heads --nohooks + + gclient runhooks + + cd src + + gn args out/Ozone --args="use_ozone=true enable_package_mash_services=true" # use_xkbcommon=true + ninja -C out/Ozone chrome +} + +package() { + cd "$srcdir/chromium/src" + + install -D out/Ozone/chrome "$pkgdir/usr/lib/chromium/chromium" + install -Dm644 out/Ozone/chrome.1 "$pkgdir/usr/share/man/man1/chromium.1" + + install -Dm4755 out/Ozone/chrome_sandbox \ + "$pkgdir/usr/lib/chromium/chrome-sandbox" + + cp -a \ + out/Ozone/{chrome_{100,200}_percent,resources}.pak \ + out/Ozone/{*.bin,chromedriver,libwidevinecdmadapter.so} \ + out/Ozone/locales \ + "$pkgdir/usr/lib/chromium/" + + if [[ -z ${_system_libs[icu]+set} ]]; then + cp out/Ozone/icudtl.dat "$pkgdir/usr/lib/chromium/" + fi + + ln -s /usr/lib/chromium/chromedriver "$pkgdir/usr/bin/chromedriver" + + for size in 22 24 48 64 128 256; do + install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \ + "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png" + done + + for size in 16 32; do + install -Dm644 "chrome/app/theme/default_100_percent/chromium/product_logo_$size.png" \ + "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png" + done + + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/chromium-widevine.patch b/chromium-widevine.patch new file mode 100644 index 000000000000..45048cada875 --- /dev/null +++ b/chromium-widevine.patch @@ -0,0 +1,12 @@ +diff -upr chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h +--- chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h 2015-04-15 01:18:59.000000000 +0300 ++++ chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h 2015-04-15 09:09:49.157260050 +0300 +@@ -14,4 +14,8 @@ + // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available + // as a string, e.g., "1.0.123.456"). + ++#include "third_party/widevine/cdm/widevine_cdm_common.h" ++#define WIDEVINE_CDM_AVAILABLE ++#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@" ++ + #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium.desktop b/chromium.desktop new file mode 100644 index 000000000000..05788f7135da --- /dev/null +++ b/chromium.desktop @@ -0,0 +1,112 @@ +[Desktop Entry] +Name=Chromium +# Only KDE 4 seems to use GenericName, so we reuse the KDE strings. +# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413. +GenericName=Web Browser +GenericName[ar]=متصفح الشبكة +GenericName[bg]=Уеб браузър +GenericName[ca]=Navegador web +GenericName[cs]=WWW prohlížeč +GenericName[da]=Browser +GenericName[de]=Web-Browser +GenericName[el]=Περιηγητής ιστού +GenericName[en_GB]=Web Browser +GenericName[es]=Navegador web +GenericName[et]=Veebibrauser +GenericName[fi]=WWW-selain +GenericName[fr]=Navigateur Web +GenericName[gu]=વેબ બ્રાઉઝર +GenericName[he]=דפדפן אינטרנט +GenericName[hi]=वेब ब्राउज़र +GenericName[hu]=Webböngésző +GenericName[it]=Browser Web +GenericName[ja]=ウェブブラウザ +GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ +GenericName[ko]=웹 브라우저 +GenericName[lt]=Žiniatinklio naršyklė +GenericName[lv]=Tīmekļa pārlūks +GenericName[ml]=വെബ് ബ്രൌസര് +GenericName[mr]=वेब ब्राऊजर +GenericName[nb]=Nettleser +GenericName[nl]=Webbrowser +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador da Internet +GenericName[ro]=Navigator de Internet +GenericName[ru]=Веб-браузер +GenericName[sl]=Spletni brskalnik +GenericName[sv]=Webbläsare +GenericName[ta]=இணைய உலாவி +GenericName[th]=เว็บเบราว์เซอร์ +GenericName[tr]=Web Tarayıcı +GenericName[uk]=Навігатор Тенет +GenericName[zh_CN]=网页浏览器 +GenericName[zh_HK]=網頁瀏覽器 +GenericName[zh_TW]=網頁瀏覽器 +# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1. +GenericName[bn]=ওয়েব ব্রাউজার +GenericName[fil]=Web Browser +GenericName[hr]=Web preglednik +GenericName[id]=Browser Web +GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର +GenericName[sk]=WWW prehliadač +GenericName[sr]=Интернет прегледник +GenericName[te]=మహాతల అన్వేషి +GenericName[vi]=Bộ duyệt Web +# Gnome and KDE 3 uses Comment. +Comment=Access the Internet +Comment[ar]=الدخول إلى الإنترنت +Comment[bg]=Достъп до интернет +Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন +Comment[ca]=Accedeix a Internet +Comment[cs]=Přístup k internetu +Comment[da]=Få adgang til internettet +Comment[de]=Internetzugriff +Comment[el]=Πρόσβαση στο Διαδίκτυο +Comment[en_GB]=Access the Internet +Comment[es]=Accede a Internet. +Comment[et]=Pääs Internetti +Comment[fi]=Käytä internetiä +Comment[fil]=I-access ang Internet +Comment[fr]=Accéder à Internet +Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો +Comment[he]=גישה אל האינטרנט +Comment[hi]=इंटरनेट तक पहुंच स्थापित करें +Comment[hr]=Pristup Internetu +Comment[hu]=Internetelérés +Comment[id]=Akses Internet +Comment[it]=Accesso a Internet +Comment[ja]=インターネットにアクセス +Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ +Comment[ko]=인터넷 연결 +Comment[lt]=Interneto prieiga +Comment[lv]=Piekļūt internetam +Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക +Comment[mr]=इंटरनेटमध्ये प्रवेश करा +Comment[nb]=Gå til Internett +Comment[nl]=Verbinding maken met internet +Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ +Comment[pl]=Skorzystaj z internetu +Comment[pt]=Aceder à Internet +Comment[pt_BR]=Acessar a internet +Comment[ro]=Accesaţi Internetul +Comment[ru]=Доступ в Интернет +Comment[sk]=Prístup do siete Internet +Comment[sl]=Dostop do interneta +Comment[sr]=Приступите Интернету +Comment[sv]=Gå ut på Internet +Comment[ta]=இணையத்தை அணுகுதல் +Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి +Comment[th]=เข้าถึงอินเทอร์เน็ต +Comment[tr]=İnternet'e erişin +Comment[uk]=Доступ до Інтернету +Comment[vi]=Truy cập Internet +Comment[zh_CN]=访问互联网 +Comment[zh_HK]=連線到網際網路 +Comment[zh_TW]=連線到網際網路 +Exec=chromium %U +Terminal=false +Icon=chromium +Type=Application +Categories=GTK;Network;WebBrowser; +MimeType=text/html;text/xml;application/xhtml+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https; diff --git a/chromium.install b/chromium.install new file mode 100644 index 000000000000..b32dedb23dfc --- /dev/null +++ b/chromium.install @@ -0,0 +1,27 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q +} + +post_upgrade() { + if (($(vercmp $2 42.0.2311.90-1) < 0)); then + echo ':: This Chromium package no longer supports custom flags passed via the' + echo ' /etc/chromium/default file (or any other files under /etc/chromium/).' + echo + echo ' The new /usr/bin/chromium launcher script will automatically detect' + echo ' Pepper Flash (if installed) and pass the correct flags to Chromium.' + echo + echo ' If you need to pass extra command-line arguments to Chromium, you' + echo ' can put them in a "chromium-flags.conf" file under $HOME/.config/' + echo ' (or $XDG_CONFIG_HOME). Arguments are split on whitespace and shell' + echo ' quoting rules apply but no further parsing is performed.' + fi + + post_install +} + +post_remove() { + post_install +} + +# vim:set ts=2 sw=2 et: diff --git a/unbundle-libvpx_new-fix.patch b/unbundle-libvpx_new-fix.patch new file mode 100644 index 000000000000..1cbf104b7e6c --- /dev/null +++ b/unbundle-libvpx_new-fix.patch @@ -0,0 +1,13 @@ +diff --git i/build/linux/unbundle/libvpx.gyp w/build/linux/unbundle/libvpx.gyp +index 75671c5..fe2e21f 100644 +--- i/build/linux/unbundle/libvpx.gyp ++++ w/build/linux/unbundle/libvpx.gyp +@@ -4,7 +4,7 @@ + { + 'targets': [ + { +- 'target_name': 'libvpx', ++ 'target_name': 'libvpx_new', + 'type': 'none', + 'direct_dependent_settings': { + 'cflags': [ |