Làm thế nào tôi có thể cài đặt một gói mà không cần cài đặt một số phụ thuộc?


74

Tôi đang cố gắng cài đặt gói LaTeXila và đầu ra trông như thế này:

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

Tôi không muốn cài đặt các gói texlive. Tôi đã cài đặt texlive thủ công từ http://www.tug.org/texlive/ . Bất kỳ đề xuất?


thêm chương trình và sau đó loại bỏ các gói bạn không muốn. Khi bạn cài đặt một chương trình như vậy, bạn chỉ cần tải xuống / cài đặt một bộ các gói. Bạn cần thay đổi những gì được bao gồm trong gói và bạn không thể làm điều đó với tư cách là người dùng.
Alvar

8
Thực sự cần có một số khả năng sử dụng năng lượng ở đây. Nó sẽ cho phép tôi cài đặt mọi thứ mà không phụ thuộc cụ thể hoặc để tôi tuyên bố rằng một cái gì đó được cài đặt ngay cả khi nó không thực sự được cài đặt. Nếu tôi muốn được đối xử như thể tôi không biết mình đang làm gì, tôi sẽ sử dụng Windows.
Alex

tốt nếu bạn thực sự không muốn toàn bộ gói, sau đó chỉ cần cài đặt các tệp cụ thể và hy vọng nó hoạt động.
Alvar

2
alex - Tôi nghĩ rằng tôi có thể đã vô tình bỏ downvote. Tôi có thói quen lâu năm là cuộn các trang web xuống phía bên trái trên bàn di chuột. Trên trang này tôi đã có điều này xảy ra một vài lần, có thể tôi đã không nhận thấy điều đó xảy ra với bạn. (muốn bỏ phiếu đã có xác nhận). Một giải pháp khác cho vấn đề của bạn là tạo một gói Equivs. Không phải là đơn giản nhất cho một cái gì đó như texlive mặc dù có thể làm được. Một số thông tin ở đây và một ví dụ được liên kết - tug.org/texlive/debian.html
doug

Câu trả lời:


74

apt-get sẽ không làm điều này, nhưng dpkg sẽ.

apt-get download latexila latexila-data

Điều đó sẽ tải xuống các tệp .deb nhị phân nhưng sẽ không cố cài đặt chúng.

Bây giờ bạn có thể sử dụng dpkg để buộc cài đặt chúng.

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

Tôi sẽ lặp lại cảnh báo trong trang người đàn ông dpkg ở đây:

Cảnh báo: Các tùy chọn này chủ yếu chỉ được sử dụng bởi các chuyên gia. Sử dụng chúng mà không hiểu đầy đủ tác dụng của chúng có thể phá vỡ toàn bộ hệ thống của bạn.

Nếu hệ thống của bạn bị hỏng sau khi thử điều này, bạn có thể thử xóa dữ liệu latexila và latexila. Chúc may mắn.


Điều này nên được đánh dấu là câu trả lời, rất đơn giản và đi thẳng vào phương pháp điểm.
Severo Raz

Câu trả lời chính xác. Tôi muốn cài đặt asciidoc chỉ để viết tài liệu dưới dạng manpage và HTML. 382 megabyte rác latex! Bây giờ tôi chỉ có asciidoc, cảm ơn.
Kaz

5
@WolterHellmund Đây hoàn toàn không phải là câu trả lời được chấp nhận, vì bỏ qua các phụ thuộc dẫn đến cơ sở dữ liệu không nhất quán sẽ gây rắc rối khi bạn nâng cấp các gói hoặc cài đặt các gói liên quan. Giải pháp đúng là đẳng thức, theo khuyến cáo của henrique .
Gilles

13

Dưới đây là các hướng dẫn sau trang TUG trên TeX Live và Debian / Ubuntu :

  1. Cài đặt vanilla TeX Live dưới dạng root, toàn hệ thống.
  2. Đảm bảo rằng Debian TeX gói trực tiếp chỉ được cài đặt là tex-common, texinfo, và có lẽ lmodern.
  3. Thêm thư mục bin của TeX Live ENV_PATHvào /etc/login.defs.
  4. Nói với APT về cài đặt TeX Live của bạn bằng cách xây dựng gói giả bằng cách sử dụng 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

Ở bước "chỉnh sửa texlive-local", hãy chỉnh sửa trường Duy trì và danh sách các gói được cung cấp bởi cài đặt TeX Live cục bộ của bạn nếu phù hợp. Nếu bạn đã cài đặt scheme-fulltrừ collection-texinfokhi được khuyến nghị, tệp sẽ trông giống như ví dụ này

(Về cơ bản, người ta phải tạo ra một gói giả để đánh lừa apt-get)

Để biết các cách khác, hãy xem thêm Cách cài đặt vanilla chanh TeXLive trên Debian hoặc Ubuntu? trên TeX.SX.


2
Tôi nghĩ rằng đây là câu trả lời chính xác.
Marnen Laibow-Koser

6

sau khi làm

aptitude install [packagename]

Bạn có câu hỏi nếu bạn muốn cài đặt tất cả các gói được đề cập .. nếu có một gói bạn không muốn cài đặt như máy chủ mysql vì nó được chuyển đến một máy chủ khác để trả lời câu trả lời của bạn

:mysql-server

3

Tìm danh sách các gói không đáp ứng phụ thuộc.

Tải xuống tệp .deb với apt-get download. Sau đó sử dụng

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

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.