Kaynak kodunu indirmek, bazı değişiklikler yapmak ve kendi başıma derlemek dışında herhangi bir çözüm bulamadığım Nautilus ile ilgili bir sorunla karşılaştım. Şimdi iki nautilus versiyonum var, depolardan resmi versiyon ve birkaç değişiklikle benim. İkisini de saklamak istiyorum.
Uygulamalara Nautilus'u uygulama içinden başlatırken kendi derlenmiş Nautilus sürümümü kullanmasını söylemenin iyi bir yolu nedir? (ör. İndirilenler klasörünü firefox ile açma)
Firefox çağrılarını anladım, /usr/bin/nautilusböylece bunu kendi programım için bir symlink ile değiştirebildim. Ancak, Nautilus için bir güncelleme yükler yüklemez bu symlink'in üzerine yazılacağına inanıyorum. Yapabileceğim başka bir şey var mı?
/usr/bin/nautilusşekilde sabit kodlanmış gibi görünüyor. Kaldırılırsa, kendi nautilus sürümümün bir sembolik bağlantısı olmasına rağmen, İndirilenler klasörünü açmaya çalıştığımda firefox artık hiçbir şey yapmaz /usr/local/bin. Benim $PATHdeğişkendir/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
strace -f -efile,execve -o firefox_syscalls.txt firefoxff'nin ne yaptığını görmek için koşabilirsiniz . Günlüğü ararsanız nautilus, bu size bir şey gösterebilir. (Bu -esistem çağırır execveve dosya açma / kapama / yol adı şeyler filtreler , aksi takdirde bir sel futexve X11 için soket okuma / yazma olurdu ).
/usr/local/binişe yaramadı mı? Firefox$PATH, sürümünüzde arama yaptı ve sürümü buldu/usr/binveya (veya xdg-open öğeleriniz) sabit kodunu/usr/bin/nautilusmu buldu? Kendi sürümünüzü / usr / local dizinine yüklemek normalde işe yarar.