96 lines
3.4 KiB
Markdown
96 lines
3.4 KiB
Markdown
# Pitaya
|
|
|
|
Lanceur d'application pour GNU/Linux
|
|
|
|
## Démarrer avec les sources
|
|
|
|
### Dépendences de développement
|
|
|
|
- [NodeJS](https://nodejs.org/) - Dernière version stable, testé sur la 0.12.*
|
|
- [NPM](https://www.npmjs.com/) - Normalement automatiquement installé avec NodeJS.
|
|
|
|
### Initialisation du projet & lancement de Pitaya
|
|
|
|
Récupérez préalablement les sources via [Git](http://git-scm.com/).
|
|
|
|
```
|
|
cd pitaya-launcher # Se placer dans le répertoire des sources de pitaya-launcher
|
|
git checkout develop # Basculer sur la branche de développement
|
|
npm install # Installer les dépendances
|
|
PITAYA_LOG_LEVEL=debug NODE_ENV=development npm start # Lancer l'application
|
|
```
|
|
|
|
## Variables d'environnement
|
|
|
|
Vous pouvez configurer le comportement de Pitaya en passant des variables d'environnement:
|
|
|
|
| Variable | Description | Valeurs possibles | Valeur par défaut |
|
|
|-------------------|-----------------------------------------------|-------------------------------|-------------------------------|
|
|
| PITAYA_MODE | Mode d'exécution de Pitaya | launcher, edit | launcher |
|
|
| PITAYA_PROFILE | Chemin ou URL du fichier profil à charger | -- | ./default-profile.json |
|
|
| PITAYA_AS_DESKTOP | Afficher Pitaya en mode "Bureau" | 1, 0 | 0 |
|
|
| PITAYA_LOG_FILE | Enregistrer les logs dans un fichier | Chemin absolu vers un fichier | aucune (pas d'enregistrement) |
|
|
| PITAYA_LOG_LEVEL | Niveau de log | debug, info, error, fatal | info |
|
|
|
|
## Comment construire l'application depuis les sources
|
|
|
|
```
|
|
npm run build
|
|
```
|
|
|
|
Un dossier `pitaya-<target>-<arch>` sera créé dans le répertoire `./build`. Celui ci contient tous les fichiers nécessaires à l'application.
|
|
|
|
## Profils
|
|
|
|
Un fichier de profil est utilisé par Pitaya afin de définir l'arborescence d'applications affichée par le lanceur.
|
|
Ce fichier est au format JSON et a la structure récursive suivante:
|
|
|
|
```json
|
|
{
|
|
"items": [
|
|
{
|
|
"label": "Label de mon item de type catégorie",
|
|
"icon": "Chemin vers l'image d'icône",
|
|
"background": "Chemin vers l'image de fond, si besoin",
|
|
"items": [
|
|
{
|
|
"label": "Label de mon sous-item 1 de type application",
|
|
"icon": "Chemin vers l'image d'icône",
|
|
"exec": "Commande d'exécution de mon application"
|
|
},
|
|
{
|
|
"label": "Label de mon sous-item 2 de type catégorie",
|
|
"items": [
|
|
{
|
|
"label": "etc..."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### Différence entre catégories et applications
|
|
|
|
Un item comprenant un tableau `items` sera automatiquement considéré comme une catégorie et non plus une application, même si la propriété `exec` est également définie.
|
|
|
|
### Import de profils externes
|
|
|
|
Il est possible d'ajouter une propriété `import` avec comme valeur un chemin de fichier ou une URL sur un item.
|
|
|
|
Lors du chargement du profil, le lanceur "montera" automatiquement le fichier externe désigné sur l'item portant la propriété.
|
|
|
|
Voir le fichier `default-profile.json` pour un exemple.
|
|
|
|
## Comment contribuer
|
|
|
|
Ce projet utilise la méthodologie [Git Flow](http://nvie.com/posts/a-successful-git-branching-model/).
|
|
|
|
## Licence
|
|
|
|
GPLv3
|
|
|
|
Bump: 20160120
|