Bagaimana saya bisa memaksa apt untuk mengoptimalkan pohon ketergantungan untuk ukuran unduhan minimal?

10

Beberapa informasi latar belakang :

Seperti yang Anda ketahui, dalam paket Debian, mungkin ada dependensi alternatif, yang ditulis dalam file CONTROL Depends: apache2|something-else, misalnya. Bagaimana cara aptmemilih dependensi mana yang harus dipilih, dan bagaimana saya bisa menimpanya sehingga saya dapat meminimalkan ukuran unduhan?

Saya memiliki koneksi yang lambat di beberapa lokasi dan membutuhkannya untuk menggunakan ukuran unduhan total terkecil. Bagaimana saya bisa memaksanya untuk melakukannya?

Sunting: Saya tidak bertanya tentang melewatkan rekomendasi.

Sunting 2: Saya tidak bertanya tentang melewatkan ketergantungan. Saya mencoba untuk mendapatkan semua dependensi, hanya dalam ukuran total terkecil, terutama mencatat dan melintasi package1|package2pilihan.

Sunting 3: grepSkrip shell atau sebaliknya dapat diterima.

Sayangnya, karena jawaban saat ini tidak benar-benar menjawab pertanyaan, mereka tidak dapat benar-benar mendapatkan hadiah. Masih ada di luar sana untuk seseorang yang mau menulis skrip bash!

Sunting 4: Meskipun bounty telah diberikan kepada jawaban yang baik yang saya anjurkan untuk Anda utamakan, saya masih mencari jawaban yang lebih konkret . Jika itu juga menangani paket virtual yang disediakan oleh satu atau lebih paket secara elegan, maka saya mungkin akan memberikan hadiah lain untuk memberikan jawaban itu .

nanofarad
sumber

Jawaban:

3

Anda selalu dapat mendaftarkan semua dependensi dengan tangan Anda dapat menginstal paket yang lebih baik Anda instal tetapi saya telah mencari halaman manual dan beberapa forum, tetapi saya tidak dapat menjawab pertanyaan persis Anda selain menulis ulang sumber menjadi apt itu bagaimana opensource bekerja lagian.

David
sumber
Ini mungkin membantu tetapi saya akan membutuhkan sesuatu yang lebih spesifik dari itu. Coba pertajam postingan Anda dengan lebih detail, atau skrip shell saat Anda melakukannya, dan selamat datang di Tanya Ubuntu !.
nanofarad
1
@ ObsessiveSSOℲ Jujur saya tidak punya waktu, namun jika Anda ingin melakukannya maka perintah ini: VAR = $ (apt-cache show gedit | grep "Size" | grep -Ev 'I' | sed 's / Size: // g ') akan memberi Anda ukuran paket yang bisa Anda gunakan untuk membandingkan dengan nilai-nilai dalam array yang dihuni menggunakan perintah ini. Maaf saya tidak bisa membantu lagi.
David
Jika tidak ada yang lebih baik didapat, Anda benar-benar pemenang karunia ini.
nanofarad
@ ObsessiveSSOℲ dapatkah Anda memberikan contoh sebuah paket dengan alt dependancies
David
Sesuatu yang sederhana wordpress, yang melibatkan apache2|httpd. Perhatikan juga bahwa itu httpdadalah paket virtual. Saya juga akan memberi Anda hadiah. Saya tidak akan menerimanya dulu.
nanofarad
1

Sejauh yang saya tahu, tidak ada cara untuk mengoptimalkan itu. Sebagian besar hal sudah sangat terkompresi, jadi Anda tidak mengunduh hampir seluruh ukuran file. (Lain kali Anda menginstal paket, lihat perbedaan antara jumlah data yang akan diunduh dan total ruang hard drive yang akan dikonsumsi.)

Jika Anda tahu apa yang Anda lakukan, (misalnya, Anda sudah menginstal foo, tetapi dikatakan bahwa Anda perlu menginstalnya kembali,) dan ingin mematikan semua dependensi ketika Anda menginstal file, tambahkan flag --no-install-recommends.
Beberapa jawaban untuk pertanyaan ini menjelaskan cara menginstal paket tertentu tanpa dependensi. Mereka membahasnya sedikit lebih dalam dari saya, jadi jika Anda masih mengalami masalah atau jawaban saya tidak menyelesaikan masalah Anda, saya sarankan untuk melihat utas itu.

JamesTheAwesome Bung
sumber
-2

Saya pikir Anda bingung bagaimana ketergantungan bekerja. Jika sesuatu tergantung - maka menurut definisi itu diperlukan. Saya kira apa yang bisa Anda lakukan adalah mencari tahu file mana dari ketergantungan aplikasi yang Anda inginkan ... dan menghapus semua yang tidak dipanggil .. tapi itu sepertinya banyak pekerjaan untuk beberapa megabyte ..

Anda tampaknya meminta mobil yang masih bisa mengemudi tanpa roda 4 (misalkan 'kiri-belakang', demi metafora ini), untuk menghemat berat. Pada titik tertentu Anda harus belok Kanan. Mobil masih akan berputar, tetapi hanya dengan fungsi tertentu ... dengan tidak menginstal 'Direkomendasikan' saya pikir Anda akan seringan mungkin tanpa harus mempelajari pengembangan.

knope
sumber
6
Anda benar-benar tidak mengerti pertanyaan itu. Dia tahu ketergantungan. Tetapi Anda harus tahu bahwa, bisa ada dua paket yang memuaskan ketergantungan yang sama. dalam hal itu, ia menginginkan yang berukuran kurang
Anwar
IMO sangat disayangkan bahwa jawaban ini harus menderita downvotes. Itu jawaban yang baik, dan saya harap tidak ada yang berkecil hati. Pastikan Anda menjawab pertanyaan itu.
nanofarad
@ as ty untuk klarifikasi dan informasi. :) (saya tidak keberatan dengan suara turun.)
knope
Saya tidak menurunkan suara Anda terlebih dahulu, hanya menjelaskan masalahnya. tapi sekarang, saya sudah memberikan, karena jawabannya tidak membahas masalah @ ObsessiveSSOℲ berbicara dalam pertanyaannya
Anwar