J'ai rencontré un problème avec Nautilus pour lequel je n'ai trouvé aucune solution autre que de télécharger le code source, d'apporter quelques modifications et de le compiler par moi-même. Alors maintenant, j'ai deux versions de nautilus, la version officielle des dépôts et la mienne avec quelques changements. Je voudrais garder les deux.
Quelle serait une bonne façon de dire aux applications d'utiliser ma propre version compilée de Nautilus lors du démarrage de Nautilus depuis l'application? (par exemple, ouverture du dossier Téléchargements avec Firefox)
J'ai compris que firefox appelle /usr/bin/nautiluspour que je puisse simplement le remplacer par un lien symbolique vers mon propre programme. Cependant, je pense que ce lien symbolique sera écrasé dès que j'installerai une mise à jour pour Nautilus. Puis-je faire autre chose?
/usr/bin/nautilussemble être codé en dur d'une manière ou d'une autre. S'il est supprimé, Firefox ne fait plus rien lorsque j'essaie d'ouvrir le dossier Téléchargements, bien qu'il existe un lien symbolique vers ma propre version de Nautilus dans /usr/local/bin. Ma $PATHvariable est/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
strace -f -efile,execve -o firefox_syscalls.txt firefoxpour voir ce que ff fait. Si vous recherchez le journal nautilus, cela pourrait vous montrer quelque chose. (Cela -efiltre les appels système execveet les fichiers open / close / pathname, sinon ce serait un flot de futexlecture / écriture de socket pour X11).
/usr/local/binn'a pas fonctionné? c.-à-d. Firefox a-t-il recherché$PATHet trouvé la version dans/usr/bin, ou est-ce (ou votre truc xdg-open) un code dur/usr/bin/nautilus? L'installation de votre propre version de quelque chose dans / usr / local fonctionne normalement.