Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add sub menus/categories #27

Merged
merged 1 commit into from
Jun 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions configuration.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,10 @@ posts_path: "content"
pages_path: "pages"

create_index_for:
- fr
- en
- /fr
- /fr/perso
- /fr/tech
- /en

markdown:
highlight_code: true
Expand Down
58 changes: 58 additions & 0 deletions content/en/2024-06-05-running-prettier-with-pre-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title: Running prettier with pre-commit
slug: 2024-06-05-running-prettier-with-pre-commit
date: "2024-05-05 09:36:00+00:00"
tags: prettier, javascript, python, pre-commit
category:
link:
description:
type: text
status: draft
---

By default, [pre-commit](https://pre-commit.com/) doesn't provide hooks for using it with [prettier](https://prettier.io/) to format javascript files, but it's pretty simple to use your already existing npm scripts to do so. That's what we will see here.

You may ask, why use [pre-commit](https://pre-commit.com/) instead of [husky](https://typicode.github.io/husky/) and [lint-staged](https://github.com/lint-staged/lint-staged) for example that work out of the box with prettier? Well because `lint-staged` is very javascript centric and doesn't play well with Python and its virtual environments.

<!-- TEASER_END -->

## TL;DR

The final [boilerplate source code is available on Github](https://github.com/vjousse/parcel-tailwindcss-elm-lang-boilerplate).

The `pre-commit` hook:

```yaml
repos:
- repo: local
hooks:
- id: app-prettier
name: run prettier
language: system
files: ^.*$
types_or: [javascript, json]
entry: |
bash -c 'npm run fix:prettier --write "${@}"' --
```

The corresponding `package.json` script:

```json
{
"scripts": {
"fix:prettier": "npm run lint:prettier -- --write",
"lint:prettier": "prettier --config .prettierrc --check"
},
"devDependencies": {
"prettier": "^3.2.5"
}
}
```

## Explaining the `pre-commit` hook

We use a custom hook with the `system` language defined. It will allow us to run a system command in the hook, namely a bash command/script.

## Explaining the `package.json` scripts

## Bonus: multi-directories projects
Original file line number Diff line number Diff line change
Expand Up @@ -2,39 +2,41 @@
title: Voyager en famille en sac à dos
slug: voyager-en-famille-en-sac-a-dos
date: "2014-08-12 21:54:24+02:00"
tags:
category:
link:
description:
tags:
category:
link:
description:
type: text
---

Trois enfants (3, 6 et 9 ans), deux gros sacs à dos pour les parents, deux petits pour les enfants, trois semaines de vadrouille et vingt-huit heures de vol aller-retour sans les escales : voilà de quoi remplir un beau voyage en Thaïlande !

Et pourtant, la décision de partir « à l'aventure » avec trois enfants en relativement bas âge n'a pas été évidente à prendre. Les __questions et les fausses excuses__ pour rester à la maison ont été nombreuses :
Et pourtant, la décision de partir « à l'aventure » avec trois enfants en relativement bas âge n'a pas été évidente à prendre. Les **questions et les fausses excuses** pour rester à la maison ont été nombreuses :

<!-- TEASER_END -->
- __Trois ans, ça fait pas un peu petit quand même__ ? _Réponse_ : non, ça a été la plus tranquille à gérer !
- __Et s'ils attrapent la dengue, le palu ou un truc dans le style__ ? _Réponse_ : ils peuvent aussi bien attraper la grippe, une méningite, le chikungunya ou pire en France. Ça serait pas de chance, mais ça peut arriver. On fera tout pour prendre en compte ce risque.
- __Les 28 heures d'avion et les 52 heures de transport sur place (train, bus, bateau), ça va être l'enfer__ ! _Réponse_ : c'est un des moments qu'ils ont préféré ! Papa/Maman pour eux tout seul, jeux et films au programme.
- __Avec uniquement deux sacs à dos pour les affaires, ça va jamais le faire, on va manquer de plein de choses__. _Réponse_ : On en a encore emmené de trop !
- __Partir sans quasiment rien réserver à l'avance en dehors des billets d'avion, c'est pas un peu inconscient__ ? _Réponse_ : Du tout, ça nous a permis d'adapter notre voyage aux envies du moment.

- **Trois ans, ça fait pas un peu petit quand même** ? *Réponse* : non, ça a été la plus tranquille à gérer !
- **Et s'ils attrapent la dengue, le palu ou un truc dans le style** ? *Réponse* : ils peuvent aussi bien attraper la grippe, une méningite, le chikungunya ou pire en France. Ça serait pas de chance, mais ça peut arriver. On fera tout pour prendre en compte ce risque.
- **Les 28 heures d'avion et les 52 heures de transport sur place (train, bus, bateau), ça va être l'enfer** ! *Réponse* : c'est un des moments qu'ils ont préféré ! Papa/Maman pour eux tout seul, jeux et films au programme.
- **Avec uniquement deux sacs à dos pour les affaires, ça va jamais le faire, on va manquer de plein de choses**. _Réponse_ : On en a encore emmené de trop !
- **Partir sans quasiment rien réserver à l'avance en dehors des billets d'avion, c'est pas un peu inconscient** ? *Réponse* : Du tout, ça nous a permis d'adapter notre voyage aux envies du moment.

Je pourrais en trouver encore beaucoup comme ça. On trouve toujours bon nombre de raisons de ne pas faire quelque chose qui nous fait sortir de notre zone de confort, alors qu'on a plus de mal à trouver des raisons valables pour le faire.

Pour ce voyage ça a été mon cas. J'étais assez réticent, par peur de l'inconnu, par peur de ne pas pouvoir gérer. Je trouvais beaucoup de raisons de ne pas le faire et assez peu de raisons de me lancer. Et en fait, l'évidence était sous mon nez, une seule raison devait suffire à écraser toutes les autres : __avoir l'occasion de sortir de sa zone de confort, d'affronter ses craintes, ses doutes et ses incertitudes__.
Pour ce voyage ça a été mon cas. J'étais assez réticent, par peur de l'inconnu, par peur de ne pas pouvoir gérer. Je trouvais beaucoup de raisons de ne pas le faire et assez peu de raisons de me lancer. Et en fait, l'évidence était sous mon nez, une seule raison devait suffire à écraser toutes les autres : **avoir l'occasion de sortir de sa zone de confort, d'affronter ses craintes, ses doutes et ses incertitudes**.

Bien plus que la simple visite d'un pays, ce voyage a été un formidable moment en famille et un très bon moyen de voir ce dont nous étions capables.

Voici une liste non exhaustive des choses que l'on a apprises au passage :

- __Ne pas réserver__ ses hébergements et ses transports permet une très grande flexibilité. Je ne dis pas que ça n'a pas été un peu stressant de temps en temps, mais ça se gère sur place, même à cinq. Ça faisait partie des choses que j'avais envie de tester « pour voir ».
- __Voyager avec des enfants permet de faire plein de connaissances.__ On n'a jamais autant discuté avec des inconnus que lors de ce voyage avec les enfants. Ils se font des « copains » à tout bout de champ, si bien que par la force des choses, on devient copain avec les parents aussi. C'est là qu'on se rend compte que spontanément, en tant qu'adulte, on ne va plus vers les autres. Alors sur ce coup là, merci les enfants !
- __Respecter le rythme des enfants__ est primordial. C'est un voyage pour toute la famille mais cadencé par le rythme des enfants.
- __Voyager avec deux gros sacs à dos (60 et 65 litres) est super pratique__ avec des enfants. Vous avez les mains libres pour vous occuper d'eux et vous pouvez même en porter un de temps en temps.
- __Changer d'hébergement régulièrement__ (tous les 2-3 jours dans notre cas) n'a pas été un problème. Trouver une Guest House avec piscine a été très apprécié des enfants, ainsi que la dernière semaine sans changer de lieu, histoire de les ménager un peu. Se poser avant de repartir a fait du bien à tout le monde.
- __Aucune de nos craintes d'avant voyage ne s'est révélée fondée__. À bien y réfléchir, c'est vraiment impressionnant. On s'était créé des problèmes imaginaires bien avant qu'ils aient la moindre chance d'exister. Chance qu'ils n'ont d'ailleurs jamais eue ! Nos plus grandes limites sont celles que nous nous fixons.
- **Ne pas réserver** ses hébergements et ses transports permet une très grande flexibilité. Je ne dis pas que ça n'a pas été un peu stressant de temps en temps, mais ça se gère sur place, même à cinq. Ça faisait partie des choses que j'avais envie de tester « pour voir ».
- **Voyager avec des enfants permet de faire plein de connaissances.** On n'a jamais autant discuté avec des inconnus que lors de ce voyage avec les enfants. Ils se font des « copains » à tout bout de champ, si bien que par la force des choses, on devient copain avec les parents aussi. C'est là qu'on se rend compte que spontanément, en tant qu'adulte, on ne va plus vers les autres. Alors sur ce coup là, merci les enfants !
- **Respecter le rythme des enfants** est primordial. C'est un voyage pour toute la famille mais cadencé par le rythme des enfants.
- **Voyager avec deux gros sacs à dos (60 et 65 litres) est super pratique** avec des enfants. Vous avez les mains libres pour vous occuper d'eux et vous pouvez même en porter un de temps en temps.
- **Changer d'hébergement régulièrement** (tous les 2-3 jours dans notre cas) n'a pas été un problème. Trouver une Guest House avec piscine a été très apprécié des enfants, ainsi que la dernière semaine sans changer de lieu, histoire de les ménager un peu. Se poser avant de repartir a fait du bien à tout le monde.
- **Aucune de nos craintes d'avant voyage ne s'est révélée fondée**. À bien y réfléchir, c'est vraiment impressionnant. On s'était créé des problèmes imaginaires bien avant qu'ils aient la moindre chance d'exister. Chance qu'ils n'ont d'ailleurs jamais eue ! Nos plus grandes limites sont celles que nous nous fixons.

Globalement, si j'avais un truc à retenir de ce voyage ça serait cela : __quand on veut, on peut, tout le reste ce n'est que de fausse excuses__.
Globalement, si j'avais un truc à retenir de ce voyage ça serait cela : **quand on veut, on peut, tout le reste ce n'est que de fausse excuses**.

Nous avons uniquement séjourné dans des Guest House (chambres d'hôtes) et des auberges de jeunesse en réservant sur place quelques jours avant ou directement en arrivant dans la ville. J'avais acheté une carte SIM locale (TrueMove H) de manière à pouvoir appeler sur place. L'anglais n'a pas été un problème même par téléphone : « 26 of august for two nights ? ok ! ».

Expand All @@ -44,14 +46,13 @@ N'oubliez pas que quoiqu'il arrive vous aurez toujours du positif à en tirer, n

Pour ceux que ça intéresse, ci-dessous notre parcours sur place. Je ferai un autre post de blog avec plus de détails sur le voyage un peu plus tard.

- __4 nuits à Bangkok__ (2 auraient suffit) puis 1h30 de mini-van vers Ayutthaya.
- __2 nuits à Ayutthaya__ puis 6 heures de bus VIP vers Sukhothaï.
- __1 nuit à Sukhothaï__ dans la vieille ville (suffisant) puis 6 heures de bus 2nde classe vers Chiang Maï.
- __4 nuits à Chiang Maï__ puis 15 heures de train de nuit vers Bangkok.
- **4 nuits à Bangkok** (2 auraient suffit) puis 1h30 de mini-van vers Ayutthaya.
- **2 nuits à Ayutthaya** puis 6 heures de bus VIP vers Sukhothaï.
- **1 nuit à Sukhothaï** dans la vieille ville (suffisant) puis 6 heures de bus 2nde classe vers Chiang Maï.
- **4 nuits à Chiang Maï** puis 15 heures de train de nuit vers Bangkok.
- 2 heures d'attente à Bangkok et 8 heures de train vers Chumphon.
- __1 nuit à Chumphon__ puis 1h30 de bateau vers Koh Tao.
- __4 nuits à Koh Tao__ puis 1h30 de bateau et 10h de bus vers Bangkok.
- __1 nuit à Bangkok__ puis départ vers la France.
- **1 nuit à Chumphon** puis 1h30 de bateau vers Koh Tao.
- **4 nuits à Koh Tao** puis 1h30 de bateau et 10h de bus vers Bangkok.
- **1 nuit à Bangkok** puis départ vers la France.

Si vous avez des questions ou si vous voulez plus d'informations sur le voyage, n'hésitez pas à [me contacter](/%C3%A0-propos/) !

File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ category:
link:
description:
type: text
status: draft
---

Suite à mon [précédent post sur le développement personnel](/blog/fr/developpement-personnel-pourquoi-j-ai-arrete-pourquoi-faut-il-s-en-mefier/) j'ai reçu quelques réactions qui, je dois l'avouer, m'ont un peu chafouiné. En substance, elles disaient ceci : s'il a été assez bête pour croire à l'utilité du développement personnel, c'est qu'il est bête tout court. Je n'ai pas pu m'empêcher de ressentir une certaine honte, de me dire que quelque part c'était vrai. De me dire que j'aurais mieux fait de ne pas écrire ce post et de ne pas m'afficher « vulnérable » à la vue et au su de tout le monde. Et puis je me suis rappelé que ce sentiment de honte faisait partie du processus classique d'abandon d'une croyance. Venez avec moi, je vous explique.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
title: Comment cloner un dépôt Git privé sur un serveur sans clé ssh locale
date: 2021-05-12 14:40:13+01:00
slug: comment-cloner-un-depot-git-prive-sur-un-serveur-sans-cle-ssh
tags: git, ssh, astuce
---

Vous vous connectez en SSH sur un serveur distant mais vous ne **pouvez pas cloner un de vos dépôt Git** car Git vous dit que vous n'avez pas les droits d'accès et pourtant, vous avez les droits en local sur votre machine.

<!-- TEASER_END -->

## Le problème

```bash
$ git clone [email protected]:pereprogramming/blog.git
Cloning into 'blog'...
Warning: Permanently added the RSA host key for IP address '140.82.121.3' to the list of known hosts.
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
```

Et pour cause : lorsque vous êtes sur un serveur en SSH, **vos clés SSH locales ne sont pas transférées** sur le serveur distant et vous n'héritez pas des droits que vous avez en local.

Vous pourriez être tenté de copier vos clés SSH locales sur le serveur mais je vous le déconseille. D'un point du vue sécurité, vos clés SSH sont mieux en local sur votre machine plutôt que je ne sais sur quel serveur distant.

## La solution

Heureusement, SSH a déjà tout ce qu'il faut. Pour transférer vos clés SSH locales en session sur votre serveur distant, vous avez juste à utiliser **l'option `-A`** dans votre commande SSH :

```bash
ssh -A [email protected]
```

Et le tour est joué. **Vos clées SSH locales ne seront pas copiées sur le serveur mais pourtant, vous aurez les accès qui y correspondent**. Pour vérifier que tout est ok, lorsque vous être en SSH sur le serveur, faites un :

```bash
env | grep SSH_AUTH
```

Vous devriez voir une ligne de ce genre :

```bash
SSH_AUTH_SOCK=/tmp/ssh-h89iLqNaiw/agent.6994
```

Si c'est le cas, c'est que c'est gagné, sinon, n'hésitez pas [à me contacter sur Twitter](https://twitter.com/pereprogramming) pour en discuter.

Amusez-vous bien ! 🎉
Loading
Loading