Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 13-08-2013 12:57:50

Mik
Membre
Inscription : 25-07-2013

Lancement d'un fichier .odp au démarrage

Bonjour,

J'ai un nouveau petit problème, en faite j'utilise un écran pour afficher un fichier de présentation .odp qui est placé à la racine d'une clé USB.

Solution qui fonctionne parfaitement en partie grâce à vous smile

Par contre à l'arrêt ou redémarrage de la machine, le fichier est fermé brusquement et après redémarrage, il ne se lance pas automatiquement me demandant " Lancer la réparation"

Existe t'il une commande pour acquitter de ce message avec loimpress ?   Par exemple, comme le -show pour le pleine écran ?

Où au moment de l'extinction, est il possible de demander à la machine d'arrêter proprement le fichier .odp ?

Merci d'avance

Hors ligne

#2 13-08-2013 13:32:08

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

Salut,

Tu as essayé de passer le fichier en lecture seule ? Avec ça, pas de modifs, donc a priori pas de récupération.

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#3 13-08-2013 14:28:31

Mik
Membre
Inscription : 25-07-2013

Re : Lancement d'un fichier .odp au démarrage

Oui, j'ai déjà essayer et toujours le même problème.

Hors ligne

#4 13-08-2013 15:08:06

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Mik a écrit :

... à l'arrêt ou redémarrage de la machine, le fichier est fermé brusquement ...


Quelle commande est utilisée pour l'arrêt de cette machine ?

