gsl-statique-litterateur/README.md

206 lines
7.5 KiB
Markdown
Raw Normal View History

2022-03-07 15:08:10 +01:00
# GSL: Statique Littérateur
------------------------------------------------------------------------
2022-06-18 18:02:14 +02:00
GSL est un générateur de blogs/sites-web multiples basé sur leur nom de
domaine. Il est écrit en bash, afin de réduire ses dépendances au minimum.
Les pages générées sont presque entièrement statiques, à l'exception du
module de liste (sidebar) contenant les articles de votre choix.
GSL crée pour ce module un fichier appelé avec include. Nginx peut être
2022-06-14 18:51:19 +02:00
facilement configuré pour interprêter ce module.
2022-03-07 15:08:10 +01:00
# Dépendances
2022-03-07 15:08:10 +01:00
------------------------------------------------------------------------
- bash
- coreutils
- curl (to check Posts links response)
2022-06-14 18:51:19 +02:00
- rsync, nano
2022-03-07 15:08:10 +01:00
# GSL: Installation
------------------------------------------------------------------------
2022-06-14 18:51:19 +02:00
Une procédure d'installation via un setup est en préparation. Il est
aussi possible et recommandé sous debian de l'installer grâce à son
2022-06-18 18:02:14 +02:00
paquet deb (construit par make), amoureusement préparé par neox.
2022-03-07 15:08:10 +01:00
Pour une installation manuelle, clonez ce dépôt, et copiez les dossiers
2022-06-14 18:51:19 +02:00
déjà pré-établis dans le système (avec sudo). GSL n'utilise pas sudo,
il vous faut donc donner les droits des dossiers (chown -R) à l'utilisateur
(sauf au dossier /usr/local/bin). Pour ce dossier, vous donnerez les
droits au fichier gsl seulement
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
Reportez-vous à la documentation dans le dossier help
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
# Comment configurer un domaine
------------------------------------------------------------------------
2022-06-18 18:02:14 +02:00
Préparer un fichier de logo. L'important sera de renseigner un nom du
fichier sinon, lors du questionnaire.
2022-03-07 15:08:10 +01:00
2022-06-18 18:02:14 +02:00
Attention: GSL aura besoin de créer des sous-dossiers (par DOMAIN) dans
le serveur, renseigné dans le questionnaire. (i.e. /var/www/). Il faut
donc lui donner les droits
2022-03-07 15:08:10 +01:00
2022-06-14 18:56:22 +02:00
```
2022-06-18 18:02:14 +02:00
$ gsl new domain
2022-06-14 18:51:19 +02:00
```
2022-03-07 15:08:10 +01:00
2022-06-18 18:02:14 +02:00
Des questions vous seront posées lorsque vous voudrez ajouter un DOMAIN
2022-06-14 18:51:19 +02:00
(exemple.com). Les données renseignées seront utilisées pour créer la
2022-06-18 18:02:14 +02:00
configuration du DOMAIN et reprises pour le site/blog dédié.
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
## Définir un dossier pour les articles du DOMAIN
2022-03-07 15:08:10 +01:00
------------------------------------------------------------------------
2022-06-14 18:51:19 +02:00
Si ce n'est pas déjà fait par GSL, ou que vous voulez ajouter un dossier
2022-06-18 18:02:14 +02:00
pour y stocker vos articles bruts en .gsl pour un DOMAIN précis :
2022-03-07 15:08:10 +01:00
```
2022-06-14 18:51:19 +02:00
gsl help -d
cd MYFOLDER
gsl setdir
2022-03-07 15:08:10 +01:00
```
2022-06-18 18:02:14 +02:00
ou manuellement:
2022-06-14 18:51:19 +02:00
- Aller dans/créer un dossier de votre choix
2022-06-18 18:02:14 +02:00
- Créer dedans, un fichier vide nommé gsl.DOMAIN (gsl.exemple.com)
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
## Ajouter / retirer un auteur
------------------------------------------------------------------------
Après avoir enregistré un domain et configuré un dossier pour les
2022-06-18 18:02:14 +02:00
articles. Ajoutez un ou plusieurs auteurs. **Un auteur par ligne !**
2022-06-14 18:51:19 +02:00
```
cd MON-DOSSER-ARTICLES
2022-06-18 18:02:14 +02:00
gsl new author
```
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
## Créer un article
2022-06-14 18:51:19 +02:00
------------------------------------------------------------------------
Le moteur de convertion est nouveau. C'est un mélange entre markdown et
reSTructuredText. Il est simple à apprendre et à utiliser.
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
Reportez-vous à la documentation dans le dossier help, ou:
2022-03-07 15:08:10 +01:00
```
2022-06-14 18:51:19 +02:00
gsl help -w
2022-03-07 15:08:10 +01:00
```
2022-06-14 18:51:19 +02:00
## Procédures de prévisualisation et mise en ligne
------------------------------------------------------------------------
- gsl check monarticle.gsl (vérifie l'écriture en gsl)
2022-06-18 18:02:14 +02:00
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip dans le serveur)
- gsl www add monarticle.gsl (copie la page dans le dossier www)
# Comment gérer la sidebar
------------------------------------------------------------------------
La gestion de la sidebar est manuelle. Un article doit être convertit
2022-06-23 12:24:01 +02:00
avec make (ou wip add) avant de pouvoir l'ajouter à la position désirée.
Le nombre d'articles maximum dans la sidebar est configurable dans le
fichier de configuration du domaine (DOMAIN.conf) (via le questionnaire)
```
2022-06-23 12:24:01 +02:00
# Crée la sidebar avec les derniers articles publiés
2022-06-18 18:02:14 +02:00
gsl sidebar latest
2022-06-23 12:24:01 +02:00
# Remplace l'article à la position 2
2022-06-14 18:51:19 +02:00
gsl sidebar replace 2 monarticle.gsl
2022-06-23 12:24:01 +02:00
# Place l'article à la position 3, déplace les suivants (enlève le dernier)
gsl sidebar add 3 monarticle.gsl
2022-06-14 18:51:19 +02:00
```
2022-06-14 18:51:19 +02:00
## Astuces
- Vous pouvez utiliser l'autocompletion pour les articles
- Reportez-vous à la documentation dans le dossier Help
```
2022-06-14 18:51:19 +02:00
gsl www add mona<TAB>
```
2022-06-14 18:51:19 +02:00
# Help
------------------------------------------------------------------------
2022-06-14 19:00:56 +02:00
```
2022-06-18 18:02:14 +02:00
# GSL: Statique Littérateur
2022-06-14 18:51:19 +02:00
$ gsl (ARG)
2022-03-27 19:19:26 +02:00
readme : Show README.md instructions
2022-06-14 18:51:19 +02:00
help | -h (OPT) : This Help and how to
install | -i : Show process installation
authors | -a : Add/Remove authors for this DOMAIN
setdir | -d : Set a directory for article's DOMAIN
write | -w : Write a Post
param | -p : Configure some parameters
css : Show used CSS classes
tips | -t : Show tips and advises you should know
new | -N : Generic OPT to add/create
domain : Configure your DOMAIN
author : Same as gsl author edit
(TYPE) (NAME) : Create an article with (TYPE) named (NAME).gsl
setdir | -D : Show current directory DOMAIN or set it
2022-06-18 18:02:14 +02:00
log | -L (OPT) : Show logs from all sessions
2022-03-27 19:19:26 +02:00
clean | -C : Logs saved to {DATE}.gsl.log and cleaned
2022-06-14 18:51:19 +02:00
all : clean all saved logs, keep current
2022-03-27 19:19:26 +02:00
-i | -w | -e : from levels (infos, warnings, errors)
-s : from last session only
2022-06-14 18:51:19 +02:00
(TERM) : (TERM) : case insensitive, regex 'T1.*T2'
2022-03-27 19:19:26 +02:00
(i.e. $ gsl log -e -s code)
2022-06-14 18:51:19 +02:00
author | -A : List authors from DOMAIN in PWD folder
edit : Add/Remove ! ONE author per line
2022-04-23 18:05:13 +02:00
2022-06-14 18:51:19 +02:00
edit | -E : Open in default EDITOR (FILE) or with nano
2022-04-23 18:05:13 +02:00
conf : Domain configuration file
2022-06-14 18:51:19 +02:00
author : Same as gsl author edit
domain : Domains registred database
(FILE) : (FILE) ; .gsl
2022-04-23 18:05:13 +02:00
2022-06-18 18:02:14 +02:00
db (FILE) : Show DB datas from (FILE)
2022-03-27 19:19:26 +02:00
2022-06-14 18:51:19 +02:00
sync (OPT) : Sync Templates to www and wip
2022-03-27 19:19:26 +02:00
wip : Only to wip server (also done with make)
www : Only to www server (also done with www)
2022-06-18 18:02:14 +02:00
check | -C (OPTI) : Check Post(s) errors from PWD folder
2022-06-14 18:51:19 +02:00
-N : Check only articles not in DB
2022-06-18 18:02:14 +02:00
-F : Force Check again ; Create Database
2022-06-14 18:51:19 +02:00
(FILE) : Only this (FILE)
2022-03-27 19:19:26 +02:00
2022-06-14 18:51:19 +02:00
make | -M (OPTIONS) : Make all HTML articles or only (FILE)
2022-03-27 19:19:26 +02:00
-F : Force Make again
2022-06-14 18:51:19 +02:00
(FILE) : Only this (FILE)
www (OPT1) (OPT2) : Add/Remove Post(s) in www server
(OPT1):
sync : Same as "sync www"
2022-06-18 18:02:14 +02:00
add : Add (OPT2) to www server
remove : remove (OPT2) from www server
2022-06-14 18:51:19 +02:00
(OPT2):
2022-06-18 18:02:14 +02:00
all : Select all post with wip statuses (FORCE !)
2022-06-14 18:51:19 +02:00
(FILE) : Select specific post (if wip status)
2022-03-27 19:19:26 +02:00
2022-06-18 18:02:14 +02:00
wip : Same as www for wip server
add : Same as make -F (i.e. gsl wip add all)
2022-06-14 18:51:19 +02:00
sidebar | -S : Show Posts in list (ARG) (POS) (FILE)
(ARG):
add | -a : Put article at (POS). Remove last, roll from (POS)
replace | -r : Replace (POS) with article
latest | -l : Create sidebar with latest (remove all existing)
2022-06-18 18:02:14 +02:00
oldest | -o : Same as above, but with oldest first
2022-04-23 18:05:13 +02:00
-v : Show local versionn
--version : Like -v + changes
2022-03-27 19:19:26 +02:00
-vv : Shown local and repo Versions
2022-06-18 18:02:14 +02:00
2022-06-14 19:00:56 +02:00
```