Fichiers
roundcube-theme-skynet/README.md
T
jimmyGALLAND dfd9acc7d7
Release / release (push) Has been cancelled
Update readme
2026-05-17 17:58:23 +02:00

143 lignes
3.4 KiB
Markdown

# ~~ Skynet Skin ~ Roundcube Webmail ~~
> Thème de connexion sci-fi pour Roundcube, inspiré du réseau de défense Skynet (Terminator).
> Fond animé, particules, data streams, palette bleu nuit / bleu science-fiction.
Aidé par Claude AI
![Version](https://img.shields.io/badge/Roundcube-1.7.x-blue)
![License](https://img.shields.io/badge/license-MIT-green)
![Skin base](https://img.shields.io/badge/base-elastic-informational)
---
## Aperçu
- Page de connexion full-screen avec animations canvas (particules + data streams)
- Indicateur de niveau de menace, ticker défilant
- Logo Skynet avec effet de lueur bleue pulsante
- Détection et affichage des erreurs d'authentification Roundcube
- Responsive mobile (viewport adaptatif, anti-zoom iOS)
---
## Prérequis
- Testé avec Roundcube **1.6.x** **1.7.x**
- Un autre skin **(ex: elastic)** présent dans `/var/www/html/skins/elastic/` (utilisé comme base)
---
## Démonstration vidéo
<p align="center">
<video
src="assets/preview.webm"
autoplay
muted
loop
playsinline
width="500"
height="400"
></video>
</p>
---
## Installation
### 1. Activer le skin dans la configuration Roundcube
Dans votre fichier `config.inc.php` :
```php
$config['skin'] = 'skynet';
```
---
### 2. Récuperer le skin
#### 2.1 Depuis un container roundcubemail
```bash
docker run --name tmp-roundcube -d roundcube/roundcubemail:latest && \
mkdir -p skins && \
docker cp tmp-roundcube:/var/www/html/skins/elastic skins && \
docker exec tmp-roundcube \
find /var/www/html/plugins -type d -path "*/skins/elastic" |
while read -r skin_path; do
relative_path="${skin_path#/var/www/html}"
target_dir="$(dirname "./$relative_path")"
mkdir -p "$target_dir" && \
docker cp \
"tmp-roundcube:$skin_path" \
"$target_dir/"
done
docker rm -f tmp-roundcube
```
ou
#### 2.1 Directement depuis les sources de roundcubemail (exemple pour va version avec la version 1.7.0)
```bash
curl --location https://github.com/roundcube/roundcubemail/releases/download/1.7.0/roundcubemail-1.7.0-complete.tar.gz \
--output roundcubemail.tar.gz && \
tar -zxvf roundcubemail.tar.gz --wildcards --strip-components=1 -C . \
roundcubemail-1.7.0/skins/elastic roundcubemail-1.7.0/plugins/*/skins/elastic
rm roundcubemail.tar.gz
```
### 3. Puis télécharger la release du thême depuis le dépôt
```bash
curl https://[TOKEN]@git.celjim.fr/jimmyGALLAND/roundcube-theme-skynet/releases/download/v1/roundcube-theme-skynet-v1.zip \
--output theme-skynet.zip && \
7z x theme-skynet.zip && \
mv -f login.html skins/elastic/templates && \
mv -f script-skynet.min.js skins/elastic/ && \
mv -f styles-skynet.min.css skins/elastic/styles && \
mv skins/elastic skins/skynet && \
find "./plugins" -type d -path "*/skins/elastic" | while read -r elastic_dir; do
skynet_dir="$(dirname "$elastic_dir")/skynet"
mkdir -p "$skynet_dir"
mv "$elastic_dir" "$skynet_dir"
done
rm theme-skynet.zip
```
### 4. roundcubemail via Docker
Montez le skin en volume dans votre `docker-compose.yml` :
```yaml
services:
roundcube:
image: roundcube/roundcubemail:latest
volumes:
- ./theme-skynet/skins/skynet:/var/www/html/skins/skynet:ro
- ./theme-skynet/plugins/managesieve/skins/skynet:/var/www/html/plugins/managesieve/skins/skynet:ro
environment:
- ROUNDCUBEMAIL_SKIN=skynet
```
---
## Licence
Ce projet est distribué sous licence **MIT**. Voir le fichier [LICENSE](./LICENSE).