Come posso installare un pacchetto senza installare alcune dipendenze?


74

Sto cercando di installare il pacchetto LaTeXila e l'output è simile al seguente:

$ sudo apt-get install latexila --no-install-recommends
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  latexila-data latexmk luatex tex-common texlive-base texlive-binaries
  texlive-common texlive-doc-base texlive-latex-base
Suggested packages:
  rubber texlive-latex-extra debhelper
Recommended packages:
  texlive texlive-latex-recommended texlive-luatex lmodern
  texlive-latex-base-doc
The following NEW packages will be installed:
  latexila latexila-data latexmk luatex tex-common texlive-base
  texlive-binaries texlive-common texlive-doc-base texlive-latex-base
0 upgraded, 10 newly installed, 0 to remove and 0 not upgraded.
Need to get 29.3 MB of archives.
After this operation, 74.5 MB of additional disk space will be used.
Do you want to continue [Y/n]?

Non voglio installare i pacchetti texlive. Ho installato texlive manualmente da http://www.tug.org/texlive/ . Eventuali suggerimenti?


aggiungere il programma e quindi rimuovere i pacchetti che non si desidera. Quando installi un programma del genere, scarichi / installi un set di pacchetti. Devi cambiare ciò che è incluso nel pacchetto e non puoi farlo come utente.
Alvar,

8
Dovrebbero esserci davvero alcune funzionalità per utenti esperti qui. Dovrebbe lasciarmi installare le cose senza dipendenze specifiche, oppure farmi affermare che qualcosa è installato anche se non è effettivamente installato. Se volessi essere trattato come se non sapessi cosa sto facendo, mi limiterei a usare Windows.
Alex,

bene, se davvero non vuoi l'intero pacchetto, installa semplicemente i file specifici e spero che funzioni.
Alvar,

2
alex - Penso che potrei aver inavvertitamente lanciato il downvote. Ho una lunga abitudine di scorrere le pagine Web sul lato sinistro su un touchpad. Su questo sito ho avuto questo episodio alcune volte, forse non ho notato accadere sul tuo. (vorrei che il voto avesse una conferma). Un'altra soluzione al tuo problema è quella di creare un pacchetto equivs. Non è il più semplice per qualcosa come texlive sebbene fattibile. Alcune informazioni qui e un esempio collegato - tug.org/texlive/debian.html
doug

Risposte:


74

apt-get non lo farà, ma dpkg lo farà.

apt-get download latexila latexila-data

Ciò scaricherà i file binari .deb ma non tenterà di installarli.

Ora puoi usare dpkg per forzare l'installazione.

dpkg --force-all -i <name of the .deb files you downloaded>

Farò eco all'avvertimento nella pagina man di dpkg qui:

Avvertenza: queste opzioni sono principalmente destinate ad essere utilizzate solo da esperti. Usarli senza comprenderne appieno gli effetti può danneggiare l'intero sistema.

Se il tuo sistema si rompe dopo aver tentato questo, puoi semplicemente provare a rimuovere latexila e latexila-data. In bocca al lupo.


Questo dovrebbe essere contrassegnato come risposta, molto semplice e diretto al metodo puntuale.
Severo Raz,

Bella risposta. Volevo installare asciidoc solo per scrivere documentazione sotto forma di manpage e HTML. 382 megabyte di immondizia in lattice! Ora ho solo l'asciidoc, grazie.
Kaz,

5
@WolterHellmund Questa non dovrebbe assolutamente essere la risposta accettata, poiché ignorare le dipendenze si traduce in un database incoerente che causerà problemi quando si aggiornano i pacchetti o si installano i pacchetti correlati. La soluzione giusta è equivs, come raccomandato da Henri .
Gilles 'SO- smetti di essere malvagio'

13

Ecco le istruzioni che seguono la pagina TUG su TeX Live e Debian / Ubuntu :

  1. Installa Vanilla TeX Live come root, a livello di sistema.
  2. Assicurarsi che i soli pacchetti Debian TeX Live installati sono tex-common, texinfoe forse lmodern.
  3. Aggiungi la directory bin di TeX Live a ENV_PATHin /etc/login.defs.
  4. Informa APT della tua installazione di TeX Live creando un pacchetto fittizio usando equivs:


    $ aptitude install equivs # as root
    mkdir /tmp/tl-equivs && cd /tmp/tl-equivs
    equivs-control texlive-local
    # edit texlive-local (see below)
    $ equivs-build texlive-local
    $ sudo dpkg -i texlive-local_2011-1_all.deb

Al passaggio "modifica texlive-local", modifica il campo Maintainer e l'elenco dei pacchetti forniti dall'installazione TeX Live locale, a seconda dei casi. Se installato, scheme-fulltranne collection-texinfocome raccomandato, il file dovrebbe apparire come in questo esempio

(Fondamentalmente, si deve creare un pacchetto fittizio per ingannare apt-get)

Per altri modi, vedi anche Come installare TeXLive "vanilla" su Debian o Ubuntu? su TeX.SX.


2
Penso che questa sia la risposta corretta.
Marnen Laibow-Koser,

6

dopo averlo fatto

aptitude install [packagename]

Hai la domanda se vuoi installare tutti i pacchetti che sono menzionati .. se c'è un pacchetto che non vuoi aver installato come mysql-server perché è scaricato su un altro server istinto di rispondere con risposta y / n con

:mysql-server

3

Trova l'elenco di pacchetti che non soddisfano la dipendenza.

Scarica il file .deb con apt-get download. Quindi utilizzare

sudo dpkg -i --ignore-depends=<package(s) to ignore> package.deb

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.