Older file recognition schemes

The original Amiga OS had a different take on file-recognition. Instead of relying on file extensions or last-names, which in all honesty can lie to you, the original architects created a plugin based system. A system where programmers could write small drivers that would identify a file by sampling it’s content.

This meant that users who tried to lie about content (for example by renaming files) would find it rendered the file useless. At best programs refused them, at worst it would crash your system.

But there were benefits with the old Amiga way of doing things. Costly, but very advanced for it’s time. For instance, a movie file is not just what the extension says. A movie can have many last names (avi, mpg, mpa, mp4 and so on), but that is actually not information about the movie itself; it just tells you the name of how data is organized inside the file. A name like “.avi” for instance tells you nothing about the compression method of the audio or video inside the avi container. To get that information – the system have to read parts of the file to find out.

As you can imagine, doing live file-detection by sampling actual file-data is costly and time consuming. Which is also why the old way of doing this is not well suited for a hybrid system designed for embedded or cloud hosting.

Custom icon files

Another aspect of the Amiga filesystem was custom icons. While datatypes dealt with the content of media, users could draw their own unique icon for both folders, files and programs. The rule was simple: if a file had a corresponding .info file, then the graphics inside that .info file would be used as the icon. This part of AmigaOS was brilliant and made for some spectacular looking desktop environments.

Here we have allowed ourselves to be inspired. The Smart Desktop (Amibian.js) supports folder design files. This is a special file that allows you to set custom a background image for that particular folder. You can also override the default system icons. Even make files invisible if you like.

This functionality is perhaps best suited for games and multimedia where you want to shield the user from dependencies, libraries and other files used by your program – yet present the program itself with a spectacular icon and background.

Note: Animated GIF’s are supported by default, so you can create impressive desktops with very little resources.