# ![Logo Pitaya](img/icons/pitaya-logo.png) Pitaya [![Build Status](https://drone.cadol.es/api/badges/Cadoles/pitaya-launcher/status.svg?branch=develop)](https://drone.cadol.es/Cadoles/pitaya-launcher) 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 ```bash ARCH= npm run build # Où ARCH peut être "x64", "ia32" ou "all" ``` Un dossier `pitaya--` 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: 20170307-1