Ich bin ein paar Mal darauf gestoßen, wenn ich Apps von der Quelle installiert habe und gelegentlich mit gehackt habe update-alternatives
. Bisher war es nur ein kleiner Ärger (dh es hat das Endziel nicht behindert), aber jetzt ist es eine Frustration, da es auf ein Loch in meiner Wissensbasis hinweist ... also, wenn ich eine Nachricht bekomme, dass ' foo 'ist "keine registrierte Anwendung" (oder ich kann das Standardsymbol von foo nicht verwenden, da Ubuntu keine Kenntnisse über' foo 'hat):
Was macht eine "registrierte Bewerbung" aus?
Wie kann ich eine Anwendung definieren, die von der Quelle installiert wurde (und sich wahrscheinlich in $ HOME / bin / app-name befindet), sodass sie dieselbe Funktionalität wie ein von einer .deb installiertes Paket bietet? (wenn die Lösung aus Antwort 1 nicht selbstverständlich ist)
Beispiel:
Ich lade täglich Entwickler-Builds von sublime-text-2
bis herunter und entpacke sie /home/tom/bin/sublime-text-2
. Ich habe eine * .desktop-Datei mit entsprechenden Verknüpfungen usw. erstellt. Das Symbol für sublime kann jedoch in keinem Launcher angezeigt werden, selbst wenn ich der Option einen vollständigen Pfadnamen gebe. Die Lösung besteht darin, eine zweite Instanz von sublime aus einem Deb-Paket zu installieren .
Wenn ich sublime-text-2 aus einem .deb-Paket installiere, wird es unter installiert /usr/bin && /usr/lib
, die installierte .desktop- Datei wird unter gespeichert /usr/share/applications
und die entsprechende Zeile lautet : icon=sublime_text
.
Wo ist die Verknüpfung, die mir fehlt? Irgendwie weiß Ubuntu, wie man das Symbol sublime_text
im letzteren herausfordert, aber nicht im ersteren (auch hier, wenn ein vollständiger Pfad angegeben ist).
/.local/share/applications
. Der bemerkenswerteste Ort, an den ich mich erinnern kann, war der Versuch, eine aus der Quelle kompilierte Version von vim in die update-alternatives
Liste einzubinden, damit sie anstelle der 'Standard'-Installation angezeigt wird. Hilfreich? Ich schätze, ich suche nach dem Mechanismus, mit dem Ubuntu weiß, wo (zum Beispiel) das richtige Symbol für App A zu finden ist - genau wie bei * .desktop-Dateien unter /usr/share/applications/
.
~/.local/share/applications
Launcher auf "just" setzen sublime_text
( nicht auf den vollständigen Pfad, funktioniert das?