Aujourd’hui, j’ai passé ma configuration de développement sur une VM Google Cloud Platform (GCP). Entre les contraintes de ressources de la machine et le peaufinage de mon environnement Neovim pour mon projet Rust, voici ce que j’ai appris.
1. Transfert de fichiers avec rsync
Pour uploader mes dossiers de projet vers la VM, j’ai utilisé rsync. C’est
bien plus efficace que scp car il ne transfère que les modifications.
rsync -avzLP --exclude='.git' \
~/.local/share/typst/packages/preview/auto-mando/ \
user@$(gcloud compute instances describe typst-bot-vm \
--format='get(networkInterfaces[0].accessConfigs[0].natIP)' \
--zone='us-east1-d'):~/
Le « combo doré » :
-a: mode archive, préserver les autorisations, liens symboliques et timestamps. Activer la récursion aussi.-v: mode verbeux-z: compression
Gemini a trouvé la commande qui retourne l’adresse externe IP de la VM, ce qui évite d’exposer l’adresse IP lors d’un stream.
2. Gérer le manque de RAM : Le Swap file
Les VM “n1-standard” ou “e2-micro” peuvent vite saturer leur RAM lors d’une compilation Rust un peu lourde. La solution : créer un fichier de swap.
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# Pour le rendre permanent dans /etc/fstab :
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
3. Réduction du bruit (Logs)
Une VM peut vite remplir son disque de logs inutiles. J’ai fait le ménage sur deux fronts :
Sur la VM (Journald)
J’ai limité la taille maximale des logs système dans
/etc/systemd/journald.conf en décommentant et modifiant :
SystemMaxUse=50M
Sur l’interface Google Cloud
Dans la console GCP, j’ai ajusté les Sinks de logs dans “Logs Router” pour exclure les logs de santé (health checks) répétitifs qui gonflent inutilement la facture et l’interface.
4. Correction de Neovim (init.lua)
J’avais mis .setup() à la fin des ces lignes.
require("oil")
require("lualine")
Gemini m’a dit qu’il n’y avait pas besoin de le faire.
5. Le raccourci qui change la vie : Ctrl-y
Si comme moi vous utilisez blink.cmp ou nvim-cmp et que la touche Entrée
ne semble pas valider la suggestion d’autocomplétion, souvenez-vous du
raccourci natif de Vim :
Ctrl-y (le “y” pour yes) : Accepte la suggestion sélectionnée sans
ajouter de saut de ligne.
C’est devenu mon nouveau réflexe pour coder plus vite en Rust sans me battre avec mon clavier.