Mats Larsson wrote:
> Great...
>
> But did unpack them on a Solaris 8 machine and trying to run them on a 
> Solaris 10 machine mounting the installation directory read-only from 
> the Soalris 8 machine:
>
> % ./firefox
> touch: ./.refresh cannot create
> cat: cannot open ./.refresh
> mkdir: 
> "/opt/as/mozilla/firefox/3.0/SunOS-5.10/firefox/depend/etc/pango": 
> Read-only file system
> mkdir: 
> "/opt/as/mozilla/firefox/3.0/SunOS-5.10/firefox/depend/etc/gtk-2.0": 
> Read-only file system
> ./run-mozilla.sh: 
> /opt/as/mozilla/firefox/3.0/SunOS-5.10/firefox/depend/etc/pango/pangorc: 
> cannot create
> %
>
> Why does the installation directory needs to be writeable?
Hi Mats,

Thanks for trying this out first. It's true that the tarball release
builds are supposed to run on a writable directory.

As I've mentioned, the build contains several libraries that Firefox 3.0
depends on. All the dependency reside in $topdir/depend directory for
the tarball releases. The reason for writable request lies in pango and
gtk libraries.

Please notice that pango and gtk have their config files each:
pango.modules: information about loadable modules for Pango
gdk-pixbuf.loaders: information about loadable image modules for gdk-pixbuf
gtk.immodules: information about loadable input method modules for GTK+

All these config files have to be generated after the installation of
the modules, which is part of the post-install when adding their
corresponding packages. The main concern here is that tarball builds
could be extracted anywhere while every config files need to have
absolute path information(the relative path doesn't work). So I hack
run-mozilla.sh to do this at runtime. To avoid duplicate efforts,
.refresh is used to verify whether the config files have been generated.
And every time the users change the location of the firefox binary or
rename it, all the config files will be generated again(Take it easy,
it's not an expensive operation).

Sorry for not taking the read-only mount use case into consideration. If
the Firefox directory will be mounted to the same directory, it's doable
to generate the config files by hand and reverse to the original version
of run-mozilla.sh:
http://lxr.mozilla.org/seamonkey/source/build/unix/run-mozilla.sh.

Any other suggestions are appreciated.

Cheers,
-Alfred

Reply via email to