Repository navigation
Contributing
Contributions are warmly welcome — open-source tools for the Linux desktop live on community collaboration, testing and feedback.
Full details, including the code of conduct, live in the repository:
Report a bug. The most valuable contribution. Please attach a screenshot or a short recording, name your desktop environment and version, and say whether you are on Wayland or X11. X11 issues in particular are close to impossible to reproduce without proof.
Test a beta. Install the latest beta, use it as your daily driver for a week, and report what breaks. Beta users are the reason the project works on more than one desktop.
Help with packaging. Flathub, Snap and Gentoo packages are all wanted — see Packaging and Releases for how the existing ones are built.
Translate. The interface is not yet localised; if you speak a language ScreenGuard should ship in, that is a real gap you could close.
Improve the documentation. This wiki is maintained by hand and is always a little behind the code. If something here is wrong or unclear, please fix it or tell me.
Send feedback. Even "this feels slow on my machine" is useful. See Feedback.
- Fork the repository.
- Create a branch:
git checkout -b feature/amazing-feature. - Make your change — keep it focused, and keep the existing style.
- Commit with a conventional message:
feat(scope): description,fix(scope): description,docs(scope): description. - Run
flutter analyzeandflutter testbefore you push. - Push the branch and open a pull request against
betafor feature work, ormainfor documentation and stable-only fixes.
- Development — build, test and install from source.
- Architecture — how the GUI, the daemon and the platform bridge fit together.
Two things that will save you time:
The daemon and the GUI share one SQLite database. There is no socket between them. When you change something in the GUI, it writes to the settings table and the daemon picks it up on its next poll.
X11 behaviour is hard to verify by reasoning. If your change affects window tracking or minimisation, please test on a real X11 session and include a recording in the pull request.
Anything on the Roadmap marked Planned is open for picking up — but please open a discussion first so two people do not build the same thing and so the design can be agreed before you write the code.
This project follows a Code of Conduct. Participation in the project means abiding by it.
Related: Feedback · Development · Roadmap
ScreenGuard — digital wellbeing for Linux. Source code · Issues · Discussions · Releases
Maintained by Aditya Krishnan · GPLv3