<p>Haiku's filesystem layout is quite transparent, trying to always use non-cryptic names for files and folders, that don't leave the user guessing. Files and folders that are important for the system to function properly, are protected from accidental tempering by showing one of these alerts:</p>
<p>The second alert pops up if you try to rename or delete something in the system hierarchy. Here, the "<spanclass="button">Rename</span>" button will only become clickable when you're holding down the <spanclass="key">SHIFT</span> key.</p>
<tr><td><spanclass="path">/boot/system/</span></td><td></td><td>Contains system files and applications/packages shared by all users.</td></tr>
<tr><td><spanclass="path">/boot/home/</span></td><td></td><td>This is your personal folder where you keep your data and settings and the applications/packages that are <i>not</i> shared by all users.</td></tr>
<p>As long as Haiku isn't multi-user, this distinction between shared and not-shared applications/packages has no apparent effect, as there's only one user with one home folder. But since there will be support for more users than one eventually, it makes sense to learn the right way from the start.</p>
<aid="system"name="system">The system folder - <spanclass="path">/boot/system/</span></a></h2>
<p>Under Haiku's predecessor BeOS, this folder was named <spanclass="path">/boot/beos/</span>. You may still find it in some older documentation (e.g. in the original BeBook).<br/>
Most of the folders inside <spanclass="path">/boot/system/</span> are read-only, which is sensible as they contain the files necessary for Haiku to function correctly and therefore have to be safe from (accidental) alteration. The only user-writable folders are:</p>
<tr><td><spanclass="path">/boot/system/cache/</span></td><td></td><td>Contains cached files and the temporary folder linked to <spanclass="path">/tmp/</span>.</td></tr>
<tr><tdclass="onelinetop"><spanclass="path">/boot/system/non-packaged/</span></td><td></td><td>Contains a hierarchy for files that aren't part of a .hpkg (probably from old BeOS archives).</td></tr>
<tr><td><spanclass="path">/boot/system/packages/</span></td><td></td><td>Besides holding Haiku's system packages, you can add/remove packages shared by all users.</td></tr>
<tr><td><spanclass="path">/boot/system/var/</span></td><td></td><td>Contains logs like the syslog (important when troubleshooting) and is the default location for the swap file.</td></tr>
<p><spanclass="box-info">For more information on the <spanclass="path">packages</span> and <spanclass="path">non-packaged</span> folders, see topic <ahref="applications.html">Installing applications</a>.</span></p>
<p>This folder belongs to you. Here you can create and delete files and folders as you wish. (By the way, the tilde ("<tt>~</tt>") is a shortcut for your home folder, so you don't always have to write "<spanclass="path">/boot/home/</span>" in Terminal.)<br/>
Files that you'd like to share with other users in a future multi-user environment have do be put outside <spanclass="path">/boot/home/</span>. For example, you could create a folder <spanclass="path">/boot/all-users/</span> and put the stuff there.</p>
<td>Holds the files of your desktop. Double-clicking won't open it, as it is already always visible. When your files happen to be obscured by open windows, just switch quickly to another <ahref="workspaces.html">Workspace</a>. Of course, <ahref="tracker.html#drill-down">drilling</a> down by right-clicking is also possible.</td></tr>
<p>The folder <spanclass="path">/boot/home/config/</span> is special: just like <spanclass="path">/boot/system/</span> it's mostly under the control of the package management and therefore read-only. It too contains these similar user-writable folders:</p>
<td>This folder contains the settings to all applications and a few configurations for the system. Some applications manage their settings in their own subfolders, others simply put their configuration file in there.</td></tr>
<p><spanclass="box-info">For more information on the <spanclass="path">packages</span> and <spanclass="path">non-packaged</span> folders, see topic <ahref="applications.html">Installing applications</a>.</span></p>
<p>Here are some of the more interesting subfolders in <spanclass="path">~/config/settings/</span>:</p>
<td>This folder is the place for <ahref="bash-scripting.html#user-scripts">User Scripts</a> that are executed before or after the system boots up or shuts down.</td></tr>
<td>In this <acronymtitle="Multipurpose Internet Mail Extensions">MIME</acronym> database Haiku keeps track of all the different <ahref="filetypes.html">filetypes</a> and their settings.</td></tr>
<td>There's one settings file that may be of interest: <spanclass="cli">kernel</span> offers some low level configurations like disabling <acronymtitle="Symmetric Multi Processing">SMP</acronym>, activating serial debugging or enabling advanced power management. You activate a configuration line by removing the commentary symbol "<tt>#</tt>". Be careful here!</td></tr>
<tr><tdalign="right"><spanclass="path">DefaultFolderTemplate/</span></td><tdstyle="width:10px;"></td><td>Show and arrange all attributes and the window size to your liking. Every new folder you create will use it as a template.</td></tr>
<tr><tdalign="right"><spanclass="path">DefaultQueryTemplates/</span></td><td></td><td>You can define the layout of query result windows for certain filetypes. See topic <ahref="queries.html#result-window">Query: The result window</a>.</td></tr>
<tr><tdalign="right"><spanclass="path">Go/</span></td><td></td><td>Put links to your favorite locations in here to make them available e.g. in open and save panels. See topic <ahref="gui.html#favorites-recent">Haiku's GUI: Favorites and recent folders</a>.</td></tr>
<tr><tdalign="right"><spanclass="path">Tracker New Template/</span></td><td></td><td>Add a template for any filetype that's then available from Tracker's <spanclass="menu">File | New...</span> menu. See topic <ahref="tracker.html#working-with-files">Tracker: Working with files</a>.</td></tr>