Windows je veoma popularan operativni sistem. Međutim, njegova funkcionalnost se može proširiti i prilagoditi korišćenjem softvera otvorenog koda, kao što je Chocolatey, često nazivan i Choco.
Chocolatey: Pregled
Chocolatey je besplatan menadžer paketa otvorenog koda za Windows. Funkcioniše na sličan način kao DNF ili APT menadžeri paketa na Linux sistemima. Menadžeri paketa su veoma korisni za programere i napredne korisnike koji žele da jednostavno instaliraju, ažuriraju ili uklanjaju softverske pakete na svom sistemu.
U narednim redovima istražićemo detaljnije mogućnosti Chocolatey-a. Pre toga, hajde da se upoznamo sa samim konceptom menadžera paketa.
Šta je menadžer paketa?
Menadžer paketa je alat koji operativnom sistemu omogućava da prati sve instalirane softverske pakete na računaru. Pomoću njega možete pratiti postojeći softver, ažurirati ga na najnovije verzije ili instalirati novi. Takođe, ako vam neki paket ili softver više nije potreban, možete ga ukloniti pomoću menadžera paketa.
Ukratko, menadžer paketa je zadužen za upravljanje softverskim paketima. U računarskom smislu, paket predstavlja skup datoteka koje se instaliraju, ažuriraju ili uklanjaju.
Menadžeri paketa obezbeđuju da ne dođe do konflikata ili uklanjanja paketa koji su neophodni za rad sistema. Često se dešava da softverski paketi zavise od drugih paketa. Menadžer paketa brine o tome da se ništa ne pokvari tokom procesa instalacije ili uklanjanja.
Uzmimo primer dva paketa, A i B, gde paket A zavisi od paketa B. To znači da da bi paket A funkcionisao, paket B mora biti instaliran i funkcionalan. Na primer, softver za obradu slika GIMP, zahteva da sistem ima pristup GIMP paketu podataka.
Postoji veliki broj popularnih menadžera paketa. Recimo, Linux sistemi koriste DNF i APT kao dva najpopularnija rešenja.
Pročitajte i: Kratak vodič za DNF menadžer paketa
Windows takođe ima svoje rešenje za upravljanje paketima, poznato kao Windows menadžer paketa (Winget). On radi preko komandne linije i omogućava programerima da otkrivaju, nadograđuju, uklanjaju i instaliraju pakete ili aplikacije na sistemu. Više informacija o Winget-u možete pronaći na zvaničnom GitHub repozitorijumu.
Pored toga, imamo Chocolatey, besplatni menadžer paketa otvorenog koda. Saznajmo više o njemu u nastavku.
Šta je Chocolatey Package Manager?
Chocolatey je menadžer paketa za Windows koji se koristi preko komandne linije. Besplatan je za korišćenje jer je otvorenog koda i licenciran pod Apache 2.0 licencom. Chocolatey se može koristiti za modernu softversku automatizaciju, sa plaćenim opcijama za preduzeća. Izgrađen je na vrhu NuGet-a, menadžera paketa fokusiranog na programere.
Kao i drugi menadžeri paketa, Chocolatey omogućava programerima i IT osoblju da efikasno upravljaju softverom na računarima. Chocolatey koristi pakete kako bi obezbedio pravilno funkcionisanje softvera, bilo da se radi o ažuriranju, uklanjanju ili instaliranju novih paketa. Takođe, ceo proces je automatizovan, što ga čini bržim i efikasnijim.
Chocolatey: Svrha i primena
Programeri i IT administratori koriste Chocolatey primarno u IT okruženjima gde je potrebno upravljati softverom na jednom ili više računara. Chocolatey se uklapa u DevOps metodologiju jer može da automatizuje ponavljajuće zadatke kao što su postavljanje binarnih datoteka, skripti, instalatera, aplikacija i softverskih paketa.
Chocolatey je koristan jer instaliranje softvera često zahteva ručne korake. To može uključivati potrebu da korisnik istražuje, preuzima i instalira paket. Sa Chocolatey-em, možete pokrenuti jednostavnu komandu koja radi sve za vas – uključujući instaliranje svih zavisnih paketa potrebnih za rad softvera.
Ovo je posebno korisno za timove koji rade u složenim Windows okruženjima. Takođe, ubrzava razvoj softvera automatizujući ručne zadatke. Chocolatey nudi i odlične opcije za integraciju, uključujući podršku za alate za automatizaciju infrastrukture.
Kako instalirati Chocolatey na Windows
Instalacija Chocolatey-a je jednostavna. Sve što treba da uradite je da sledite dole navedene korake:
Korak 1: Proverite zahteve
Da biste instalirali Chocolatey, morate biti sigurni da vaš sistem ispunjava određene uslove. To uključuje:
- Windows klijent ili server operativni sistem.
- .NET Framework 4.8 ili noviji.
- PowerShell v2 ili noviji.
Korak 2: Pokrenite PowerShell i podesite Get-ExecutionPolicy
Sledeći korak je pokretanje PowerShell-a na vašem Windows računaru. Obavezno ga pokrenite kao administrator.
Zatim morate da proverite da li je Get-ExecutionPolicy podešen na neograničeno. Ako nije, to može ometati instalaciju Chocolatey-a. Uvek možete koristiti opciju Bypass zaobilaznice. Međutim, ako vaša organizacija ozbiljno razmatra pokretanje skripti sa interneta, preporučuje se korišćenje AllSigned za povećanu sigurnost.
Pokrenite jednu od sledećih komandi da biste podesili Get-ExecutionPolicy u skladu sa vašim potrebama.
$ Set-ExecutionPolicy AllSigned
ILI
$ Set-ExecutionPolicy Bypass -Scope Process
Korak 3: Pokrenite komandu za instalaciju Chocolatey-a
Kada je ExecutionPolicy postavljena, možete pokrenuti sledeću komandu u PowerShell-u kako biste započeli instalaciju Chocolatey-a.
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
Korak 4: Proverite da li je instalacija uspešna
Ako se gornja komanda izvrši bez grešaka, to znači da je Chocolatey uspešno instaliran.
Da biste potvrdili instalaciju, pokrenite sledeću komandu.
$ choco
ILI
$ choco -?
To je to. Chocolatey je uspešno instaliran. Možete ga instalirati i pomoću CMD (Command Prompt) okruženja. Potrebno je da kopirate i nalepite sledeću komandu u CMD administratorski prozor:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command " [System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Izlaz gornje komande će izgledati ovako:
Getting latest version of the Chocolatey package for download. Not using proxy. Getting Chocolatey from https://community.chocolatey.org/api/v2/package/chocolatey/2.2.2. Downloading https://community.chocolatey.org/api/v2/package/chocolatey/2.2.2 to C:\Users\nitis\AppData\Local\Temp\chocolatey\chocoInstall\chocolatey.zip Not using proxy. Extracting C:\Users\nitis\AppData\Local\Temp\chocolatey\chocoInstall\chocolatey.zip to C:\Users\nitis\AppData\Local\Temp\chocolatey\chocoInstall Installing Chocolatey on the local machine Creating ChocolateyInstall as an environment variable (targeting 'Machine') Setting ChocolateyInstall to 'C:\ProgramData\chocolatey' WARNING: It's very likely you will need to close and reopen your shell before you can use choco. Restricting write permissions to Administrators We are setting up the Chocolatey package repository. The packages themselves go to 'C:\ProgramData\chocolatey\lib' (i.e. C:\ProgramData\chocolatey\lib\yourPackageName). A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin' and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'. Creating Chocolatey folders if they do not already exist. chocolatey.nupkg file not installed in lib. Attempting to locate it from bootstrapper. PATH environment variable does not have C:\ProgramData\chocolatey\bin in it. Adding... WARNING: Not setting tab completion: Profile file does not exist at 'C:\Users\nitis\OneDrive\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'. Chocolatey (choco.exe) is now ready. You can call choco from anywhere, command line or powershell by typing choco. Run choco /? for a list of functions. You may need to shut down and restart powershell and/or consoles first prior to using choco. Ensuring Chocolatey commands are on the path Ensuring chocolatey.nupkg is in the lib folder
Korišćenje Chocolatey-a
Chocolatey je jednostavan za korišćenje. S obzirom na to da se radi o rešenju zasnovanom na komandnoj liniji, potrebno je koristiti komande.
Na primer, ako želite da instalirate Notepad++, možete pokrenuti sledeću komandu.
$ choco install notepadplusplus
Na sličan način, možete instalirati i drugi softver ili pakete, kao što je GitHub.
Ako niste sigurni da li je neki paket dostupan, možete ga potražiti pomoću komande za pretragu.
$ choco search gitY
Štaviše, možete instalirati više aplikacija pomoću jedne komande.
$ choco install git gimp notepadplusplus
Ako želite da deinstalirate neku aplikaciju, pokrenite komandu sa opcijom za deinstalaciju.
$ choco uninstall gimp
Ako imate više aplikacija za instaliranje, možete ih navesti u XML datoteci, a zatim proslediti tu datoteku komandi.
$ choco install packages.config -y
Datoteka packages.config sadrži spisak svih paketa koji treba da se instaliraju.
Možete takođe ažurirati sve postojeće pakete koristeći sledeću komandu.
$ cup all
Druge korisne Choco komande uključuju:
- $ choco list → prikazuje listu lokalnih ili udaljenih paketa
- $ choco info [package_name] → prikazuje informacije o paketu
- $ choco upgrade [package_name] → nadogradnja paketa
- $ choco outdated → pronalazi i prikazuje zastarele pakete
Deinstaliranje Chocolatey-a
Možete deinstalirati Chocolatey tako što ćete obrisati folder C:\ProgramData\chocolatey ili folder u kojem ste ga instalirali.
Pokrenite sledeću komandu ako niste sigurni u kom folderu je instaliran Chocolatey.
$ env:ChocolateyInstall
Međutim, pre deinstaliranja Chocolatey-a, preporučuje se da napravite rezervnu kopiju podfoldera bin i lib, jer oni sadrže sve pakete koje ste instalirali pomoću njega. Takođe, potrebno je da uklonite ili prilagodite sledeće promenljive okruženja:
- ChocolateyInstall
- ChocolateyToolsLocation
- ChocolateyLastPathUpdate
- PATH
Chocolatey naspram Windows Package Manager Winget
Chocolatey nije jedini menadžer paketa za Windows. Takođe, možete se odlučiti za Winget ili OneGet (interfejs menadžera paketa PowerShell 5.0). Koji od njih treba da koristite? Uporedimo Chocolatey i Winget u nastavku.
#1. Karakteristike
Kada su u pitanju karakteristike, Chocolatey ima više toga da ponudi. Možete početi sa njegovom verzijom otvorenog koda, koja pojedincima omogućava korišćenje funkcije upravljanja paketima u Windows okruženju. Ako vam je potrebno naprednije iskustvo, možete preći na njegovo Pro izdanje, koje nudi dodatne funkcije, uključujući bolju pouzdanost, poboljšanu zaštitu od malvera tokom izvršavanja itd.
Chocolatey takođe nudi Enterprise for Business, koji omogućava kompanijama da unaprede svoj DevOps radni tok i automatizuju životni ciklus Windows softvera.
Winget, sa druge strane, nudi pojednostavljeno rešenje za upravljanje paketima. Koristi YAML manifest za kreiranje, otpremanje i uklanjanje paketa.
#2. Cena
Oba menadžera paketa nude besplatnu verziju otvorenog koda za krajnje korisnike. Međutim, samo Chocolatey nudi plaćene opcije za one kojima su one potrebne.
#3. Jednostavnost korišćenja
Jednostavnost korišćenja je subjektivna, s obzirom da su oba alata zasnovana na komandnoj liniji. Međutim, instalacija Winget-a je jednostavnija jer je dostupan preko Microsoft Store-a. Chocolatey, s druge strane, zahteva pokretanje komandi za instalaciju. Pored toga, potrebno je dodatno da se bavite politikama izvršavanja.
#4. Repozitorijum
Chocolatey upravlja svojim repozitorijumom od 9500 proverenih paketa. Tamo možete pronaći skoro sve što vam je potrebno. S druge strane, Winget se oslanja na druge izvore za preuzimanje i distribuciju paketa.
Što se tiče zajednice, Chocolatey prednjači zahvaljujući svojoj dugogodišnjoj istoriji. Postoji više od decenije i podržava ga jaka zajednica. Winget, sa druge strane, nema takvu zajednicu.
Završne reči
Chocolatey je veoma koristan softver za upravljanje paketima. Popularan je, dobro dokumentovan i bogat funkcijama. Pored toga, otvorenog je koda, tako da ga svako može koristiti besplatno.
Chocolatey nudi plaćene opcije za timove u kompanijama sa dodatnim ključnim funkcijama, idealne za organizacije koje se bave složenim Windows projektima.
Zatim pogledajte kako da instalirate Node Version Manager (NVM) na Windows i macOS.