Saya menggunakan melpa-stable sebagai repositori paket tambahan, tetapi salah satu paket yang saya suka gunakan (es) tidak tersedia di melpa-stable. Apakah ada cara untuk mengkonfigurasi package.el untuk menggunakan melpa-stable, tetapi menggunakan melpa untuk subset paket tertentu?
package
package-repositories
icicles
Timo Geusch
sumber
sumber
icicles
di melpa juga.Jawaban:
Gunakan opsi
package-archive-priorities
yang dibuat untuk tujuan ini. Untuk lebih memilih MELPA Stable daripada MELPA, tambahkan berikut ini ke file init Anda:Semakin tinggi angkanya, semakin tinggi prioritas arsip paket. Untuk setiap paket yang ada di banyak arsip, manajer paket Emacs mengambil paket dari arsip dengan prioritas tertinggi, dan mengabaikan paket di arsip lain, bahkan jika nomor versi lebih tinggi. Jika paket ada di dua arsip dengan prioritas yang sama, nomor versi yang lebih tinggi menang, dan akhirnya saya pikir urutannya
package-archives
.Saya merekomendasikan untuk secara eksplisit menetapkan prioritas untuk semua arsip, termasuk arsip GNU ELPA default, untuk menghindari ambiguitas. Meskipun arsip yang tidak ada
package-archive-priorities
memiliki prioritas default 0, terlalu mudah untuk melupakannya.package-archive-priorities
diperkenalkan di Emacs 25.1, untuk rilis sebelumnya lihat jawaban lama di bawah ini:Di Emacs 24 tidak mungkin untuk secara default menjadi MELPA Stable dan menggunakan MELPA hanya untuk paket tertentu secara umum. Tanpa paket kustomisasi. Default ke arsip menyediakan versi tertinggi , yaitu MELPA. Tidak ada antarmuka untuk mengubahnya.
Namun, pada Emacs 24.4 opsi baru
package-pinned-packages
memungkinkan Anda untuk menyematkan paket individual ke arsip, tetapi ini hanya memungkinkan Anda menerapkan kebalikan dari kebutuhan Anda: Default ke MELPA, dan menggunakan MELPA Stable untuk paket tertentu.Karenanya, saat ini satu-satunya pilihan Anda adalah mengisi
package-pinned-packages
dengan semua paket yang ingin Anda gunakan, baik secara manual atau dengan beberapa kode Emacs Lisp. Catatan yangpackage-pinned-packages
harus ditetapkan sebelum memanggilpackage-refresh-contents
karena pinning dievaluasi saat membangun indeks paket , dan bukan ketika menginstal paket.Solusi jangka panjang adalah
M-x report-emacs-bug
meminta pengembang Emacs untuk mengimplementasikan beberapa jenis fitur "arsip default", atau meminta pengelola es untuk membuat rilis yang ditandai dengan benar sehingga MELPA Stable dapat membuat paket yang stabil untuknya. Namun, tidak ada yang berubah menjadi mudah, karena yang pertama membutuhkan perubahan yang lebih besar pada package.el, dan yang terakhir bahwa es-es dipindahkan dari EmacsWiki ke beberapa repositori VCS yang tepat dengan tag, yang saya kira pengelolanya tidak mau melakukannya, karena jika mereka, mereka akan melakukannya sejak lama.sumber
Di sini Anda berdiskusi tentang penggunaan kedua repositori secara paralel, jadi ini harus dilakukan dengan 24.4; sudahkah Anda mencoba misalnya dengan defun untuk memperbarui daftar repo, kemudian paradoks-butuhkan , dan akhirnya kembali ke daftar repo asli?
sumber