Qual è la definizione di Ubuntu di "applicazione registrata"?


11

Mi sono imbattuto in questo alcune volte durante l'installazione di app dalla fonte e durante l'hacking occasionale con update-alternatives. Finora, è stato solo un piccolo fastidio (cioè non ostacolare l'obiettivo finale) ma ora è una frustrazione poiché indica un buco nella mia base di conoscenza ... quindi quando ricevo un messaggio che " foo 'non è "un'applicazione registrata" (o non riesco a usare l'icona predefinita di foo perché Ubuntu non ha alcuna conoscenza di "foo"):

  1. Cosa definisce una "domanda registrata"?

  2. Come posso definire un'applicazione installata dal sorgente (e probabilmente risiede in $ HOME / bin / nome-app) in modo tale che comprenda le stesse funzionalità di un pacchetto installato da un .deb? (se la soluzione non è evidente dalla risposta 1)

Esempio:

A scaricare e scompattare dev build giornaliere di sublime-text-2a /home/tom/bin/sublime-text-2. Ho creato un file * .desktop con scorciatoie appropriate, ecc. Ma l'icona per sublime non può essere visualizzata in nessun programma di avvio anche se fornisco un percorso completo all'opzione. La soluzione è installare una seconda istanza di sublime da un pacchetto deb.

Quando si installa sublime-text-2 da un pacchetto .deb, installa sotto /usr/bin && /usr/lib, il installato .desktop file viene memorizzato sotto /usr/share/applications, e la relativa riga si legge: icon=sublime_text.

Dov'è il collegamento che mi manca? In qualche modo Ubuntu sa come ottenere l'icona sublime_textnel secondo, ma non nel primo (di nuovo, anche con un percorso completo fornito).


Dove nella tua cartella home stai mettendo questo lanciatore?
Isaia,

Inoltre, quando viene visualizzato il messaggio: "foo non è un'applicazione registrata"?
Isaia,

@DoR: il mio sublime * .desktop è sotto /.local/share/applications. Il luogo più notevole in cui ricordo il messaggio "app registrata" è stato quando ho cercato di inserire una versione compilata da source di vim update-alternativesnell'elenco in modo che venisse visualizzata invece dell'installazione "predefinita". Utile? Indovina cosa sto cercando è il meccanismo che fornisce a Ubuntu la conoscenza di dove trovare (ad esempio) l'icona corretta per l'app A - come fa con i file * .desktop in /usr/share/applications/.
Tom,

Se imposti il ​​valore di "icona" nel tuo ~/.local/share/applicationslauncher su solo sublime_text( non il percorso completo, funziona?
Isaiah,

Risposte:


3

Penso che stai incontrando diversi problemi contemporaneamente con le installazioni di origine.

update-alternativesnon ti permetterà di impostare qualsiasi programma come applicazione preferita per un determinato nome. Il programma dovrà prima essere registrato con l' --installopzione. Per esempio:

sudo update-alternatives --set editor /home/peter/bin/foo
update-alternatives: error: alternative /home/peter/bin/foo for editor not registered, not setting.

Se vuoi vedere come viene effettuata la registrazione, controlla per esempio /var/lib/dpkg/info/nano.postinst.

Si noti, tuttavia, che sarebbe abbastanza falso definire un'alternativa a livello di sistema che punti alla home directory di alcuni utenti. Di solito ci sono variabili di ambiente o altre impostazioni per impostare una preferenza per un solo utente.

Il problema con il file desktop è probabilmente completamente separato, ma dovrai fornire maggiori dettagli su quali percorsi hai usato.

In generale, l'installazione di un'applicazione dall'origine può essere piuttosto difficile da integrare bene con il resto del sistema, a seconda dell'applicazione specifica.


Peter: Sì, penso che tu abbia colpito l'unghia ... e riflettendo sulla correzione il mio pensiero è la risposta. Sto usando il sistema su un laptop - solo un laptop che uso, accedo a, ecc. E, naturalmente, UNIX è un sistema operativo multiutente e definisce l'installazione del programma in quanto tale. L'icona è banale e credo che una stranezza. Ho trovato un file icona separato nei miei sublime-text postinstassegni come mi hai suggerito, quindi ora posso puntare l'installazione alternativa (all'interno di my $ HOME) a ​​un file specifico piuttosto che lasciarlo "auto-magicamente" dall'eseguibile. Lo segnerò chiuso / risolto poiché credo di avere ciò di cui ho bisogno ora.
Tom,

Come lo registriamo con --install?
fiatjaf,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.