gsl-statique-litterateur/var/lib/gsl/README.md

194 lines
6.9 KiB
Markdown
Raw Normal View History

2022-03-07 15:08:10 +01:00
# GSL: Statique Littérateur
------------------------------------------------------------------------
GSL est un générateur de blogs/sites-web basé sur leur nom de domaine,
2022-06-14 18:51:19 +02:00
é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
2022-06-14 18:51:19 +02:00
liste des derniers articles (sidebar) placé en include. Nginx peut être
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-14 18:51:19 +02:00
paquet deb (construit par make).
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
------------------------------------------------------------------------
Préparer un fichier de logo. L'important sera de renseigner le nom du
fichier lors du questionnaire.
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
Attention: GSL aura besoin de créer des sous-dossier 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-14 18:51:19 +02:00
$ gsl new) domain
```
2022-03-07 15:08:10 +01:00
2022-06-14 18:51:19 +02:00
Des questions vous seront posées lorsque vous voudrez ajouter un domaine
(exemple.com). Les données renseignées seront utilisées pour créer la
configuration (voir la documentation d'installation)
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
pour y stocker vos articles bruts 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-14 18:51:19 +02:00
ou:
- Aller dans/créer un dossier de votre choix
2022-04-08 17:57:49 +02:00
- Créer dedans, un fichier vide nommé gsl.DOMAIAN (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
articles. **Un auteur par ligne !**
```
cd MON-DOSSER-ARTICLES
2022-06-14 18:51:19 +02:00
gsl author edit
```
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)
- gsl make monarticle.gsl (Connvertit en HTML - dossier wip)
- gsl www add monarticle.gsl (copiel la page dans le dossier www)
# Comment gérer la sidebar
------------------------------------------------------------------------
La gestion de la sidebar est manuelle. Un article doit être convertit
avec make avant de pouvoir l'ajouter à la position ddsirée. Le nombre
2022-06-14 18:51:19 +02:00
d'articles maximum dans la sidebar est configurable dans le fichier de
configuration du domaine (DOMAIN.conf)
```
2022-06-14 18:51:19 +02:00
gsl sidebar replace 2 monarticle.gsl
```
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-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
tpl | -T : Create your template
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
log | -L (OPTS) : 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-14 18:51:19 +02:00
db (FILE) : Show DB statuses 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-14 18:51:19 +02:00
check | -C (OPTIONS) : Check Post(s) errors from PWD folder
-N : Check only articles not in DB
-F : Force Check again ; Recreate in Database
(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"
add : Add all/(FILE) to www server
rmove : remove all/(FILE) from www server
(OPT2):
2022-03-27 19:19:26 +02:00
all : Select all post with wip statuses
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-14 18:51:19 +02:00
wip : Same as www for wip
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-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-14 19:00:56 +02:00
```