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/nautilus
pour 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/nautilus
semble ê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 $PATH
variable est/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
strace -f -efile,execve -o firefox_syscalls.txt firefox
pour voir ce que ff fait. Si vous recherchez le journal nautilus
, cela pourrait vous montrer quelque chose. (Cela -e
filtre les appels système execve
et les fichiers open / close / pathname, sinon ce serait un flot de futex
lecture / écriture de socket pour X11).
/usr/local/bin
n'a pas fonctionné? c.-à-d. Firefox a-t-il recherché$PATH
et 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.