Gunakan opsi package-archive-priorities
yang dibuat untuk tujuan ini. Untuk lebih memilih MELPA Stable daripada MELPA, tambahkan berikut ini ke file init Anda:
(setq package-archives
'(("GNU ELPA" . "https://elpa.gnu.org/packages/")
("MELPA Stable" . "https://stable.melpa.org/packages/")
("MELPA" . "https://melpa.org/packages/"))
package-archive-priorities
'(("MELPA Stable" . 10)
("GNU ELPA" . 5)
("MELPA" . 0)))
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 yang package-pinned-packages
harus ditetapkan sebelum memanggil package-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.