Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c4676f88e4 | ||
|
|
ecf42da629 | ||
|
|
ad123cd12c | ||
|
|
3bbc04c1c8 | ||
|
|
42f9c76675 | ||
|
|
7048bef534 | ||
|
|
ffd3f77322 | ||
|
|
9aee9fb349 | ||
|
|
6c0f4c8882 |
@@ -1,5 +1,7 @@
|
||||
# Secrets
|
||||
files/.aider.conf.yml
|
||||
# Jetons npm en clair (GitLab Blackswift / Lundi Matin)
|
||||
files/.npmrc
|
||||
*.conf
|
||||
|
||||
# Nix
|
||||
|
||||
@@ -32,7 +32,7 @@ Formatter Nix : `nixfmt`.
|
||||
Après modification des fichiers nix, appliquer avec :
|
||||
|
||||
```bash
|
||||
sudo nixos-rebuild switch
|
||||
make apply # = sudo nixos-rebuild switch
|
||||
```
|
||||
|
||||
Cette commande applique à la fois la config système (`nixos/`) et home-manager (`home.nix`, `packages.nix`, `programs/`). Un redémarrage n'est pas nécessaire sauf changement kernel/bootloader.
|
||||
|
||||
@@ -37,6 +37,7 @@ update:
|
||||
$(MAKE) gc
|
||||
|
||||
# Nettoyage Nix (générations > 14 jours + garbage collect)
|
||||
# Même politique que nix.gc.automatic dans nixos/configuration.nix.
|
||||
gc:
|
||||
@echo "=== Générations utilisateur ==="
|
||||
nix-env --list-generations
|
||||
@@ -51,7 +52,7 @@ gc:
|
||||
sudo nix-env --delete-generations 14d --profile /nix/var/nix/profiles/system
|
||||
@echo ""
|
||||
@echo "=== Garbage collection ==="
|
||||
sudo nix-collect-garbage
|
||||
sudo nix-collect-garbage --delete-older-than 14d
|
||||
@echo ""
|
||||
@echo "=== Espace disque /nix/store ==="
|
||||
du -sh /nix/store
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
prefix = ${HOME}/.npm
|
||||
+26
-9
@@ -29,7 +29,7 @@
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
networking.extraHosts = "109.238.11.111 nuage-v1.une-frouzins.fr";
|
||||
networking.extraHosts = "";
|
||||
|
||||
# Wildcard *.dev.local → 127.0.0.1, requis par gezy-local (Traefik route les
|
||||
# sous-domaines clients). systemd-resolved ne sait pas répondre en wildcard :
|
||||
@@ -125,6 +125,9 @@
|
||||
];
|
||||
virtualisation.docker.enable = true;
|
||||
|
||||
# Conteneurs rootless (Yuto tourne dans Podman, cf. INSTALL-PODMAN.txt)
|
||||
virtualisation.podman.enable = true;
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.mtr.enable = true;
|
||||
@@ -197,24 +200,38 @@
|
||||
};
|
||||
};
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
# services.openssh.enable = true;
|
||||
services.journald.settings.Journal = {
|
||||
SystemMaxUse = "500M";
|
||||
};
|
||||
|
||||
# Accès distant SSH + mosh (session interactive résistante aux coupures réseau).
|
||||
# mosh s'établit d'abord en SSH (TCP 1987) puis bascule en UDP 60000-61000.
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
ports = [ 1987 ];
|
||||
openFirewall = true;
|
||||
};
|
||||
programs.mosh.enable = true; # ouvre UDP 60000-61000
|
||||
|
||||
# Open ports in the firewall.
|
||||
# Ports: 9003 - Xdebug
|
||||
# Ports: 9003 - Xdebug, 1987 - SSH (mosh), 60000-61000 - mosh UDP
|
||||
networking.firewall.allowedTCPPorts = [ 9003 ];
|
||||
networking.firewall.allowedUDPPorts = [ 9003 ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
# https://github.com/nix-community/nix-direnv/
|
||||
nix.extraOptions = ''
|
||||
keep-outputs = true
|
||||
keep-derivations = true
|
||||
'';
|
||||
nix.settings.extra-experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
nix.settings.auto-optimise-store = true;
|
||||
|
||||
# Les environnements direnv sont protégés par leurs propres gcroots
|
||||
# (nix-direnv "_nix_add_gcroot"), inutile de garder outputs/derivations.
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 14d";
|
||||
};
|
||||
|
||||
# Cache binaire de https://github.com/lukasl-dev/pi.nix (cf. programs/pi.nix)
|
||||
nix.settings.extra-substituters = [ "https://pi.cachix.org" ];
|
||||
|
||||
@@ -87,16 +87,6 @@
|
||||
{
|
||||
statusCommand = "i3status";
|
||||
}
|
||||
{
|
||||
id = "vmux";
|
||||
position = "top";
|
||||
statusCommand = "/home/pierre/Code/vibe/vmux/vmux i3bar";
|
||||
workspaceButtons = false;
|
||||
trayOutput = "none";
|
||||
colors = {
|
||||
background = "#0d0d0d";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
startup = [
|
||||
|
||||
+27
-13
@@ -11,9 +11,21 @@ let
|
||||
# Mise à jour : remplacer le rev par le dernier de https://github.com/lukasl-dev/pi.nix
|
||||
pi = builtins.getFlake "github:lukasl-dev/pi.nix/1d37b58675b763ae6c9dc05d62321109066a4126";
|
||||
|
||||
# Source de vérité des limites modèles : GET /v1/model/info sur la passerelle
|
||||
# (donne le moteur derrière chaque alias, max_input_tokens et
|
||||
# max_output_tokens réels). À interroger AVANT toute bascule ou édition de
|
||||
# modèles : les annonces internes ne sont pas toujours exactes — le
|
||||
# 28/09/2026, qwen3.8-flash-next était annoncé en 64k out alors que la
|
||||
# passerelle plafonne à 32 768. Le champ `description` donne aussi le moteur
|
||||
# derrière l'alias et la date de bascule.
|
||||
#
|
||||
# curl -s https://llm-core.lundimatin.app/v1/model/info \
|
||||
# -H "Authorization: Bearer $(cat ~/.config/lmc-token)" \
|
||||
# | jq -r '.data[] | {model_name, model: .litellm_params.model, in: .model_info.max_input_tokens, out: .model_info.max_output_tokens, desc: .model_info.description}'
|
||||
#
|
||||
# Passerelle LLM interne Lundi Matin (LiteLLM), même endpoint et même jeton
|
||||
# que la fonction zsh `lmc`. Côté serveur, LM-Code route vers glm-5.3 servi
|
||||
# 24h/24 depuis le 07/09/2026 (fin de la rotation jour GLM / nuit Kimi).
|
||||
# que la fonction zsh `lmc`. Côté serveur, LM-Code route vers Mimo Pro 2.6
|
||||
# depuis le 28/09/2026 (remplace GLM 5.3 : plus rapide, qualité équivalente).
|
||||
# Consigne équipe IA Lundi Matin (07/09/2026) : viser 100-300k de contexte
|
||||
# par session et limiter le nombre d'agents en période de pic — le KV cache
|
||||
# GLM 5.3 est la ressource rare. Ne pas tester la limite à 500k.
|
||||
@@ -33,23 +45,22 @@ let
|
||||
models = [
|
||||
{
|
||||
id = "LM-Code";
|
||||
name = "LM-Code (glm-5.3 — Lundi Matin)";
|
||||
name = "LM-Code (Mimo Pro 2.6 — Lundi Matin)";
|
||||
# Même comportement que qwen3.8-flash-next : envoyer le paramètre
|
||||
# `thinking` supprime le bloc thinking côté passerelle (testé
|
||||
# 07/09/2026). reasoning = false laisse pi ne pas l'envoyer : le
|
||||
# modèle raisonne nativement et émet des blocs thinking à signature
|
||||
# vide, gérés par compat.allowEmptySignature du provider.
|
||||
# `thinking` supprime le bloc thinking côté passerelle. reasoning =
|
||||
# false laisse pi ne pas l'envoyer : le modèle raisonne nativement et
|
||||
# émet des blocs thinking à signature vide (re-testé 28/09/2026 sous
|
||||
# Mimo), gérés par compat.allowEmptySignature du provider.
|
||||
reasoning = false;
|
||||
# Vision validée via l'endpoint anthropic /v1/messages (07/09/2026).
|
||||
# Vision re-validée sous Mimo via l'endpoint anthropic /v1/messages
|
||||
# (28/09/2026).
|
||||
input = [
|
||||
"text"
|
||||
"image"
|
||||
];
|
||||
# 500k annoncés côté Lundi Matin (07/09/2026), non re-testés pour
|
||||
# ne pas charger le KV cache.
|
||||
# Confirmés le 28/09/2026 sur /v1/model/info (max_input_tokens et
|
||||
# max_output_tokens de la passerelle), sans charge de test dédiée.
|
||||
contextWindow = 500000;
|
||||
# Annonce LM : « tous en 128k out » (07/09/2026) ; 128k testé OK.
|
||||
# 256k est aussi accepté par la passerelle mais non retenu.
|
||||
maxTokens = 128000;
|
||||
}
|
||||
{
|
||||
@@ -68,8 +79,11 @@ let
|
||||
# Repli serveur de LM-Code, mais 262k de contexte : pas un vrai
|
||||
# fallback. Recommandé par LM pour les tâches simples, de manière
|
||||
# proactive, afin d'alléger GLM 5.3 (07/09/2026).
|
||||
# 32 768 : plafond réel de la passerelle (max_output_tokens sur
|
||||
# /v1/model/info, vérifié 28/09/2026). Les valeurs antérieures
|
||||
# étaient fausses et risquaient une erreur 400 en fin de réponse.
|
||||
contextWindow = 262144;
|
||||
maxTokens = 128000;
|
||||
maxTokens = 32768;
|
||||
}
|
||||
{
|
||||
id = "glm-ocr";
|
||||
|
||||
Reference in New Issue
Block a user