Saya ingin menginstal dua (atau lebih) versi dari paket yang sama di sistem Gentoo saya. Saya tahu pasti tidak akan ada bentrokan file, karena ada sangat sedikit file yang diinstal dan masing-masing diberi nama sesuai versi.
Saya tahu tentang slot, tetapi ini ditentukan dalam file ebuild, dan mari kita asumsikan saya tidak ingin mengedit file ebuild karena beberapa alasan.
Saya ingin versi yang diinstal menjadi bagian dari paket dunia, sehingga dapat diinstal ulang atau dihapus seperti biasa.
Apakah ada cara untuk menginstal beberapa versi dari paket yang sama? Apakah Anda tahu beberapa trik Portage untuk mencapai itu?
package-management
gentoo
version
emerge
Laurent Pireyn
sumber
sumber
Jawaban:
Itulah gunanya slot. Jika paket tersebut tidak ditempatkan maka satu-satunya hal yang dapat saya pikirkan adalah membuat overlay pribadi dan paket / ebuild baru yang ditempatkan.
sumber
Saya pikir secara teori Anda bisa melakukan sesuatu yang konyol seperti:
Tetapi pada dasarnya semua hal non-overlay sangat tunduk pada beberapa batasan dan persyaratan tambahan yang tidak banyak informasi.
sumber
Apa yang mungkin Anda coba (saya tidak yakin apakah itu berfungsi seperti yang diharapkan) adalah digunakan
/etc/portage/env
untuk mengatur SLOT versi paket tertentu. Ini mungkin tidak berhasil karena caching metadata. Bahkan jika itu berhasil, ini adalah dendam dan dapat mengakibatkan perilaku yang tidak terduga. Seperti biasa, jika rusak, Anda bisa menyimpan potongannya.sumber
Ini adalah pertanyaan lama, tetapi masih valid, dan belum ada yang mengusulkan pendekatan sederhana berikut:
Jika Anda tidak ingin membuat slot, dan Anda tahu file tidak bertabrakan, cukup buat ebuild baru di overlay lokal Anda (setelah mengatur overlay lokal di make.conf) dan beri nama berbeda. Mungkin sesuatu seperti 'mypkg.ebuild'. Tidak ada undang-undang yang menyatakan nama ebuild dan file yang diinstal harus berbagi nama yang sama. Salin file pkg.ebuild portage ke /usr/local/portage/app-class/mypkg-newversion.ebuild, buat perubahan yang diperlukan untuk versi baru, ebuild dan emerge.
Ingatlah bahwa Anda tidak akan dapat menggunakan beberapa nama variabel yang telah ditentukan ($ {P} et al) saat mengambil sumber.
sumber
Hal potensial lain untuk dijelajahi adalah Awalan Gentoo
Yang mungkin merupakan alternatif yang layak jika Anda tidak keberatan mempertahankan 2 ekosistem Gentoo untuk menyediakan paket "alternatif".
Ini pada dasarnya menciptakan "sub-ruang" untuk lingkup proyek yang diberikan, dan kemudian menggunakan Gentoo secara berbeda dalam lingkup proyek tersebut.
sumber