Gestione pacchetti e aggiornamenti

Sto utilizzando emacs in modo stabile ormai da diverso tempo e volevo capire se c’era un modo migliore, rispetto a Package.el, per gestire i pacchetti installati e soprattutto per gli aggiornamenti in modo da non rompere tutto ad ogni aggiornamento.

Ho notato che i principali pacchetti che fanno questo sono:

Arrivando al punto c’e’ qualcuno che li usa e mi sa dare i pro ed i contro di questi pacchetti oppure ha altri strumenti/pacchetti da consigliarmi, io faccio un uso massiccio di use-packages quindi devono essere compatibile con lui.

Grazie :muscle:

È da quasi un anno oramai che utilizzo straight.el, e mi trovo molto bene. Raramente (quasi mai), emacs mi si rompe, e se si rompe tendenzialmente è colpa mia.

La cosa che mi piace di straight è che genera un lockfile che specifica tutte le versioni che stai utilizzando. Questo permette alle config di Emacs di essere facilmente trasportabili da una macchina all’altra.

Top riferimento in merito:

Dato che utilizzo use-package nel mio config c’è

(straight-use-package 'use-package)
(require 'use-package)

e poi nei singoli pacchetti metto

(use-package multi-vterm
  :straight t
  )

le funzioni offerte sono poche e utili, tra cui

  • straight-pull-all, per fare upgrade di tutti i pacchetti
  • straight-freeze-versions, per generare un lock file che binda i vari pacchetti a specifiche versioni
  • straight-thaw-versions, per fare in modo che il lock file sia effettivamente caricato

Il lock file è molto semplice ed è strutturato nel seguente modo

(("beacon" . "85261a928ae0ec3b41e639f05291ffd6bf7c231c")
 ("better-shell" . "70c787b981caeef8c5f8012b170eb7b9f167cd13")
 ("bluetooth" . "33917b058dbbfa2273b231834709c03d47c9fb78")
 ("company-mode" . "9c12b02620ed8a7ae5369fc90217f1c730e48fa6")
 ("compat" . "605f224633eb28efbe62252605515ce3d557e19f")
 ("yasnippet" . "52a1c5031912243c791c55e0fe345d04f219b507"))
:gamma

Secondo me uno vale l’altro alla fine, l’importante è che funziona e che non ci si deve investire troppo tempo per configurarlo, specialmente per pacchetti come questi.

1 Like

Perfetto, adesso mi recupero il video di System Crafter e vedo come configurare il tutto, grazie mille XD