Skip to content

Refactor backend architecture to use a daemon #3485

Description

@Ahorts

What would you like to be added?

Okay hear me out...

The current architecture relies on a collection of shell scripts (switchwall.sh, applycolor.sh, background timers, etc) that handle IPC and system state scraping.

Here are a couple of issues:

  • Lack of Error Handling: Standard scripts silently fail and takes forever to track down bugs.
  • Race Conditions
  • Performance Overhead: Spawning short-lived Python/Bash loops for certain things

Proposed Solution

  • Decouple data gathering and script logic entirely from the QML interface layer.
  • Introduce a single, lightweight background daemon written in a language (python/Go/Rust whatever) that manages system data tracking, IPC hooks, and error logging
  • Might make it possible and easier to create an extension system like Noctalia hence no need to accept PR's from various people over non essentials

Mechanism

The daemon will handle the state machine for background automation events (like wallpaper swaps and theme updates), environment variables, etc

Just throwing this out there for opinions and discussions

How will it help?

No response

Extra info

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    FEATUREFeature advice/request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions