• # /etc/acpi, tout est là

    Posté par . En réponse au message cherche idée pour éteindre un portable après coupure d'alimentation. Évalué à 8.

    Pour le 1, je pense que la coupure d'alimentation doit produire un évènement au niveau du noyau (ACPI ?) qu'il faudrait que j'intercepte

    Oui, un évènement de type ac_adapter. Tu peux « intercepter » et réagir à cet évènement avec acpid(8).

    Par exemple, voici ce que je fais sur ma Slackware :

    – un fichier /etc/acpi/events/ac_adapter (le nom du fichier n’a pas d’importance, mais il doit être dans /etc/acpi/events) définit le script à lancer à la réception d’un évènement concernant l’alimentation secteur :

    event=ac_adapter
    action=/etc/acpi/ac_adapter_handler.sh
    
    

    – le script en question teste si l’adaptateur secteur a été branché ou débranché, et agit en conséquence :

    #!/bin/sh
    ac_status=$(cat /sys/class/power_supply/AC/online)
    if [ "x$ac_status" = x1 ]; then
     # AC adapter is present
     ...
    else
     # No AC adapter, we're running on battery
     ...
    fi
    
    

    si possible, lorsque je remet le courant il sorte d'hibernation […] j'ai peur que ca soit plus compliqué, mais peut être avez vous des idées pour m'aider ?

    Si par « hibernation » tu entends bien « suspend-to-disk », ça devrait être possible, il suffirait que, par défaut, le chargeur de démarrage démarre un noyau avec l’option « resume ».

    est-ce seulement une bonne idée ?

    Ce pourrait éventuellement être une mauvaise idée de se mêler de ce qui se passe dans /etc/acpi si ta distribution a déjà installé ses propres gestionnaires d’évènements ACPI : il vaut mieux alors se servir des outils de configuration que la distribution met à ta disposition (comme le gnome-power-manager évoqué ci-dessus, par exemple) plutôt que d’essayer de les court-circuiter sauvagement.