v0.6.10 : dossier de travail pour l'agent, lancement Windows explicite, mise à jour lisible, icône noire

- mode agent : les outils write/edit/bash résolvent les chemins relatifs dans
  JEAN_HOME/workspace et le shell y démarre, au lieu du répertoire courant du
  processus (Bureau, ProgramData\jean\bin). Les chemins absolus demandés
  explicitement restent honorés.
- Windows : le double-clic n'installe plus en silence. Boîte de dialogue unique,
  raccourcis menu Démarrer + Bureau, puis relance depuis la copie installée — un
  seul binaire fait foi. Désinstallation : retrait des raccourcis.
- update : contrôle des droits AVANT le téléchargement (l'échec tombait sur le
  fichier temporaire, avec un message brut), message donnant la commande exacte,
  timeout UI porté de 30 s à 10 min.
- jean where + bouton « Où sont mes fichiers ? » : emplacements, et alerte quand
  le binaire lancé n'est pas celui installé.
- icônes : source unique (sys_brand_icon.go) pour la zone de notification, la
  barre de menus macOS et l'icône du .exe, alignée sur le favicon noir. macOS en
  icône template (une icône noire figée disparaît sur une barre sombre).
- CI : le bundle macOS part de icon.png au lieu de convertir le .ico via sips,
  dont l'échec était masqué par « || true » ; notes de release versionnées.
This commit is contained in:
nathaninline committed 2026-08-04 11:17:43 +02:00
1 parent 6e7fe7d4a6
commit 1f3961eaa9
28 files changed
+742 -130

No files matched your search

+11 -4
View File
@@ -42,12 +42,14 @@ jobs:
# et bascule en mode « application » (UI web + navigateur + icône dans
# la barre de menus), comme le double-clic sur jean.exe sous Windows.
# LSUIElement : app de barre de menus, aucune icône dans le Dock.
# L'icône part du PNG 1024 généré avec le reste de la marque
# (cmd/jean/icon.png, voir tools/gen-icon) : plus de conversion depuis
# le .ico, dont l'échec silencieux donnait une app sans icône.
mkdir -p /tmp/jean.iconset
sips -s format png 'cmd/jean/icon.ico' --out /tmp/icon.png >/dev/null 2>&1 || true
for s in 16 32 128 256 512; do
sips -z $s $s /tmp/icon.png --out "/tmp/jean.iconset/icon_${s}x${s}.png" >/dev/null 2>&1 || true
sips -z $s $s 'cmd/jean/icon.png' --out "/tmp/jean.iconset/icon_${s}x${s}.png" >/dev/null
done
iconutil -c icns /tmp/jean.iconset -o /tmp/jean.icns >/dev/null 2>&1 || true
iconutil -c icns /tmp/jean.iconset -o /tmp/jean.icns
v="${GITHUB_REF_NAME#v}"
for arch in amd64 arm64; do
app="dist/mac-$arch/Jean.app"
@@ -115,4 +117,9 @@ jobs:
uses: softprops/action-gh-release@v2
with:
files: dist/*
generate_release_notes: true
# Notes rédigées à la main, versionnées avec le code : le tag emporte
# donc ses notes, au lieu de publier une liste de commits auto-générée
# qu'il fallait ensuite remplacer à la main dans l'interface GitHub.
# ⚠️ Réécrire RELEASE_NOTES.md AVANT de poser le tag.
body_path: RELEASE_NOTES.md
generate_release_notes: false