Jak mogę zainstalować pakiet bez instalowania niektórych zależności?


74

Próbuję zainstalować pakiet LaTeXila, a dane wyjściowe wyglądają następująco:

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

Nie chcę instalować pakietów texlive. Texlive zainstalowałem ręcznie z http://www.tug.org/texlive/ . Jakieś sugestie?


dodaj program, a następnie usuń pakiety, których nie chcesz. Podczas instalowania takiego programu wystarczy pobrać / zainstalować zestaw pakietów. Musisz zmienić zawartość pakietu i nie możesz tego zrobić jako użytkownik.
Alvar,

8
Naprawdę powinno tu być trochę możliwości dla zaawansowanych użytkowników. Powinien albo pozwolić mi instalować rzeczy bez określonych zależności, albo pozwolić mi twierdzić, że coś jest zainstalowane, nawet jeśli nie jest zainstalowane. Gdybym chciał być traktowany tak, jakbym nie wiedział, co robię, trzymałbym się Windowsa.
Alex

cóż, jeśli naprawdę nie chcesz całego pakietu, po prostu zainstaluj określone pliki i mam nadzieję, że zadziała.
Alvar,

2
alex - myślę, że mogłem przypadkowo rzucić głos negatywny. Od dawna mam zwyczaj przewijania stron internetowych po lewej stronie na touchpadzie. Na tej stronie zdarzyło mi się to kilka razy, być może nie zauważyłem, że zdarzyło się to na twoim. (życzenie głosowania miało potwierdzenie). Innym rozwiązaniem tego problemu jest utworzenie pakietu ekwiwalentów. Nie najprostszy do czegoś takiego jak texlive, choć wykonalny. Niektóre informacje tutaj i powiązany przykład - tug.org/texlive/debian.html
Doug

Odpowiedzi:


74

apt-get tego nie zrobi, ale dpkg zrobi to.

apt-get download latexila latexila-data

Spowoduje to pobranie binarnych plików .deb, ale nie będzie próby ich zainstalowania.

Teraz możesz użyć dpkg, aby wymusić ich instalację.

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

Wywołam echo ostrzeżenia na stronie podręcznika dpkg tutaj:

Ostrzeżenie: Te opcje są przeznaczone głównie dla ekspertów. Używanie ich bez pełnego zrozumienia ich efektów może uszkodzić cały system.

Jeśli po próbie system przestanie działać, możesz po prostu spróbować usunąć dane z lateksy i lateksy. Powodzenia.


To powinno być oznaczone jako odpowiedź, bardzo prosta i bezpośrednia metoda punktowa.
Severo Raz,

Świetna odpowiedź. Chciałem zainstalować asciidoc tylko po to, żeby napisać dokumentację w formie strony podręcznika i HTML. 382 megabajty śmieci lateksowych! Teraz mam tylko asciidoc, dzięki.
Kaz

5
@WolterHellmund To absolutnie nie powinna być zaakceptowana odpowiedź, ponieważ ignorowanie zależności powoduje niespójność bazy danych, która spowoduje problemy podczas aktualizacji pakietów lub instalowania powiązanych pakietów. Właściwym rozwiązaniem jest ekwiwalent, zgodnie z zaleceniami Henrique .
Gilles

13

Oto instrukcje następujące po stronie TUG na TeX Live i Debian / Ubuntu :

  1. Zainstaluj waniliowy TeX Live jako root, w całym systemie.
  2. Upewnić się, że jedynymi Debian TEX Live są zainstalowane pakiety tex-common, texinfoi może lmodern.
  3. Dodaj katalog bin do TEX Live ENV_PATHw /etc/login.defs.
  4. Poinformuj APT o swojej instalacji TeX Live, budując fikcyjny pakiet, używając 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

W kroku „edytuj texlive-local” edytuj odpowiednio pole Maintainer i listę pakietów dostarczonych przez lokalną instalację TeX Live. Jeśli zainstalowano scheme-fullinaczej, collection-texinfoniż zalecane, plik powinien wyglądać tak jak w tym przykładzie

(Zasadniczo trzeba stworzyć fałszywy pakiet, aby oszukać apt-get)

Inne sposoby zobacz także Jak zainstalować „waniliowy” TeXLive na Debianie lub Ubuntu? na TeX.SX.


2
Myślę, że to poprawna odpowiedź.
Marnen Laibow-Koser

6

po zrobieniu

aptitude install [packagename]

Masz pytanie, czy chcesz zainstalować wszystkie wymienione pakiety .. jeśli istnieje pakiet, którego nie chcesz instalować, np. Mysql-server, ponieważ jest on odciążony na innym serwerze w odpowiedzi na odpowiedź tak / nie za pomocą

:mysql-server

3

Znajdź listę pakietów, które nie spełniają zależności.

Pobierz plik .deb za pomocą apt-get download. Następnie użyj

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

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.