Résolu le 30-03-21 xreader : lecture impossible d'un URL pdf via cron

Postez ici toutes vos demandes d’assistance générale concernant le fonctionnement de Linux Mint, qui n'entrent pas dans les autres rubriques.
Répondre
lesjno
Messages : 9
Enregistré le : mar. 23 mars 2021 12:00

xreader : lecture impossible d'un URL pdf via cron

Message par lesjno »

Bonjour,
J'ai besoin, dans un script php, d'afficher un fichier pdf avec xreader. Le fichier est une URL.
Le script php est lancé par un cron.
Pour analyser le problème, j'ai isolé la commande et fait l'essai avec l'exemple de commande suivante :

DISPLAY=:0.0 xreader "https://www.orphoz.com/uploads/media/pdf-exemple.pdf" &

Lorsque cette commande est lancée depuis un terminal, tout se passe bien : le fichier est bien affiché.
Mais via le cron, xreader s'ouvre sur la page d'erreur "Impossible d'ouvrir le document".
A partir du menu "fichiers/Récents" qui liste les derniers fichiers ouverts, les fichiers locaux s'ouvrent bien mais les fichiers issus d'une URL donnent tous la même page d'erreur. (Et pourtant ces fichiers s'ouvrent bien lorsque xreader est lancé depuis le terminal !)
Je suppose qu'il y a des droits à régler quelque part : une idée ?
Merci d'avance !
Pc : Laptop ASUSTeK K53SV | Linux Mint 20.1 Ulyssa | 5.4.0-67-generic x86_64 | Intel Core i7-2630QM | 3.75 GiB | NVIDIA GF108M [GeForce GT 540M]
falke
Messages : 599
Enregistré le : mar. 3 oct. 2017 21:28

Re: xreader : lecture impossible d'un URL pdf via cron

Message par falke »

Salut,

C'est sensé être "interractif" Et surtout pq en tâche de fond " & " ?
System:
Host: falke-MacBookAir Kernel: 6.8.0-45-generic x86_64 bits: 64
Desktop: Distro: Linux Mint 22 Wilma base: Ubuntu 24.04 noble

Machine:
Type: Laptop System: Apple product: MacBookAir7,2 v: 1.0
Autre Distro : Debian Sid et Endeavour en triple boot sur Btrfs. Noyau change tout le temps ..
lesjno
Messages : 9
Enregistré le : mar. 23 mars 2021 12:00

Re: xreader : lecture impossible d'un URL pdf via cron

Message par lesjno »

Le système que je développe est sensé avoir un fonctionnement entièrement automatique, sans quasiment aucune interaction avec un utilisateur. Le système affiche des documents (photos, vidéo, pdf ...). Pour les PDF, seule la 1ère page a besoin d'être affichée, si possible la 2eme également mais sur le même écran. L'utilisateur interagit avec le système en appuyant sur un bouton pour passer au document suivant, c'est tout. D'où le lancement à partir d'un script en cron qui doit "relancer" le script s'il est interrompu (au cas où).
On peut enlever le "&", effectivement. Mais là n'est pas le problème.
Pc : Laptop ASUSTeK K53SV | Linux Mint 20.1 Ulyssa | 5.4.0-67-generic x86_64 | Intel Core i7-2630QM | 3.75 GiB | NVIDIA GF108M [GeForce GT 540M]
falke
Messages : 599
Enregistré le : mar. 3 oct. 2017 21:28

Re: xreader : lecture impossible d'un URL pdf via cron

Message par falke »

Et pq tu lances pas ton script dans une boucle sans fin ?
System:
Host: falke-MacBookAir Kernel: 6.8.0-45-generic x86_64 bits: 64
Desktop: Distro: Linux Mint 22 Wilma base: Ubuntu 24.04 noble

Machine:
Type: Laptop System: Apple product: MacBookAir7,2 v: 1.0
Autre Distro : Debian Sid et Endeavour en triple boot sur Btrfs. Noyau change tout le temps ..
lesjno
Messages : 9
Enregistré le : mar. 23 mars 2021 12:00

Re: xreader : lecture impossible d'un URL pdf via cron

Message par lesjno »

C'est déjà dans une boucle sans fin.
Et si ça plante pour une raison ou pour une autre le cron doit permettre de relancer.

