ajout deux chapitres Nextcloud
This commit is contained in:
parent
6a1c3b5814
commit
6f62484e8a
22 changed files with 104 additions and 87 deletions
BIN
Images/nextcloud_cookbook.png
Normal file
BIN
Images/nextcloud_cookbook.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 316 KiB |
BIN
Images/nextcloud_fichiers_mobile_images.png
Normal file
BIN
Images/nextcloud_fichiers_mobile_images.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 92 KiB |
BIN
Images/nextcloud_fichiers_partage.png
Normal file
BIN
Images/nextcloud_fichiers_partage.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 96 KiB |
BIN
Images/nextcloud_fichiers_tag.png
Normal file
BIN
Images/nextcloud_fichiers_tag.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 256 KiB |
|
@ -112,73 +112,3 @@ cd markdown # je reviens au repertoire d'origine
|
|||
```
|
||||
|
||||
Note: [Pandoc](https://pandoc.org/) est un logiciel vraiment utile pour les créateurs de contenu, il permet de tout faire en Markdown (qui est facile à maîtriser), puis de publier sous une multitude de formats. Je vous conseille fortement d'y jeter un oeil.
|
||||
|
||||
## Programmer l'exécution de scripts
|
||||
|
||||
Nous avons maintenant créé le script parfait qui exécute les tâches ennuyantes que nous faisions auparavant manuellement. Maintenant, puisque nous planifions partir en vacances, il faut dire à notre système quand exécuter le script et à quelle fréquence. C'est ce que `cron` permet de faire sur GNU/Linux et macOS. Sur Windows, c'est le planificateur de tâches `schtasks.exe`.
|
||||
|
||||
Notez qu'il existe aussi des applications graphiques pour chacun de ces systèmes. Mais, vous êtes ici pour voir un peu de code non ?
|
||||
|
||||
### cron sur Linux et macOS
|
||||
|
||||
Le logiciel cron est inclus par défaut sur la majorité des systèmes macOS et GNU/Linux. Il n'y a donc rien à faire pour l'obtenir. Cependant, il est possible qu'il nécessite des accès additionnels pour bien fonctionner sur macOS.
|
||||
|
||||
Les instructions pour cron sont inscrites dans un fichier spécial au format `crontab` dans le répertoire `/etc/cron.d`. Il est aussi possible de mettre le script à exécuter dans un des 4 répertoires suivants
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
/etc/cron.daily
|
||||
/etc/cron.hourly
|
||||
/etc/cron.monthly
|
||||
/etc/cron.weekly
|
||||
```
|
||||
|
||||
Le format des instructions dans un fichier `crontab` est défini comme dans cette illustration:
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
* * * * * * script_a_executer.sh
|
||||
| | | | | |
|
||||
| | | | | +--- nom utilisateur
|
||||
| | | | +----- jour de la semaine (0-6) (Dimanche=0)
|
||||
| | | +------- mois (1-12)
|
||||
| | +--------- jour du mois (1-31)
|
||||
| +----------- heure (0-23)
|
||||
+------------- minutes (0-59)
|
||||
```
|
||||
|
||||
Le comportement par défaut est d'exécuter le script à chaque minute. Ensuite, si on veut réduire la fréquence, on spécifie à quel moment exécuter le script.
|
||||
|
||||
Par exemple, pour exécuter un script `cocktail_aleatoire.sh` qui nous envoie une recette de cocktail au hasard à 16h30 chaque vendredi, on configure comme suit.
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
30 16 * * 5 jevalideca /home/jevalideca/cocktail_aleatoire.sh
|
||||
```
|
||||
|
||||
### Planificateur de tâches sur Windows
|
||||
|
||||
Sur Windows, l'ensemble des tâches peuvent être planifiées depuis le Planificateur de tâches. En exécutant une commande PowerShell, il est possible de configurer une tâche similaire à la précédente.
|
||||
|
||||
À partir d'une session PowerShell, la séquence de commandes suivante configurera l'exécution du programme `cocktail_aleatoire.bat` à 16:30 chaque vendredi.
|
||||
|
||||
```{.powershell linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
$action = New-ScheduledTaskAction -Execute 'C:\Users\jevalideca\scripts\cocktail_aleatoire.bat'
|
||||
$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Friday -At 4:30pm
|
||||
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "cocktail-aleatoire"
|
||||
```
|
||||
|
||||
Une fois la commande exécutée, nous obtenons cette réponse:
|
||||
|
||||
```{.powershell linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
TaskPath TaskName State
|
||||
-------- -------- -----
|
||||
\ cocktail-aleatoire Ready
|
||||
```
|
||||
|
||||
Nous pouvons valider le résultat dans la fenêtre du Planificateur de tâches.
|
||||
|
||||
![Capture d'écran du planificateur de tâches](capture_schtasks_cocktail.png)
|
||||
|
||||
## Conclusion
|
||||
|
||||
J'ai présenté deux techniques qui permettent de scripter et de configurer l'exécution automatique de tâches.
|
||||
|
||||
Il est maintenant possible de faire travailler ton ordinateur durant tes vacances !
|
69
chapitre_1_2.md
Normal file
69
chapitre_1_2.md
Normal file
|
@ -0,0 +1,69 @@
|
|||
# Programmer l'exécution de scripts
|
||||
|
||||
Nous avons maintenant créé le script parfait qui exécute les tâches ennuyantes que nous faisions auparavant manuellement. Maintenant, puisque nous planifions partir en vacances, il faut dire à notre système quand exécuter le script et à quelle fréquence. C'est ce que `cron` permet de faire sur GNU/Linux et macOS. Sur Windows, c'est le planificateur de tâches `schtasks.exe`.
|
||||
|
||||
Notez qu'il existe aussi des applications graphiques pour chacun de ces systèmes. Mais, vous êtes ici pour voir un peu de code non ?
|
||||
|
||||
### cron sur Linux et macOS
|
||||
|
||||
Le logiciel cron est inclus par défaut sur la majorité des systèmes macOS et GNU/Linux. Il n'y a donc rien à faire pour l'obtenir. Cependant, il est possible qu'il nécessite des accès additionnels pour bien fonctionner sur macOS.
|
||||
|
||||
Les instructions pour cron sont inscrites dans un fichier spécial au format `crontab` dans le répertoire `/etc/cron.d`. Il est aussi possible de mettre le script à exécuter dans un des 4 répertoires suivants
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
/etc/cron.daily
|
||||
/etc/cron.hourly
|
||||
/etc/cron.monthly
|
||||
/etc/cron.weekly
|
||||
```
|
||||
|
||||
Le format des instructions dans un fichier `crontab` est défini comme dans cette illustration:
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
* * * * * * script_a_executer.sh
|
||||
| | | | | |
|
||||
| | | | | +--- nom utilisateur
|
||||
| | | | +----- jour de la semaine (0-6) (Dimanche=0)
|
||||
| | | +------- mois (1-12)
|
||||
| | +--------- jour du mois (1-31)
|
||||
| +----------- heure (0-23)
|
||||
+------------- minutes (0-59)
|
||||
```
|
||||
|
||||
Le comportement par défaut est d'exécuter le script à chaque minute. Ensuite, si on veut réduire la fréquence, on spécifie à quel moment exécuter le script.
|
||||
|
||||
Par exemple, pour exécuter un script `cocktail_aleatoire.sh` qui nous envoie une recette de cocktail au hasard à 16h30 chaque vendredi, on configure comme suit.
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
30 16 * * 5 jevalideca /home/jevalideca/cocktail_aleatoire.sh
|
||||
```
|
||||
|
||||
### Planificateur de tâches sur Windows
|
||||
|
||||
Sur Windows, l'ensemble des tâches peuvent être planifiées depuis le Planificateur de tâches. En exécutant une commande PowerShell, il est possible de configurer une tâche similaire à la précédente.
|
||||
|
||||
À partir d'une session PowerShell, la séquence de commandes suivante configurera l'exécution du programme `cocktail_aleatoire.bat` à 16:30 chaque vendredi.
|
||||
|
||||
```{.powershell linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
$action = New-ScheduledTaskAction -Execute 'C:\Users\jevalideca\scripts\cocktail_aleatoire.bat'
|
||||
$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Friday -At 4:30pm
|
||||
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "cocktail-aleatoire"
|
||||
```
|
||||
|
||||
Une fois la commande exécutée, nous obtenons cette réponse:
|
||||
|
||||
```{.powershell linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
TaskPath TaskName State
|
||||
-------- -------- -----
|
||||
\ cocktail-aleatoire Ready
|
||||
```
|
||||
|
||||
Nous pouvons valider le résultat dans la fenêtre du Planificateur de tâches.
|
||||
|
||||
![Capture d'écran du planificateur de tâches](capture_schtasks_cocktail.png)
|
||||
|
||||
## Conclusion
|
||||
|
||||
J'ai présenté deux techniques qui permettent de scripter et de configurer l'exécution automatique de tâches.
|
||||
|
||||
Il est maintenant possible de faire travailler ton ordinateur durant tes vacances !
|
|
@ -6,23 +6,22 @@ Pour ne pas oublier et garder un système frais et dispos, il est possible de le
|
|||
|
||||
## Sur GNU/Linux
|
||||
|
||||
Sur GNU/Linux, il n'y a pas de mécanisme uniforme pour effectuer les mises à jour. Chaque famille de distribution a son propre système de gestion de paquetages. Mais, pour simplifier les choses, je vais vous en montrer 3: Debian, RedHat et Arch. La majorité des distributions sont basées sur une de celles-ci.
|
||||
Sur GNU/Linux, il n'y a pas de mécanisme uniforme pour effectuer les mises à jour. Chaque famille de distribution a son propre système de gestion de paquetages. Mais, pour simplifier les choses, je vais vous en montrer 2: Debian et Arch.
|
||||
|
||||
### Debian
|
||||
|
||||
Sur Debian, les mises à jour sont effectuées avec cette commande:
|
||||
Sur Debian, les mises à jour sont effectuées en deux étapes:
|
||||
|
||||
- mettre à jour l'index des paquetages
|
||||
- installer les nouvelles versions disponibles des paquetages
|
||||
|
||||
Il est possible de combiner ces deux actions avec cette commande:
|
||||
|
||||
```{.bash linenos="true" breaklines="true" tabsize="2" fontsize="\small" bgcolor="turquoisefonce!10!white"}
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
Il est possible d'automatiser les mises à jour de sécurité avec UnattendedUpgrades
|
||||
|
||||
~~TODO~~
|
||||
|
||||
### RedHat
|
||||
|
||||
~~TODO~~
|
||||
Si on veut aller plus loin dans l'automatisation, il est possible de programmer les mises à jour de sécurité avec UnattendedUpgrades pour qu'elles s'effectuent en arrière-plan selon un calendrier précis sans avoir à s'en occuper.
|
||||
|
||||
### Arch
|
||||
|
||||
|
@ -41,7 +40,7 @@ yay -Syyu
|
|||
|
||||
## Sur macOS
|
||||
|
||||
~~TODO~~
|
||||
Il est possible d'activer les mises à jour automatiques dans les préférences du App Store. Aussi simple que ça !
|
||||
|
||||
## Sur Windows
|
||||
|
15
chapitre_2_1.md
Normal file
15
chapitre_2_1.md
Normal file
|
@ -0,0 +1,15 @@
|
|||
# Classer ses photos de voyage avec Nextcloud
|
||||
|
||||
Nextcloud est un système d'autohébergement qui peut être installé à la maison, chez un hébergeur web, sur un serveur ou même chez un ami ! Il fonctionne à l'aide d'un système de fichiers similaire à Dropbox qui est disponible à la fois sur le web, sur mobile et sur PC, avec une synchronisation quasi instantanée.
|
||||
|
||||
![Capture d'écran de fichiers images en mode aperçu dans Nextcloud Fichiers](Images/nextcloud_fichiers_mobile_images.png)
|
||||
|
||||
Il comprend aussi un système d'étiquettes de fichiers qui permettent, en plus de faire une organisation par répertoires, de créer de nouvelles catégories. Chaque fichier peut avoir un nombre variable d'étiquettes. Il est aussi possible de créer des règles d'étiquetage automatique.
|
||||
|
||||
![Capture d'écran de l'utilisation des étiquettes dans Nextcloud Fichiers](Images/nextcloud_fichiers_tag.png)
|
||||
|
||||
Dans Nextcloud Photos, il est possible d'exploiter ces deux modes de classification. Tout est privé tant qu'on ne décide pas de le partager, mais en un clic, il est possible de partager un répertoire ou une étiquette à l'aide d'un lien public. C'est très pratique pour limiter l'accès à du contenu à des amis, des collègues ou des membres de la famille. Il est aussi possible de partager du contenu protégé par mot de passe ou pour une durée limitée.
|
||||
|
||||
![Capture d'écran du partage dans Nextcloud Fichiers](Images/nextcloud_fichiers_partage.png)
|
||||
|
||||
Nextcloud inclus un mode de visualisation par diaporama, qui peut être très pratique en déplacement. Tout ceci est aussi disponible autant sur mobile que sur poste de travail.
|
5
chapitre_2_2.md
Normal file
5
chapitre_2_2.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Cuisiner des recettes exotiques
|
||||
|
||||
Une fonctionnalité surprenante de Nextcloud est la capacité, via le module Cookbook, de composer un répertoire de recettes privé. Il comprend un formulaire qui permet la saisie de la description, des ingrédients et des instructions. Mais, de plus, il permet aussi d'importer des recettes depuis de nombreux sites qui respectent le standard ouvert [Recipe de schema.org](https://schema.org/Recipe). Un bel exemple d'utilisation du [web sémantique](https://fr.wikipedia.org/wiki/Web_s%C3%A9mantique). Selon mes tests, les sites web Zeste, Marmiton et Trois fois par jour fonctionne entièrement avec le module d'importation. Le site Ricardo fonctionne partiellement, tout comme l'Érable du Québec. Les sites Coup de Pouce et Recettes du Québec ne fonctionnent pas actuellement.
|
||||
|
||||
![Capture d'écran de Nextcloud Cookbook](Images/nextcloud_cookbook.png)
|
3
chapitre_2_3.md
Normal file
3
chapitre_2_3.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Enregistrer un parcours touristique
|
||||
|
||||
En utilisant l'application GpxPod sur Android
|
6
markdown/creer-fichiers-tex.sh → creer-fichiers-tex.sh
Normal file → Executable file
6
markdown/creer-fichiers-tex.sh → creer-fichiers-tex.sh
Normal file → Executable file
|
@ -1,14 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
mkdir -p ./chapitres
|
||||
|
||||
for section in {1..3}
|
||||
do
|
||||
for chapitre in {1..4}
|
||||
do
|
||||
pandoc -F pandoc-minted -f markdown+fenced_code_attributes -t latex --listings --top-level-division=chapter -i chapitre_${section}_${chapitre}.md -o ../chapitres/chapitre_${section}_${chapitre}.tex
|
||||
pandoc -F pandoc-minted -f markdown+fenced_code_attributes -t latex --listings --top-level-division=chapter -i "chapitre_${section}_${chapitre}.md" -o "./chapitres/chapitre_${section}_${chapitre}.tex"
|
||||
done
|
||||
done
|
||||
|
||||
cd ../
|
||||
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode main.tex
|
||||
cd markdown
|
||||
|
|
@ -1 +0,0 @@
|
|||
# Rediriger ses alertes courriel
|
|
@ -1 +0,0 @@
|
|||
# Classer ses photos de voyage
|
|
@ -1 +0,0 @@
|
|||
# Cuisiner des recettes exotiques
|
|
@ -1 +0,0 @@
|
|||
# Définir un parcours touristique
|
Loading…
Reference in a new issue