heroku / heroku-buildpack-google-chrome

Run (headless) Google Chrome on Heroku
296 stars 365 forks source link

Fix missing dependencies for Google Chrome 81 #85

Closed beauraF closed 4 years ago

beauraF commented 4 years ago

Google Chrome 81 is out, and it breaks this buildpack because some dependencies are missing. I didn't check for the heroku-14 stack. I'll try to do it soon.

Fix #84


EDIT: I put dev dependencies, is not the proper fix. I'll update it soon.

edmorley commented 4 years ago

I tested on master and it looks good, so I've published to the heroku/google-chrome alias.

$ heroku buildpacks:publish heroku/google-chrome master
Publishing buildpack heroku/google-chrome... done
Publishing buildpack was successful

$ heroku buildpacks:versions heroku/google-chrome
Version  Released At               Status
───────  ────────────────────────  ─────────
6        2020-04-08T09:33:04.692Z  published
5        2019-07-09T13:48:42.867Z  published
...
beauraF commented 4 years ago

I tried on my app in production, it work ! Thanks @edmorley for your reactivity on this.

edmorley commented 4 years ago

@beauraF You're welcome - thank you for the PR :-)

beauraF commented 4 years ago

I'm quoting @Izzette:

No dependancies removed, by the way @beauraF and @bpaquet.

Chrome 81:

ruby@2ebb1b814edb:/app$ /opt/google/chrome/chrome --version
Google Chrome 81.0.4044.92 unknown
ruby@4852371a31f1:/app$ readelf --dynamic /opt/google/chrome/chrome | grep 'Shared library:'
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [librt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libX11-xcb.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libxcb.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libxcb-dri3.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libXcomposite.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXcursor.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXdamage.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXext.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXfixes.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libXi.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXrender.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXtst.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgobject-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libglib-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libnss3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libnssutil3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libsmime3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libnspr4.so]
 0x0000000000000001 (NEEDED)             Shared library: [libcups.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libdbus-1.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libgio-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libexpat.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libdrm.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXrandr.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libgbm.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXss.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libasound.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libatk-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libatk-bridge-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpangocairo-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpango-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libcairo.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libatspi.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgtk-3.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgdk-3.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgdk_pixbuf-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [ld-linux-x86-64.so.2]

Chrome 80:

ruby@8f337dd4799d:/app$ /opt/google/chrome/chrome --version
Google Chrome 80.0.3987.163 unknown
ruby@8f337dd4799d:/app$ readelf --dynamic /opt/google/chrome/chrome | grep 'Shared library:'
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [librt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libX11-xcb.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libxcb.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXcomposite.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXcursor.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXdamage.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXext.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXfixes.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libXi.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXrender.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXtst.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgobject-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libglib-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libnss3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libnssutil3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libsmime3.so]
 0x0000000000000001 (NEEDED)             Shared library: [libnspr4.so]
 0x0000000000000001 (NEEDED)             Shared library: [libcups.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libdbus-1.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libgio-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libexpat.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXrandr.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libXss.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libasound.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libatk-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libatk-bridge-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpangocairo-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpango-1.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libcairo.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libatspi.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgtk-3.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgdk-3.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgdk_pixbuf-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [ld-linux-x86-64.so.2]

Diff:

 0 ✓ isabelle.cowan-bergman@MBP-de-Isabelle.home tmp $ diff -u Google\ Chrome\ \(80.0.3987.163\)\ unknown.txt Google\ Chrome\ \(81.0.4044.92\)\ unknown.txt
--- Google Chrome (80.0.3987.163) unknown.txt 2020-04-08 13:54:18.000000000 +0200
+++ Google Chrome (81.0.4044.92) unknown.txt  2020-04-08 13:54:42.000000000 +0200
@@ -4,6 +4,7 @@
  0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
  0x0000000000000001 (NEEDED)             Shared library: [libX11-xcb.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libxcb.so.1]
+ 0x0000000000000001 (NEEDED)             Shared library: [libxcb-dri3.so.0]
  0x0000000000000001 (NEEDED)             Shared library: [libXcomposite.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libXcursor.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libXdamage.so.1]
@@ -22,8 +23,10 @@
  0x0000000000000001 (NEEDED)             Shared library: [libdbus-1.so.3]
  0x0000000000000001 (NEEDED)             Shared library: [libgio-2.0.so.0]
  0x0000000000000001 (NEEDED)             Shared library: [libexpat.so.1]
+ 0x0000000000000001 (NEEDED)             Shared library: [libdrm.so.2]
  0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
  0x0000000000000001 (NEEDED)             Shared library: [libXrandr.so.2]
+ 0x0000000000000001 (NEEDED)             Shared library: [libgbm.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libXss.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libasound.so.2]
  0x0000000000000001 (NEEDED)             Shared library: [libatk-1.0.so.0]

So nothing to remove. We are good with this.