Windows er kjent for sin brukervennlighet, men det er også mulig å tilpasse operativsystemet ved hjelp av programvare med åpen kildekode, som for eksempel Chocolatey (ofte forkortet til Choco).
Chocolatey: En Introduksjon
Chocolatey er en åpen kildekode pakkehåndterer for Windows, som fungerer på samme måte som DNF eller APT på Linux. En pakkehåndterer er et nyttig verktøy for utviklere og avanserte brukere som ønsker å installere, oppdatere eller avinstallere programvarepakker på en enkel måte.
La oss se nærmere på hva Chocolatey er og hvordan det fungerer. Før det, skal vi se på hva en pakkehåndterer egentlig er.
Hva er en Pakkehåndterer?
En pakkehåndterer i et operativsystem gir deg kontroll over programvarepakker på datamaskinen din. Den lar deg spore installert programvare, oppdatere den og installere nye programmer. Hvis du ikke lenger trenger et program, kan du også fjerne det via pakkehåndtereren.
Enkelt sagt, en pakkehåndterer håndterer programvarepakker. I datatermer er en pakke et sett med filer som installeres, oppdateres eller fjernes.
Pakkehåndterere bidrar til å unngå konflikter og hindrer sletting av viktige systemfiler. Mange programvarepakker er avhengige av andre pakker for å fungere. En pakkehåndterer sørger for at alt fungerer som det skal.
La oss se på et eksempel: Hvis pakke A er avhengig av pakke B, må pakke B være installert og fungere for at A skal fungere. For eksempel krever bildebehandlingsprogrammet GIMP tilgang til GIMP-datapakken.
Det finnes mange populære pakkehåndterere. Linux har for eksempel DNF og APT.
Les også: En rask innføring i DNF Pakkehåndterer
Windows har også sin egen pakkehåndterer, Windows Pakkehåndterer (Winget). Den brukes via kommandolinjen og lar utviklere installere, oppdatere, fjerne og oppdage nye programmer. Sjekk ut Winget for mer informasjon.
I tillegg har vi Chocolatey, en gratis pakkehåndterer med åpen kildekode. La oss se nærmere på den.
Hva er Chocolatey Pakkehåndterer?
Chocolatey er en kommandolinjebasert pakkehåndterer for Windows. Den er gratis å bruke da den er åpen kildekode (Apache 2.0-lisens). Chocolatey kan brukes til moderne programvareautomatisering, og tilbyr betalte alternativer for bedrifter. Den bygger på NuGet, en pakkehåndterer rettet mot utviklere.
I likhet med andre pakkehåndterere lar Chocolatey utviklere og IT-personell effektivt administrere programvare på datamaskiner. Chocolatey bruker pakker for å sørge for at programvaren fungerer som den skal, enten det gjelder oppdatering, fjerning eller installasjon av nye pakker. I tillegg automatiserer den prosessene, noe som gir raskere resultater.
Formål og Bruksområder for Chocolatey
Utviklere og IT-administratorer bruker Chocolatey hovedsakelig i IT-miljøer der de må administrere programvare på flere datamaskiner. Chocolatey er nyttig i DevOps-arbeidsflyter siden den kan automatisere gjentakende oppgaver, som å distribuere binærfiler, skript, installasjonsprogrammer, applikasjoner og programvarepakker.
Chocolatey er fordelaktig fordi den eliminerer behovet for å utføre manuelle trinn ved programvareinstallasjon. Dette kan inkludere å finne, laste ned og installere en pakke manuelt. Med Chocolatey kan du utføre en enkel kommando som gjør alt for deg, inkludert å installere eventuelle nødvendige avhengighetspakker.
Dette er spesielt nyttig for team som arbeider i komplekse Windows-miljøer. Det effektiviserer også programvareutviklingen ved å håndtere manuelle oppgaver. Chocolatey tilbyr også integrasjon med ulike verktøy for automatisering av infrastruktur.
Hvordan Installere Chocolatey på Windows
Det er enkelt å installere Chocolatey. Følg disse trinnene:
Trinn 1: Sjekk Kravene
Før du installerer Chocolatey, må du sørge for at du oppfyller kravene. Disse inkluderer:
- Windows klient- eller serveroperativsystem.
- .NET Framework 4.8 eller nyere.
- PowerShell v2 eller nyere.
Trinn 2: Kjør PowerShell og Angi Get-ExecutionPolicy
Åpne PowerShell på Windows-maskinen din. Sørg for at du kjører den som administrator.
Deretter må du kontrollere at Get-ExecutionPolicy er satt til Ubegrenset. Hvis ikke, kan det hindre installasjonen av Chocolatey. Hvis du vil omgå dette, kan du bruke alternativet Bypass. Hvis din organisasjon er opptatt av å kjøre skript fra internett, anbefales det å bruke AllSigned for bedre sikkerhet.
Kjør en av de følgende kommandoene for å angi Get-ExecutionPolicy:
$ Set-ExecutionPolicy AllSigned
Eller:
$ Set-ExecutionPolicy Bypass -Scope Process
Trinn 3: Kjør Kommandoen for å Installere Chocolatey
Når ExecutionPolicy er konfigurert, kan du kjøre denne kommandoen i skallet for å starte installasjonen av Chocolatey:
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'))
Trinn 4: Bekreft at den er Installert
Hvis kommandoen over kjøres uten feilmeldinger, er Chocolatey sannsynligvis installert.
For å bekrefte, kjør denne kommandoen:
$ choco
Eller:
$ choco -?
Det var det! Chocolatey er installert. Du kan også installere den med CMD-skallet ved å kopiere og lime inn denne kommandoen i et CMD-skall med administrative rettigheter:
@"%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"
Resultatet av kommandoen vil være:
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
Bruke Chocolatey
Chocolatey er enkelt å bruke. Siden det er en kommandolinjeløsning, bruker du kommandoer for å utføre oppgaver.
For eksempel, hvis du vil installere notepadplusplus, kan du kjøre denne kommandoen:
$ choco install notepadplusplus
På samme måte kan du installere annen programvare som GitHub.
Hvis du er usikker på om en pakke finnes, kan du søke etter den:
$ choco search gitY
Du kan også installere flere apper med en enkelt kommando:
$ choco install git gimp notepadplusplus
Hvis du vil avinstallere et program, bruker du alternativet for avinstallering:
$ choco uninstall gimp
Hvis det er mange programmer, kan du legge dem inn i en XML-fil og sende den til kommandoen:
$ choco install packages.config -y
Packages.config-filen inneholder alle pakkene som skal installeres.
Du kan også oppdatere alle eksisterende pakker med denne kommandoen:
$ choco upgrade all
Andre nyttige Choco-kommandoer er:
- $ choco list → Lister opp lokale eller eksterne pakker
- $ choco info [package_name] → Henter pakkeinformasjon
- $ choco upgrade [package_name] → Oppgraderer pakken
- $ choco outdated → Viser utdaterte pakker
Avinstallere Chocolatey
Du kan avinstallere Chocolatey ved å slette mappen C:\ProgramData\chocolatey, eller mappen der du installerte den.
Kjør denne kommandoen hvis du er usikker på installasjonsmappen:
$ env:ChocolateyInstall
Før du avinstallerer Chocolatey, må du ta sikkerhetskopi av bin- og lib-undermappene, da de inneholder alle pakkene du installerte. Du må også fjerne eller justere disse miljøvariablene:
- ChocolateyInstall
- ChocolateyToolsLocation
- ChocolateyLastPathUpdate
- PATH
Chocolatey vs. Windows Pakkehåndterer Winget
Chocolatey er ikke den eneste pakkehåndtereren som finnes. Du kan også velge Winget eller OneGet (et pakkehåndteringsgrensesnitt for PowerShell 5.0). Så hvilken bør du bruke? La oss sammenligne Chocolatey og Winget:
#1. Funksjoner
Når det gjelder funksjoner, tilbyr Chocolatey mer. Du kan begynne med åpen kildekode-versjonen som lar enkeltpersoner bruke den til å administrere pakker i Windows. Hvis du trenger en bedre og mer strømlinjeformet opplevelse, kan du oppgradere til Pro Edition, som tilbyr ekstra funksjoner som bedre pålitelighet, forbedret beskyttelse mot skadelig programvare, osv.
Chocolatey tilbyr også Enterprise for Business, som lar bedrifter forbedre DevOps-arbeidsflyten og automatisere programvarelivssyklusen for Windows.
Winget derimot, tilbyr en enklere pakkehåndteringsløsning. Den bruker YAML-manifestet for å opprette, laste opp og fjerne pakker.
#2. Kostnad
Begge tilbyr en gratis åpen kildekode-versjon. Chocolatey tilbyr imidlertid også betalte alternativer for de som trenger det.
#3. Brukervennlighet
Brukervennlighet er subjektivt da begge er kommandolinjeverktøy. Det er imidlertid enklere å installere Winget siden den er tilgjengelig via Microsoft Store. Chocolatey krever at du kjører kommandoer for å installere den og må også forholde seg til retningslinjer for utførelse.
#4. Repositorium
Chocolatey administrerer sitt eget repositorium med 9500 administrerte pakker. Du finner det meste av det du trenger her. Winget er derimot avhengig av andre kilder for å laste ned og distribuere pakker.
Når det gjelder fellesskap, er Chocolatey ledende, takket være sin alder. Den har eksistert i over ti år, og har derfor et sterkt fellesskap som støtter den. Winget har ikke et tilsvarende fellesskap.
Siste Ord
Chocolatey er en praktisk programvare for pakkehåndtering. Den er populær, godt dokumentert og funksjonsrik. I tillegg er den åpen kildekode, så alle kan bruke den gratis.
Chocolatey tilbyr betalte alternativer for team i selskaper med ekstra funksjoner som er ideelle for organisasjoner som jobber med komplekse Windows-prosjekter.
Du kan også se på hvordan du installerer Node Version Manager (NVM) på Windows og MacOS.