# rezzev/rezzos architecture

> Architecture diagram of the GitHub repository rezzev/rezzos, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/rezzev/rezzos
- Repository: https://github.com/rezzev/rezzos

## Overview

RezzOS is a lightweight Linux distribution with a BusyBox-oriented userspace, runit services, and optional graphical desktop. Its principal user-to-result flow is installing the system with the GTK installer, which partitions and formats storage and writes system configuration; after boot, users operate the system through desktop applications and custom utilities. The map also preserves package management, service management, system monitoring, and X11 compositing. Some runtime wiring is only documented or visible in partial excerpts, so unsampled relationships are omitted rather than inferred.

Main entry points: [`src/rsv-gui.c`](https://github.com/rezzev/rezzos/blob/main/src/rsv-gui.c) (Service Manager), [`etc/runit/runsvdir/default`](https://github.com/rezzev/rezzos/tree/main/etc/runit/runsvdir/default) (Enabled Services), [`sbin/apk.static`](https://github.com/rezzev/rezzos/blob/main/sbin/apk.static) (APK Package Manager), [`src/rezzinstall.c`](https://github.com/rezzev/rezzos/blob/main/src/rezzinstall.c) (Installer Wizard)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_install["Installation"]
  node_installer["Installer Wizard<br/>[rezzinstall.c]"]
  node_installed["Installed System"]
end

subgraph group_runtime["Boot and Services"]
  node_init["System Init"]
  node_service_defs["Service Definitions"]
  node_service_enable["Enabled Services"]
end

subgraph group_desktop["Desktop and Controls"]
  node_service_gui["Service Manager<br/>[rsv-gui.c]"]
  node_control["Control Center<br/>[rezzconfig.c]"]
  node_monitor["System Monitor<br/>[rtop-gui.c]"]
  node_compositor["X11 Compositor<br/>[rcomp.c]"]
  node_about["About Window<br/>[rezzabout.c]"]
end

subgraph group_tools["System Utilities"]
  node_custom_tools["System Utilities"]
  node_package_manager["APK Package Manager<br/>[apk.static]"]
  node_swap_offset["Swap Offset Tool<br/>[swap-offset.c]"]
  node_console_font["Console Font Tool<br/>[setconsolefont.c]"]
end

subgraph group_base["OS Foundation"]
  node_kernel["Linux Kernel<br/>[kernel.config]"]
end

node_user(("User"))
node_alpine_repos["Alpine Repositories"]
node_custom_repo["Custom Package Repository"]

node_user -->|"configures install"| node_installer
node_installer -->|"installs system"| node_installed
node_user -.->|"configures system"| node_control
node_user -.->|"manages services"| node_service_gui
node_user -.->|"views activity"| node_monitor
node_user -.->|"starts desktop"| node_compositor
node_user -.->|"views system info"| node_about
node_control -->|"launches tools"| node_custom_tools
node_service_gui -->|"reads and changes"| node_service_enable
node_service_gui -->|"enables services"| node_service_defs
node_init -.->|"runs services"| node_service_enable
node_service_enable -.->|"links definitions"| node_service_defs
node_package_manager -->|"fetches packages"| node_alpine_repos
node_package_manager -->|"fetches packages"| node_custom_repo
node_swap_offset -.->|"prints swap offset"| node_user
node_console_font -.->|"sets console font"| node_user

click node_installer "https://github.com/rezzev/rezzos/blob/main/src/rezzinstall.c"
click node_installed "https://github.com/rezzev/rezzos/tree/main/etc"
click node_kernel "https://github.com/rezzev/rezzos/blob/main/kernel.config"
click node_init "https://github.com/rezzev/rezzos/blob/main/init"
click node_service_defs "https://github.com/rezzev/rezzos/tree/main/etc/sv"
click node_service_enable "https://github.com/rezzev/rezzos/tree/main/etc/runit/runsvdir/default"
click node_service_gui "https://github.com/rezzev/rezzos/blob/main/src/rsv-gui.c"
click node_control "https://github.com/rezzev/rezzos/blob/main/src/rezzconfig.c"
click node_monitor "https://github.com/rezzev/rezzos/blob/main/src/rtop-gui.c"
click node_compositor "https://github.com/rezzev/rezzos/blob/main/src/rcomp.c"
click node_about "https://github.com/rezzev/rezzos/blob/main/src/rezzabout.c"
click node_custom_tools "https://github.com/rezzev/rezzos/tree/main/usr/bin"
click node_package_manager "https://github.com/rezzev/rezzos/blob/main/sbin/apk.static"
click node_swap_offset "https://github.com/rezzev/rezzos/blob/main/src/swap-offset.c"
click node_console_font "https://github.com/rezzev/rezzos/blob/main/src/setconsolefont.c"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_installer,node_installed,node_user toneBlue
class node_init,node_service_defs,node_service_enable toneAmber
class node_service_gui,node_control,node_monitor,node_compositor,node_about toneMint
class node_custom_tools,node_package_manager,node_swap_offset,node_console_font toneRose
class node_kernel,node_alpine_repos,node_custom_repo toneIndigo
```

## Components

### Installation

- [Installer Wizard](https://github.com/rezzev/rezzos/blob/main/src/rezzinstall.c): `src/rezzinstall.c`
- [Installed System](https://github.com/rezzev/rezzos/tree/main/etc): `etc`

### Boot and Services

- [System Init](https://github.com/rezzev/rezzos/blob/main/init): `init`
- [Service Definitions](https://github.com/rezzev/rezzos/tree/main/etc/sv): `etc/sv`
- [Enabled Services](https://github.com/rezzev/rezzos/tree/main/etc/runit/runsvdir/default): `etc/runit/runsvdir/default`

### Desktop and Controls

- [Service Manager](https://github.com/rezzev/rezzos/blob/main/src/rsv-gui.c): `src/rsv-gui.c`
- [Control Center](https://github.com/rezzev/rezzos/blob/main/src/rezzconfig.c): `src/rezzconfig.c`
- [System Monitor](https://github.com/rezzev/rezzos/blob/main/src/rtop-gui.c): `src/rtop-gui.c`
- [X11 Compositor](https://github.com/rezzev/rezzos/blob/main/src/rcomp.c): `src/rcomp.c`
- [About Window](https://github.com/rezzev/rezzos/blob/main/src/rezzabout.c): `src/rezzabout.c`

### System Utilities

- [System Utilities](https://github.com/rezzev/rezzos/tree/main/usr/bin): `usr/bin`
- [APK Package Manager](https://github.com/rezzev/rezzos/blob/main/sbin/apk.static): `sbin/apk.static`
- [Swap Offset Tool](https://github.com/rezzev/rezzos/blob/main/src/swap-offset.c): `src/swap-offset.c`
- [Console Font Tool](https://github.com/rezzev/rezzos/blob/main/src/setconsolefont.c): `src/setconsolefont.c`

### OS Foundation

- [Linux Kernel](https://github.com/rezzev/rezzos/blob/main/kernel.config): `kernel.config`

### Other components

- **User**
- **Alpine Repositories**
- **Custom Package Repository**

## Connections

- User → Installer Wizard: configures install (evidence: `src/rezzinstall.c`)
- Installer Wizard → Installed System: installs system (evidence: `src/rezzinstall.c`)
- User → Control Center: configures system
- User → Service Manager: manages services
- User → System Monitor: views activity
- User → X11 Compositor: starts desktop
- User → About Window: views system info
- Control Center → System Utilities: launches tools (evidence: `src/rezzconfig.c`)
- Service Manager → Enabled Services: reads and changes (evidence: `src/rsv-gui.c`)
- Service Manager → Service Definitions: enables services (evidence: `src/rsv-gui.c`)
- System Init → Enabled Services: runs services
- Enabled Services → Service Definitions: links definitions
- APK Package Manager → Alpine Repositories: fetches packages (evidence: `README.md`)
- APK Package Manager → Custom Package Repository: fetches packages (evidence: `README.md`)
- Swap Offset Tool → User: prints swap offset
- Console Font Tool → User: sets console font
