Voglio installare emacs-snapshot da http://emacs.orebokech.com Ma c'è già un'istantanea di emacs nei repository di Ubuntu.
Come posso specificare il repository da cui verrà installato un pacchetto?
Voglio installare emacs-snapshot da http://emacs.orebokech.com Ma c'è già un'istantanea di emacs nei repository di Ubuntu.
Come posso specificare il repository da cui verrà installato un pacchetto?
Risposte:
È possibile specificare un repository con -t
opzione. Ad esempio, ho aggiunto il seguente repository /etc/apt/sources.list
per installare l'ultima versione di Iceweasel:
deb http://mozilla.debian.net/ squeeze-backports iceweasel-release
Come sapete, esiste un pacchetto identico iceweasel
nel repository Debian ufficiale. Se voglio installare Iceweasel da questo specifico repository, corro:
apt-get install -t squeeze-backports iceweasel
dalla pagina di manuale di apt-get:
-t, --target-release, --default-release
This option controls the default input to the policy engine, it creates a default pin at priority 990 using the specified
release string. This overrides the general settings in /etc/apt/preferences. Specifically pinned packages are not affected by
the value of this option. In short, this option lets you have simple control over which distribution packages will be retrieved
from. Some common examples might be -t '2.1*', -t unstable or -t sid. Configuration Item: APT::Default-Release; see also the
apt_preferences(5) manual page.
Penso che questa sia una soluzione migliore,
Fonte da: /ubuntu/27362/how-to-only-install-updates-from-a-specific-repository/57749#57749
Ho trovato una soluzione alternativa. Per prima cosa dovevo trovare i repository che avevano il pacakage:
$ apt-cache showpkg emacs-snapshot
Package: emacs-snapshot
Versions:
1:20100111-1~lenny1 (/var/lib/apt/lists/emacs.orebokech.com_dists_lenny_main_binary-amd64_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/emacs.orebokech.com_dists_lenny_main_binary-amd64_Packages
MD5: 906df684c212eabe267e6b5c2e8c2032
1:20090909-1 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_universe_binary-amd64_Packages)
Description Language:
File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_universe_binary-amd64_Packages
MD5: 906df684c212eabe267e6b5c2e8c2032
Reverse Depends: ...
...
Nelle versioni: sezione. Vedo le versioni che provengono da diversi repository:
Quindi ora diciamo a apt o aptitude di installare quella versione specifica:
$ sudo aptitude install emacs-snapshot=1:20100111-1~lenny1
nome-pacchetto = nome_ versione
Vittoria.
Non so ancora come usare un repository specifico. Ma in questo caso era sufficiente una versione specifica.
Esiste un file delle preferenze per apt. Penso che si trovi in / etc / apt, ma non è sicuro al 100%. Lì puoi impostare la priorità per un pacchetto da un repository su un valore superiore rispetto allo stesso pacchetto dal repository Ubunto. Per la sintassi esatta, cerca in man apt-get. Modifica il file, quindi installalo come di consueto con apt-get, recupererà dall'origine con la massima priorità. Assicurati solo in anticipo che il pacchetto da quel repository sia compilato per la tua distribuzione (ad es. Un binario debian può cercare dipendenze nei posti sbagliati) e per la tua versione del kernel (questo cambia abbastanza spesso durante il ciclo di vita di una versione di Ubuntu). Altrimenti è un caso se funzionerà.