Add: workflow update nixos
This commit is contained in:
parent
15faac3ad1
commit
97c4e70250
2 changed files with 111 additions and 0 deletions
53
content/posts/workflow-update-nixos-fr.md
Normal file
53
content/posts/workflow-update-nixos-fr.md
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
+++
|
||||
date = '2025-10-13T00:00:01+02:00'
|
||||
draft = false
|
||||
title = 'Workflow de mise à jour'
|
||||
+++
|
||||
|
||||
Je met mes système NixOs à jour une fois par semaine, le dimanche. Fini le temps des mises à jour effrénées sous Archlinux pour un paquet 2 fois par jour !
|
||||
Je commence sur ma machine desktop par mettre à jour les dépot et à figer les versions dans le git. C'est mon point d'ancrage, celui qui validera une mise à jour aboutie.
|
||||
|
||||
```
|
||||
nix flake update
|
||||
git add flake.lock
|
||||
git commit -m "FLAKE: update"
|
||||
git push origin master
|
||||
```
|
||||
|
||||
Ensuite je met à jour ma machine desktop avec un peu de nettoyage. Je le fait à 8 jours, si bien que je suis sur d'avoir la génération complète de la semaine dernière.
|
||||
|
||||
```
|
||||
sudo nixos-rebuild switch --flake $HOME/nixos-config#pennsardin --show-trace --keep-going
|
||||
nix-collect-garbage --delete-older-than 8d
|
||||
sudo nix-collect-garbage --delete-older-than 8d
|
||||
```
|
||||
Et je passe au serveur. Je commence par récupérer la version du flake et je met à jour :
|
||||
|
||||
```
|
||||
ssh dunoz@terre-neuvas
|
||||
cd nixos-config
|
||||
git pull
|
||||
sudo nixos-rebuild switch --flake $HOME/nixos-config#terre-neuvas --show-trace --keep-going
|
||||
nix-collect-garbage --delete-older-than 8d
|
||||
sudo nix-collect-garbage --delete-older-than 8d
|
||||
```
|
||||
|
||||
## Et si ça pète ?
|
||||
|
||||
En cas de soucis de mise à jour, je reviens à l'ancienne version du flake sur la machine desktop.
|
||||
|
||||
```
|
||||
git revert HEAD
|
||||
git push origin master
|
||||
sudo nixos-rebuild switch --flake $HOME/nixos-config#pennsardin
|
||||
```
|
||||
|
||||
Et sur la machine serveur
|
||||
|
||||
```
|
||||
git pull
|
||||
sudo nixos-rebuild switch --flake $HOME/nixos-config#pennsardin
|
||||
```
|
||||
|
||||
Je pourrai rollback, mais dans ce cas, il y aurai une dissonance entre depot git et machines, ce que je ne souhaite pas.
|
||||
Le depot git est le sanctuaire, celui qui régit tout.
|
||||
Loading…
Add table
Add a link
Reference in a new issue