# albertsolomon/fedora-config architecture

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

- Interactive diagram: https://gitdiagram.com/albertsolomon/fedora-config
- Repository: https://github.com/albertsolomon/fedora-config

## Overview

fedora-config is a collection of scripts and settings for preparing a Fedora desktop, spanning system configuration, desktop customization, and application installation. The README names the intended capabilities, but no source excerpts show how the scripts are invoked or coordinated. The graph therefore shows the documented setup areas without asserting a script execution order or linking them to an unverified orchestrator.

Main entry points: [`scripts/powertop-install.sh`](https://github.com/albertsolomon/fedora-config/blob/main/scripts/powertop-install.sh) (Power management), [`scripts/asus-linux.sh`](https://github.com/albertsolomon/fedora-config/blob/main/scripts/asus-linux.sh) (ASUS controls), [`scripts/network-settings.sh`](https://github.com/albertsolomon/fedora-config/blob/main/scripts/network-settings.sh) (Network settings), [`scripts/apps-installation.sh`](https://github.com/albertsolomon/fedora-config/blob/main/scripts/apps-installation.sh) (TimeShift setup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_system["System setup"]
  node_power["Power management"]
  node_asus["ASUS controls<br/>[asus-linux.sh]"]
  node_network["Network settings"]
  node_backup["TimeShift setup"]
end

subgraph group_desktop["Desktop customization"]
  node_shell["Shell prompt"]
  node_cursor["Cursor theme<br/>[bibata-cursor.sh]"]
  node_themes["Desktop themes<br/>[themes.sh]"]
  node_fonts["Nerd fonts"]
end

subgraph group_apps["Applications"]
  node_apps["Desktop applications"]
  node_devtools["Programming tools<br/>[programming.sh]"]
end

node_user(("Fedora user"))
node_setup["Setup runner<br/>[execute-all.sh]"]
node_updates["System updates<br/>[update.sh]"]
node_upgrade["Version upgrade<br/>[version-upgrade.sh]"]

node_user -->|"sets up"| node_power
node_user -->|"sets up"| node_asus
node_user -->|"configures"| node_network
node_user -->|"installs"| node_backup
node_user -->|"customizes"| node_shell
node_user -->|"customizes"| node_cursor
node_user -->|"customizes"| node_themes
node_user -->|"installs"| node_fonts
node_user -->|"installs"| node_apps
node_user -->|"installs"| node_devtools

click node_power "https://github.com/albertsolomon/fedora-config/blob/main/scripts/powertop-install.sh"
click node_asus "https://github.com/albertsolomon/fedora-config/blob/main/scripts/asus-linux.sh"
click node_network "https://github.com/albertsolomon/fedora-config/blob/main/scripts/network-settings.sh"
click node_backup "https://github.com/albertsolomon/fedora-config/blob/main/scripts/apps-installation.sh"
click node_shell "https://github.com/albertsolomon/fedora-config/blob/main/scripts/starship/starship-installation.sh"
click node_cursor "https://github.com/albertsolomon/fedora-config/blob/main/scripts/bibata-cursor.sh"
click node_themes "https://github.com/albertsolomon/fedora-config/blob/main/scripts/themes.sh"
click node_fonts "https://github.com/albertsolomon/fedora-config/blob/main/scripts/font-installation.sh"
click node_apps "https://github.com/albertsolomon/fedora-config/blob/main/scripts/apps-installation.sh"
click node_devtools "https://github.com/albertsolomon/fedora-config/blob/main/scripts/programming.sh"
click node_setup "https://github.com/albertsolomon/fedora-config/blob/main/execute-all.sh"
click node_updates "https://github.com/albertsolomon/fedora-config/blob/main/update.sh"
click node_upgrade "https://github.com/albertsolomon/fedora-config/blob/main/version-upgrade.sh"

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_power,node_asus,node_network,node_backup,node_user toneBlue
class node_shell,node_cursor,node_themes,node_fonts toneAmber
class node_apps,node_devtools toneMint
class node_setup,node_updates,node_upgrade toneTeal
```

## Components

### System setup

- [Power management](https://github.com/albertsolomon/fedora-config/blob/main/scripts/powertop-install.sh): `scripts/powertop-install.sh`
- [ASUS controls](https://github.com/albertsolomon/fedora-config/blob/main/scripts/asus-linux.sh): `scripts/asus-linux.sh`
- [Network settings](https://github.com/albertsolomon/fedora-config/blob/main/scripts/network-settings.sh): `scripts/network-settings.sh`
- [TimeShift setup](https://github.com/albertsolomon/fedora-config/blob/main/scripts/apps-installation.sh): `scripts/apps-installation.sh`

### Desktop customization

- [Shell prompt](https://github.com/albertsolomon/fedora-config/blob/main/scripts/starship/starship-installation.sh): `scripts/starship/starship-installation.sh`
- [Cursor theme](https://github.com/albertsolomon/fedora-config/blob/main/scripts/bibata-cursor.sh): `scripts/bibata-cursor.sh`
- [Desktop themes](https://github.com/albertsolomon/fedora-config/blob/main/scripts/themes.sh): `scripts/themes.sh`
- [Nerd fonts](https://github.com/albertsolomon/fedora-config/blob/main/scripts/font-installation.sh): `scripts/font-installation.sh`

### Applications

- [Desktop applications](https://github.com/albertsolomon/fedora-config/blob/main/scripts/apps-installation.sh): `scripts/apps-installation.sh`
- [Programming tools](https://github.com/albertsolomon/fedora-config/blob/main/scripts/programming.sh): `scripts/programming.sh`

### Other components

- **Fedora user**
- [Setup runner](https://github.com/albertsolomon/fedora-config/blob/main/execute-all.sh): `execute-all.sh`
- [System updates](https://github.com/albertsolomon/fedora-config/blob/main/update.sh): `update.sh`
- [Version upgrade](https://github.com/albertsolomon/fedora-config/blob/main/version-upgrade.sh): `version-upgrade.sh`

## Connections

- Fedora user → Power management: sets up (evidence: `README.md`)
- Fedora user → ASUS controls: sets up (evidence: `README.md`)
- Fedora user → Network settings: configures (evidence: `README.md`)
- Fedora user → TimeShift setup: installs (evidence: `README.md`)
- Fedora user → Shell prompt: customizes (evidence: `README.md`)
- Fedora user → Cursor theme: customizes (evidence: `README.md`)
- Fedora user → Desktop themes: customizes (evidence: `README.md`)
- Fedora user → Nerd fonts: installs (evidence: `README.md`)
- Fedora user → Desktop applications: installs (evidence: `README.md`)
- Fedora user → Programming tools: installs (evidence: `README.md`)
