Compare commits

..

3 Commits

Author SHA1 Message Date
c42d5a2652 Power Dialog Darker 2025-06-09 00:56:27 +02:00
cf035941c8 Merge branch 'main' of https://tea.surillya.com/Surillyacom/THOS-Server
Updated readme
2025-06-05 14:18:13 +02:00
e83587d2b0 Updated Readme 2025-06-05 14:15:25 +02:00
2 changed files with 66 additions and 7 deletions

View File

@ -1,3 +1,62 @@
# THOS-Server # THOS Server
THOS Server is the open source server for the THOS Operating System **THOS Server** is the open source backend server for the [THOS Operating System](https://surillya.com/thos), a premium kiosk-style Linux distribution. It handles the whole server, like session persistence, OOBE (Out-of-Box Experience), and local app installer for the THOS ecosystem.
---
![THOS Logo](THOS.png)
## Features
- Local PHP server for kiosk-mode environments
- Persistent session and configuration data (beyond cookies/localStorage)
- Built to run smoothly in Chromium or Firefox kiosk mode under Arch or similar
## 📸 Screenshots
![Screenshot](screenshots/Screenshot_20250605_140311.png) ![Screenshot](screenshots/Screenshot_20250605_140405.png) ![Screenshot](screenshots/Screenshot_20250605_140518.png) ![Screenshot](screenshots/Screenshot_20250605_140542.png)
## ⚙️ Setup Instructions
1. Clone the repo:
```bash
git clone https://tea.surillya.com/Surillyacom/THOS-Server.git
cd THOS-Server
```
2. Install dependencies:
```bash
sudo pacman -S php
```
3. Launch local server (as sudo):
```bash
sudo php -S 0.0.0.0:80
```
4. Access it in your browser: [http://localhost](http://localhost)
## 🔒 Security
The server runs per default as sudo, since it's intended to run server-side commands. This may lead to security issues, so don't just expose it to the web, or give anyone access! And watch out for what apps you install - we recommend only installing *verified* apps from the official THOS store!
## 🧠 Behind the Scenes
THOS is designed to run on a minimalistic Linux distro with kiosk capabilities. It ties together:
* Firefox in kiosk mode
* Local server logic for user interaction
* Persistent configuration for headless reboots
## 📄 License
This project is licensed under the **Apache 2.0 License**. See the [LICENSE](LICENSE) file for details.
---
## 🫶 Credits
THOS Server is a project by [Surillyacom Entertainment](https://surillya.com/), powered by hours of work and caffeine!

View File

@ -395,20 +395,20 @@
<h2 class="text-xl font-semibold mb-6 tracking-wide">Power Options</h2> <h2 class="text-xl font-semibold mb-6 tracking-wide">Power Options</h2>
<div class="space-y-3"> <div class="space-y-3">
<button id="shutdownBtn" <button id="shutdownBtn"
class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-white/5 hover:bg-white/10 backdrop-blur-sm border-red-400 text-red-300 hover:text-red-100 hover:border-red-300">Shutdown</button> class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-black/40 hover:bg-black/50 backdrop-blur-sm border-red-400 text-red-300 hover:text-red-100 hover:border-red-300">Shutdown</button>
<button id="restartBtn" <button id="restartBtn"
class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-white/5 hover:bg-white/10 backdrop-blur-sm border-yellow-400 text-yellow-300 hover:text-yellow-100 hover:border-yellow-300">Restart</button> class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-black/40 hover:bg-black/50 backdrop-blur-sm border-yellow-400 text-yellow-300 hover:text-yellow-100 hover:border-yellow-300">Restart</button>
<button id="reloadBtn" <button id="reloadBtn"
class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-white/5 hover:bg-white/10 backdrop-blur-sm border-green-400 text-green-300 hover:text-green-100 hover:border-green-300">Reload</button> class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-black/40 hover:bg-black/50 backdrop-blur-sm border-green-400 text-green-300 hover:text-green-100 hover:border-green-300">Reload</button>
<button id="cancelBtn" <button id="cancelBtn"
class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-white/5 hover:bg-white/10 backdrop-blur-sm border-white/40 text-white hover:text-white hover:border-white/80">Cancel</button> class="w-full py-2 px-4 border border-dotted rounded-xl transition-all duration-200 text-sm bg-black/40 hover:bg-black/50 backdrop-blur-sm border-white/40 text-white hover:text-white hover:border-white/80">Cancel</button>
</div> </div>
</div> </div>
</div> </div>
<script> <script>
window.THOS = { window.THOS = {
version: '6 Build-25' version: '6 Build-26'
}; };
let timeoutSeconds = 180; let timeoutSeconds = 180;