Appfolders/Appfiles on Linux

Discussions about *nix and Other Operating Systems should go in this forum.
Post Reply

Appfolders/Appfiles on Linux

Post by Axalon »

I've for about 6-7 months now been tinkering with building Linux systems. I originally followed the LFS book but subsequently branched from it and integrated the pacman package manager (of Archlinux fame) into it. Recently, however, I've been inspired by Mac OS X and GoboLinux to try making a Linux system that's...well...different (I'd like to say easier or better, but that's a little too subjective), by 1) making changes to the filesystem hierarchy, and 2) using AppFolders to simplify adding and removing applications.

I've been thinking of making a Linux system that, in effect, uses two package management systems.

For the base system (kernel, glibc, bash, coreutils, X11, and any runtime libs), I would use something like pacman to manage. They would occupy one part of the filesystem hierarchy (something like /System), and be an area that isn't meant to be messed with by the end user.

For the rest of the higher-level apps (Firefox, OOo, the GNOME/KDE base apps, etc.), I was thinking of having them in a self-contained AppFolder. This way, you could do a "mini format" by wiping the AppFolders and returning the system to a clean state without needing to reinstall or touch the base system. It also makes applications easier to remove in general, without having to rely on a database that could become corrupt.

Now, there doesn't seem to be a whole lot done in terms of AppFolder-like things in Linux. The most developed one is the ROX Desktop, but its confined to one application, which I don't particularly like the appearance of. I'd also like the system to be agnostic to the file manager (so I could use Nautilus, Konqueror, et al instead and still have it work).

Right now, the most hopeful candidate is something called "klik", which uses disk images containing a mini filesystem hierarchy where the application is stored. These aren't AppFolders exactly, but rather AppFiles. This makes it easier to make the packages file manager agnostic, but it doesn't seem that flexible nor does it make it possible to access a file without having to mount the whole image.

A third possibility would be the use of directory desktop files (the .directory file that usually is used to attach an icon to a directory). If the file manager can somehow be made to acknowledge the "Exec=" flag of that file, it would be possible to double click the folder and have an application open. Unfortunately, as far as I know, neither Konqueror nor Nautilus support this, but it doesn't seem like it would be a feature that would be very hard to implement.

One main reason that I've hooked on to AppFolders so tightly is due to the fact that you could package both native applications and non-native applications (apps that use Java or Wine) in the same fashion. There's just something cool about having Linux and Windows apps be installed in the exact same fashion.

Does anyone have any other clue as to how an AppFolder based distro could be implemented, if it's worth it, or if it's even feasible?

Posts: 590
Joined: Sat Aug 19, 2006 1:25 am
Location: Israel

Post by ppc_digger »

You could make files that contain information about where everything is located. That's what I intend to implement for OSBA OS (although my design will be a little dependent on opkg). I'll probably use XML files with everything necessary to look at it as an application (e.g. the package that installed it, in order to be able to delete it, or the command line necessary to execute it).

Post Reply