
Omarchy en profondeur : l'étendre sans casser les mises à jour, et cinq « bugs » qui n'en sont pas
Omarchy est une configuration assumée d'Arch Linux et du gestionnaire de fenêtres Hyprland : installez-la et vous avez un poste rapide, piloté au clavier. Elle se met à jour souvent, et ses mises à jour écrasent ses propres fichiers. La règle qui en découle : ne rien changer dans ses dossiers, étendre depuis les vôtres. Et quand quelque chose semble cassé, chercher la cause avant de réinstaller.
Ce que vous y gagnez. Vos propres entrées dans le menu d'Omarchy, qui survivent à chaque mise à jour, et le diagnostic de cinq comportements étranges en une ligne chacun, au lieu des soirées qu'ils nous ont coûtées.
1. Étendre le menu depuis votre dossier
Le menu livré (/usr/share/omarchy/default/omarchy/omarchy-menu.jsonc) se lit, ne se modifie jamais : la prochaine mise à jour le réécrit. Vos entrées vont dans ~/.config/omarchy/extensions/omarchy-menu.jsonc :
{
"setup.default.agent.openfox": {
"icon": "", "label": "OpenFox",
"description": "Agent de code local",
"action": "omarchy launch webapp https://openfox.lan"
}
}
L'identifiant est un chemin à points, et son parent, c'est le menu : setup.default.agent.openfox atterrit dans le sous-menu « Default Agent ». Réutiliser un identifiant existant étend cette entrée au lieu de la remplacer. omarchy menu refresh recharge.
Le réglage « agent par défaut » ne connaît que des binaires lancés dans un terminal, tirés d'une liste fixe. Une web app peut s'ajouter au menu, pas devenir l'agent par défaut.
2. « Luminosité 100 % » et un écran sombre
Sur la dalle de notre portable, le pilote déborde près du maximum : au-delà d'environ 60 300 sur 65 535, la valeur repasse à 0 et l'écran tombe au minimum. « 100 % » était le réglage le plus sombre. Le correctif reste en espace utilisateur : un petit script qui plafonne la valeur brute à 60 200, et les touches de luminosité réaffectées dessus.
Sondez valeur par valeur (/sys/class/backlight/*/brightness, puis lisez actual_brightness) avant d'accuser le bureau.
3. La barre disparue, même après redémarrage
La barre du haut n'est pas morte : un drapeau sur disque, ~/.local/state/omarchy/toggles/bar-off, la fait glisser hors de l'écran, et il survit aux redémarrages par construction. Une seule entrée de menu le pose, facile à choisir par mégarde au clavier. La commande est inversée, ce qui coûte un aller-retour :
omarchy toggle bar off # fait REVENIR la barre
4. Quatre barres de titre, quatre propriétaires
| Ce qu'on voit | Qui la dessine | Ce qui l'enlève |
|---|---|---|
| un cadre autour d'une fenêtre | Hyprland | general:border_size = 0 |
| une barre d'adresse au-dessus d'une fenêtre surgissante | le navigateur, dans la page | rien depuis la page |
| une barre de titre sur une fenêtre d'appli | Chromium, dans sa surface | --disable-features=WaylandWindowDecorations |
| une barre de titre sur une web app installée | Chromium, à cause de display: standalone | "display_override": ["window-controls-overlay"] dans le manifeste |
C'est la façon d'ouvrir l'appli qui décide laquelle on subit : un lanceur --app=URL n'a pas de barre ; l'icône de l'appli installée en a une tant que son manifeste ne demande pas autre chose. Chromium garde le manifeste en cache : redémarrez-le pour voir le changement.
5. Une transparence qui rend le texte laiteux
L'opacité des fenêtres de Hyprland s'applique à toute la fenêtre : le compositeur reçoit une image finie et ne distingue pas le fond du texte. Tout devient laiteux. Pour un fond transparent avec un texte net, réglez l'opacité dans l'application elle-même (l'opacité de fond du terminal), et laissez le compositeur à 1,0.
Pièges
Ne redémarrez jamais le service des terminaux depuis une session de terminal qui compte : il ferme tous les terminaux, y compris celui où tourne votre agent.
Un outil d'envoi de touches tape du texte ; il ne déclenche pas les raccourcis de Hyprland. Pour tester un menu sans voir l'écran, appelez-le par commande, tapez la recherche, et prenez une capture.
Sources
Utile ? Dites-nous ce qu'il faut mesurer ensuite.