Ma question n'est pas d'avoir des avis sur d'autres façons de faire. Il y a certainement un problème de droits d'accès quelque part qui empêche xreader d'ouvrir une URL lorsque l'appel de fait par cron. J'aimerais trouver comment effectuer ce réglage.
Pc : Laptop ASUSTeK K53SV | Linux Mint 20.1 Ulyssa | 5.4.0-67-generic x86_64 | Intel Core i7-2630QM | 3.75 GiB | NVIDIA GF108M [GeForce GT 540M]
falke
Messages : 599
Enregistré le : mar. 3 oct. 2017 21:28

Re: xreader : lecture impossible d'un URL pdf via cron

Message par falke »

Bonjour,

Et bien, si tu le prends comme ça, il ne me reste plus qu'à trouver souhaiter bonne chance pour la résolution de ton problème.
System:
Host: falke-MacBookAir Kernel: 6.8.0-45-generic x86_64 bits: 64
Desktop: Distro: Linux Mint 22 Wilma base: Ubuntu 24.04 noble

Machine:
Type: Laptop System: Apple product: MacBookAir7,2 v: 1.0
Autre Distro : Debian Sid et Endeavour en triple boot sur Btrfs. Noyau change tout le temps ..
Avatar du membre
david37
modérateur
Messages : 3869
Enregistré le : lun. 22 août 2016 05:06

Re: xreader : lecture impossible d'un URL pdf via cron

Message par david37 »

Salut,

Je suppose que la commande DISPLAY:0.0 ne fait pas son travail dans cron.
Pour ma part, j'avais déjà eu ce problème lorsque j'ai voulu réaliser un script et le placer dans le cron. Il faut pouvoir spécifier l'environnement à utiliser dans le cron.

Une première chose à faire et de voir les retours du terminal quand tu lances ton script avec:

Code : Tout sélectionner

~$ env -i sh -c DISPLAY=:0.0 xreader "https://www.orphoz.com/uploads/media/pdf-exemple.pdf" &
ça devrait déjà te donner des pistes.

Pour ma part, dans mon script, j'avais du rajouter ces deux lignes:

Code : Tout sélectionner

PID=$(pgrep xfce4-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
Et après ça marchait nickel. Je suis sous xfce donc je sais pas quelle sera la commande si tu es sous mate ou cinnamon mais tu pourras surement trouver ça sur le net.

Tu as aussi ce tuto pour débugger son cron: https://stackoverflow.com/tags/cron/info
PC1: Mobo: Gigabyte B550 AORUS Elite 2 / CPU: AMD Ryzen 7 3700X / GPU: MSI Radeon RX 580 Armor / RAM: 32 GB @3600 MHz CL16 / SSD: Samsung 970 EVO 500 GB / LM 20.2 Xfce
PC2: HP Pavilion 15 / AMD Ryzen 5 5500U with Radeon Graphics / 16GB RAM / 500 GB SSD / Debian 11 Xfce
PC3: Dell-Latitude E7240 / 2.1GHz i7-4600U / Intel Haswell-ULT HD 4400 / 8GB RAM / 250 GB Hard Drive / LM 20.2 Xfce
lesjno
Messages : 9
Enregistré le : mar. 23 mars 2021 12:00

Re: xreader : lecture impossible d'un URL pdf via cron

Message par lesjno »

MERCI david37 !
La réponse est 100% pertinente :D
Effectivement, il faut faire ce que tu dis ici :
PID=$(pgrep xfce4-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
en transposant pour cinnamon et le tour est joué !
(En fait, j'ai bien un PID "cinnamon-session", mais le pgrep ne marche pas. Je ne sais pas pourquoi mais ce n'est pas grave car je sais le trouver d'une autre façon).

Encore merci !
Je passe le sujet en résolu.
Pc : Laptop ASUSTeK K53SV | Linux Mint 20.1 Ulyssa | 5.4.0-67-generic x86_64 | Intel Core i7-2630QM | 3.75 GiB | NVIDIA GF108M [GeForce GT 540M]
Avatar du membre
alain
Administrateur du site
Messages : 17314
Enregistré le : dim. 11 oct. 2015 23:41
Localisation : Chelles
Contact :

Re: xreader : lecture impossible d'un URL pdf via cron

Message par alain »

Bonjour.

Sujet archivé (en lecture seule) car résolu.
Si besoin de rouvrir faire un MP à un membre de l'équipe ;)
Слава Україні _ слава героям махновщини
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: GTX 1080TI-11 Go | OS : LM 22 Xfce 4.18 | K: 6.8
PC2
:Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 22 Wilma Xfce 4.18| K: 6.8
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 12.8 | K: 6.1
In a world without walls and fences, who needs windows and gates?
Répondre