Kullanım paketi ile kurulan paketler nasıl güncellenir?


24

use-packagePaketleri kurmak ve yapılandırmak için kullanıyorum (bu paketlerin çoğu melpa'da). Tüm bu paketleri güncel tutmanın otomatik bir yolu var mı?

Değilse, bu durumda en iyi iş akışı nedir?

Not: Burada cevapla çok benzer bir soru, ancak "Güncelleştirmeleri yüklemeyle yine de uğraşmanız gerekecek" konusunda açıklama yapmak istedim. Yeterli üne sahip olmadığım için açıklama cevabı üzerine yorum yapamam.

Yanıtlar:


16

Bunu sadece el ile yapıyorum: mevcut yükseltmeleri işaretlemek için list-packagesisabet çalıştırın U, ardından almak istemediğim bir karar olup olmadığına karar verin. Ardından xyükseltmek için. Bunu düzenli aralıklarla yapıyorum ve sıklıkla aynı anda neyin yeni olduğunu kontrol ediyorum. Bunu basitleştirmek için bir çift ayarım var (aşağıya bakınız).

Güncellemenin otomatik olabileceğinden kuşkulanıyorum, ancak bir güncellemenin bir şeyleri bozduğu durumu göz önünde bulundurmanız ve geri yüklemeniz ve ardından otomatik güncelleyicinizin tekrar yüklemesini önlemeniz gerekir.

Bazı paket menüsü tweaks:

(defun package-menu-find-marks ()
  "Find packages marked for action in *Packages*."
  (interactive)
  (occur "^[A-Z]"))

;; Only in Emacs 25.1+
(defun package-menu-filter-by-status (status)
  "Filter the *Packages* buffer by status."
  (interactive
   (list (completing-read
          "Status: " '("new" "installed" "dependency" "obsolete"))))
  (package-menu-filter (concat "status:" status)))

(define-key package-menu-mode-map "s" #'package-menu-filter-by-status)
(define-key package-menu-mode-map "a" #'package-menu-find-marks)

Bununla s newhangi paketlerin yeni kullanılabildiğini görmek için kullanabilirim. Ve Uyükseltmeleri işaretlemek için vurduktan sonra a, neyin değiştiğinin ayrıntılarını kazmak istersem, işaretlenenlerin bir arabellek listesi için vurabilirim .


Teşekkürler, sorular öncelikle cevaplanır. aişaretli paketleri bulmak için çalıştı. Ancak, s installedveya kalan diğer üç durumdan herhangi biri boş bir liste döndürür.
Jaagrit Sapana

Hangi Emac sürümünü kullanıyorsunuz?
glucas

24.5.1 kullanıyorum
Jaagrit Sapana

Ah tamam. Kontrol ettim ve package-menu-filterkomut 25.1'de yeni, bu komut sizin için işe yaramaz.
glucas

Bunu her pazartesi sabahı yapıyorum
Ricky Nelson

10

auto-package-updatePaketleri otomatik olarak güncellemek için kullanabilirsiniz .

Diğer postalarımdan kopyalandı ( /emacs//a/31903/9972 )

(use-package auto-package-update
   :ensure t
   :config
   (setq auto-package-update-delete-old-versions t
         auto-package-update-interval 4)
   (auto-package-update-maybe))

Bu kurulumla birlikte, paketler her 4gün güncellenecek ve eski paketler kaldırılacaktır.



0

Paket yönetimi komutlarını genişleten paradoks adında şiddetle tavsiye edilen bir paket var. Https://github.com/Malabarba/paradox adresinden daha fazla bilgi alabilirsiniz.

(use-package paradox
  :init
  (setq paradox-github-token t)
  (setq paradox-execute-asynchronously t)
  (setq paradox-automatically-star t))

Bu kurulum, ayrı bir set github token kullanarak paket kullanım istatistiklerini sisteme geri besler paradox-upgrade-packagesve seçtiğiniz tuşlara bağlı komutu manuel olarak çalıştırdığınızda arka planda paketleri günceller .

paradox-github-tokenNasıl ayarlanacağıyla ilgili değişkenin satır içi belgelerini okuyun .


0

Sadece liste paketlerini girin ve ÜSTKRKT + U tuşlarına basın. Bir güncelleme için kurulu tüm paketleri işaretler.


Kesinlikle tam otomatik değil.
JeanPierre
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.