¿Cómo puedo instalar un paquete sin instalar algunas dependencias?

74

Estoy tratando de instalar el paquete LaTeXila, y la salida se ve así:

$ 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]?

No quiero instalar los paquetes texlive. He instalado texlive manualmente desde http://www.tug.org/texlive/ . ¿Alguna sugerencia?

Alex
fuente
agregue el programa y luego elimine los paquetes que no desea. Cuando instala un programa como ese, simplemente descarga / instala un conjunto de paquetes. Debe cambiar lo que se incluye en el paquete y no puede hacerlo como usuario.
Alvar
8
Realmente debería haber alguna capacidad de usuario avanzado aquí. Debería permitirme instalar cosas sin dependencias específicas, o afirmar que algo está instalado incluso si no está realmente instalado. Si quisiera ser tratado como si no supiera lo que estoy haciendo, me quedaría con Windows.
Alex
bueno, si realmente no quieres el paquete completo, entonces solo instala los archivos específicos y espera que funcione.
Alvar
2
alex - Creo que sin querer he emitido el voto negativo. Tengo la costumbre de desplazar páginas web por el lado izquierdo en un panel táctil. En este sitio, esto me ha sucedido varias veces, posiblemente no noté que sucedía en el tuyo. (deseo de votar tenía una confirmación). Otra solución a su problema es crear un paquete equivs. No es el más simple para algo como texlive aunque factible. Alguna información aquí y un ejemplo vinculado - tug.org/texlive/debian.html
doug

Respuestas:

74

apt-get no hará esto, pero dpkg lo hará.

apt-get download latexila latexila-data

Eso descargará los archivos binarios .deb pero no intentará instalarlos.

Ahora puede usar dpkg para forzar su instalación.

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

Haré eco de la advertencia en la página de manual de dpkg aquí:

Advertencia: estas opciones están destinadas principalmente a ser utilizadas únicamente por expertos. Usarlos sin comprender completamente sus efectos puede dañar todo su sistema.

Si su sistema no funciona después de intentar esto, puede intentar eliminar latexila y latexila-data. Buena suerte.

achiang
fuente
Esto debe marcarse como la respuesta, muy simple y directo al método de punto.
Severo Raz
Gran respuesta. Quería instalar asciidoc solo para escribir documentación en forma de página de manual y HTML. ¡382 megabytes de basura de látex! Ahora solo tengo el asciidoc, gracias.
Kaz
55
@WolterHellmund Esta no debería ser la respuesta aceptada, ya que ignorar las dependencias da como resultado una base de datos inconsistente que causará problemas al actualizar paquetes o instalar paquetes relacionados. La solución correcta es equivs, según lo recomendado por henrique .
Gilles 'SO- deja de ser malvado'
13

Aquí están las instrucciones que siguen a la página TUG en TeX Live y Debian / Ubuntu :

  1. Instale Vanilla TeX Live como root, en todo el sistema.
  2. Asegúrese de que los paquetes de Debian sólo TeX Live son instalados tex-common, texinfoy, tal vez lmodern.
  3. Agregue el directorio bin de TeX Live ENV_PATHen /etc/login.defs.
  4. Informe a APT sobre su instalación de TeX Live mediante la creación de un paquete ficticio utilizando 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

En el paso "editar texlive-local", edite el campo Mantenedor y la lista de los paquetes proporcionados por su instalación local de TeX Live según corresponda. Si instaló, scheme-fullexcepto collection-texinfocomo se recomienda, el archivo debería verse como este ejemplo

(Básicamente, uno tiene que crear un paquete ficticio para engañar apt-get)

Para otras formas, vea también ¿Cómo instalar TeXLive "vanilla" en Debian o Ubuntu? en TeX.SX.

Henrique
fuente
2
Creo que esta es la respuesta correcta.
Marnen Laibow-Koser
6

Después de hacer

aptitude install [packagename]

Tiene la pregunta de si desea instalar todos los paquetes que se mencionan ... si hay un paquete que no desea instalar como mysql-server porque está descargado a otro servidor en lugar de responder y / n responder con

:mysql-server
Daniel van den Oord
fuente
3

Encuentre la lista de paquetes que no cumplen con la dependencia.

Descargue el archivo .deb con apt-get download. Luego usa

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

Archisman Panigrahi
fuente