Best way to overlay a filesystem for a Wine app?
Francois Gouget
fgouget at free.fr
Mon Jan 30 03:58:56 CST 2012
On Fri, 27 Jan 2012, Scott Ritchie wrote:
[...]
> To me, this sounds an awful lot like an overlay file system. Would
> unionfs-fuse be the correct solution here? The .desktop file that sets
> the Wine prefix and also launches the app could mount the FUSE
> filesystem, and the user-space Wine prefix's files could take priority
> over those in /opt. Stuff like user-modding and update/repair systems
> could work properly in that context as well.
The main issue with copy-on-write overlay filesystems is that they
cannot deal with registry files for two reasons:
* First, once a file has been written to and thus copied to the
user's wineprefix, it will never be updated when you upgrade the
application's package. This means after an upgrade the user's
system.reg and user.reg files (the latter containing the dll
overrides) will be unchanged which may cause the application to be
broken.
* The second issue is that the registry really contains both
application data and user data. The former should be upgraded while
the latter should be preserved. So neither a copying the new registry
files nor preserving the old registry files policies are appropriate
(and these policies are the only two available to overlay
filesystems).
Besides that there are other issues, most of which Dan already
mentioned:
* As far as I know most overlay filesystems don't deal well with
changes in the underlying filesystem. This pretty much breaks the
upgrade scenario.
* They are not available on all Linux distributions (not to talk about
Mac OS X or FreeBSD). But I guess this is fine for a
latest-Ubuntu-only approach (like for menus and the trash!).
Another issue is applications that require a license key to be entered
during installation. This causes trouble for both the overlay and
symlink approaches since both have the packager install the application
and then ship the installed image... along with its single license key.
So for these applications a way to enter the license key on first run
has to be found.
--
Francois Gouget <fgouget at free.fr> http://fgouget.free.fr/
Cahn's Axiom: When all else fails, read the instructions.
More information about the wine-devel
mailing list