Perbarui paket secara otomatis dan hapus versi lama


12

Saya agak kompulsif tentang memperbarui paket untuk semua sistem saya, jadi saya menemukan diri saya menjalankan list-packages-> U-> x-> y-> ycukup banyak setiap hari untuk memperbarui paket saya dan menghapus versi lama setelah pembaruan selesai. Bagaimana saya mengotomatiskan proses ini sehingga setidaknya saya harus menjalankan hanya satu fungsi untuk memperbarui, mengkompilasi, dan menghapus paket saya? Atau ada beberapa alasan saya mungkin tidak ingin melakukan itu?

Jawaban:


17

Berikut ini sekarang bagian dari paket Paradox. Hanya memohon paradox-upgrade-packages.


Ini harus dilakukan.

(defun endless/upgrade ()
  "Upgrade all packages, no questions asked."
  (interactive)
  (save-window-excursion
    (list-packages)
    (package-menu-mark-upgrades)
    (package-menu-execute 'no-query)))

Cukup periksa fungsi mana yang dipanggil oleh setiap langkah yang Anda sebutkan, dan lemparkan ke dalam fungsi interaktif. Biasanya, (y or n)prompt akan menjadi masalah, tetapi dengan package-menu-executemudah mengambil NO-QUERYargumen.


Jika semua paket terbaru, itu akan kembali No operations specified.
ChillarAnand

3

Anda dapat mengotomatiskan ini dengan Tong . Ini berfungsi untuk pengembangan paket, tetapi juga untuk konfigurasi pengguna. The dokumentasi memberikan rincian untuk pengaturan ini.

Selain itu, Pallet berguna untuk menjaga file Cask Anda tetap mutakhir dengan perubahan yang Anda buat di buffer * Packages *.


+1 Tong + Palet sangat bagus (tapi saya tidak menyarankan menggunakannya di Windows).
rsenna

Hmm, itu masalah, karena saya sering menggunakan Windows.
Ryan

@ rsenna Terima kasih atas informasinya. Saya tidak menjalankan sistem Windows, jadi saya tidak tahu mereka tidak bermain dengan baik.
Kyle Meyer

Bahkan Anda bisa menggunakan Tong + Pallet di Windows, dengan beberapa pekerjaan. Saya dapat mencapainya dengan menggunakan Cygwin, tetapi saya ingat itu jauh dari mudah ...
rsenna

Tong akan bekerja dengan baik di Windows setelah Anda menginstal Python. Saya tidak yakin tentang Pallet karena saya belum diuji. Tetapi dari melihat repo itu seharusnya tidak tergantung pada apa pun selain Tong + Emacs.
Jonathan Leech-Pepin

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.