|
FlatImage
A configurable Linux containerization system
|
| ▼ src | |
| ▼ boot | |
| boot.cpp | The main flatimage program |
| relocate.hpp | Used to copy execve the flatimage program |
| ▼ bwrap | |
| bwrap.hpp | Configures and launches bubblewrap |
| bwrap_apparmor.cpp | Configures apparmor to allow the execution of bubblewrap |
| ▼ db | |
| ▼ portal | |
| daemon.hpp | Defines a class that manages FlatImage's portal configuration |
| dispatcher.hpp | Defines a class that manages FlatImage's portal dispatcher configuration |
| message.hpp | Defines a class that manages portal daemon message serialization/deserialization |
| bind.hpp | Used to manage the bindings from the host to the sandbox |
| boot.hpp | Defines a class that manages FlatImage's boot configuration |
| db.hpp | A database that interfaces with nlohmann json |
| desktop.hpp | Defines a class that manages FlatImage's desktop integration |
| env.hpp | Manages environment variables in flatimage |
| recipe.hpp | Defines a class that manages FlatImage's recipe configuration |
| remote.hpp | Manages remote URL in flatimage |
| ▼ filesystems | |
| ciopfs.hpp | Case-insensitive filesystem management using CIOPFS |
| controller.hpp | Manages filesystems used by flatimage |
| dwarfs.hpp | Manage dwarfs filesystems |
| filesystem.hpp | The base class for filesystems |
| layers.hpp | Layer management for DwarFS filesystems |
| overlayfs.hpp | Manages the fuse-overlayfs filesystem |
| unionfs.hpp | Manages unionfs filesystems |
| utils.hpp | Filesystem utilities for managing instances and layers |
| ▼ janitor | |
| janitor.cpp | Cleans mountpoint after the PID passed as an argument exits, it works as a fallback in case the main process fails to cleanup |
| ▼ lib | |
| ▼ linux | |
| fd.hpp | File descriptor redirection helpers |
| fifo.hpp | Linux FIFO related operation wrappers |
| ▼ subprocess | |
| child.hpp | Handle for a spawned child process |
| pipe.hpp | Pipe handling utilities for subprocess |
| elf.hpp | A library for operations on ELF files |
| env.hpp | A library for manipulating environment variables |
| fuse.hpp | A library for operations on fuse filesystems |
| image.hpp | A library for operations on image files |
| linux.hpp | A library with helpers for linux operations |
| log.hpp | A library for file logging |
| subprocess.hpp | A library to spawn sub-processes in linux |
| ▼ magic | |
| magic.cpp | Patches magic bytes to identify file as a FlatImage |
| ▼ parser | |
| ▼ cmd | |
| bind.hpp | Interface with the bindings database to (de-)serialize objects |
| desktop.hpp | Manages the desktop integration |
| help.hpp | Help strings for FlatImage commands |
| icon.hpp | Contains the SVG data of the FlatImage icon |
| layers.hpp | Manages filesystem layers in FlatImage |
| recipe.hpp | Manages recipes in FlatImage |
| unshare.hpp | Interface for managing unshare namespace options |
| executor.hpp | Executes parsed FlatImage commands |
| interface.hpp | Interfaces of FlatImage commands |
| parser.hpp | Parses FlatImage commands |
| ▼ portal | |
| child.hpp | Spawns a child process and connects its I/O to pipes |
| config.hpp | Constants for portal configuration |
| portal.hpp | Spawns a portal daemon process |
| portal_daemon.cpp | Spawns a daemon that receives child process requests |
| portal_dispatcher.cpp | Dispatches child process requests to the portal daemon |
| ▼ reserved | |
| bind.hpp | Manages the bindings reserved space |
| boot.hpp | Manages the boot command reserved space |
| casefold.hpp | Manages the casefold reserved space |
| desktop.hpp | Manages the desktop reserved space |
| env.hpp | Manages the environment reserved space |
| icon.hpp | Manages the icon reserved space |
| notify.hpp | Manages the notify reserved space |
| overlay.hpp | Manages the overlay reserved space |
| permissions.hpp | Manages the permissions reserved space |
| remote.hpp | Manages the remote URL reserved space |
| reserved.hpp | Manages reserved space |
| unshare.hpp | Manages the unshare namespace options reserved space |
| ▼ std | |
| concept.hpp | Custom C++ concepts for type constraints and compile-time validation |
| enum.hpp | Custom enumeration class |
| expected.hpp | Enhanced error handling framework built on std::expected |
| filesystem.hpp | Filesystem helpers |
| string.hpp | String helpers |
| vector.hpp | Vector helpers |
| common.hpp | Common utility functions and helpers used throughout FlatImage |
| config.hpp | FlatImage configuration object |
| macro.hpp | Simplified macros for common control flow patterns with optional logging |