Successivo
Chocolatey aggiornamenti e installazioni automatiche

Magazine

Chocolatey, installazioni e aggiornamenti automatici per Windows

Dario Orlandi | 4 Ottobre 2018

Preview

Chocolatey è un progetto accessibile gratuitamente che offre un ampio catalogo di software, con tutti i tool necessari per automatizzare […]

Chocolatey è un progetto accessibile gratuitamente che offre un ampio catalogo di software, con tutti i tool necessari per automatizzare la configurazione e l’aggiornamento.

Lo abbiamo ripetuto in molte occasioni. Uno dei principali difetti della piattaforma Windows rispetto a tutti i principali concorrenti, sia in ambito desktop sia in quello mobile, è l’assenza di un sistema centralizzato di gestione del software. Nelle intenzioni di Microsoft questo vuoto dovrebbe essere colmato dallo Store, ma i risultati non sono (ancora) quelli sperati. Ancora oggi gli utenti di Windows si trovano a dover installare la maggior parte dei software a mano, per completare la dotazione di applicativi o per aggiungere agli strumenti di sistema qualche utility preziosa. 

Cos’è Chocolatey

In realtà un sistema di gestione dei software analogo a quelli implementati nelle varie distribuzioni Linux esiste anche per il sistema operativo Microsoft. Si chiama Chocolatey ed è un progetto ormai piuttosto maturo e affidabile. Nel suo archivio si trova un’ampia biblioteca di software gratuito e anche molti programmi commerciali, scaricabili liberamente ma che richiedono poi una licenza per essere utilizzati. Nelle prossime pagine scopriremo come funziona questo progetto e come sfruttarlo al meglio per automatizzare le operazioni di scaricamento, installazione e aggiornamento dei software applicativi.

La libertà offerta da Windows, agli utenti come agli sviluppatori, è totale. Ciascuno può facilmente avviare, installare o distribuire programmi di ogni genere senza bisogno di alcuna autorizzazione da parte del produttore del sistema operativo. Questa totale apertura è stata la norma per molti decenni, fino a quando l’avvento delle piattaforme mobile ha reso popolare il concetto di Store. Ovvero quello di un’applicazione che centralizza le funzioni di scaricamento, installazione e acquisto del software applicativo e degli strumenti di utilità da aggiungere alla dotazione di base.

Gli Store e il controllo centralizzato

Gli Store consentono soprattutto un controllo centralizzato della procedura di aggiornamento. Quando uno sviluppatore finalizza una nuova versione di un’app, aggiungendo nuove funzioni e correggendo eventuali bug, questa viene verificata e validata da parte dello store e poi distribuita automaticamente a tutti coloro che l’hanno scaricata e installata. Questo è il vero punto di svolta: grazie agli aggiornamenti automatici si possono evitare, o comunque mitigare, gran parte dei problemi di sicurezza più importanti, che invece continuano a piagare i sistemi operativi tradizionali. La causa? Le falle nei software installati, che non vengono corrette con l’applicazione degli update, magari disponibili ormai da mesi o addirittura anni.

Per questo motivo molti sviluppatori sono stati costretti a implementare sistemi di verifica e applicazione degli aggiornamenti. Basti pensare, per esempio, ai browser Web, che integrano tutto il necessario per scaricare e installare le nuove release in totale autonomia. Ma procedere in ordine sparso non è la soluzione ottimale: ogni software deve reimplementare da zero un proprio sistema di verifica, scaricamento e applicazione degli update. Mettendo in campo risorse non indifferenti che vengono inevitabilmente sottratte allo sviluppo di nuove funzioni e al miglioramento di quelle già presenti.

Distribuzione centralizzata, Linux come precursore

In realtà i sistemi di distribuzione centralizzata dei pacchetti software precedono di decenni la nascita dei sistemi operativi mobile. Sono infatti utilizzati in quasi tutte le distribuzioni Linux per semplificare la gestione dei programmi o delle librerie e, soprattutto, per evitare la ricompilazione dal sorgente di ogni singolo elemento software. Quest’ottimo paradigma non ha però mai fatto breccia nella grande massa del mercato consumer perché Microsoft ha preferito seguire altre strade, prima evitando di affrontare il problema e poi affidandosi alla distribuzione tramite Store.

La strategia dell’azienda di Redmond non sembra però ancora del tutto a fuoco. In un primo tempo lo Store è stato pensato come strumento per la distribuzione delle app Modern e Universal, per Windows 8 e poi per Windows 10. In seguito ha iniziato a ospitare anche software desktop tradizionale, temi e componenti per il sistema operativo (per esempio i pacchetti di localizzazione), estensioni per il browser Edge, contenuti multimediali e ogni altro genere di elementi.

Le delusioni del catalogo Microsoft Store

Il progetto sembra quindi essersi finalmente avviato sulla strada per diventare un sistema di distribuzione e aggiornamento universale, ma il traguardo è ancora lontano. Quando ci si avvicina al catalogo del Microsoft Store bisogna infatti prepararsi a qualche delusione. Al suo interno, infatti, non si trovano molti dei freeware più comuni, programmi e utility che molti utenti installano su ogni macchina e che considerano come indispensabili. Player multimediali come Vlc o Foobar 2000, gestori di archivi compressi come 7-Zip, Izarc o WinRar, visualizzatori di immagini come Faststone Viewer o lettori di documenti elettronici come Sumatra PDF, Foxit Reader o addirittura il classico Acrobat Reader. Tutti questi software (e moltissimi altri) rimangono ancora oggi assenti dallo store di Microsoft, rendendolo di fatto inutile per chi voglia realmente passare a un sistema di gestione centralizzata del software.

Quando si ripristina il sistema operativo da zero ci si trova quindi ancora oggi a dover recuperare e installare a mano un gruppo di software indispensabili che è quasi sempre lo stesso, ma che richiede comunque tempo e lavoro. Esistono alcune strategie per semplificare o velocizzare queste operazioni. Come per esempio preferire quando possibile i software portable da aggiungere a una cartella condivisa nel cloud, oppure sfruttare servizi come Ninite, pensati proprio per automatizzare l’installazione di alcuni dei programmi più comuni. Ma anche Ninite consente di scegliere al più tra qualche decina di software; è un progetto perfettamente efficace ma limitato nello scopo: chi cerca un’alternativa al Microsoft Store dovrà guardare altrove. (… continua sul numero 331 di PC Professionale)