Il doit sûrement être possible de faire en sorte que cette commande (d'arrêt brutal) ne puisse être exécutée que si la présentation a bien été arrêtée et son fichier de présentation correctement fermé.

EDIT:
Après vérification, le signal envoyé à LibreOffice est le signal SIGTERM.
Donc, ce n'est pas la commande qui provoque cet arrêt brutal, mais l'interprétation "personnelle" qu'en fait LibreOffice.

Dernière modification par MicP (15-08-2013 09:35:47)

#5 13-08-2013 15:12:38

Mik
Membre
Inscription : 25-07-2013

Re : Lancement d'un fichier .odp au démarrage

Je viens de trouver, j'ai peut-être poster un peu vite mais ça pourra aider quelqu' un d'autre.

J'ai trouver sur le wiki d' OpenOffice la liste des commandes http://wiki.openoffice.org/wiki/Framewo … _Arguments

Ca fonctionne avec LibreOffice parfaitement, pour ma part j'ai rajouter l'option -norestore pour acquitter du message.

Ce n'est pas la meilleur solution je pense, mais ça n'empêche plus le lancement du fichier.

Dernière modification par Mik (13-08-2013 15:17:45)

Hors ligne

#6 13-08-2013 15:17:26

Mik
Membre
Inscription : 25-07-2013

Re : Lancement d'un fichier .odp au démarrage

Pour l'arrêt, j'appuie tout simplement sur le bouton d'alimentation (il s'agit d'un slim PC sans clavier souris) qui lance la commande shutdown.

MicP a écrit :

Il doit sûrement être possible de faire en sorte que cette commande (d'arrêt brutal) ne puisse être exécutée que si la présentation a bien été arrêtée et son fichier de présentation correctement fermé.



Oui, c'est ce que je préférerez faire, plutôt que de contourner le problème.

Dernière modification par Mik (13-08-2013 15:19:44)

Hors ligne

#7 13-08-2013 15:19:40

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

Tu soignes le symptôme et non sa cause.

Le problème restant que si loffice fait une sauvegarde auto au moment où tu éteins l'ordi, tu risques d’endommager le .odp et donc réellement avoir besoin de cette restauration.

C'est pourquoi je suggérais d'ouvrir le fichier en lecture seule, ce qui préviendrait ce problème, et potentiellement le symptôme avec smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#8 13-08-2013 15:25:00

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

Visiblement, l'option --view ouvre le fichier en lecture seule, je tenterais ça plutôt que le -norestore.

[Edit : NB: Et bien sûr, toutes ces options sont dans le « man loffice »]

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#9 13-08-2013 15:36:06

Mik
Membre
Inscription : 25-07-2013

Re : Lancement d'un fichier .odp au démarrage

Je viens d'essayer avec l'option -view, et cela me redemande de lancer la récupération.

Je suis d'accord que ça ne corrige pas la cause, mais je ne trouve pas le moyen de fermer proprement le fichier à l'extinction de la machine.

Hors ligne

#10 13-08-2013 17:13:19

Lunatic
Membre
Lieu : Lyon
Distrib. : Fedora 24
Noyau : Linux 4.6.5-300.fc24.x86_64
(G)UI : Gnome
Inscription : 03-08-2013
Site Web

Re : Lancement d'un fichier .odp au démarrage

J'ai l'impression, après avoir fait quelques rechercher rapides, qu'il n'est pas facile de quitter proprement LibreOffice en passant par une commande…

Question sans doute bête, mais ta présentation ne peut-elle pas être transformée en pdf, sans perte de « caractéristiques » ?

Je suis aussi sur Twitter et nouvellement sur Diaspora*
Mon blog de geekeries : HAL-9000

(J'applique la règle de proximité)

Hors ligne

#11 13-08-2013 17:52:54

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Mik a écrit :

... qui lance la commande shutdown ...


Alors, reste à savoir de quelle façon la commande "shutdown" est appelée:

Entre la détection par le système de l'appuis sur la touche d'alimentation
et le lancement de la commande "shutdown",
il doit être possible d'intercaler une commande
fermant "proprement" le fichier de présentation,
et n'autorisant le lancement de la commande "shutdown" que si plus aucun processus libre office et fichier associé ne soit ouvert.

La commande "shutdown" (activée par le bouton d'alimentation) est peut-être elle même lancée depuis un script
dans lequel il sera possible de faire ces test de condition d'arrêt du système et de la machine.

Dans un premier temps, il faudrait donc réaliser un script qui fermerait (proprement) Libre Office et sa présentation en cours.
Puis vérifier que la présentation redémarre correctement (sans demande de " Lancer la réparation").

EDIT: Zut! j'avais pas lu:

Marie-Lou a écrit :

... J'ai l'impression, après avoir fait quelques rechercher rapides, qu'il n'est pas facile de quitter proprement LibreOffice en passant par une commande… ...


Je vais quand même chercher de mon côté, mais je n'ai jamais créé de fichier de présentation.
Où trouver un exemple de fichier de présentation ? (un lien ou autre)

Mais il y a peut-être mieux:
Si Libre Office demande de Lancer la réparation, c'est qu'il est retourné dans le mode d'édition à la fin de la présentation.

En fait, l'option de commande de démarrage de LibreOffice "-show {filename.odp}" => Starts with the Impress file {filename.odp} and starts the presentation. Enters edit mode after the presentation.
Il faudrait donc trouver un mode de lancement qui ne retourne pas en mode édition pour ne plus avoir de message "Lancer la réparation" au démarrage suivant.

Pourtant, je viens de faire un essai avec un fichier de présentation lancé avec cette commande, et la touche "esc" arrête la présentation et ferme libre office sans passer par le mode d'édition...
Mais un "kill -15" sur le processus de libre office provoque bien ce problème à la réouverture.

Dernière modification par MicP (13-08-2013 20:11:07)

#12 13-08-2013 20:01:48

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

un « -show -norescue -view fichier.odp » me semble le plus raisonnable ici.
Grâce au -view, il y a copie du fichier dans /tmp, sans modification de l'original (ie. ouverture en lecture seule)
Grâce au -show, le fichier est ouvert en mode présentation directement.
Grâce au -norescue, LO ne tente pas de récupérer le fichier.

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#13 13-08-2013 20:26:49

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Une solution serait d'envoyer (depuis le script qui lance "shutdown") une simulation d'entrée clavier de la touche Escape à la fenêtre de la présentation en cours,
puist Ctrl Q à la fenêtre d'édition,
puis vérifier qu'il n'y ait plus de process de libre office en cours,
et alors seulement, le script de fermeture permettrait à shutdown de s'exécuter.

voir avec "xdotool" pour envoyer les séquences de touches (ou ev. souris) à une fenêtre graphique.

Dernière modification par MicP (13-08-2013 20:40:52)

#14 13-08-2013 20:40:18

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

Dans ce cas, il faudrait également attendre que loffice soit complètement fermé avant de lancer le véritable shutdown. Un « sleep » n'étant bien entendu pas vraiment une solution.
Ensuite, comment identifier le bon loffice si plusieurs tournent ?
Et comment depuis le script obtenir les droits sur la fenêtre X de loimpress etc. ?

Tout cela est possible, mais au final je doute que le résultat soit plus élégant que la solution que j'ai proposée.

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#15 13-08-2013 20:43:45

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

captnfab a écrit :

... au final je doute que le résultat soit plus élégant que la solution que j'ai proposée ...


Tout-à fait d'accord avec toi.
Je vais essayer avec un kill -15 après avoir utilisé "-norescue" pour voir.
EDIT:
Zut!
Avec "soffice -show -norescue -view fichier.odp", il démarre pas le diaporama en plein écran. peut-être que mon fichier de test n'est pas bien fait.
Par contre, avec "soffice -show -norescue  fichier.odp", là il démarre en diaporama plein écran.
Mais suite à un lancement avec "soffice -show -norescue fichier.odp" puis kill -15 sur le process, il redémarre quand même sur la demande de récupération. mais je suis pas vraiment sûr et certain que son "shutdown" utilise le signal "sigterm"...

captnfab a écrit :

... attendre que loffice soit complètement fermé ...
...identifier le bon loffice si plusieurs tournent ...


avec le retour d'un "ps" ou mieux en récupérant l'id du process au moment du lancement.

captnfab a écrit :

... les droits sur la fenêtre X de loimpress ...


Du moment ou la commande shutdown peut être lancée, c'est qu'il a les droit "root", et de toutes façons, j'espère qu'il a lui-même lancé cette présentation.
Et puis, je suppose qu'il n'a pas besoin de lancer plusieurs instances de LibreOffice pour une seule présentation de diaporama...

Dernière modification par MicP (13-08-2013 21:39:36)

#16 13-08-2013 21:07:45

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

MicP a écrit :

captnfab a écrit :

... attendre que loffice soit complètement fermé ...
...identifier le bon loffice si plusieurs tournent ...


avec le retour d'un "ps" ou mieux en récupérant l'id du process au moment du lancement.


Euh…
Avec le retour d'un "ps", tu ne vas pas savoir quoi faire si loffice est lancé plusieurs fois, en plus, loimpress est un wrapper pour soffice et donc le ps à faire est à grepper sur soffice…
En récupérant le pid, faut faire gaffe… Il y a des soucis de sécurité et de robustesse là-dessous.
Genre, si tu fais le kill en root, le user peut mettre le pid qu'il veut avant et donc forcer root à killer n'importe qui.
Si tu fais le kill en user, dans ce cas le pid peut tjrs être modifié mais sans grave conséquence (juste l'échec du kill)
Bon, tu t'en fiches un peu vu que tu veux redémarrer ta machine dans un cas très particulier, mais bon, c'est sale.
Ensuite, ce pid récupéré, je ne sais pas si c'est celui du script wrapper loimpress ou de soffice…

MicP a écrit :

captnfab a écrit :

... les droits sur la fenêtre X de loimpress ...


Du moment ou la commande shutdown peut être lancée, c'est qu'il a les droit "root", et de toutes façons, j'espère qu'il a lui-même lancé cette présentation.


Ça n'est pas le problème.
il ne suffit pas d'être root.
Il faut identifier le « DISPLAY ».
Puis il faut être autorisé par le xhost ou identifier le user et se logguer en tant que le user.
Ça aussi c'est très sale.


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#17 13-08-2013 21:25:21

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Je pensais qu'il s'agissait d'un "slim PC sans clavier souris" dont la seule fonction était d'afficher un diaporama au démarrage avec seulement un bouton M/A pour l'arrêter.

Quoiqu'il en soit, je te remercie beaucoup pour toutes ces infos sur la sécurité et fiabilité de l'utilisation de "kill" et de "ps".
Je n'aurai jamais pu acquérir tout ça sans un minimum de pratique et d'expérience, quelque années sûrement, et encore, si ça avait été avec ces trop rares professionnels compétents.

Ceci dit, si j'utilise ps et kill, ce n'est que pour trouver le process de libreoffice et que pour simuler l'arrêt qui est fait par la commande shutdown afin voir ce qui se passe à la réouverture du fichier.

Pour arrêter proprement le diaporama et fermer libreoffice, je proposais l'envois de séquences de touches avec "xdotool",
par un script exécuté entre la détection de l'appuis sur le bouton M/A et la commande "shutdown".
Il doit aussi être possible de faire quelque chose (script interne) au niveau de LibreOffice ou/et du document.

Dernière modification par MicP (13-08-2013 21:38:27)

#18 13-08-2013 21:48:42

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

L'envoi de « ESC » à LO par root est concerné par mon deuxième paragraphe ci-dessus.

Le fait que ce soit une config relativement figée, qui ne sert qu'à afficher un diaporama, fait que les questions de sécurité sont un peu marginales.

Reste que si l'on reste dans la « bidouille », la robustesse en prend un coup. Un tas de détails devront être fixés à la main pour cette configuration particulière et il n'est pas dit que les mises à jour / migrations / installation d'autres paquets / changement de matériel / etc. n'oblige pas à revoir les scripts à chaque fois.

Bref smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#19 14-08-2013 05:20:57

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

captnfab a écrit :

il ne suffit pas d'être root.
Il faut identifier le « DISPLAY ».

En fait, même pas, il suffit juste d'être l'user qui a créé la fenêtre.

Donc, pas besoin d'avoir un accès avec les privilèges du compte "root" ni par "sudo" pour avoir le droit d'envoyer des touches à SA fenêtre, afin de pouvoir fermer proprement la fenêtre qu'on a créé,
et c'est quand même bien légitime, il me semble.

=============
Alors, pour installer "xdotool" :

apt-get update && sudo apt-get install xdotool



=============
Ensuite, pour tester, si la commande de lancement du fichier de diaporama a été:

soffice -show fichier_diaporama.odp


alors, le script suivant permettra de fermer le diaporama proprement :
Il envoie la touche "-" (moins) à la fenêtre du diaporama en cours d'exécution ce qui va fermer l'application "soffice" qui permet de l'afficher.

WID=`xdotool search "SOFFICE" | head -1`     # récup de l'ID de la fenêtre X11.
xdotool windowactivate --sync $WID           # ça c'est juste pour la remettre au premier plan pour le test.
xdotool key --clearmodifiers "minus"         # on lui envoie un evènement clavier correspondant à l'appuis et au relachement de la touche "-" (moins).

Une fois fermé de cette façon, le diaporama redémarrera sans la "demande de récupération".

=================
Mais on peut aussi faire encore plus propre en chaînant les commandes de "xdotool":

Donc, en considérant que le diaporama est en cours d'affichage (=> utilisation de "getactivewindow" ou "getwindowfocus" ),
il suffirait de mettre le bout de code suivant dans le script qui va recevoir l'évènement de la touche M/A,
qui pourra ensuite appeler la commande "shutdown" s'il n'y a plus de process "soffice" actif.

xdotool getactivewindow key --clearmodifiers "minus"



=================
Bien sûr, à chaque fois que LibreOffice va modifier le raccourcis clavier qui permet d'arrêter un diaporama en cours, il faudra adapter le script en conséquence.
Mais bon, je ne pense pas que LibreOffice modifie ça du jour au lendemain.

Maintenant, il y a peut-être solution plus propre, mais je la connais pas, en fait j'apprends tous les jours un petit peu.

Dernière modification par MicP (20-09-2013 00:10:29)

#20 14-08-2013 09:14:55

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

MicP a écrit :

captnfab a écrit :

il ne suffit pas d'être root.
Il faut identifier le « DISPLAY ».

En fait, même pas, il suffit juste d'être l'user qui a créé la fenêtre.


Non, il faut identifier le DISPLAY smile

Ton tuto sur xdotool est sympa, je le verrai bien dans le Wiki moi, ça peut être amusant smile

MicP a écrit :


=============
Alors, pour installer "xdotool" :

sudo apt-get update && sudo apt-get install xdotool



=============
Ensuite, pour tester, si la commande de lancement du fichier de diaporama a été:

$ soffice -show fichier_diaporama.odp


alors, le script suivant permettra de fermer le diaporama proprement :
Il envoie la touche "-" (moins) à la fenêtre du diaporama en cours d'exécution ce qui va fermer l'application "soffice" qui permet de l'afficher.

WID=`xdotool search "SOFFICE" | head -1`     # récup de l'ID de la fenêtre X11.
xdotool windowactivate --sync $WID           # ça c'est juste pour la remettre au premier plan pour le test.
xdotool key --clearmodifiers "minus"         # on lui envoie un evènement clavier correspondant à l'appuis et au relachement de la touche "-" (moins).

Une fois fermé de cette façon, le diaporama redémarrera sans la "demande de récupération".

=================
Mais on peut aussi faire encore plus propre en chaînant les commandes de "xdotool":

Donc, en considérant que le diaporama est en cours d'affichage (=> utilisation de "getactivewindow" ou "getwindowfocus" ),
il suffirait de mettre le bout de code suivant dans le script qui va recevoir l'évènement de la touche M/A,
qui pourra ensuite appeler la commande "shutdown" s'il n'y a plus de process "soffice" actif.

xdotool getactivewindow key --clearmodifiers "minus"



Supposons que tu aies dans ton serveur X une fenêtre dont le nom soit "Pouet".

Si tu ouvres un terminal dans cette même session X et fais

xdotool search --name "Pouet"


alors tu vas recevoir le Window ID de la fenêtre.

En revanche, si tu fais cela depuis un tty, ou depuis le script de pré-shutdown lancé par un événement ACPI (après avoir fait un su - tonuser), tu vas recevoir

Error: Can't open display: (null)
Failed creating new xdo instance



En effet, avant de pouvoir explorer les ressources X et interagir avec elles, tu as besoin de définir la variable DISPLAY. Et c'est logique, un même utilisateur peut avoir plusieurs serveurs X (éventuellement différents) tournant en même temps.

Par défaut, le DISPLAY utilisé est ":0"
Donc si tu fais

export DISPLAY=":0"
xdotool search --name "Pouet"

cela devrait fonctionner. Mais cela signifie que tu vas supposer dans ton script que le display utilisé est ":0". Ou alors, tu vas à nouveau demander à ton user de stocker cette valeur dans un fichier pour la récupérer par la suite depuis ton script, ce qui nous ramènes aux problèmes de sécurité vu plus haut.


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#21 14-08-2013 10:17:19

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Effectivement, j'avais oublié de tenir compte du fait que le signal déclencheur ne venait pas de l'utilisateur, mais de l'ACPI.
Mais dans ce cas, il serait peut être plus simple de faire en sorte que ce soit le script utilisateur qui a démarré l'application "soffice" qui attende (ou bien guette) un signal (ou drapeau) que l'ACPI lui donnerai.
Étant donné que l'ACPI est gérée par le compte "root", la fonction associée à l'évènement (appuis sur le bouton M/A) est à même d'envoyer un signal ou de positionner un drapeau accessible au script  utilisateur qui pourra alors stopper le diaporama, fermer "soffice", et pourquoi pas fermer la session utilisateur à tant qu'à faire.
Reste à savoir quel media utiliser pour transmettre ce signal, s'il n'en existe pas déjà un  (DBUS ?) tout prêt pour ce genre de fonctionnalité : je me suis trop souvent rendu compte, après avoir fait de longues recherches, que tout avait déjà été bien pensé dans Linux, et qu'il suffisait de savoir où chercher l'info, ou/et de connaître une personne compétente à qui on arrive à formuler correctement la question.
Heureusement, tu es là smile

============
Pour le tuto, j'y penserai, mais il me faudra d'abord bien me reposer, apprendre à bien utiliser "xdotool", réviser X11, etc...

Dernière modification par MicP (14-08-2013 10:22:38)

#22 14-08-2013 12:20:43

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Lancement d'un fichier .odp au démarrage

MicP a écrit :

et pourquoi pas fermer la session utilisateur à tant qu'à faire.


En fait, lors de l'arrêt, le système envoie un SIGTERM à toutes les applications. Celles qui refusent de se fermer reçoivent un SIGKILL et donc, se ferment... Donc, ce mécanisme existe déjà.

MicP a écrit :

Pour le tuto, j'y penserai, mais il me faudra d'abord bien me reposer, apprendre à bien utiliser "xdotool", réviser X11, etc...


Haha, pas besoin d'être au top de partout pour tutoter, sinon personne ne tutoterait.
Mais je ne te presse pas, tu fais ça quand tu veux et surtout si tu veux.

Hop,


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#23 14-08-2013 12:37:06

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

captnfab a écrit :

... En fait, lors de l'arrêt, le système envoie un SIGTERM à toutes les applications. ...


C'est bien là qu'est l'os, rien qu'avec un SIGTERM (le kill -15 que j'avais testé plus haut), c'était la cata au moment de la réouverture de la présentation "soffice",
d'où ma suggestion de détourner l'appel à shutdown en le faisant précéder d'un script.

Mais, il sera peut être plus judicieux d'utiliser le signal de l'ACPI pour ça.
En fait, je n'ai pas assez d'expérience pour savoir laquelle des deux sources il conviendrait d'utiliser : ACPI ou script shutdown.

Réflexion faite, je pense qu'il vaudrait mieux utiliser le déclencheur plutôt que le déclenché, histoire de pas modifier le comportement du déclenché (shutdown).
Reste donc à trouver les méthodes de récupération des événements bouton ACPI, ou trouver le moyen de modifier la fonctionnalité associé à ca bouton. => yfoyaka

Dernière modification par MicP (15-08-2013 06:44:07)

#24 14-08-2013 23:35:37

MicP
Invité

Re : Lancement d'un fichier .odp au démarrage

Chez moi, il y a ça :

/etc/acpi/events/powerbtn-acpi-support => "action=/etc/acpi/powerbtn-acpi-support.sh"

/etc/acpi/powerbtn-acpi-support.sh      => initiates a shutdown when the power putton has been pressed
    /usr/share/acpi-support/policy-funcs    <=> DBUS, dcopserver, KDE, gnome, Power-manager
    /usr/share/acpi-support/power-funcs    <=> micro library of helper functions for the power scripts
       CheckPolicy
       /sbin/shutdown -h -P now "Power button pressed"

Donc je suis en mode lecture.
=======================

@Mik :
             Est-ce que les fichiers suivants existent sur ton système ?
/etc/acpi/events/powerbtn-acpi-support
/etc/acpi/powerbtn-acpi-support.sh
/usr/share/acpi-support/policy-funcs
/usr/share/acpi-support/power-funcs
===================
             Pourrais-tu me confirmer (ou me détailler) comment tu utilise ta machine ?

Tu démarre ta machine par un appuis sur le bouton M/A
     => Démarrage de la machine
          => Log auto sur compte user en mode graphique
               => Démarrage diaporama soffice automatique (au log qui est auto)

Puis tu stoppe ta machine par un autre appuis sur le bouton M/A.

Merci.
===================

Quoi qu'il en soit, La solution que nous sommes en train de mettre en place n'est effectivement qu'un
"bidouillage" qui va sans doute devoir être ré-adaptée à chaque mise à jour du système (comme l'a dit captnfab).

Je ne suis pas programmeur, mais je lis que :

http://fr.wikipedia.org/wiki/SIGTERM a écrit :

... SIGTERM a plus pour but de demander gentiment de s'arrêter, permettant un nettoyage et la fermeture de fichiers. ...


et c'est bien la fermeture "brutale" des fichiers de LibreOffice par LibreOffice en réponse au signal SIGTERM qui pose problème, le message "Lancer la réparation" à la ré-ouverture du fichier n'en est que la conséquence.

Il faudrait peut-être demander de l'aide à ce sujet dans le forum de Libre Office
===================

Dernière modification par MicP (15-08-2013 10:23:03)

Pied de page des forums