Chocolatey – alternativa la instalarile manuale pe Windows

Atunci cand suntem in situatia de a lucra in IT sau de a invata pentru a ne recalifica si gasi un job in aceasta sfera, in mod aproape inevitabil trebuie sa folosim mai multe aplicatii software si tool-uri pe calculatorul nostru personal.

Varianta clasica pentru a le procura este aceea de a le instala manual pe fiecare in parte, intrand pe site-ul lor oficial (sau pe repo-ul de GitHub), descarcand installer-ul si instalandu-l manual, cu anumite optiuni custom eventual.

Insa daca nu vrem sa repetam acest proces de fiecare data si vrem sa fim putin mai eficienti in acest flow de lucru, putem folosi o solutie dezvoltata special pentru aceste situatii, si anume Chocolatey.

Ce este mai exact Chocolatey?

In termeni tehnici, mai specifici, Chocolatey este un package manager pentru computerele care folosesc ca sistem de operare Windows. Ca sa explicam mai simplu ce inseamna concret asta, un package manager este o aplicatie software care ne ajuta sa controlam mai usor programele ce dorim sa le instalam direct pe computer-ul nostru.

Site-ul principal al lui Chocolatey

Chocolatey este practic intermediarul dintre operatorul uman si pachetele software ce dorim sa le instalam, cu doar cateva comenzi simple ce le putem executa dintr-un terminal deschis pe Windows (Command Prompt sau PowerShell). In acest mod, suntem scutiti de necesitatea de a cauta, descarca si instala noi direct acel software, totul devenind mai rapid. Este un echivalent pentru software-ul Homebrew de pe macOS.

Managerul de pachete software Chocolatey a fost creat in 2011 de catre Rob Reynolds, dezvoltand acest tool pentru Windows sub forma de open-source. In 2016 este creata compania Chocolatey Software, care se bazeaza pe tool-ul open-source din prima faza, transformat acum intr-o solutie de business platita pentru alte companii.

In prezent, Chocolatey este folosit oficial de peste 500 companii conform site-ului propriu, printre care Netflix, The Sage Colleges sau Seek, subscriptiile anuale fiind destul de mari pentru corporatii, variind in functie de numarul de node-uri cerute, cerinta de a necesita support dedicat sau functionalitati Premium.

Inca din acest punct trebuie mentionat ca tool-ul Chocolatey a fost creat si poate fi folosit oficial, in formula sa completa doar pe Windows. Conform documentatiei proprii, exista anumite comenzi ale lui Chocolatey care pot functiona si pe sisteme de operare non-Windows, intr-o sectiune dedicata special pe site. Insa pentru discutia noastra, ne vom concentra deci pe Chocolatey in formula sa free de Windows.

Instalare si setup

Pentru a instala si folosi Chocolatey, trebuie sa urmam cativa pasi simpli pe care ii gasim si pe pagina cu instructiuni de instalare de pe site-ul lor.

Dupa ce ni se sugereaza (optional) sa ne abonam la newsletter-ul lor, putem vedea ca pentru a instala Chocolatey trebuie in prima faza sa alegem forma acestui software pe care vrem sa o instalam. Aici avem de ales dintre mai multe optiuni: Generic, Individual, Ansible, Chef etc.

Daca vrem sa folosim in mod individual (pe persoana fizica cum s-ar spune mai formal) acest tool, atunci recomandarea este sa alegem optiunea Individual. Celelalte sunt dedicate business-urilor care doresc sa beneficieze de anumite facilitati si functionalitati extra, ceea ce nu e cazul nostru.

Primii pasi in instalarea lui Chocolatey

Mergand mai departe, ni se sugereaza sa folosim un terminal cu drepturi de admin prin intermediul caruia se va desfasura procesul de instalare. Se poate instala si daca folosim terminale (shell) fara drepturi de administrator, existand si aici o sectiune de instructiuni dedicata.

Pasul urmator: deschidem terminalul nostru PowerShell cu drepturi de admin. Pentru aceasta, cautam in campul de Search „PowerShell”, dam click dreapta pe acesta si selectam „Run as administrator”.

Dupa o alta sugestie in ceea ce priveste politica de executare a acestui software, si unde ni se sugereaza sa facem un check suplimentar in consola noastra, putem trece direct la instalarea lui Chocolatey. Pentru asta, copiem comanda aceea lunga afisata pe site (care urmeaza dupa Now run the following command:), o punem in terminalul PowerShell, dam Enter si asteptam cateva secunde pana se termina instalarea.

Instalarea in terminalul PowerShell

Daca nu avem nicio eroare in consola, pentru a verifica corectitudinea instalarii executate de noi, nu trebuie decat sa mai rulam in PowerShell comenzile choco sau choco -?, si daca ni se afiseaza versiunea sau un meniu cu mai multe comenzi, inseamna ca instalarea s-a desfasurat cu succes.

Verificarea instalarii lui Chocolatey

