Close Menu
    DevStackTipsDevStackTips
    • Home
    • News & Updates
      1. Tech & Work
      2. View All

      Coded Smorgasbord: High Strung

      September 26, 2025

      Chainguard launches trusted collection of verified JavaScript libraries

      September 26, 2025

      CData launches Connect AI to provide agents access to enterprise data sources

      September 26, 2025

      PostgreSQL 18 adds asynchronous I/O to improve performance

      September 26, 2025

      Distribution Release: Neptune 9.0

      September 25, 2025

      Distribution Release: Kali Linux 2025.3

      September 23, 2025

      Distribution Release: SysLinuxOS 13

      September 23, 2025

      Development Release: MX Linux 25 Beta 1

      September 22, 2025
    • Development
      1. Algorithms & Data Structures
      2. Artificial Intelligence
      3. Back-End Development
      4. Databases
      5. Front-End Development
      6. Libraries & Frameworks
      7. Machine Learning
      8. Security
      9. Software Engineering
      10. Tools & IDEs
      11. Web Design
      12. Web Development
      13. Web Security
      14. Programming Languages
        • PHP
        • JavaScript
      Featured

      PHP 8.5.0 RC 1 available for testing

      September 26, 2025
      Recent

      PHP 8.5.0 RC 1 available for testing

      September 26, 2025

      Terraform Code Generator Using Ollama and CodeGemma

      September 26, 2025

      Beyond Denial: How AI Concierge Services Can Transform Healthcare from Reactive to Proactive

      September 25, 2025
    • Operating Systems
      1. Windows
      2. Linux
      3. macOS
      Featured

      Distribution Release: Neptune 9.0

      September 25, 2025
      Recent

      Distribution Release: Neptune 9.0

      September 25, 2025

      FOSS Weekly #25.39: Kill Switch Phones, LMDE 7, Zorin OS 18 Beta, Polybar, Apt History and More Linux Stuff

      September 25, 2025

      Distribution Release: Kali Linux 2025.3

      September 23, 2025
    • Learning Resources
      • Books
      • Cheatsheets
      • Tutorials & Guides
    Home»Operating Systems»Linux»Pacman: guida alla personalizzazione del gestore pacchetti di Arch Linux

    Pacman: guida alla personalizzazione del gestore pacchetti di Arch Linux

    May 7, 2025
    Pacman: guida alla personalizzazione del gestore pacchetti di Arch Linux

    Pacman è il cuore pulsante di Arch Linux, la distribuzione GNU/Linux apprezzata per la sua filosofia di semplicità, leggerezza e controllo totale da parte dell’utente. Nato per semplificare la gestione dei pacchetti software, Pacman si occupa di installare, aggiornare e rimuovere applicazioni e librerie, risolvendo automaticamente le dipendenze tra i pacchetti. Grazie alla sua velocità e affidabilità, è uno degli strumenti più amati dagli utenti Arch Linux e dalle sue derivate.

    Di base, però, Pacman può risultare un po’ essenziale, quasi “insipido” nell’aspetto e nelle funzionalità. Fortunatamente, il file di configurazione di Pacman (/etc/pacman.conf) offre molte possibilità per personalizzare il comportamento del gestore pacchetti, migliorandone l’efficienza, la sicurezza e persino l’esperienza visiva durante gli aggiornamenti.

    In questo articolo vedremo come potenziare Pacman con semplici modifiche e approfondiremo le opzioni più utili per adattarlo alle tue esigenze.

    Personalizzazioni base per rendere Pacman più piacevole e veloce

    Per iniziare, apri il file di configurazione con un editor di testo, ad esempio nano:

    <strong>sudo nano /etc/pacman.conf</strong>

    Le prime modifiche che consigliamo sono da inserire nella sezione [options]:

    • Color: rimuovi il commento dalla riga Color per abilitare la colorazione dell’output nel terminale, rendendo più leggibili i messaggi di Pacman. Oggi usare un terminale in bianco e nero è poco pratico e meno chiaro.
    • ILoveCandy: aggiungi questa opzione per sostituire la barra di avanzamento standard con una simpatica animazione a forma di caramelle. È un tocco visivo che rende l’aggiornamento più divertente, senza influire sulle prestazioni.
    • ParallelDownloads: abilita il download parallelo di più pacchetti contemporaneamente. Questa modifica è la più importante per velocizzare gli aggiornamenti, soprattutto su connessioni veloci. Puoi specificare anche un numero, ad esempio ParallelDownloads=5, per indicare quanti pacchetti scaricare simultaneamente.

    Ecco come potrebbe presentarsi dopo le modifiche suggerite:

    [options]
    Color
    ParallelDownloads = 5
    ILoveCandy

    Salva le modifiche con Ctrl+O, conferma con Invio e chiudi l’editor con Ctrl+X.

    Opzioni avanzate per personalizzare Pacman

    Il gestore dei pacchetti software Pacman consente di controllare quali aggiornamenti devono essere applicati al sistema. Se vuoi evitare che determinati pacchetti software o interi gruppi vengano aggiornati automaticamente, puoi utilizzare le seguenti opzioni:

    • IgnorePkg: permette di escludere specifici pacchetti dall’aggiornamento. Ad esempio, per evitare modifiche al kernel Linux o a driver critici, puoi aggiungere:
      IgnorePkg=linux
      IgnorePkg=linux-firmware
    • IgnoreGroup: blocca l’aggiornamento di gruppi di pacchetti, come ambienti desktop o strumenti particolari. Ad esempio:
      IgnoreGroup=plasma xfce

    Queste impostazioni sono utili per mantenere la stabilità del sistema e prevenire problemi su software sensibile o configurazioni personalizzate. Tuttavia, è importante rivedere periodicamente le esclusioni, per non compromettere la sicurezza del sistema con pacchetti non aggiornati.

    Gestione degli aggiornamenti

    • NoUpgrade Quando Pacman aggiorna un pacchetto, potrebbe sovrascrivere i file di configurazione modificati manualmente. Per evitare questo, puoi specificare i file che non devono essere aggiornati, utilizzando l’opzione NoUpgrade. In questo caso, Pacman creerà un file .pacnew contenente la nuova versione, lasciando intatto quello esistente. Potrai poi confrontare e integrare manualmente le modifiche.

    Un esempio di riga con NoUpgrade nel file /etc/pacman.conf potrebbe essere:

    NoUpgrade = /etc/pacman.conf /etc/mkinitcpio.conf

    In questo esempio, Pacman non aggiornerà i file di configurazione /etc/pacman.conf e /etc/mkinitcpio.conf durante gli aggiornamenti dei pacchetti che li includono, preservando le modifiche manuali che hai effettuato.

    Opzioni aggiuntive per il comportamento di Pacman

    Le seguenti opzioni permettono di ottenere un controllo più preciso sugli aggiornamenti e sul funzionamento di Pacman:

    • UseSyslog: Abilita il logging degli eventi di Pacman tramite il sistema syslog, centralizzando i log per un monitoraggio più efficace.
    • TotalDownload: Mostra dettagli sul download di ogni pacchetto, inclusi dimensione, velocità e tempo stimato.
    • CheckSpace: Verifica lo spazio libero su disco prima di installare pacchetti, prevenendo errori per insufficienza di spazio.
    • VerbosePkgLists: Fornisce informazioni dettagliate sui pacchetti installati o aggiornati, incluse versione corrente, nuova versione e repository software di provenienza.

    Ecco un esempio pratico di utilizzo di queste opzioni nel file di configurazione /etc/pacman.conf nella sezione [options]:

    # Abilita il logging degli eventi di Pacman nel sistema syslog
    UseSyslog

    # Mostra i dettagli sul download dei pacchetti (dimensione, velocità, tempo stimato)
    TotalDownload

    # Controlla lo spazio disponibile su disco prima di installare nuovi pacchetti
    CheckSpace

    # Visualizza informazioni dettagliate sui pacchetti installati o aggiornati
    VerbosePkgLists

    Esempio di comportamento in pratica: Immagina di aggiornare il sistema con pacman -Syu. Con queste opzioni attive, Pacman:

    • Registrerà l’attività nel syslog, permettendo una facile consultazione dei log.
    • Mostrerà dettagli avanzati sui pacchetti durante il download.
    • Controllerà lo spazio disponibile prima di procedere con l’installazione.
    • Fornirà un elenco dettagliato delle versioni installate e aggiornate.

    Queste impostazioni sono particolarmente utili per chi vuole monitorare e ottimizzare l’uso di Pacman.

    Gestione dei repository software

    Nel file di configurazione di Pacman è possibile abilitare repository software ufficiali e di terze parti. Alcuni dei più utilizzati sono:

    • [multilib] Permette di installare pacchetti software a 32 bit su sistemi a 64 bit, utile per software legacy o proprietario.
    • [testing] Include pacchetti in fase di test, più aggiornati ma potenzialmente meno stabili.
    • Repository di terze parti: Puoi aggiungere repository software personalizzati specificando il nome, il livello di firma (SigLevel) e l’URL del server.

    Ecco un esempio pratico di configurazione dei repository software nel file /etc/pacman.conf. Alcuni di questi repository software potrebbero già essere presenti nel file, o commentati e per abilitarli basta rimuovere il # iniziale.

    # Abilita il repository Multilib per supporto ai pacchetti a 32 bit
    [multilib]
    Include = /etc/pacman.d/mirrorlist

    # Abilita il repository Testing per accedere ai pacchetti in fase di test
    [testing]
    Include = /etc/pacman.d/mirrorlist

    # Esempio di repository di terze parti
    [customrepo]
    SigLevel = Optional TrustAll
    Server = https://mio-server-repo.example.com/$arch

    In Pacman, la variabile $arch viene utilizzata per rappresentare l’architettura del sistema. Quando configuri un repository in /etc/pacman.conf, $arch permette di selezionare automaticamente la cartella corretta in base alla tua piattaforma. Se hai un repository software configurato con:

    Server = https://mio-server-repo.example.com/$arch

    Pacman sostituirà $arch con l’architettura della tua macchina. Se il tuo sistema è x86_64, il server effettivo diventerà:

    https://mio-server-repo.example.com/x86_64

    Valori comuni di $arch sono:

    • x86_64: Sistemi a 64 bit (Arch Linux standard)
    • i686: Sistemi a 32 bit (obsoleto per Arch Linux)
    • arm/aarch64: Architettura ARM (usata su dispositivi mobili e Raspberry Pi)

    Dopo aver modificato il file, aggiorna sempre l’elenco dei pacchetti con:

    sudo pacman -Syu

    Sicurezza e verifica dei pacchetti

    Pacman utilizza firme digitali per garantire l’integrità e l’autenticità dei pacchetti installati. Puoi configurare il livello di verifica SigLevel per ogni repository software, adattando le impostazioni alle esigenze di sicurezza del tuo sistema. Questo processo garantisce che i pacchetti provengano da fonti affidabili e non siano stati alterati da terzi. Nel file /etc/pacman.conf, è possibile definire il livello di verifica delle firme digitali per ciascun repository software, adattandolo alle esigenze di sicurezza.

    Valori di SigLevel disponibili:

    • <strong>Required</strong>: Tutti i pacchetti devono avere una firma valida per essere installati.
    • <strong>Optional</strong>: Se il pacchetto ha una firma, viene verificata; altrimenti, l’installazione procede comunque.
    • <strong>Never</strong>: Disabilita il controllo delle firme, permettendo l’installazione di pacchetti senza verifica (NON consigliato per motivi di sicurezza).
    • <strong>TrustAll</strong>: Accetta tutti i pacchetti come autentici, indipendentemente dalla firma (rischioso se usato su repository software non ufficiali).

    Automatizzazione delle operazioni con gli hook

    Gli hook di Pacman sono script automatizzati che vengono eseguiti automaticamente prima o dopo operazioni di gestione dei pacchetti software, come installazione, aggiornamento o rimozione. Grazie a questo meccanismo, è possibile automatizzare processi che altrimenti richiederebbero intervento manuale, migliorando l’efficienza e la gestione del sistema evitando operazioni manuali ripetitive.

    Ogni hook è definito in un file .hook all’interno della cartella /etc/pacman.d/hooks/, dove vengono configurati per attivarsi in risposta a eventi specifici di Pacman. Ad esempio, per i seguenti utilizzi:

    • Pulizia automatica della cache con paccache
    • Rigenerazione del database dei font o delle icone
    • Ricostruzione dell’initramfs dopo un aggiornamento del kernel Linux

    Pacman conserva i pacchetti scaricati nella cartella /var/cache/pacman/pkg. Per evitare che questa cartella diventi troppo grande, puoi utilizzare paccache per mantenere solo le versioni più recenti dei pacchetti. Esempio pratico di file .hook per la pulizia automatica della cache:

    [Trigger]
    Operation = Install
    Operation = Upgrade
    Type = Path
    Target = usr/bin/paccache
    
    [Action]
    Description = Pulizia della cache dei pacchetti obsoleti
    When = PostTransaction
    Exec = /usr/bin/paccache -r

    Come approfondire

    Il file /etc/pacman.conf è molto potente e flessibile, e permette di adattare Pacman a qualsiasi esigenza, da quella estetica a quella più tecnica e di sicurezza. Per una panoramica completa delle opzioni, ti consigliamo di consultare la pagina man dedicata:

    <strong>man pacman.conf</strong>

    e la guida ufficiale ArchWiki su Pacman, sempre aggiornata e ricca di esempi pratici.

    Con queste personalizzazioni, Pacman diventerà uno strumento ancora più efficiente e piacevole da usare, perfettamente integrato nel tuo sistema Arch Linux o nelle sue derivate.

    Source: Read More

    Facebook Twitter Reddit Email Copy Link
    Previous ArticleEnable or Disable Word Wrap in VS Code
    Next Article Cauldron reads articles stored in Pocket

    Related Posts

    News & Updates

    Distribution Release: Neptune 9.0

    September 25, 2025
    Learning Resources

    FOSS Weekly #25.39: Kill Switch Phones, LMDE 7, Zorin OS 18 Beta, Polybar, Apt History and More Linux Stuff

    September 25, 2025
    Leave A Reply Cancel Reply

    For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

    Continue Reading

    Microsoft’s Copilot+ has been here over a year and I still don’t care about it — but I do wish I had one of its features

    News & Updates

    Lexie Hull Mrs Steal Yo Job SHirt

    Web Development

    Xbox Cloud Gaming is getting next-gen treatment too — here’s what we expect to see in the coming months and years for cloud gamers ☁️

    News & Updates

    Druid is a column-oriented distributed data store

    Linux

    Highlights

    CVE-2025-4716 – Campcodes Sales and Inventory System SQL Injection Vulnerability

    May 15, 2025

    CVE ID : CVE-2025-4716

    Published : May 15, 2025, 8:16 p.m. | 4 hours, 41 minutes ago

    Description : A vulnerability was found in Campcodes Sales and Inventory System 1.0. It has been rated as critical. Affected by this issue is some unknown functionality of the file /pages/credit_transaction_add.php. The manipulation of the argument prod_name leads to sql injection. The attack may be launched remotely. The exploit has been disclosed to the public and may be used.

    Severity: 7.3 | HIGH

    Visit the link for more details, such as CVSS details, affected products, timeline, and more…

    CVE-2025-5282 – WordPress WP Travel Engine Tour Booking Plugin Unauthenticated Post Deletion Vulnerability

    June 13, 2025

    QuickDAV – transfer files between devices

    June 7, 2025

    CVE-2025-52442 – Apache HTTP Server Unvalidated User Input

    June 17, 2025
    © DevStackTips 2025. All rights reserved.
    • Contact
    • Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.