GitHub: GitHub - Thymis-io/thymis: Thymis is an open-source project that aims to provide a seamless and secure IoT device management solution. With Thymis, users can easily configure and manage their devices running on the NixOS operating system.
Website: https://thymis.io/
Documentation: https://docs.thymis.io/
Hello, NixOS community!
We’re excited to introduce Thymis, an open-source platform designed to make managing NixOS systems, especially on IoT devices, Raspberry Pis, and Mini PCs, simpler and more accessible. Thymis features a user-friendly web-based dashboard, bringing a much-needed graphical interface to the Nix ecosystem.
What is Thymis?
Thymis is a system management solution that leverages NixOS’s powerful configuration capabilities to handle provisioning, updates, and more. It enables you to create fully-configured disk or SD-card images for seamless deployments, ensuring that every device boots up exactly as you intended.
Key Features:
-
Web-Based Dashboard: A GUI for NixOS that makes managing configurations and deployments intuitive, even for those new to the system.
-
Full Configuration Provisioning: Easily generate disk or SD-card images with your complete setup, simplifying deployment and minimizing manual configuration.
-
Extendable Architecture: Use our extension feature to integrate custom modules with your own logic, expanding Thymis to fit your specific needs.
-
Seamless Integration: Thymis is built to complement NixOS’s strengths, preserving its atomic updates and rollback capabilities.
Thymis Architecture
Thymis architecture consists of three main components:
- Frontend/Dashboard: Built with SvelteKit and TypeScript, a web-based interface for provisioning and monitoring devices. It communicates with the backend through a REST API.
- Thymis Controller: The core of Thymis, implemented in FastAPI and Python, manages devices and handles the interactions between the frontend and devices. It converts device states into NixOS configurations stored in a versioned Git repository.
- Device Layer: Supports various devices, from Raspberry Pis to servers. The optional Thymis Agent ensures secure communication and consistent configurations across all devices. User defined software modules can be integrated into the system.
For a visual overview, see the architecture diagram below:
Why Thymis?
NixOS’s declarative and reproducible configurations are powerful but can be complex to manage at scale. Thymis simplifies this with an easy-to-use interface, making it ideal for deploying consistent setups across all your systems.
Who Is It For?
Thymis is perfect for:
- System administrators who need to deploy uniform configurations across multiple machines.
- Developers looking for efficient provisioning tools.
- NixOS enthusiasts who want a graphical interface to enhance their workflow.
How to Get Started with Thymis
Curious to see Thymis in action? Head over to our GitHub repository to explore the code and learn how you can set it up. You can also visit our official website and our documentation for more details to help you get up and running with Thymis in no time.
Join Us at NixCon 2024
We’ll be presenting Thymis live at NixCon 2024 in Berlin, from October 25th to 27th! This community-driven event is a great opportunity to see Thymis in action, learn about its features, and discuss its future development with fellow NixOS enthusiasts. We hope to see you there!
Stay Connected
We’re building Thymis with the NixOS community in mind. If you have feedback, feature suggestions, or just want to follow our progress, check out our GitHub page and leave a star, write a comment on this post, or send us a mail at our email. We’d love to hear your thoughts and work together to make Thymis the best tool for NixOS management.
The Thymis Team