Filesystem hierarchy
This document presents the filesystem's hierarchy.
Hierarchy
NOTE: <F> indicates the item is a file.
/
├── app Interactables available to all users
│ └── <appname> An application's folder (NOTE: one sub-folder per version for libraries)
│ ├── content Application's program (executables, static resources, ...)
│ ├── crashsaves Application's crash saves
│ ├── data Application's data (e.g. database)
│ ├── packages Application's packages (original package + update packages)
│ └── sandboxes Application's sandboxes
├── dev Connected devices
│ ├── cam Cameras
│ ├── bst Basic storage devices (SD cards, USB keys, ...)
│ ├── etc Uncategorized devices
│ ├── mic Microphones
│ ├── net Network adapters (Ethernet adapter, WiFi card, ...)
│ ├── snd Sound-related output devices (Sound card, DAC, ...)
│ ├── sst Sensitive storage devices (Hard drives, SSDs, ...)
│ └── wrl Other supported wireless devices (Bluetooth adapter, ...)
├── etc Mutable data folder
│ ├── env <F> Environment variables
│ ├── fal <F> Filesystem abstraction layer (1)
│ ├── hosts <F> Hosts overriding (e.g. 'localhost')
│ ├── lock Opened lock files
│ ├── logs Log files
│ | └── upe History of UPE requests (2)
│ ├── public Public data, readable and writable by everyone
│ └── sys System's mutable data - available to system only
│ ├── registry System's registry
│ ├── awake <F> System's shutdown indicator to detect if there was an error during last shutdown
│ ├── hashes <F> Critical files' hashes for the integrity checker (3)
│ ├── gbpwd <F> Global storage's encryption key (4)
│ └── users <F> User profiles and groups
├── fl Flow files
├── home Users' data
│ └── <user> A specific user's data
│ ├── apps User's applications (same structure as for `/apps`)
│ ├── appdata User's applications persistent data (not removed when the application is uninstalled)
│ ├── desktop User's files appearing on the desktop
│ ├── documents User's documents
│ ├── downloads User's downloads
│ ├── music User's music files
│ ├── pictures User's pictures
│ ├── videos User's videos
│ └── trash User's trash
├── mnt Mounted storages
│ └── root Soft link to `/`
├── sys System - immutable outside of installation, repair processes and updates
│ ├── apps System applications
│ ├── boot System's boot program
│ ├── langs Translation files
│ ├── old Old versions of the system, used during the repair process (compressed archives)
│ ├── backup Copy of the last system version (compressed archive)
│ ├── kernel Custom micro-kernel
│ └── valid <F> A file that just contains "ValidMasterKey" to test if the provided master key is valid at startup
├── tmp Temporary folder (cleaned during shutdown)
│ └── <user> Temporary folder for a specific user
Links:
- (1) Informations used by the Filesystem Abstraction Layer
- (2) UPE requests
- (3) The integrity checker
- (4) Global storage's encryption key
Notes
Globally installed applications (located in /apps) can store user-specific data in /home/[user]/appdata/[appname], which will only be made of the data, crashsaves and sandboxes folder.