Page 1 of 1

How to make Chrome SFS? (Solved)

Posted: Fri Feb 19, 2021 2:28 pm
by miltonx

FD64 has a built in facility to install chrome, and during that it also saves a compiled chrome txz package in /root folder, which is nice. I extracted this package and squashed it into an sfs application, which does not work. Digging into this, i found that the installation process not only downloads chrome, but also its dependencies, whereas the automatically generated txz package does not include those dependencies. Question is, how to identify and download the dependencies?

I had a workaround by checking the aufs rw layer to see what files are added, in addition to the chrome files, and manually copy them to my chrome package folder before squashing them together. But this is a rather ugly way of doing it. Any elegant solutions?


Re: How to make Chrome SFS?

Posted: Fri Feb 19, 2021 7:21 pm
by step

I was going to suggest running get-google-chrome.sh inside sandbox.sh, which is one of the package making strategies outlined in Fatdog's help file, but it doesn't work because the sandbox can't find slapt-get. That in itself suggests that get-google-chrome.sh runs slapt-get, which is the command-line counterpart of Gslapt package manager. Then running grep slapt-get /usr/sbin/get-google-chrome.sh shows that gtk3 is the only package installed in addition to the chrome txz. However, the topic of chrome's dependencies has come up again in the forum, and I remember that at least two other packages are needed: at-spi2-core and at-spi2-atk.

I don't use chrome but I do use other chromium-based browsers, for which I have installed more packages over time. Here's my curated list applicable to Fatdog64:

at-spi2-core
at-spi2-atk
glib-networking
libsoup
librest
gtk3
libxkbcommon *
libnspr *
libnss *
libnotify-gtk3 +

* = already installed in the base Fatdog64.
+ = optional

Whether all the packages above are absolutely needed for chrome I don't know, except for gtk3 and its dependencies (at-spi2-atk,gdk-pixbuf,libepoxy,pango,cups,libxkbcommon,libjson-glib,librest).


Re: How to make Chrome SFS?

Posted: Sun Feb 21, 2021 1:03 pm
by miltonx

The listed number of dependencies scared me at first. It would be a lot of work to investigate one by one. But then it occurred to me, why not let gslapt find out? I searched for gtk3 in gslapt, and it automatically picks all gtk3's dependencies (7 files including your above listed). I ticked "only download without installing", and extracted all the downloaded txz files, rsync-ed them all into one folder, and squashed that folder into gtk3.sfs. Then in fatdog boot options I added this gtk3.sfs and previously made chrome.sfs in the extrasfs parameter. Rebooted, and Bob is your uncle!

A side note, the freedom to add any number of sfs files in boot option is a great plus for which i switched from puppy to fatdog. Bravo!