Cum folosim Chocolatey?

Pentru a folosi Chocolatey, este nevoie sa ne folosim in continuare de terminalul PowerShell, deschis cu drepturi de administrator, de unde ne vom desfasura actiunile cu ajutorul unor comenzi specifice.

In prima faza, daca vrem sa cautam o anumita aplicatie, sa vedem daca exista pachetul de instalare in baza de date a celor de la Chocolatey, in terminal scriem comanda choco search [numele-aplicatiei].

Cautarea unei aplicatii in terminal

De regula orice comanda prin care vrem sa folosim Chocolatey incepe cu „choco”, iar actiunea propriu-zisa este urmata dupa cu un cuvant descriptiv (search, install, upgrade, uninstall etc.).

In acest punct, in consola ne sunt evidentiate mai multe optiuni care contin termenul cautat de noi. Atentie, nu toate reprezinta aplicatia care ne intereseaza si pe noi, e vorba doar de continutul literal al termenului. Daca stim foarte precis ce vrem sa cautam, de exemplu IDE-ul pentru Python numit PyCharm, atunci folosim comanda choco search pycharm --exact unde parametrul „– exact” va oferi doar acele rezultate care contin cuvantul cautat de noi, si care de regula (dar nu mereu) sa potrivesc cu aplicatia cautata.

Cautarea unui termen exact cu Chocolatey

Si in acest caz, gasim un rezultat precis, deci putem instala PyCharm-ul pe PC-ul nostru. Pentru asta, destul de intuitiv, rulam comanda choco install [numele-aplicatiei] – in acest caz punem „pycharm”. Dupa cateva linii noi afisate, suntem intrebati in terminal daca suntem siguri ca vrem sa rulam respectivul script, pentru ca in definitiv asta face aceasta aplicatie, instaleaza pachete cu ajutorul unor mini-scripturi in spate.

Instalarea unei aplicatii cu Chocolatey

Putem alege dintre optiunile: „Y” (daca spunem da doar la acest prim promp, pot sa urmeze si altele), „A” (daca vrem sa raspundem implicit da la toate intrebarile de genul care vor urma in cadrul acestei instalari), „N” (daca zicem nu, caz in care se opreste procesul), si „P” (care ne afiseaza detaliat in consola despre ce script si pachete e vorba mai exact).

Scriptul afisat cu optiunea Print / P

In continuare am dat „Y” si a inceput procesul efectiv de instalare. Dupa inca cateva secunde, consola ne va arata ca procesul s-a terminat cu succes, PyCharm-ul fiind instalat, lucru pe care il putem verifica si pe desktop unde avem shortcut-ul acestuia.

Instalarea cu succes a lui PyCharm

Ca o mentiune, in aceasta situatie am instalat versiunea Professional a lui PyCHarm, intrucat in Chocolatey denumirea se potrivea cu termenul dat de noi, pycharm cu litera mica. Exista desigur si versiunea Community, dar acolo denumirea incepea cu majuscula (Pycharm).

Cum putem face pe viitor sa nu ne lovim de situatii de genul, cand instalam ceva asemanator, dar nu chiar exact ce ne dorim? Simplu -> putem folosi site-ul celor de la Chocolatey unde regasim toate aceste packages, community.chocolatey.org/packages.

Aici practic putem cauta absolut orice aplicatie care este deja integrata in Chocolatey si poate fi instalata cu ajutorul acestuia. Putem cauta deci direct PyCharm Community sau orice altceva avem nevoie, si gasim astfel pagina acestei versiuni de aplicatii. Iar ca sa fie totul fain si simplu, putin mai jos avem gata create comenzile de instalare / upgrade / dezinstalare ale acestuia. Nu trebuie decat sa le copiem in terminalul nostru, si sa repetam procesul de cateva secunde de mai sus.

Pagina lui PyCharm Community Edition in siteul de packages Chocolatey

Pentru ca mi-am dat seama ca nu am instalat versiunea de PyCharm pe care o voiam, am cautat PyCharm in site-ul acesta, am selectat pagina acestui software si apoi comanda de uninstall, si dupa cateva secunde aplicatia imi era dezinstalata. Dezinstalarea am executat-o ruland: choco uninstall pycharm.

Un alt feature extrem de interesant si util al lui Chocolatey, oferit prin intermediul acestui site de pachete, este acela ca putem instala mai multe aplicatii odata. Ca un exemplu practic, ne gandim intr-o zi ca vrem sa ne apucam sa invatam testare automata cu limbajul Python.

Pentru asta, am avea nevoie de PyCharm ca sa scriem cod, limbajul Python, si sistemul de versionare Git.  Cum facem sa le instalam pe toate simultan si nu pe rand, cu 3 comenzi diferite? Ne ducem din nou pe community.chocolatey.org/packages, cautam pe rand Python (ar fi Python3 pentru precizie), Pycharm Community si Git.

