heroku-buildpack-google-chrome
heroku-buildpack-google-chrome copied to clipboard
buildpack no longer works with cedar-14 stack
Chrome suddenly stopped working on our cedar-14 dynos yesterday after a redeploy. Bashing into one and trying to launch chrome reported the following error:
~ $ google-chrome
/app/.apt/opt/google/chrome/chrome: error while loading shared libraries: libgconf-2.so.4: cannot open shared object file: No such file or directory
To fix this I ended up manually copying the heroku-16 packages in this buildpack and installing them during slug compilation. One or more of them was required to fix this (installing gconf alone was not good enough.)
CACHE_DIR=$2
APT_CACHE_DIR="$CACHE_DIR/apt/cache"
APT_STATE_DIR="$CACHE_DIR/apt/state"
APT_OPTIONS="-o debug::nolocking=true -o dir::cache=$APT_CACHE_DIR -o dir::state=$APT_STATE_DIR"
PACKAGES="libxss1 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 libxtst6 libnss3 libgconf-2-4 libxrandr2 libasound2 libatk1.0-0 libgtk2.0-0 libgtk-3-0 libxinerama1 libcairo-gobject2"
for PACKAGE in $PACKAGES; do
apt-get $APT_OPTIONS -y --force-yes -d install --reinstall $PACKAGE
done
I think there may have been a change in either the cedar-14 stack or chrome itself which requires additional dependencies, and until this buildpack is updated it's no longer compatible with cedar-14
Some additional info. If you manually do apt-get install gconf2
trying to launch chrome will give the following error:
~ $ google-chrome
/app/.apt/opt/google/chrome/chrome: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory
So the can gets kicked down the road a little, but there's more than one dependency change at the heart of this issue. I'm unsure of the total number of kicks needed, I just copied the entire package list that heroku-16 images use and that worked.
@apellerano-pw has there been any update on this thread offline?
@phamcharles no sorry, we're still using the same workaround. I don't know the implications of upgrading to heroku-16 stack or if it's reversable so I've just kinda left it as is for now
@apellerano-pw which are the packages you added?
It's in the packages list in one of my previous comments
PACKAGES="libxss1 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 libxtst6 libnss3 libgconf-2-4 libxrandr2 libasound2 libatk1.0-0 libgtk2.0-0 libgtk-3-0 libxinerama1 libcairo-gobject2"
I'm not sure if they're all needed, I never tried to prune it down once I got it working
@apellerano-pw does this still affect your use case?