add Licence and Readme
Cette révision appartient à :
@@ -0,0 +1,31 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2026 Skynet Skin Jimmy GALLAND
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
This software includes a login page template for Roundcube Webmail
|
||||||
|
(https://roundcube.net), which is licensed under the GNU General Public
|
||||||
|
License version 3 or later (GPLv3+).
|
||||||
|
|
||||||
|
The Skynet name and logo are trademarks of their respective owners and are
|
||||||
|
used here for illustrative/personal purposes only. This project is not
|
||||||
|
affiliated with or endorsed by the creators of the Terminator franchise.
|
||||||
+124
@@ -0,0 +1,124 @@
|
|||||||
|
# ?? 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
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 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**
|
||||||
|
- Skin **elastic** présent dans `/var/www/html/skins/elastic/` (utilisé comme base)
|
||||||
|
- Accès en écriture au répertoire `/var/www/html/skins/`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### 1. Copier le skin elastic comme base
|
||||||
|
|
||||||
|
Le skin Skynet ne remplace que la page de login. Toutes les autres vues (messagerie, contacts, paramètres) héritent du skin **elastic**.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp -r /var/www/html/skins/elastic/. /var/www/html/skins/skynet/
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Déposer le template de login
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp login.html /var/www/html/skins/skynet/templates/login.html
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Activer le skin dans la configuration Roundcube
|
||||||
|
|
||||||
|
Dans votre fichier `config.inc.php` :
|
||||||
|
|
||||||
|
```php
|
||||||
|
$config['skin'] = 'skynet';
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Vérifier les permissions
|
||||||
|
|
||||||
|
```bash
|
||||||
|
chown -R www-data:www-data /var/www/html/skins/skynet/
|
||||||
|
chmod -R 755 /var/www/html/skins/skynet/
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation via Docker
|
||||||
|
|
||||||
|
Si Roundcube tourne dans un container Docker, montez le skin en volume dans votre `docker-compose.yml` :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
roundcube:
|
||||||
|
image: roundcube/roundcubemail:latest
|
||||||
|
volumes:
|
||||||
|
- ./skins/skynet:/var/www/html/skins/skynet
|
||||||
|
environment:
|
||||||
|
- ROUNDCUBEMAIL_SKIN=skynet
|
||||||
|
```
|
||||||
|
|
||||||
|
Puis copiez le skin elastic depuis le container comme base :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Extraire le skin elastic du container
|
||||||
|
docker cp roundcube:/var/www/html/skins/elastic ./skins/skynet
|
||||||
|
|
||||||
|
cp login.html ./skins/skynet/templates/login.html
|
||||||
|
cp logo-skynet.png ./skins/skynet/images/logo-skynet.png
|
||||||
|
|
||||||
|
# Inject le skin skynet dans le container
|
||||||
|
docker cp ./skins/skynet roundcube:/var/www/html/skins
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Compatibilité avec les plugins
|
||||||
|
|
||||||
|
Certains plugins Roundcube incluent leur propre partie skin (templates, styles).
|
||||||
|
Lors de la copie d'elastic, ces fichiers sont automatiquement inclus, mais vérifiez les répertoires suivants après installation :
|
||||||
|
|
||||||
|
### Plugins courants et leurs fichiers de skin
|
||||||
|
|
||||||
|
| Plugin | Répertoire skin à vérifier |
|
||||||
|
| ------------------------- | --------------------------- |
|
||||||
|
| `managesieve` | `skins/skynet/managesieve/` |
|
||||||
|
| `enigma` | `skins/skynet/enigma/` |
|
||||||
|
| `calendar` _(Kolab/Bimi)_ | `skins/skynet/calendar/` |
|
||||||
|
|
||||||
|
Pour vérifier que pour chaque plugin actif il y a un répertoire skins/
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash# Pour chaque plugin actif qui a un répertoire skins/
|
||||||
|
for plugin in managesieve enigma zipdownload archive; do
|
||||||
|
if [ -d "/var/www/html/plugins/$plugin/skins/elastic" ]; then
|
||||||
|
cp -r /var/www/html/plugins/$plugin/skins/elastic \
|
||||||
|
/var/www/html/plugins/$plugin/skins/skynet
|
||||||
|
echo "? $plugin"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Licence
|
||||||
|
|
||||||
|
Ce projet est distribué sous licence **MIT**. Voir le fichier [LICENSE](./LICENSE).
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"name": "Skynet",
|
||||||
|
"author": "Jimmy Galland",
|
||||||
|
"license": "MIT License",
|
||||||
|
"license-url": "https://www.debian.org/legal/licenses/mit.en.html",
|
||||||
|
"config": {
|
||||||
|
"supported_layouts": ["widescreen"],
|
||||||
|
"jquery_ui_colors_theme": "bootstrap",
|
||||||
|
"embed_css_location": "/styles/embed.css",
|
||||||
|
"editor_css_location": "/styles/embed.css",
|
||||||
|
"dark_mode_support": true,
|
||||||
|
"media_browser_css_location": "none",
|
||||||
|
"additional_logo_types": ["dark", "small", "small-dark"]
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"viewport": "width=device-width, initial-scale=1.0, shrink-to-fit=no, maximum-scale=1.0",
|
||||||
|
"theme-color": "#f4f4f4",
|
||||||
|
"msapplication-navbutton-color": "#f4f4f4"
|
||||||
|
}
|
||||||
|
}
|
||||||
Référencer dans un nouveau ticket
Bloquer un utilisateur