diff options
author | sl1pkn07 | 2015-06-24 06:46:45 +0200 |
---|---|---|
committer | sl1pkn07 | 2015-06-24 06:47:12 +0200 |
commit | a20b7ec3fb7a1ac07b4ca1aa45e6e093f71816c2 (patch) | |
tree | 4d54b9ac7cbc7ab935911d8c65f185fd4bd4b3f7 | |
parent | 4632647641165b46b0a310588a8553fd1c885093 (diff) | |
download | aur-a20b7ec3fb7a1ac07b4ca1aa45e6e093f71816c2.tar.gz |
Update to 45.0.2438.3.
Added support for VAAPI/VDPAU.
Update .desktop and gconf xml
Added a Scalable SVG icon
Change ffmpeg branch from Chrome to ChromeOS (support more media formats)
Added PNaCL binaries to the package
NOTE: The VAAPI patch and .svg/.desktop/.xml is taken from the Ubuntu chromium-dev PPA (https://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-dev)
-rw-r--r-- | .SRCINFO | 30 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | PKGBUILD | 126 | ||||
-rw-r--r-- | chromium-dev.desktop | 241 | ||||
-rw-r--r-- | chromium-dev.svg | 277 | ||||
-rw-r--r-- | chromium-dev.xml | 5 | ||||
-rw-r--r-- | enable_vaapi_on_linux.diff | 290 |
7 files changed, 878 insertions, 93 deletions
@@ -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 @@ -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; + } + } |