summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO30
-rw-r--r--.gitignore2
-rw-r--r--PKGBUILD126
-rw-r--r--chromium-dev.desktop241
-rw-r--r--chromium-dev.svg277
-rw-r--r--chromium-dev.xml5
-rw-r--r--enable_vaapi_on_linux.diff290
7 files changed, 878 insertions, 93 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b6a7499c5f38..2541201e2d00 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,12 +1,13 @@
pkgbase = chromium-dev
pkgdesc = The open-source project behind Google Chrome (Dev Channel)
- pkgver = 45.0.2431.0
+ pkgver = 45.0.2438.3
pkgrel = 1
url = http://www.chromium.org/
install = chromium-dev.install
arch = i686
arch = x86_64
license = BSD
+ makedepends = libexif
makedepends = elfutils
makedepends = gperf
makedepends = ninja
@@ -17,17 +18,10 @@ pkgbase = chromium-dev
makedepends = subversion
makedepends = yasm
makedepends = git
- makedepends = clang
- makedepends = cmake
- makedepends = ocaml
- makedepends = libffi
- makedepends = chrpath
depends = desktop-file-utils
- depends = hicolor-icon-theme
depends = gtk2
depends = icu
depends = jsoncpp
- depends = libexif
depends = libwebp
depends = libxslt
depends = libxss
@@ -39,7 +33,6 @@ pkgbase = chromium-dev
depends = snappy
depends = speech-dispatcher
depends = speex
- depends = ttf-font
depends = xdg-utils
depends = libpulse
optdepends = chromium-pepper-flash-dev: PPAPI Flash Player (Dev Channel)
@@ -48,18 +41,23 @@ pkgbase = chromium-dev
optdepends = kdialog-frameworks-git: Needed for file dialogs in KF5
optdepends = kwalletmanager-git: Needed for storing passwords in KWallet in KF5
optdepends = libappindicator-gtk2: Needed for show systray icon in the panel in plasma-next (KF5)
+ optdepends = llibexif: Need for read EXIF metadata
+ optdepends = ttf-font: For some typography
options = !strip
- backup = etc/chromium-dev/default
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-45.0.2431.0.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-45.0.2438.3.tar.xz
source = chromium-launcher-2.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v2.tar.gz
source = chromium-dev.desktop
source = chromium-dev.xml
+ source = chromium-dev.svg
source = chromium-system-jinja-r8.patch
- md5sums = e9f93d82f5db6078dc003efdca0d7abe
- md5sums = 4a11383122605d265da047075e625fb8
- md5sums = 3e52a42d8b6f351e3f3ba606284f8121
- md5sums = 55b67a36271788851b8c9548c1980a12
- md5sums = 0c5829fad86ac3a74d3632c4f3cb697f
+ source = enable_vaapi_on_linux.diff
+ sha1sums = 004430d49f64a1d5b0a27455e6b0fdc1364f5bd0
+ sha1sums = 55f9646683bc8b92587f8e0a36aff242cb436a24
+ sha1sums = 0acc45b901418f270d0b2068502e39c407c74ea4
+ sha1sums = 2b98c549332e7337307ce287e150930cfc1dfa5f
+ sha1sums = 336976cb66bf8df71fc7f2e92aa723891b6efb53
+ sha1sums = 51ee08f9500a9006673787b0f29ffa089b09c286
+ sha1sums = 4e223ea3df5be9374f202f7c3f0679ae55eed495
makedepends_x86_64 = lib32-gcc-libs
makedepends_x86_64 = lib32-zlib
diff --git a/.gitignore b/.gitignore
index 4055669b9cf7..8d80a9b638fa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,4 +5,6 @@
!chromium-dev.desktop
!chromium-dev.install
!chromium-dev.xml
+!chromium-dev.svg
!chromium-system-jinja-r8.patch
+!enable_vaapi_on_linux.diff
diff --git a/PKGBUILD b/PKGBUILD
index ea1088082719..ae77b90af35c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,8 +8,8 @@
## -- Build options -- ##
#########################
-_use_clang=1 # Use clang compiler (system). Results in faster build and smaller chromium.
-_use_bundled_clang=1 # Use bundled clang compiler (needs build). NOTE: if use this option , _use_clang need set to 1
+_use_clang=0 # Use clang compiler (system). Results in faster build and smaller chromium.
+_use_bundled_clang=0 # Use bundled clang compiler (needs build). NOTE: if use this option , _use_clang need set to 1
_use_ccache=0 # Use ccache when build
_use_pax=0 # If set 1 to change PaX permisions in executables NOTE: only use if use PaX environment
@@ -17,47 +17,52 @@ _use_pax=0 # If set 1 to change PaX permisions in executables NOTE:
## -- Package and components information -- ##
##############################################
pkgname=chromium-dev
-pkgver=45.0.2431.0
+pkgver=45.0.2438.3
_launcher_ver=2
pkgrel=1
pkgdesc='The open-source project behind Google Chrome (Dev Channel)'
arch=('i686' 'x86_64')
url="http://www.chromium.org/"
license=('BSD')
-depends=('desktop-file-utils' 'hicolor-icon-theme' 'gtk2' 'icu' 'jsoncpp' 'libexif' 'libwebp' 'libxslt' 'libxss' 'minizip' 'perl-file-basedir'
- 'nss' 'pciutils' 're2' 'snappy' 'speech-dispatcher' 'speex' 'ttf-font' 'xdg-utils') # 'opus' 'protobuf' 'libsrtp' 'libevent' 'libvpx'
-makedepends=('elfutils' 'gperf' 'ninja' 'perl-json' 'python2-beautifulsoup3' 'python2-simplejson' 'python2-jinja' 'subversion' 'yasm' 'git') # 'python2-ply'
+depends=('desktop-file-utils' 'gtk2' 'icu' 'jsoncpp' 'libwebp' 'libxslt' 'libxss' 'minizip' 'perl-file-basedir'
+ 'nss' 'pciutils' 're2' 'snappy' 'speech-dispatcher' 'speex' 'xdg-utils') # 'opus' 'protobuf' 'libsrtp' 'libevent' 'libvpx'
+makedepends=('libexif' 'elfutils' 'gperf' 'ninja' 'perl-json' 'python2-beautifulsoup3' 'python2-simplejson' 'python2-jinja' 'subversion' 'yasm' 'git') # 'python2-ply'
makedepends_x86_64=('lib32-gcc-libs' 'lib32-zlib')
optdepends=('chromium-pepper-flash-dev: PPAPI Flash Player (Dev Channel)'
'kdebase-kdialog: Needed for file dialogs in KDE4'
'kdeutils-kwalletmanager: For storing passwords in KWallet in KDE4'
'kdialog-frameworks-git: Needed for file dialogs in KF5'
'kwalletmanager-git: Needed for storing passwords in KWallet in KF5'
- 'libappindicator-gtk2: Needed for show systray icon in the panel in plasma-next (KF5)')
-backup=('etc/chromium-dev/default')
+ 'libappindicator-gtk2: Needed for show systray icon in the panel in plasma-next (KF5)'
+ 'llibexif: Need for read EXIF metadata'
+ 'ttf-font: For some typography')
source=("https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${pkgver}.tar.xz"
"chromium-launcher-${_launcher_ver}.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v${_launcher_ver}.tar.gz"
'chromium-dev.desktop'
'chromium-dev.xml'
+ 'chromium-dev.svg'
# Patch form Gentoo
# Misc Patches
'chromium-system-jinja-r8.patch'
+ 'enable_vaapi_on_linux.diff'
# Patch from crbug (chromium bugtracker)
)
-md5sums=("$(curl -sL https://gsdview.appspot.com/chromium-browser-official/?marker=chromium-${pkgver}.tar.x | awk -v FS='<td>"' -v RS='"</td>' '$0=$2' | head -n1)"
- #"$(curl -sL "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${pkgver}.tar.xz.hashes" | grep sha1 | cut -d " " -f3)"
- '4a11383122605d265da047075e625fb8'
- '3e52a42d8b6f351e3f3ba606284f8121'
- '55b67a36271788851b8c9548c1980a12'
- # Patch form Gentoo
-
- # Misc Patches
- '0c5829fad86ac3a74d3632c4f3cb697f'
- # Patch from crbug (chromium bugtracker)
-
- )
+sha1sums=( #"$(curl -sL https://gsdview.appspot.com/chromium-browser-official/?marker=chromium-${pkgver}.tar.x | awk -v FS='<td>"' -v RS='"</td>' '$0=$2' | head -n1)"
+ "$(curl -sL "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${pkgver}.tar.xz.hashes" | grep sha1 | cut -d " " -f3)"
+ '55f9646683bc8b92587f8e0a36aff242cb436a24'
+ '0acc45b901418f270d0b2068502e39c407c74ea4'
+ '2b98c549332e7337307ce287e150930cfc1dfa5f'
+ '336976cb66bf8df71fc7f2e92aa723891b6efb53'
+ # Patch form Gentoo
+
+ # Misc Patches
+ '51ee08f9500a9006673787b0f29ffa089b09c286'
+ '4e223ea3df5be9374f202f7c3f0679ae55eed495'
+ # Patch from crbug (chromium bugtracker)
+
+ )
options=('!strip')
install=chromium-dev.install
@@ -75,15 +80,15 @@ _google_default_client_secret="0ZChLK6AxeA3Isu96MkwqDR4"
# 32 or 64 bits?
if [ "${CARCH}" = "i686" ]; then
- _target_arch="ia32"
- _arch="x86_32"
_build_ffmpeg_args=" --disable-asm"
+ _target_arch=ia32
_build_pnacl=0
+ _pnacl_arch=32
elif [ "${CARCH}" = "x86_64" ]; then
- _target_arch="x64"
- _arch="x86_64"
_build_ffmpeg_args=""
+ _target_arch=x64
_build_pnacl=1
+ _pnacl_arch=64
fi
# If use PaX environment, need 'paxctl'
@@ -126,7 +131,7 @@ if [ -x /usr/lib/libpulse.so ]; then
fi
-# Set necesary bundled components to build (the rest is removed in prepare() function (remove_bundled_libraries.py script))
+# List of third-party components needed for build chromium. The rest is remove by remove_bundled_libraries srcipt in prepare()
_necesary=('base/third_party/dmg_fp'
'base/third_party/dynamic_annotations'
'base/third_party/icu'
@@ -175,6 +180,7 @@ _necesary=('base/third_party/dmg_fp'
'third_party/libsrtp'
'third_party/libudev'
'third_party/libusb'
+ 'third_party/libva'
'third_party/libvpx'
'third_party/libvpx/source/libvpx/third_party/x86inc'
'third_party/libxml/chromium'
@@ -192,6 +198,7 @@ _necesary=('base/third_party/dmg_fp'
'third_party/opus'
'third_party/ots'
'third_party/pdfium'
+ 'third_party/pdfium/third_party/agg23'
'third_party/pdfium/third_party/base'
'third_party/pdfium/third_party/bigint'
'third_party/pdfium/third_party/freetype'
@@ -242,7 +249,7 @@ _flags=("-Dclang=${_use_clang}"
'-Denable_webrtc=1'
'-Denable_widevine=1'
'-Denable_hotwording=0'
- '-Dffmpeg_branding=Chrome'
+ '-Dffmpeg_branding=ChromeOS'
"-Dgoogle_api_key=${_google_api_key}"
"-Dgoogle_default_client_id=${_google_default_client_id}"
"-Dgoogle_default_client_secret=${_google_default_client_secret}"
@@ -272,12 +279,14 @@ _flags=("-Dclang=${_use_clang}"
'-Dwerror='
)
+# Set pnacl flags
if [ "${_build_pnacl}" = "0" ]; then
_flags+=('-Ddisable_nacl=1'
'-Ddisable_pnacl=1'
)
fi
+# Set clang flags
if [ "${_use_clang}" = "1" ]; then
if [ "${_use_bundled_clang}" = "0" ]; then
_flags+=('-Dclang_use_chrome_plugins=0'
@@ -336,6 +345,11 @@ _use_system=('-Duse_system_expat=1'
'-Duse_system_zlib=1'
)
+# Add more options to ffmpeg NOTE: in testing
+_extended_ffmpeg_flags=('--enable-vdpau'
+ '--enable-vaapi'
+ )
+
################################################
prepare() {
@@ -344,6 +358,7 @@ prepare() {
mkdir -p python-path
ln -s /usr/bin/python2 "${srcdir}/python-path/python"
export PATH="${srcdir}/python-path:$PATH"
+
cd "chromium-${pkgver}"
# Fix to save configuration in ~/.config/chromium-dev
@@ -359,6 +374,7 @@ prepare() {
# Misc Patches:
patch -p0 -i ../chromium-system-jinja-r8.patch
+ patch -p1 -i ../enable_vaapi_on_linux.diff
# Patch from crbug (chromium bugtracker)
# fix the missing define (if not, fail build) (need upstream fix) (https://crbug.com/473866)
@@ -378,8 +394,8 @@ prepare() {
fi
msg2 "Make sure use Python2"
- find "${srcdir}/chromium-${pkgver}" -name '*.py' -exec sed -r 's|/usr/bin/python$|&2|g' -i {} +
- find "${srcdir}/chromium-${pkgver}" -name '*.py' -exec sed -r 's|/usr/bin/env python$|&2|g' -i {} +
+ find . -name '*.py' -exec sed -r 's|/usr/bin/python$|&2|g' -i {} +
+ find . -name '*.py' -exec sed -r 's|/usr/bin/env python$|&2|g' -i {} +
}
build() {
@@ -389,6 +405,7 @@ build() {
cd "chromium-${pkgver}"
+ # Set ccache environment
if [ "${_use_ccache}" = "1" ]; then
msg2 "Setup ccache"
export CCACHE_CPP2=yes
@@ -434,7 +451,7 @@ build() {
# Changing bundle libraries to system ones
python2 build/linux/unbundle/replace_gyp_files.py ${_use_system[@]}
- # Re-configure bundled ffmpeg
+ # Re-configure and install headers of bundled ffmpeg
msg2 "Configuring and build the bundled FFmpeg"
pushd third_party/ffmpeg > /dev/null
if [ "${_use_clang}" = "1" ] ; then
@@ -444,7 +461,7 @@ build() {
_build_ffmpeg_args+=" --cc=${_bundled_clang_path}/clang --cxx=${_bundled_clang_path}/clang++"
fi
fi
- python2 chromium/scripts/build_ffmpeg.py linux ${_target_arch} --branding=Chrome -- --optflags='-O2' ${_build_ffmpeg_args}
+ python2 chromium/scripts/build_ffmpeg.py linux ${_target_arch} --branding=ChromeOS -- ${_extended_ffmpeg_flags[@]} ${_build_ffmpeg_args}
sh chromium/scripts/copy_config.sh
python2 chromium/scripts/generate_gyp.py
popd > /dev/null
@@ -456,6 +473,7 @@ build() {
export -n CFLAGS CXXFLAGS
msg2 "Starting building Chromium..."
+ # Configure the builder
python2 build/gyp_chromium --depth=. -Drelease_extra_cflags="$CFLAGS" ${_flags[@]} ${_use_system[@]}
# Build mksnapshot and pax-mark it.
@@ -464,7 +482,8 @@ build() {
paxctl -cm "out/Release/mksnapshot"
fi
- ninja -C out/Release -v chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm
+ # Build all with ninja
+ ninja -C out/Release -v pdf chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm
# Pax-mark again
if [ "${_use_pax}" = "1" ]; then
@@ -473,33 +492,37 @@ build() {
}
package() {
+ # Install launcher
make -C "chromium-launcher-${_launcher_ver}" CHROMIUM_SUFFIX="-dev" PREFIX=/usr DESTDIR="${pkgdir}" install-strip
install -Dm644 "chromium-launcher-${_launcher_ver}/LICENSE" "${pkgdir}/usr/share/licenses/chromium-dev/LICENSE.launcher"
- install -Dm644 chromium-dev.desktop "${pkgdir}/usr/share/applications/chromium-dev.desktop"
- install -Dm644 "chromium-${pkgver}/LICENSE" "${pkgdir}/usr/share/licenses/chromium-dev/LICENSE"
-
- cd "chromium-${pkgver}/out/Release"
+ # Install binaries
+ pushd "chromium-${pkgver}/out/Release" &> /dev/null
install -Dm755 chrome "${pkgdir}/usr/lib/chromium-dev/chromium-dev"
+ install -Dm644 chrome.1 "${pkgdir}/usr/share/man/man1/chromium-dev.1"
install -Dm4755 chrome_sandbox "${pkgdir}/usr/lib/chromium-dev/chrome-sandbox"
install -Dm755 chromedriver "${pkgdir}/usr/lib/chromium-dev/chromedriver"
ln -s /usr/lib/chromium-dev/chromedriver "${pkgdir}/usr/bin/chromedriver-dev"
- for i in content_resources keyboard_resources resources chrome_100_percent chrome_200_percent; do
- install -Dm644 "${i}.pak" "${pkgdir}/usr/lib/chromium-dev/${i}.pak"
- done
-
+ # Install libs
for i in widevinecdm widevinecdmadapter clearkeycdm; do
install -Dm755 "lib${i}.so" "${pkgdir}/usr/lib/chromium-dev/lib${i}.so"
done
+ install -Dm644 natives_blob.bin "${pkgdir}/usr/lib/chromium-dev/natives_blob.bin"
+ install -Dm644 snapshot_blob.bin "${pkgdir}/usr/lib/chromium-dev/snapshot_blob.bin"
+
+ # Install Resources
+ for i in content_resources keyboard_resources resources chrome_100_percent chrome_200_percent; do
+ install -Dm644 "${i}.pak" "${pkgdir}/usr/lib/chromium-dev/${i}.pak"
+ done
+ # Install locales
find pseudo_locales -type f -name "*.pak" -exec install -Dm644 '{}' "${pkgdir}/usr/lib/chromium-dev/{}" \;
find locales -type f -name "*.pak" -exec install -Dm644 '{}' "${pkgdir}/usr/lib/chromium-dev/{}" \;
- (cd "${pkgdir}/usr/lib/chromium-dev"; ln -s locales remote_locales)
find resources -type f -name "*" -exec install -Dm644 '{}' "${pkgdir}/usr/lib/chromium-dev/{}" \;
+ (cd "${pkgdir}/usr/lib/chromium-dev"; ln -s locales remote_locales)
- install -Dm644 chrome.1 "${pkgdir}/usr/share/man/man1/chromium-dev.1"
-
+ # Install icons
for _size in 16 22 24 32 48 128 256; do
case "${_size}" in
16|32) _branding="${srcdir}/chromium-${pkgver}/chrome/app/theme/default_100_percent/chromium" ;;
@@ -508,24 +531,31 @@ package() {
install -Dm644 "${_branding}/product_logo_${_size}.png" "${pkgdir}/usr/share/icons/hicolor/${_size}x${_size}/apps/chromium-dev.png"
done
+ # Install pNaCL/NaCL stuff is is detected
if [ "${_build_pnacl}" = "1" ]; then
install -Dm755 nacl_helper "${pkgdir}/usr/lib/chromium-dev/nacl_helper"
install -Dm755 nacl_helper_bootstrap "${pkgdir}/usr/lib/chromium-dev/nacl_helper_bootstrap"
install -Dm755 nacl_helper_nonsfi "${pkgdir}/usr/lib/chromium-dev/nacl_helper_nonsfi"
- install -Dm755 "nacl_irt_${_arch}.nexe" "${pkgdir}/usr/lib/chromium-dev/nacl_irt_${_arch}.nexe"
+ install -Dm755 "nacl_irt_x86_${_pnacl_arch}.nexe" "${pkgdir}/usr/lib/chromium-dev/nacl_irt_x86_${_pnacl_arch}.nexe"
+ (cd pnacl; for i in $(find -type f); do install -Dm755 "${i}" "${pkgdir}/usr/lib/chromium-dev/pnacl/${i}"; done)
fi
- install -Dm644 natives_blob.bin "${pkgdir}/usr/lib/chromium-dev/natives_blob.bin"
- install -Dm644 snapshot_blob.bin "${pkgdir}/usr/lib/chromium-dev/snapshot_blob.bin"
+ popd &> /dev/null
+
+ # Install some external files
+ install -Dm644 chromium-dev.desktop "${pkgdir}/usr/share/applications/chromium-dev.desktop"
+ install -Dm644 chromium-dev.svg "${pkgdir}/usr/share/icons/hicolor/scalable/apps/chromium-dev.svg"
+ install -Dm644 "chromium-${pkgver}/LICENSE" "${pkgdir}/usr/share/licenses/chromium-dev/LICENSE"
+ # install gnome stuff if is detected
if [ "${_use_gnome}" = "1" ]; then
- install -Dm644 "${srcdir}/chromium-dev.xml" "${pkgdir}/usr/share/gnome-control-center/default-apps/chromium-dev.xml"
+ install -Dm644 chromium-dev.xml "${pkgdir}/usr/share/gnome-control-center/default-apps/chromium-dev.xml"
fi
# Manually strip binaries so that 'nacl_irt_*.nexe' is left intact
if [ "${_build_pnacl}" = "1" ]; then
- strip $STRIP_BINARIES "$pkgdir/usr/lib/chromium-dev/"nacl_helper{,_bootstrap,_nonsfi}
+ strip $STRIP_BINARIES "${pkgdir}/usr/lib/chromium-dev/"nacl_helper{,_bootstrap,_nonsfi}
fi
strip $STRIP_BINARIES "${pkgdir}/usr/lib/chromium-dev/"{chromium-dev,chrome-sandbox,chromedriver}
strip $STRIP_SHARED "${pkgdir}/usr/lib/chromium-dev/"lib{widevinecdm{,adapter},clearkeycdm}.so
-} \ No newline at end of file
+}
diff --git a/chromium-dev.desktop b/chromium-dev.desktop
index d9aa6301cfcc..b56ef7d94231 100644
--- a/chromium-dev.desktop
+++ b/chromium-dev.desktop
@@ -1,105 +1,167 @@
[Desktop Entry]
Version=1.0
-Name=Chromium Dev
-# 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.
+Name=Chromium-dev Web Browser
+Name[ast]=Restolador web Chromium
+Name[bg]=Уеб четец Chromium
+Name[bn]=ক্রোমিয়াম ওয়েব ব্রাউজার
+Name[bs]=Chromium web preglednik
+Name[ca]=Navegador web Chromium
+Name[ca@valencia]=Navegador web Chromium
+Name[da]=Chromium netbrowser
+Name[de]=Chromium-Webbrowser
+Name[en_AU]=Chromium Web Browser
+Name[eo]=Kromiumo retfoliumilo
+Name[es]=Navegador web Chromium
+Name[et]=Chromiumi veebibrauser
+Name[eu]=Chromium web-nabigatzailea
+Name[fi]=Chromium-selain
+Name[fr]=Navigateur Web Chromium
+Name[gl]=Navegador web Chromium
+Name[he]=דפדפן האינטרנט כרומיום
+Name[hr]=Chromium web preglednik
+Name[hu]=Chromium webböngésző
+Name[hy]=Chromium ոստայն զննարկիչ
+Name[ia]=Navigator del web Chromium
+Name[id]=Peramban Web Chromium
+Name[it]=Browser web Chromium
+Name[ja]=Chromium ウェブ・ブラウザ
+Name[ka]=ვებ ბრაუზერი Chromium
+Name[ko]=Chromium 웹 브라우저
+Name[kw]=Peurel wias Chromium
+Name[ms]=Pelayar Web Chromium
+Name[nb]=Chromium nettleser
+Name[nl]=Chromium webbrowser
+Name[pt_BR]=Navegador de Internet Chromium
+Name[ro]=Navigator Internet Chromium
+Name[ru]=Веб-браузер Chromium
+Name[sl]=Chromium spletni brskalnik
+Name[sv]=Webbläsaren Chromium
+Name[ug]=Chromium توركۆرگۈ
+Name[vi]=Trình duyệt Web Chromium
+Name[zh_CN]=Chromium 网页浏览器
+Name[zh_HK]=Chromium 網頁瀏覽器
+Name[zh_TW]=Chromium 網頁瀏覽器
GenericName=Web Browser
GenericName[ar]=متصفح الشبكة
+GenericName[ast]=Restolador web
GenericName[bg]=Уеб браузър
+GenericName[bn]=ওয়েব ব্রাউজার
+GenericName[bs]=Web preglednik
GenericName[ca]=Navegador web
+GenericName[ca@valencia]=Navegador web
GenericName[cs]=WWW prohlížeč
GenericName[da]=Browser
GenericName[de]=Web-Browser
GenericName[el]=Περιηγητής ιστού
+GenericName[en_AU]=Web Browser
GenericName[en_GB]=Web Browser
+GenericName[eo]=Retfoliumilo
GenericName[es]=Navegador web
GenericName[et]=Veebibrauser
+GenericName[eu]=Web-nabigatzailea
GenericName[fi]=WWW-selain
+GenericName[fil]=Web Browser
GenericName[fr]=Navigateur Web
+GenericName[gl]=Navegador web
GenericName[gu]=વેબ બ્રાઉઝર
GenericName[he]=דפדפן אינטרנט
GenericName[hi]=वेब ब्राउज़र
+GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
-GenericName[it]=Browser Web
-GenericName[ja]=ウェブブラウザ
+GenericName[hy]=Ոստայն զննարկիչ
+GenericName[ia]=Navigator del Web
+GenericName[id]=Peramban Web
+GenericName[it]=Browser web
+GenericName[ja]=ウェブ・ブラウザ
+GenericName[ka]=ვებ ბრაუზერი
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
GenericName[ko]=웹 브라우저
+GenericName[kw]=Peurel wias
GenericName[lt]=Žiniatinklio naršyklė
GenericName[lv]=Tīmekļa pārlūks
GenericName[ml]=വെബ് ബ്രൌസര്‍
GenericName[mr]=वेब ब्राऊजर
+GenericName[ms]=Pelayar Web
GenericName[nb]=Nettleser
GenericName[nl]=Webbrowser
+GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
-GenericName[pt_BR]=Navegador da Internet
+GenericName[pt_BR]=Navegador web
GenericName[ro]=Navigator de Internet
GenericName[ru]=Веб-браузер
+GenericName[sk]=WWW prehliadač
GenericName[sl]=Spletni brskalnik
+GenericName[sr]=Интернет прегледник
GenericName[sv]=Webbläsare
GenericName[ta]=இணைய உலாவி
+GenericName[te]=మహాతల అన్వేషి
GenericName[th]=เว็บเบราว์เซอร์
GenericName[tr]=Web Tarayıcı
+GenericName[ug]=توركۆرگۈ
GenericName[uk]=Навігатор Тенет
+GenericName[vi]=Bộ duyệt Web
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[ast]=Accesu a Internet
Comment[bg]=Достъп до интернет
-Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
-Comment[ca]=Accedeix a Internet
+Comment[bn]=ইন্টারনেটে প্রবেশ করুন
+Comment[bs]=Pristup internetu
+Comment[ca]=Accediu a Internet
+Comment[ca@valencia]=Accediu a Internet
Comment[cs]=Přístup k internetu
Comment[da]=Få adgang til internettet
Comment[de]=Internetzugriff
Comment[el]=Πρόσβαση στο Διαδίκτυο
+Comment[en_AU]=Access the Internet
Comment[en_GB]=Access the Internet
-Comment[es]=Accede a Internet.
+Comment[eo]=Akiri interreton
+Comment[es]=Acceda a Internet
Comment[et]=Pääs Internetti
+Comment[eu]=Sartu Internetera
Comment[fi]=Käytä internetiä
Comment[fil]=I-access ang Internet
Comment[fr]=Accéder à Internet
+Comment[gl]=Acceda a Internet
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
-Comment[he]=גישה אל האינטרנט
+Comment[he]=גישה לאינטרנט
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
-Comment[hr]=Pristup Internetu
-Comment[hu]=Internetelérés
+Comment[hr]=Pristupite Internetu
+Comment[hu]=Az internet elérése
+Comment[hy]=Մուտք համացանց
+Comment[ia]=Accede a le Interrete
Comment[id]=Akses Internet
Comment[it]=Accesso a Internet
Comment[ja]=インターネットにアクセス
+Comment[ka]=ინტერნეტში შესვლა
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
-Comment[ko]=인터넷 연결
+Comment[ko]=인터넷에 연결합니다
+Comment[kw]=Hedhes an Kesrosweyth
Comment[lt]=Interneto prieiga
Comment[lv]=Piekļūt internetam
Comment[ml]=ഇന്റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
-Comment[nb]=Gå til Internett
+Comment[ms]=Mengakses Internet
+Comment[nb]=Bruk 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[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[sv]=Surfa på Internet
Comment[ta]=இணையத்தை அணுகுதல்
Comment[te]=ఇంటర్నెట్‌ను ఆక్సెస్ చెయ్యండి
Comment[th]=เข้าถึงอินเทอร์เน็ต
Comment[tr]=İnternet'e erişin
+Comment[ug]=ئىنتېرنېت زىيارىتى
Comment[uk]=Доступ до Інтернету
Comment[vi]=Truy cập Internet
Comment[zh_CN]=访问互联网
@@ -107,7 +169,128 @@ Comment[zh_HK]=連線到網際網路
Comment[zh_TW]=連線到網際網路
Exec=chromium-dev %U
Terminal=false
-Icon=chromium-dev
+X-MultipleArgs=false
Type=Application
+Icon=chromium-dev
Categories=Network;WebBrowser;
-MimeType=text/html;text/xml;application/xhtml+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
+MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;
+StartupWMClass=Chromium-dev
+StartupNotify=true
+Actions=NewWindow;Incognito;TempProfile
+X-AppInstall-Package=chromium-dev
+
+[Desktop Action NewWindow]
+Name=Open a New Window
+Name[ast]=Abrir una Ventana Nueva
+Name[bg]=Отваряне на Нов прозорец
+Name[bn]=একটি নতুন উইন্ডো খুলুন
+Name[bs]=Otvori novi prozor
+Name[ca]=Obre una finestra nova
+Name[ca@valencia]=Obri una finestra nova
+Name[da]=Åbn et nyt vindue
+Name[de]=Ein neues Fenster öffnen
+Name[en_AU]=Open a New Window
+Name[eo]=Malfermi novan fenestron
+Name[es]=Abrir una ventana nueva
+Name[et]=Ava uus aken
+Name[eu]=Ireki leiho berria
+Name[fi]=Avaa uusi ikkuna
+Name[fr]=Ouvrir une nouvelle fenêtre
+Name[gl]=Abrir unha nova xanela
+Name[he]=פתיחת חלון חדש
+Name[hy]=Բացել նոր պատուհան
+Name[ia]=Aperi un nove fenestra
+Name[it]=Apri una nuova finestra
+Name[ja]=新しいウィンドウを開く
+Name[ka]=ახალი ფანჯრის გახსნა
+Name[kw]=Egery fenester noweth
+Name[ms]=Buka Tetingkap Baru
+Name[nb]=Åpne et nytt vindu
+Name[nl]=Nieuw venster openen
+Name[pt_BR]=Abre uma nova janela
+Name[ro]=Deschide o fereastră nouă
+Name[ru]=Открыть новое окно
+Name[sl]=Odpri novo okno
+Name[sv]=Öppna ett nytt fönster
+Name[ug]=يېڭى كۆزنەك ئاچ
+Name[uk]=Відкрити нове вікно
+Name[vi]=Mở cửa sổ mới
+Name[zh_CN]=打开新窗口
+Name[zh_TW]=開啟新視窗
+Exec=chromium-dev
+
+[Desktop Action Incognito]
+Name=Open a New Window in incognito mode
+Name[ast]=Abrir una ventana nueva en mou incógnitu
+Name[bg]=Отваряне на нов прозорец в режим \"инкогнито\"
+Name[bn]=একটি নতুন উইন্ডো খুলুন ইনকোগনিটো অবস্থায়
+Name[bs]=Otvori novi prozor u privatnom modu
+Name[ca]=Obre una finestra nova en mode d'incògnit
+Name[ca@valencia]=Obri una finestra nova en mode d'incògnit
+Name[de]=Ein neues Fenster im Inkognito-Modus öffnen
+Name[en_AU]=Open a New Window in incognito mode
+Name[eo]=Malfermi novan fenestron nekoniĝeble
+Name[es]=Abrir una ventana nueva en modo incógnito
+Name[et]=Ava uus aken tundmatus olekus
+Name[eu]=Ireki leiho berria isileko moduan
+Name[fi]=Avaa uusi ikkuna incognito-tilassa
+Name[fr]=Ouvrir une nouvelle fenêtre en mode navigation privée
+Name[gl]=Abrir unha nova xanela en modo de incógnito
+Name[he]=פתיחת חלון חדש במצב גלישה בסתר
+Name[hy]=Բացել նոր պատուհան ծպտյալ աշխատակերպում
+Name[ia]=Aperi un nove fenestra in modo incognite
+Name[it]=Apri una nuova finestra in modalità incognito
+Name[ja]=新しいシークレット ウィンドウを開く
+Name[ka]=ახალი ფანჯრის ინკოგნიტოდ გახსნა
+Name[kw]=Egry fenester noweth en modh privedh
+Name[ms]=Buka Tetingkap Baru dalam mod menyamar
+Name[nl]=Nieuw venster openen in incognito-modus
+Name[pt_BR]=Abrir uma nova janela em modo anônimo
+Name[ro]=Deschide o fereastră nouă în mod incognito
+Name[ru]=Открыть новое окно в режиме инкогнито
+Name[sl]=Odpri novo okno v načinu brez beleženja
+Name[sv]=Öppna ett nytt inkognitofönster
+Name[ug]=يوشۇرۇن ھالەتتە يېڭى كۆزنەك ئاچ
+Name[uk]=Відкрити нове вікно у приватному режимі
+Name[vi]=Mở cửa sổ mới trong chế độ ẩn danh
+Name[zh_CN]=以隐身模式打开新窗口
+Name[zh_TW]=以匿名模式開啟新視窗
+Exec=chromium-dev --incognito
+
+[Desktop Action TempProfile]
+Name=Open a New Window with a temporary profile
+Name[ast]=Abrir una ventana nueva con perfil temporal
+Name[bg]=Отваряне на Нов прозорец с временен профил
+Name[bn]=সাময়িক প্রোফাইল সহ একটি নতুন উইন্ডো খুলুন
+Name[bs]=Otvori novi prozor pomoću privremenog profila
+Name[ca]=Obre una finestra nova amb un perfil temporal
+Name[ca@valencia]=Obri una finestra nova amb un perfil temporal
+Name[de]=Ein neues Fenster mit einem temporären Profil öffnen
+Name[en_AU]=Open a New Window with a temporary profile
+Name[eo]=Malfermi novan fenestron portempe
+Name[es]=Abrir una ventana nueva con perfil temporal
+Name[et]=Ava uus aken ajutise profiiliga
+Name[eu]=Ireki leiho berria behin-behineko profil batekin
+Name[fi]=Avaa uusi ikkuna käyttäen väliaikaista profiilia
+Name[fr]=Ouvrir une nouvelle fenêtre avec un profil temporaire
+Name[gl]=Abrir unha nova xanela con perfil temporal
+Name[he]=פתיחת חלון חדש עם פרופיל זמני
+Name[hy]=Բացել նոր պատուհան ժամանակավոր հատկագրով
+Name[ia]=Aperi un nove fenestra con un profilo provisori
+Name[it]=Apri una nuova finestra con un profilo temporaneo
+Name[ja]=一時プロファイルで新しいウィンドウを開く
+Name[ka]=ახალი ფანჯრის გახსნა დროებით პროფილში
+Name[kw]=Egery fenester noweth gen profil dres prys
+Name[ms]=Buka Tetingkap Baru dengan profil sementara
+Name[nb]=Åpne et nytt vindu med en midlertidig profil
+Name[nl]=Nieuw venster openen met een tijdelijk profiel
+Name[pt_BR]=Abrir uma nova janela com um perfil temporário
+Name[ro]=Deschide o fereastră nouă cu un profil temporar
+Name[ru]=Открыть новое окно с временным профилем
+Name[sl]=Odpri novo okno z začasnim profilom
+Name[sv]=Öppna ett nytt fönster med temporär profil
+Name[ug]=ۋاقىتلىق سەپلىمە ھۆججەت بىلەن يېڭى كۆزنەك ئاچ
+Name[vi]=Mở cửa sổ mới với hồ sơ tạm
+Name[zh_CN]=以临时配置文件打开新窗口
+Name[zh_TW]=以暫時性個人身分開啟新視窗
+Exec=chromium-dev --temp-profile
diff --git a/chromium-dev.svg b/chromium-dev.svg
new file mode 100644
index 000000000000..7ed1fb87db3c
--- /dev/null
+++ b/chromium-dev.svg
@@ -0,0 +1,277 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ width="256"
+ height="256"
+ id="svg3039"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="Chromium_11_Logo.svg">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="750"
+ id="namedview6"
+ showgrid="false"
+ inkscape:zoom="1.4142136"
+ inkscape:cx="372.87473"
+ inkscape:cy="103.791"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg3039" />
+ <metadata
+ id="metadata3045">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs3043">
+ <linearGradient
+ id="linearGradient3803">
+ <stop
+ style="stop-color:#d7def0;stop-opacity:1;"
+ offset="0"
+ id="stop3805" />
+ <stop
+ id="stop3811"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#d5def0;stop-opacity:1"
+ offset="1"
+ id="stop3807" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3776"
+ inkscape:collect="always">
+ <stop
+ id="stop3778"
+ offset="0"
+ style="stop-color:#b2cde9;stop-opacity:1" />
+ <stop
+ id="stop3780"
+ offset="1"
+ style="stop-color:#c4dbee;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3750">
+ <stop
+ id="stop3752"
+ offset="0"
+ style="stop-color:#d0e2f1;stop-opacity:1" />
+ <stop
+ style="stop-color:#cadef0;stop-opacity:1"
+ offset="0.85580856"
+ id="stop3756" />
+ <stop
+ id="stop3754"
+ offset="1"
+ style="stop-color:#95bee3;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3708">
+ <stop
+ style="stop-color:#658db6;stop-opacity:1"
+ offset="0"
+ id="stop3710" />
+ <stop
+ id="stop3716"
+ offset="0.76777935"
+ style="stop-color:#527fab;stop-opacity:1;" />
+ <stop
+ style="stop-color:#4071a0;stop-opacity:1"
+ offset="1"
+ id="stop3712" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3698">
+ <stop
+ style="stop-color:#96d0e1;stop-opacity:1"
+ offset="0"
+ id="stop3700" />
+ <stop
+ id="stop3706"
+ offset="0.67819428"
+ style="stop-color:#89b7e1;stop-opacity:1" />
+ <stop
+ style="stop-color:#699dd3;stop-opacity:1"
+ offset="1"
+ id="stop3702" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3647">
+ <stop
+ style="stop-color:#3b79bc;stop-opacity:1;"
+ offset="0"
+ id="stop3649" />
+ <stop
+ style="stop-color:#94b8e0;stop-opacity:1"
+ offset="1"
+ id="stop3651" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3588">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop3590" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3592" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3588"
+ id="radialGradient3594"
+ cx="-118.77966"
+ cy="121.49152"
+ fx="-118.77966"
+ fy="121.49152"
+ r="25.491526"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.02177942,-0.95743591,0.97872327,0.02221687,-235.0993,5.0684454)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3647"
+ id="linearGradient3653"
+ x1="-397.81323"
+ y1="149.18764"
+ x2="-397.55933"
+ y2="51.355946"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3698"
+ id="radialGradient3704"
+ cx="-383.2746"
+ cy="217.91029"
+ fx="-383.2746"
+ fy="217.91029"
+ r="59.401995"
+ gradientTransform="matrix(-1.2861568,-0.08596317,0.11453678,-1.7136762,-425.01982,469.50099)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3708"
+ id="radialGradient3714"
+ cx="-123.5"
+ cy="-11.570732"
+ fx="-123.5"
+ fy="-11.570732"
+ r="95.627118"
+ gradientTransform="matrix(-0.00756512,0.55751399,-1.0314585,-0.01398286,113.23967,103.212)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3750"
+ id="radialGradient3748"
+ cx="-94.87291"
+ cy="165.27281"
+ fx="-94.87291"
+ fy="165.27281"
+ r="60.481357"
+ gradientTransform="matrix(0.81293878,1.6998003,-2.1519091,1.0291615,564.39485,118.47915)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3776"
+ id="linearGradient3774"
+ x1="162.07127"
+ y1="85.239708"
+ x2="220.76114"
+ y2="78.875748"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(3.3917128,7.418629)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3803"
+ id="linearGradient3809"
+ x1="-382.04123"
+ y1="37.280548"
+ x2="-381.39438"
+ y2="165.56691"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient3594);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path2814"
+ sodipodi:cx="-118.23729"
+ sodipodi:cy="122.57627"
+ sodipodi:rx="25.491526"
+ sodipodi:ry="25.491526"
+ d="m -92.745764,122.57627 a 25.491526,25.491526 0 1 1 -50.983056,0 25.491526,25.491526 0 1 1 50.983056,0 z"
+ transform="matrix(4.680851,0,0,4.7978723,685.10478,-449.69946)" />
+ <path
+ style="fill:url(#linearGradient3774);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 232.17258,88.120422 c 0,15.673918 -19.79135,34.931518 -45.84395,34.931518 -26.0526,0 -59.92241,-16.08123 -59.92241,-31.755152 0,-15.673924 21.11981,-28.38015 47.17241,-28.38015 19.90254,0 46.36122,18.293224 56.45971,20.3521 0.79179,1.710571 1.36862,2.925087 2.13424,4.851684 z"
+ id="path3655"
+ sodipodi:nodetypes="cssscc" />
+ <path
+ style="fill:#2e5c91;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 38.822019,65.971523 c 12.38148,-9.610993 35.314514,-1.245318 51.289554,19.334679 15.975027,20.579998 17.694937,51.065068 5.31349,60.676058 -12.38147,9.61099 -34.17571,-5.29155 -50.15074,-25.87156 -12.20392,-15.72181 -4.05062,-41.19089 -8.61646,-50.430553 0.61589,-1.122052 1.381696,-2.456607 2.164156,-3.708624 z"
+ id="path3655-4-8"
+ sodipodi:nodetypes="cssscc" />
+ <path
+ style="fill:url(#radialGradient3714);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 230.04347,83.261765 c -7.0081,-0.03265 -61.07025,0.289575 -107.66568,0.0654 -17.371,5.108098 -31.704627,13.258827 -39.181777,29.154945 -5.33639,-4.54237 -40.74576,-42.215609 -44.40678,-46.440684 31.38983,-41.648805 74.528017,-45.559321 82.915257,-45.559321 8.38724,0 70.64407,-8.631855 108.33898,62.77966 z"
+ id="path3596"
+ sodipodi:nodetypes="ccccsc" />
+ <path
+ style="fill:#699dd3;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 117.12454,243.96815 c -12.49835,-9.45851 -14.5752,-36.93927 1.14635,-57.71356 15.72155,-20.77428 41.03582,-34.94753 53.53417,-25.48904 12.49834,9.4585 7.44792,38.96701 -8.27364,59.74129 -12.01027,15.87024 -35.4911,16.88498 -43.22681,23.69505 -1.23894,-0.0455 -1.95523,-0.0605 -3.18007,-0.23374 z"
+ id="path3655-4"
+ sodipodi:nodetypes="cssscc" />
+ <path
+ style="fill:url(#radialGradient3748);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 120.3032,244.20103 c 3.58354,-6.02268 28.85859,-52.8991 52.69131,-92.9389 4.41104,-17.56095 5.34663,-33.64185 -4.5584,-48.14993 6.62173,-2.29412 58.23852,-13.976353 63.73684,-14.987686 19.9656,48.180076 1.44992,87.338276 -2.80522,94.565966 -4.25515,7.22768 -28.40179,65.25666 -109.06453,61.51055 z"
+ id="path3596-1"
+ sodipodi:nodetypes="ccccsc" />
+ <path
+ style="fill:url(#radialGradient3704);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 36.696853,69.642524 c 3.46858,6.089612 30.72312,52.780196 53.77852,93.272576 13.094367,12.50527 27.684997,19.48512 45.191737,18.03328 -1.2738,6.89113 -16.62898,57.75037 -18.4638,63.03126 -51.756237,-6.42158 -76.669777,-41.85476 -80.854757,-49.1233 -4.18497,-7.26855 -42.7297502,-56.91452 0.3483,-125.213816 z"
+ id="path3596-1-7"
+ sodipodi:nodetypes="ccccsc" />
+ <path
+ transform="matrix(0.77294737,0,0,0.77619098,435.90647,53.275706)"
+ style="fill:url(#linearGradient3653);fill-opacity:1;stroke:url(#linearGradient3809);stroke-width:10.07013607;stroke-miterlimit:4;stroke-opacity:1"
+ d="m -338.44068,101.42373 c 0,32.65032 -26.46832,59.11864 -59.11865,59.11864 -32.65032,0 -59.11864,-26.46832 -59.11864,-59.11864 0,-32.650327 26.46832,-59.118646 59.11864,-59.118646 32.65033,0 59.11865,26.468319 59.11865,59.118646 z"
+ id="path3645" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 163.54619,108.89582 c 18.52979,17.09836 16.03302,29.55794 10.0625,44 -3.10892,-22.25001 -2.34478,-32.42697 -10.0625,-44 z"
+ id="rect3782"
+ sodipodi:nodetypes="ccc" />
+ <path
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 101.42092,173.63924 c -22.645593,-14.47335 -29.809884,-45.71983 -8.813354,-62.99032 -10.847561,19.77514 -6.225429,32.39863 8.813354,62.99032 z"
+ id="rect3782-4"
+ sodipodi:nodetypes="ccc" />
+</svg>
diff --git a/chromium-dev.xml b/chromium-dev.xml
index 398107504ae0..bcb770b93643 100644
--- a/chromium-dev.xml
+++ b/chromium-dev.xml
@@ -8,6 +8,11 @@
<command>chromium-dev %s</command>
<icon-name>chromium-dev</icon-name>
<run-in-terminal>false</run-in-terminal>
+ <netscape-remote>false</netscape-remote>
+ <!--
+ <tab-command>false</tab-command>
+ <win-command>false</win-command>
+ -->
</web-browser>
</web-browsers>
</default-apps>
diff --git a/enable_vaapi_on_linux.diff b/enable_vaapi_on_linux.diff
new file mode 100644
index 000000000000..19f5cd6ef9d1
--- /dev/null
+++ b/enable_vaapi_on_linux.diff
@@ -0,0 +1,290 @@
+Description: Enables using VA-API hardware acceleration in Linux. The patch for bpf_gpu_policy_linux.cc initially came from https://codereview.chromium.org/15955009/diff/92001/content/common/sandbox_linux/bpf_gpu_policy_linux.cc.
+
+Index: beta.vivid/content/common/gpu/media/gpu_video_decode_accelerator.cc
+===================================================================
+--- beta.vivid.orig/content/common/gpu/media/gpu_video_decode_accelerator.cc 2015-06-02 14:57:28.961592702 -0400
++++ beta.vivid/content/common/gpu/media/gpu_video_decode_accelerator.cc 2015-06-02 14:57:28.954592798 -0400
+@@ -33,7 +33,7 @@
+ #include "content/common/gpu/media/dxva_video_decode_accelerator.h"
+ #elif defined(OS_MACOSX)
+ #include "content/common/gpu/media/vt_video_decode_accelerator.h"
+-#elif defined(OS_CHROMEOS)
++#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
+ #if defined(USE_V4L2_CODEC)
+ #include "content/common/gpu/media/v4l2_device.h"
+ #include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h"
+@@ -346,7 +346,7 @@
+ scoped_ptr<media::VideoDecodeAccelerator>
+ GpuVideoDecodeAccelerator::CreateVaapiVDA() {
+ scoped_ptr<media::VideoDecodeAccelerator> decoder;
+-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
++#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
+ decoder.reset(new VaapiVideoDecodeAccelerator(
+ make_context_current_, base::Bind(&GpuVideoDecodeAccelerator::BindImage,
+ base::Unretained(this))));
+Index: dev.vivid/content/content_common.gypi
+===================================================================
+--- dev.vivid.orig/content/content_common.gypi 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/content_common.gypi 2015-06-02 15:12:59.289303797 -0400
+@@ -826,7 +826,7 @@
+ },
+ ],
+ }],
+- ['chromeos==1', {
++ ['chromeos==1 or desktop_linux==1', {
+ 'sources': [
+ 'common/gpu/media/accelerated_video_decoder.h',
+ 'common/gpu/media/h264_decoder.cc',
+@@ -875,7 +875,7 @@
+ 'common/gpu/media/tegra_v4l2_device.h',
+ ],
+ }],
+- ['target_arch != "arm" and chromeos == 1', {
++ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
+ 'dependencies': [
+ '../media/media.gyp:media',
+ '../third_party/libyuv/libyuv.gyp:libyuv',
+Index: dev.vivid/content/content_gpu.gypi
+===================================================================
+--- dev.vivid.orig/content/content_gpu.gypi 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/content_gpu.gypi 2015-06-02 15:12:59.289303797 -0400
+@@ -36,7 +36,7 @@
+ ],
+ },
+ }],
+- ['target_arch!="arm" and chromeos == 1', {
++ ['target_arch!="arm" and (chromeos == 1 or desktop_linux == 1)', {
+ 'include_dirs': [
+ '<(DEPTH)/third_party/libva',
+ ],
+Index: dev.vivid/content/content_tests.gypi
+===================================================================
+--- dev.vivid.orig/content/content_tests.gypi 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/content_tests.gypi 2015-06-02 15:12:59.289303797 -0400
+@@ -1651,7 +1651,7 @@
+ },
+ ]
+ }],
+- ['chromeos==1 and target_arch != "arm"', {
++ ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', {
+ 'targets': [
+ {
+ 'target_name': 'vaapi_jpeg_decoder_unittest',
+Index: dev.vivid/content/public/common/content_switches.cc
+===================================================================
+--- dev.vivid.orig/content/public/common/content_switches.cc 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/public/common/content_switches.cc 2015-06-02 15:12:59.290303784 -0400
+@@ -962,7 +962,7 @@
+ // Disable web audio API.
+ const char kDisableWebAudio[] = "disable-webaudio";
+
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+ // Disables panel fitting (used for mirror mode).
+ const char kDisablePanelFitting[] = "disable-panel-fitting";
+
+Index: dev.vivid/content/public/common/content_switches.h
+===================================================================
+--- dev.vivid.orig/content/public/common/content_switches.h 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/public/common/content_switches.h 2015-06-02 15:12:59.290303784 -0400
+@@ -273,7 +273,7 @@
+
+ CONTENT_EXPORT extern const char kDisableWebAudio[];
+
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+ CONTENT_EXPORT extern const char kDisablePanelFitting[];
+ CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[];
+ #endif
+Index: dev.vivid/media/media.gyp
+===================================================================
+--- dev.vivid.orig/media/media.gyp 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/media/media.gyp 2015-06-02 15:12:59.290303784 -0400
+@@ -708,7 +708,7 @@
+ ],
+ }],
+ # For VaapiVideoEncodeAccelerator.
+- ['target_arch != "arm" and chromeos == 1', {
++ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
+ 'sources': [
+ 'filters/h264_bitstream_buffer.cc',
+ 'filters/h264_bitstream_buffer.h',
+Index: dev.vivid/gpu/config/software_rendering_list_json.cc
+===================================================================
+--- dev.vivid.orig/gpu/config/software_rendering_list_json.cc 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/gpu/config/software_rendering_list_json.cc 2015-06-02 15:12:59.290303784 -0400
+@@ -475,17 +475,6 @@
+ ]
+ },
+ {
+- "id": 48,
+- "description": "Accelerated video decode is unavailable on Linux",
+- "cr_bugs": [137247],
+- "os": {
+- "type": "linux"
+- },
+- "features": [
+- "accelerated_video_decode"
+- ]
+- },
+- {
+ "id": 49,
+ "description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
+ "cr_bugs": [140175],
+@@ -1034,6 +1023,11 @@
+ "op": ">=",
+ "value": "3.0"
+ }
++ },
++ {
++ "os": {
++ "type": "linux"
++ }
+ }
+ ],
+ "features": [
+Index: dev.vivid/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
+===================================================================
+--- dev.vivid.orig/content/common/sandbox_linux/bpf_gpu_policy_linux.cc 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/common/sandbox_linux/bpf_gpu_policy_linux.cc 2015-06-02 15:12:59.291303771 -0400
+@@ -21,6 +21,8 @@
+ #include "base/logging.h"
+ #include "base/memory/scoped_ptr.h"
+ #include "build/build_config.h"
++// Auto-generated for dlopen libva libraries
++#include "content/common/gpu/media/va_stubs.h"
+ #include "content/common/sandbox_linux/sandbox_bpf_base_policy_linux.h"
+ #include "content/common/sandbox_linux/sandbox_seccomp_bpf_linux.h"
+ #include "content/common/set_process_title.h"
+@@ -31,6 +33,8 @@
+ #include "sandbox/linux/syscall_broker/broker_file_permission.h"
+ #include "sandbox/linux/syscall_broker/broker_process.h"
+ #include "sandbox/linux/system_headers/linux_syscalls.h"
++#include "third_party/libva/va/va.h"
++#include "third_party/libva/va/va_x11.h"
+
+ using sandbox::arch_seccomp_data;
+ using sandbox::bpf_dsl::Allow;
+@@ -40,6 +44,11 @@
+ using sandbox::syscall_broker::BrokerProcess;
+ using sandbox::SyscallSets;
+
++using content_common_gpu_media::kModuleVa;
++using content_common_gpu_media::kModuleVa_x11;
++using content_common_gpu_media::InitializeStubs;
++using content_common_gpu_media::StubPathMap;
++
+ namespace content {
+
+ namespace {
+@@ -94,7 +103,7 @@
+
+ bool IsAcceleratedVaapiVideoEncodeEnabled() {
+ bool accelerated_encode_enabled = false;
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+ const base::CommandLine& command_line =
+ *base::CommandLine::ForCurrentProcess();
+ accelerated_encode_enabled =
+@@ -295,23 +304,41 @@
+ // inside the sandbox, so preload them now.
+ if (IsAcceleratedVaapiVideoEncodeEnabled() ||
+ IsAcceleratedVideoDecodeEnabled()) {
+- const char* I965DrvVideoPath = NULL;
++ VLOG(1) << "Attempting to enable hardware video acceleration.";
++ StubPathMap paths;
++ paths[kModuleVa].push_back("libva.so.1");
++ paths[kModuleVa_x11].push_back("libva-x11.so.1");
++ if (!InitializeStubs(paths)) {
++ VLOG(1) << "Failed to initialize stubs";
++ return false;
++ }
+
+- if (IsArchitectureX86_64()) {
+- I965DrvVideoPath = "/usr/lib64/va/drivers/i965_drv_video.so";
+- } else if (IsArchitectureI386()) {
+- I965DrvVideoPath = "/usr/lib/va/drivers/i965_drv_video.so";
++ // libva drivers won't get loaded even above two libraries get dlopened.
++ // Thus, libva calls will fail after post sandbox stage.
++ //
++ // To get the va driver loaded before sandboxing, upstream simply dlopen
++ // the hard-coded va driver path because ChromeOS is the only platform
++ // that Google want to support libva.
++ //
++ // While generic linux distros ship va driver as anywhere they want.
++ // Fortunately, the va driver will be loadded when vaInitialize() get
++ // called.
++ // So the following code is to call vaInitialize() before sandboxing.
++ Display* x_display = XOpenDisplay(NULL);
++ VADisplay va_display = vaGetDisplay(x_display);
++ if (!vaDisplayIsValid(va_display)) {
++ VLOG(1) << "Failed to call vaGetDisplay()";
++ return false;
+ }
+
+- dlopen(I965DrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
+- dlopen("libva.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
+-#if defined(USE_OZONE)
+- dlopen("libva-drm.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
+-#elif defined(USE_X11)
+- dlopen("libva-x11.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
+-#endif
+- }
+- }
++ int major_version, minor_version;
++ if (vaInitialize(va_display, &major_version, &minor_version)
++ != VA_STATUS_SUCCESS) {
++ VLOG(1) << "Failed to call vaInitialize()";
++ return false;
++ }
++ } // end of IsAcceleratedVaapiVideoEncodeEnabled() || IsAcceleratedVideoDecodeEnabled()
++ } // end of IsArchitectureX86_64() || IsArchitectureI386()
+
+ return true;
+ }
+Index: dev.vivid/chrome/browser/about_flags.cc
+===================================================================
+--- dev.vivid.orig/chrome/browser/about_flags.cc 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/chrome/browser/about_flags.cc 2015-06-02 15:12:59.292303758 -0400
+@@ -1072,7 +1072,7 @@
+ "disable-accelerated-video-decode",
+ IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_NAME,
+ IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_DESCRIPTION,
+- kOsMac | kOsWin | kOsCrOS,
++ kOsAll,
+ SINGLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
+ },
+ #if defined(USE_ASH)
+Index: dev.vivid/content/common/gpu/media/vaapi_wrapper.cc
+===================================================================
+--- dev.vivid.orig/content/common/gpu/media/vaapi_wrapper.cc 2015-06-02 15:12:59.295303719 -0400
++++ dev.vivid/content/common/gpu/media/vaapi_wrapper.cc 2015-06-02 15:12:59.293303745 -0400
+@@ -146,7 +146,7 @@
+ VAProfile va_profile,
+ const base::Closure& report_error_to_uma_cb) {
+ if (!profile_infos_.Get().IsProfileSupported(mode, va_profile)) {
+- DVLOG(1) << "Unsupported va_profile: " << va_profile;
++ VLOG(1) << "Unsupported va_profile: " << va_profile;
+ return nullptr;
+ }
+
+@@ -378,7 +378,7 @@
+ if (std::find(supported_entrypoints.begin(),
+ supported_entrypoints.end(),
+ entrypoint) == supported_entrypoints.end()) {
+- DVLOG(1) << "Unsupported entrypoint";
++ VLOG(1) << "Unsupported entrypoint";
+ return false;
+ }
+ return true;
+@@ -402,8 +402,8 @@
+ if (attribs[i].type != required_attribs[i].type ||
+ (attribs[i].value & required_attribs[i].value) !=
+ required_attribs[i].value) {
+- DVLOG(1) << "Unsupported value " << required_attribs[i].value
+- << " for attribute type " << required_attribs[i].type;
++ VLOG(1) << "Unsupported value " << required_attribs[i].value
++ << " for attribute type " << required_attribs[i].type;
+ return false;
+ }
+ }