Si pe pagina fiecarei aplicatii vom observa un buton mare si verde numit „Add to Script Builder”. Dam click pe acesta si comanda de instalare acelei aplicatii ni se va pune intr-un script unitar, care la final va ingloba toate cele 3 aplicatii pe care vrem sa le instalam.

Adaugarea mai multor aplicatii intr-un script unic de instalare

Dupa ce facem acest lucru pentru toate aplicatiile dorite, o sa le avem stranse in meniul din partea stanga, apasam pe butonul de “Generate Script”, selectam iarasi modul Individual, si gata, avem un singur script pe care il copiem, il punem in terminal si ne va instala simultan tot ce avem nevoie ca setup pentru a invata testare automata cu Python.

Cum arata un script unic de instalare in Chocolatey, care insteleaza simultan 3 aplicatii

In acest fel, putem economisi timp pretios cu partea de instalari, update-uri sau dezinstalari, facand acest proces mai simplu si poate ceva mai captivant, invatandu-ne totodata sa folosim si terminalul in executarea actiunilor noastre, lucru necesar de exemplu si daca vom lucra cu Git.

Avantaje si dezavantaje

Cu siguranta Chocolatey este o unealta interesanta si demna de luat in seama, avand ca oricare alta aplicatie software atat avantaje, cat si dezavantaje.

Primul avantaj al package managerului Chocolatey care reiese cel mai bine in evidenta este acela ca ajuta la economisirea unui timp destul de semnificativ si de pretios cand vine vorba de operatiunile privind instalarea, updatarea sau dezinstalarea aplicatiilor pe PC.

Fiind un tool destul de simplu de folosit, acesta poate fi la indemana oricui pentru a eficientiza acest segment de activitate, fie ca suntem incepatori aflati la debutul procesului de invatare pe vreun segment tehnic, fie ca lucram deja in bransa si cautam sa fim mai eficienti cu timpul nostru.

Chocolatey este un tool destul de fiabil, merge destul de repede cand vine vorba de instalari, si prezinta o documentatie temeinic redactata, unde putem gasi cam orice ne intereseaza, sau daca nu, atunci cu siguranta pe internet cu cateva click-uri.

Din perspectiva cealalta, Chocolatey este disponibil doar pe Windows, ceea ce limiteaza sever folosirea acestuia pe alte sisteme de operare, caz in care trebuie sa luam in considerare alte solutii din aceasta categorie de package managers.

Chocolatey, desi a inceput ca un tool open source si deci complet gratuit, astazi este o solutie de business, ceea ce inseamna ca daca vrem o versiune mai buna, care sa includa mai multe functionalitati si support din partea companiei, trebuie sa platim niste licente care desigur nu sunt deloc ieftine, si deci este discutabil cate buisness-uri ar cumpara acest tool pe bani.

Tot legat de acest dezavantaj este si faptul ca Chocolatey, fiind in esenta un o aplicatie care ruleaza script-uri de instalare in fundal, e problematic de folosit pe calculatoarele de munca, controlate de adminii companiei pentru care lucram. Neexistand uneori full admin rights pe PC-urile de munca, chiar si folosirea versiunii gratuite s-ar putea sa fie problematica in acest punct. Exista riscul nici sa nu gasim aplicatia pe care vrem sa o instalam din Chocolatey.

Insa una peste alta, eu consider ca Chocolatey este un tool extrem de interesant, usor de folosit pentru operatiunile sale principale, si ne poate scuti de multe batai de cap atunci cand vrem sa ne instalam mai multe lucruri pe computer. De asemenea, folosirea lui Chocolatey poate fi un start foarte bun pentru a ne obisnui cu folosirea terminalelor pe Windows, cum functioneaza acestea si sa descoperim astfel la ce alte lucruri ne mai pot ajuta, fiind deci o forma de invatare complementara.

Concluzii

In incheiere, Chocolatey reprezinta un software destul de interesant pentru managementul pachetelor ce dorim sa le instalam pe computer-ul nostru personal sau de munca.

Fiind usor de instalat, Chocolatey ne poate ajuta sa economisim timp pretios cand avem mai multe aplicatii de instalat, insa formula sa de business vine cu niste preturi destul de mari, astfel incat limitarea sa se rezuma cel mai adesea la uzul personal.

Surse pe subiect

Site-ul oficial al Chocolatey si canalul lor de YouTube

Documentatia oficiala pentru Chocolatey

Detalii despre instalarea acestui package manager de Windows

Cursuri dedicate despre folosirea lui Chocolatey

Site-ul unde gasim toate acele packages de pe Chocolatey

Mircea-Gabriel Macarie

https://www.linkedin.com/in/mirceamacarie/

Tech enthusiast și QA engineer, membru al comunității Vlog De IT. Interesat de testare software (QA) în general, de User Experience și Web Development.

Related post

Leave a Reply

Your email address will not be published. Required fields are marked *