@fredlackey/devutils 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/package.json +1 -1
- package/src/commands/install.js +374 -36
- package/src/installs/adobe-creative-cloud.js +527 -25
- package/src/installs/adobe-creative-cloud.md +605 -0
- package/src/installs/appcleaner.js +303 -26
- package/src/installs/appcleaner.md +699 -0
- package/src/installs/apt-transport-https.js +390 -0
- package/src/installs/apt-transport-https.md +678 -0
- package/src/installs/atomicparsley.js +624 -26
- package/src/installs/atomicparsley.md +795 -0
- package/src/installs/aws-cli.js +779 -26
- package/src/installs/aws-cli.md +727 -0
- package/src/installs/balena-etcher.js +688 -26
- package/src/installs/balena-etcher.md +761 -0
- package/src/installs/bambu-studio.js +912 -26
- package/src/installs/bambu-studio.md +780 -0
- package/src/installs/bash-completion.js +554 -23
- package/src/installs/bash-completion.md +833 -0
- package/src/installs/bash.js +399 -26
- package/src/installs/bash.md +993 -0
- package/src/installs/beyond-compare.js +585 -26
- package/src/installs/beyond-compare.md +813 -0
- package/src/installs/build-essential.js +511 -26
- package/src/installs/build-essential.md +977 -0
- package/src/installs/ca-certificates.js +618 -0
- package/src/installs/ca-certificates.md +937 -0
- package/src/installs/caffeine.js +490 -26
- package/src/installs/caffeine.md +839 -0
- package/src/installs/camtasia.js +577 -25
- package/src/installs/camtasia.md +762 -0
- package/src/installs/chatgpt.js +458 -26
- package/src/installs/chatgpt.md +814 -0
- package/src/installs/chocolatey.js +447 -0
- package/src/installs/chocolatey.md +661 -0
- package/src/installs/chrome-canary.js +472 -26
- package/src/installs/chrome-canary.md +641 -0
- package/src/installs/chromium.js +645 -26
- package/src/installs/chromium.md +838 -0
- package/src/installs/claude-code.js +558 -26
- package/src/installs/claude-code.md +1173 -0
- package/src/installs/curl.js +361 -26
- package/src/installs/curl.md +714 -0
- package/src/installs/cursor.js +561 -26
- package/src/installs/cursor.md +970 -0
- package/src/installs/dbschema.js +674 -26
- package/src/installs/dbschema.md +925 -0
- package/src/installs/dependencies.md +435 -0
- package/src/installs/development-tools.js +600 -0
- package/src/installs/development-tools.md +977 -0
- package/src/installs/docker.js +1010 -25
- package/src/installs/docker.md +1109 -0
- package/src/installs/drawio.js +1001 -26
- package/src/installs/drawio.md +795 -0
- package/src/installs/elmedia-player.js +328 -25
- package/src/installs/elmedia-player.md +556 -0
- package/src/installs/ffmpeg.js +870 -25
- package/src/installs/ffmpeg.md +852 -0
- package/src/installs/file.js +464 -0
- package/src/installs/file.md +987 -0
- package/src/installs/gemini-cli.js +793 -26
- package/src/installs/gemini-cli.md +1153 -0
- package/src/installs/git.js +382 -26
- package/src/installs/git.md +907 -0
- package/src/installs/gitego.js +931 -26
- package/src/installs/gitego.md +1172 -0
- package/src/installs/go.js +913 -26
- package/src/installs/go.md +958 -0
- package/src/installs/google-chrome.js +801 -25
- package/src/installs/google-chrome.md +862 -0
- package/src/installs/gpg.js +412 -73
- package/src/installs/gpg.md +1056 -0
- package/src/installs/homebrew.js +1015 -26
- package/src/installs/homebrew.md +988 -0
- package/src/installs/imageoptim.js +950 -26
- package/src/installs/imageoptim.md +1119 -0
- package/src/installs/installers.json +2297 -0
- package/src/installs/jq.js +382 -26
- package/src/installs/jq.md +809 -0
- package/src/installs/keyboard-maestro.js +701 -26
- package/src/installs/keyboard-maestro.md +825 -0
- package/src/installs/latex.js +771 -26
- package/src/installs/latex.md +1095 -0
- package/src/installs/lftp.js +338 -26
- package/src/installs/lftp.md +907 -0
- package/src/installs/lsb-release.js +346 -0
- package/src/installs/lsb-release.md +814 -0
- package/src/installs/messenger.js +829 -26
- package/src/installs/messenger.md +900 -0
- package/src/installs/microsoft-office.js +550 -26
- package/src/installs/microsoft-office.md +760 -0
- package/src/installs/microsoft-teams.js +782 -25
- package/src/installs/microsoft-teams.md +886 -0
- package/src/installs/node.js +886 -26
- package/src/installs/node.md +1153 -0
- package/src/installs/nordpass.js +698 -26
- package/src/installs/nordpass.md +921 -0
- package/src/installs/nvm.js +977 -26
- package/src/installs/nvm.md +1057 -0
- package/src/installs/openssh.js +734 -64
- package/src/installs/openssh.md +1056 -0
- package/src/installs/pandoc.js +644 -26
- package/src/installs/pandoc.md +1036 -0
- package/src/installs/pinentry.js +492 -26
- package/src/installs/pinentry.md +1142 -0
- package/src/installs/pngyu.js +851 -26
- package/src/installs/pngyu.md +896 -0
- package/src/installs/postman.js +781 -26
- package/src/installs/postman.md +940 -0
- package/src/installs/procps.js +425 -0
- package/src/installs/procps.md +851 -0
- package/src/installs/safari-tech-preview.js +355 -25
- package/src/installs/safari-tech-preview.md +533 -0
- package/src/installs/sfnt2woff.js +640 -26
- package/src/installs/sfnt2woff.md +795 -0
- package/src/installs/shellcheck.js +463 -26
- package/src/installs/shellcheck.md +1005 -0
- package/src/installs/slack.js +722 -25
- package/src/installs/slack.md +865 -0
- package/src/installs/snagit.js +566 -25
- package/src/installs/snagit.md +844 -0
- package/src/installs/software-properties-common.js +372 -0
- package/src/installs/software-properties-common.md +805 -0
- package/src/installs/spotify.js +858 -25
- package/src/installs/spotify.md +901 -0
- package/src/installs/studio-3t.js +803 -26
- package/src/installs/studio-3t.md +918 -0
- package/src/installs/sublime-text.js +780 -25
- package/src/installs/sublime-text.md +914 -0
- package/src/installs/superwhisper.js +687 -25
- package/src/installs/superwhisper.md +630 -0
- package/src/installs/tailscale.js +727 -26
- package/src/installs/tailscale.md +1100 -0
- package/src/installs/tar.js +389 -0
- package/src/installs/tar.md +946 -0
- package/src/installs/termius.js +780 -26
- package/src/installs/termius.md +844 -0
- package/src/installs/terraform.js +761 -26
- package/src/installs/terraform.md +899 -0
- package/src/installs/tidal.js +752 -25
- package/src/installs/tidal.md +864 -0
- package/src/installs/tmux.js +328 -26
- package/src/installs/tmux.md +1030 -0
- package/src/installs/tree.js +393 -26
- package/src/installs/tree.md +833 -0
- package/src/installs/unzip.js +460 -0
- package/src/installs/unzip.md +879 -0
- package/src/installs/vim.js +403 -26
- package/src/installs/vim.md +1040 -0
- package/src/installs/vlc.js +803 -26
- package/src/installs/vlc.md +927 -0
- package/src/installs/vscode.js +825 -26
- package/src/installs/vscode.md +1002 -0
- package/src/installs/wget.js +415 -0
- package/src/installs/wget.md +791 -0
- package/src/installs/whatsapp.js +710 -25
- package/src/installs/whatsapp.md +854 -0
- package/src/installs/winpty.js +352 -0
- package/src/installs/winpty.md +620 -0
- package/src/installs/woff2.js +535 -26
- package/src/installs/woff2.md +977 -0
- package/src/installs/wsl.js +572 -0
- package/src/installs/wsl.md +699 -0
- package/src/installs/xcode-clt.js +520 -0
- package/src/installs/xcode-clt.md +351 -0
- package/src/installs/xcode.js +542 -26
- package/src/installs/xcode.md +573 -0
- package/src/installs/yarn.js +806 -26
- package/src/installs/yarn.md +1074 -0
- package/src/installs/yq.js +636 -26
- package/src/installs/yq.md +944 -0
- package/src/installs/yt-dlp.js +683 -26
- package/src/installs/yt-dlp.md +946 -0
- package/src/installs/yum-utils.js +297 -0
- package/src/installs/yum-utils.md +648 -0
- package/src/installs/zoom.js +740 -25
- package/src/installs/zoom.md +884 -0
- package/src/scripts/README.md +567 -45
- package/src/scripts/STATUS.md +208 -0
- package/src/scripts/afk.js +395 -7
- package/src/scripts/backup-all.js +731 -9
- package/src/scripts/backup-source.js +711 -8
- package/src/scripts/brewd.js +373 -7
- package/src/scripts/brewi.js +505 -9
- package/src/scripts/brewr.js +512 -9
- package/src/scripts/brews.js +462 -9
- package/src/scripts/brewu.js +488 -7
- package/src/scripts/c.js +185 -7
- package/src/scripts/ccurl.js +325 -8
- package/src/scripts/certbot-crontab-init.js +488 -8
- package/src/scripts/certbot-init.js +641 -9
- package/src/scripts/ch.js +339 -7
- package/src/scripts/claude-danger.js +253 -8
- package/src/scripts/clean-dev.js +419 -8
- package/src/scripts/clear-dns-cache.js +525 -7
- package/src/scripts/clone.js +417 -7
- package/src/scripts/code-all.js +420 -7
- package/src/scripts/count-files.js +195 -8
- package/src/scripts/count-folders.js +195 -8
- package/src/scripts/count.js +248 -8
- package/src/scripts/d.js +203 -7
- package/src/scripts/datauri.js +373 -8
- package/src/scripts/delete-files.js +363 -7
- package/src/scripts/docker-clean.js +410 -8
- package/src/scripts/dp.js +426 -7
- package/src/scripts/e.js +375 -9
- package/src/scripts/empty-trash.js +497 -7
- package/src/scripts/evm.js +428 -9
- package/src/scripts/fetch-github-repos.js +441 -10
- package/src/scripts/get-channel.js +329 -8
- package/src/scripts/get-course.js +384 -11
- package/src/scripts/get-dependencies.js +290 -9
- package/src/scripts/get-folder.js +783 -10
- package/src/scripts/get-tunes.js +411 -10
- package/src/scripts/get-video.js +352 -9
- package/src/scripts/git-backup.js +561 -9
- package/src/scripts/git-clone.js +477 -9
- package/src/scripts/git-pup.js +303 -7
- package/src/scripts/git-push.js +380 -8
- package/src/scripts/h.js +607 -9
- package/src/scripts/hide-desktop-icons.js +483 -7
- package/src/scripts/hide-hidden-files.js +522 -7
- package/src/scripts/install-dependencies-from.js +440 -9
- package/src/scripts/ips.js +647 -10
- package/src/scripts/iso.js +354 -8
- package/src/scripts/killni.js +561 -7
- package/src/scripts/ll.js +451 -8
- package/src/scripts/local-ip.js +310 -8
- package/src/scripts/m.js +508 -8
- package/src/scripts/map.js +293 -8
- package/src/scripts/mkd.js +287 -7
- package/src/scripts/ncu-update-all.js +441 -8
- package/src/scripts/nginx-init.js +702 -12
- package/src/scripts/npmi.js +366 -7
- package/src/scripts/o.js +495 -8
- package/src/scripts/org-by-date.js +321 -7
- package/src/scripts/p.js +208 -7
- package/src/scripts/packages.js +313 -8
- package/src/scripts/path.js +209 -7
- package/src/scripts/ports.js +582 -8
- package/src/scripts/q.js +290 -8
- package/src/scripts/refresh-files.js +378 -10
- package/src/scripts/remove-smaller-files.js +500 -8
- package/src/scripts/rename-files-with-date.js +517 -9
- package/src/scripts/resize-image.js +523 -9
- package/src/scripts/rm-safe.js +653 -8
- package/src/scripts/s.js +525 -9
- package/src/scripts/set-git-public.js +349 -7
- package/src/scripts/show-desktop-icons.js +459 -7
- package/src/scripts/show-hidden-files.js +456 -7
- package/src/scripts/tpa.js +265 -8
- package/src/scripts/tpo.js +264 -7
- package/src/scripts/u.js +489 -7
- package/src/scripts/vpush.js +422 -8
- package/src/scripts/y.js +267 -7
- package/src/utils/common/os.js +94 -2
- package/src/utils/ubuntu/apt.js +13 -7
- package/src/utils/windows/choco.js +82 -26
- package/src/utils/windows/winget.js +89 -27
|
@@ -0,0 +1,661 @@
|
|
|
1
|
+
# Installing Chocolatey
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
Chocolatey is a machine-level package manager for Windows that automates the software installation, configuration, upgrade, and uninstallation process. It uses NuGet infrastructure and PowerShell to wrap installers, executables, zips, and scripts into compiled packages. Chocolatey provides a unified interface for managing software across Windows systems, similar to how APT works on Debian/Ubuntu or Homebrew works on macOS.
|
|
6
|
+
|
|
7
|
+
Key features of Chocolatey:
|
|
8
|
+
|
|
9
|
+
- **Simple installation**: Install software with a single command (`choco install <package>`)
|
|
10
|
+
- **Silent installations**: All packages install non-interactively by default with the `-y` flag
|
|
11
|
+
- **Dependency management**: Automatically handles package dependencies
|
|
12
|
+
- **Enterprise ready**: Integrates with SCCM, Puppet, Chef, Ansible, and other configuration management tools
|
|
13
|
+
- **Large package repository**: Access to thousands of community-maintained packages at chocolatey.org
|
|
14
|
+
|
|
15
|
+
**Platform Support Summary**:
|
|
16
|
+
|
|
17
|
+
| Platform | Support Level | Notes |
|
|
18
|
+
|----------|---------------|-------|
|
|
19
|
+
| Windows 7+ / Server 2003+ | Full | Primary and only supported platform |
|
|
20
|
+
| macOS | Not Supported | Windows-only tool; use Homebrew instead |
|
|
21
|
+
| Ubuntu/Debian | Not Supported | Windows-only tool; use APT instead |
|
|
22
|
+
| Raspberry Pi OS | Not Supported | Windows-only tool; use APT instead |
|
|
23
|
+
| Amazon Linux | Not Supported | Windows-only tool; use DNF/YUM instead |
|
|
24
|
+
| WSL (Ubuntu) | Not Supported | Use APT within WSL; Chocolatey runs on Windows host |
|
|
25
|
+
| Git Bash | Partial | Can invoke Chocolatey from Git Bash terminal on Windows |
|
|
26
|
+
|
|
27
|
+
## Dependencies
|
|
28
|
+
|
|
29
|
+
### macOS (Homebrew)
|
|
30
|
+
- **Required:** Not applicable - Chocolatey is a Windows-only package manager
|
|
31
|
+
- **Optional:** None
|
|
32
|
+
- **Auto-installed:** None
|
|
33
|
+
- **Note:** Chocolatey does not run on macOS. Use Homebrew (`brew`) as the package manager for macOS.
|
|
34
|
+
|
|
35
|
+
### Ubuntu (APT/Snap)
|
|
36
|
+
- **Required:** Not applicable - Chocolatey is a Windows-only package manager
|
|
37
|
+
- **Optional:** None
|
|
38
|
+
- **Auto-installed:** None
|
|
39
|
+
- **Note:** Chocolatey does not run on Linux. Use APT (`apt-get`) or Snap as the package manager for Ubuntu/Debian.
|
|
40
|
+
|
|
41
|
+
### Raspberry Pi OS (APT/Snap)
|
|
42
|
+
- **Required:** Not applicable - Chocolatey is a Windows-only package manager
|
|
43
|
+
- **Optional:** None
|
|
44
|
+
- **Auto-installed:** None
|
|
45
|
+
- **Note:** Chocolatey does not run on Linux. Use APT (`apt-get`) as the package manager for Raspberry Pi OS.
|
|
46
|
+
|
|
47
|
+
### Amazon Linux (DNF/YUM)
|
|
48
|
+
- **Required:** Not applicable - Chocolatey is a Windows-only package manager
|
|
49
|
+
- **Optional:** None
|
|
50
|
+
- **Auto-installed:** None
|
|
51
|
+
- **Note:** Chocolatey does not run on Linux. Use DNF (Amazon Linux 2023) or YUM (Amazon Linux 2) as the package manager.
|
|
52
|
+
|
|
53
|
+
### Windows (Chocolatey/winget)
|
|
54
|
+
- **Required:**
|
|
55
|
+
- Windows 7 SP1 / Windows Server 2003 or later
|
|
56
|
+
- PowerShell v2 or later (v3+ required for TLS 1.2 support)
|
|
57
|
+
- .NET Framework 4.8 (installer attempts automatic installation if missing)
|
|
58
|
+
- Administrator privileges for installation
|
|
59
|
+
- **Optional:** None
|
|
60
|
+
- **Auto-installed:**
|
|
61
|
+
- .NET Framework 4.8 (if not present, installer attempts to install it)
|
|
62
|
+
|
|
63
|
+
### Git Bash (Manual/Portable)
|
|
64
|
+
- **Required:**
|
|
65
|
+
- Windows operating system with Chocolatey installed (see Windows section)
|
|
66
|
+
- PowerShell available on the Windows host
|
|
67
|
+
- Administrator privileges (run Git Bash as Administrator)
|
|
68
|
+
- **Optional:** None
|
|
69
|
+
- **Auto-installed:** None
|
|
70
|
+
- **Note:** Git Bash can invoke Chocolatey commands, but Chocolatey must first be installed on the Windows host via PowerShell or Command Prompt.
|
|
71
|
+
|
|
72
|
+
## Prerequisites
|
|
73
|
+
|
|
74
|
+
Before installing Chocolatey, ensure:
|
|
75
|
+
|
|
76
|
+
1. **Windows operating system** - Chocolatey is Windows-only software
|
|
77
|
+
2. **Administrator privileges** - Required for installation and most package operations
|
|
78
|
+
3. **PowerShell v3 or later** - Required for secure HTTPS downloads (TLS 1.2)
|
|
79
|
+
4. **Internet connectivity** - Required to download the installer and packages
|
|
80
|
+
5. **Sufficient disk space** - At least 500 MB free for Chocolatey and package cache
|
|
81
|
+
|
|
82
|
+
**Important**: Chocolatey is designed exclusively for Windows. For other operating systems, use the native package manager for that platform (Homebrew for macOS, APT for Debian/Ubuntu, DNF/YUM for RHEL/Amazon Linux).
|
|
83
|
+
|
|
84
|
+
## Platform-Specific Installation
|
|
85
|
+
|
|
86
|
+
### macOS (Homebrew)
|
|
87
|
+
|
|
88
|
+
#### Platform Note
|
|
89
|
+
|
|
90
|
+
**Chocolatey does not run on macOS.** Chocolatey is a Windows-specific package manager built on PowerShell and the Windows ecosystem.
|
|
91
|
+
|
|
92
|
+
For macOS package management, use Homebrew instead:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Install Homebrew (if not already installed)
|
|
96
|
+
NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
97
|
+
|
|
98
|
+
# Example: Install a package with Homebrew
|
|
99
|
+
brew install --quiet wget
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
See the Homebrew installation documentation in this project for complete instructions.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
### Ubuntu/Debian (APT)
|
|
107
|
+
|
|
108
|
+
#### Platform Note
|
|
109
|
+
|
|
110
|
+
**Chocolatey does not run on Linux.** Chocolatey is a Windows-specific package manager built on PowerShell and the Windows ecosystem.
|
|
111
|
+
|
|
112
|
+
For Ubuntu/Debian package management, use APT instead:
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
# Update package lists
|
|
116
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
|
|
117
|
+
|
|
118
|
+
# Example: Install a package with APT
|
|
119
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
APT is the native package manager for Debian-based Linux distributions and provides similar functionality to Chocolatey.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### Raspberry Pi OS (APT)
|
|
127
|
+
|
|
128
|
+
#### Platform Note
|
|
129
|
+
|
|
130
|
+
**Chocolatey does not run on Linux.** Chocolatey is a Windows-specific package manager built on PowerShell and the Windows ecosystem.
|
|
131
|
+
|
|
132
|
+
For Raspberry Pi OS package management, use APT instead:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
# Update package lists
|
|
136
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
|
|
137
|
+
|
|
138
|
+
# Example: Install a package with APT
|
|
139
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
APT is the native package manager for Raspberry Pi OS and provides similar functionality to Chocolatey.
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
### Amazon Linux (DNF/YUM)
|
|
147
|
+
|
|
148
|
+
#### Platform Note
|
|
149
|
+
|
|
150
|
+
**Chocolatey does not run on Linux.** Chocolatey is a Windows-specific package manager built on PowerShell and the Windows ecosystem.
|
|
151
|
+
|
|
152
|
+
For Amazon Linux package management, use DNF (AL2023) or YUM (AL2) instead:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
# Amazon Linux 2023 - Install a package with DNF
|
|
156
|
+
sudo dnf install -y wget
|
|
157
|
+
|
|
158
|
+
# Amazon Linux 2 - Install a package with YUM
|
|
159
|
+
sudo yum install -y wget
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
DNF and YUM are the native package managers for RHEL-based Linux distributions and provide similar functionality to Chocolatey.
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
### Windows (PowerShell)
|
|
167
|
+
|
|
168
|
+
#### Prerequisites
|
|
169
|
+
|
|
170
|
+
- Windows 7 SP1 or later (Windows 10/11 recommended)
|
|
171
|
+
- Windows Server 2003 or later (Windows Server 2016+ recommended)
|
|
172
|
+
- PowerShell v3 or later (comes pre-installed on Windows 10/11)
|
|
173
|
+
- .NET Framework 4.8 (installer handles this automatically if missing)
|
|
174
|
+
- Administrative PowerShell session
|
|
175
|
+
|
|
176
|
+
**Verify PowerShell Version**:
|
|
177
|
+
|
|
178
|
+
Open PowerShell and run:
|
|
179
|
+
|
|
180
|
+
```powershell
|
|
181
|
+
$PSVersionTable.PSVersion
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
The Major version should be 3 or higher. Windows 10/11 includes PowerShell 5.1 by default.
|
|
185
|
+
|
|
186
|
+
**Verify Execution Policy**:
|
|
187
|
+
|
|
188
|
+
Check the current execution policy:
|
|
189
|
+
|
|
190
|
+
```powershell
|
|
191
|
+
Get-ExecutionPolicy
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
If it returns `Restricted`, you will need to change it during installation (the installation command handles this).
|
|
195
|
+
|
|
196
|
+
#### Installation Steps
|
|
197
|
+
|
|
198
|
+
**Step 1: Open Administrator PowerShell**
|
|
199
|
+
|
|
200
|
+
Right-click the Start button and select "Windows Terminal (Admin)" or "Windows PowerShell (Admin)". Alternatively, search for "PowerShell" in the Start menu, right-click it, and select "Run as administrator".
|
|
201
|
+
|
|
202
|
+
**Step 2: Run the Installation Command**
|
|
203
|
+
|
|
204
|
+
Copy and paste the following command into the Administrator PowerShell window:
|
|
205
|
+
|
|
206
|
+
```powershell
|
|
207
|
+
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'))
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
This single command performs the following operations:
|
|
211
|
+
|
|
212
|
+
1. `Set-ExecutionPolicy Bypass -Scope Process -Force` - Temporarily allows script execution for the current session only (does not permanently change system policy)
|
|
213
|
+
2. `[System.Net.ServicePointManager]::SecurityProtocol = ... -bor 3072` - Enables TLS 1.2 for secure HTTPS downloads
|
|
214
|
+
3. `iex ((New-Object System.Net.WebClient).DownloadString(...))` - Downloads and executes the official Chocolatey installation script
|
|
215
|
+
|
|
216
|
+
The installation is fully non-interactive and requires no user input. The installer will:
|
|
217
|
+
|
|
218
|
+
1. Create the `C:\ProgramData\chocolatey` directory
|
|
219
|
+
2. Download and extract the Chocolatey NuGet package
|
|
220
|
+
3. Set the `ChocolateyInstall` environment variable
|
|
221
|
+
4. Add Chocolatey to the system PATH
|
|
222
|
+
5. Install the `choco` command
|
|
223
|
+
|
|
224
|
+
**Alternative: Installation via Command Prompt (cmd.exe)**
|
|
225
|
+
|
|
226
|
+
If you prefer Command Prompt over PowerShell, run the following command in an Administrator Command Prompt:
|
|
227
|
+
|
|
228
|
+
```cmd
|
|
229
|
+
@"%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://community.chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
This command invokes PowerShell from Command Prompt to run the same installation script.
|
|
233
|
+
|
|
234
|
+
#### Verification
|
|
235
|
+
|
|
236
|
+
Close and reopen your terminal (PowerShell or Command Prompt) to refresh the PATH, then verify the installation:
|
|
237
|
+
|
|
238
|
+
```powershell
|
|
239
|
+
choco --version
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Expected output (version numbers may vary):
|
|
243
|
+
|
|
244
|
+
```
|
|
245
|
+
2.4.1
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
Run the help command to confirm Chocolatey is working:
|
|
249
|
+
|
|
250
|
+
```powershell
|
|
251
|
+
choco -?
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
This displays the Chocolatey help text with available commands.
|
|
255
|
+
|
|
256
|
+
Test installing a package:
|
|
257
|
+
|
|
258
|
+
```powershell
|
|
259
|
+
choco install notepadplusplus -y
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
The `-y` flag automatically confirms all prompts, enabling fully non-interactive installation.
|
|
263
|
+
|
|
264
|
+
#### Troubleshooting
|
|
265
|
+
|
|
266
|
+
**Problem**: `choco: The term 'choco' is not recognized`
|
|
267
|
+
|
|
268
|
+
**Solution**: The PATH environment variable was not updated. Close all terminal windows and open a new Administrator PowerShell. If the problem persists, manually add Chocolatey to PATH:
|
|
269
|
+
|
|
270
|
+
```powershell
|
|
271
|
+
$env:Path += ";C:\ProgramData\chocolatey\bin"
|
|
272
|
+
[Environment]::SetEnvironmentVariable("Path", $env:Path, [EnvironmentVariableTarget]::Machine)
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
**Problem**: `Unable to resolve dependency` errors
|
|
276
|
+
|
|
277
|
+
**Solution**: Update Chocolatey to the latest version:
|
|
278
|
+
|
|
279
|
+
```powershell
|
|
280
|
+
choco upgrade chocolatey -y
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**Problem**: `Access to the path is denied` errors
|
|
284
|
+
|
|
285
|
+
**Solution**: Ensure you are running PowerShell as Administrator. Right-click PowerShell and select "Run as administrator".
|
|
286
|
+
|
|
287
|
+
**Problem**: SSL/TLS errors during installation
|
|
288
|
+
|
|
289
|
+
**Solution**: Your system may not support TLS 1.2 by default. Ensure .NET Framework 4.5 or later is installed. Run Windows Update to get the latest security patches.
|
|
290
|
+
|
|
291
|
+
**Problem**: `Execution of scripts is disabled on this system`
|
|
292
|
+
|
|
293
|
+
**Solution**: The execution policy is blocking the installation script. The installation command already handles this with `Set-ExecutionPolicy Bypass -Scope Process -Force`, but if you see this error, run the following first:
|
|
294
|
+
|
|
295
|
+
```powershell
|
|
296
|
+
Set-ExecutionPolicy Bypass -Scope Process -Force
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
Then re-run the installation command.
|
|
300
|
+
|
|
301
|
+
**Problem**: Installation hangs behind corporate proxy
|
|
302
|
+
|
|
303
|
+
**Solution**: Configure proxy settings before installation:
|
|
304
|
+
|
|
305
|
+
```powershell
|
|
306
|
+
$env:chocolateyProxyLocation = "http://proxy.example.com:8080"
|
|
307
|
+
$env:chocolateyProxyUser = "username"
|
|
308
|
+
$env:chocolateyProxyPassword = "password"
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
Then run the installation command.
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
### WSL (Ubuntu)
|
|
316
|
+
|
|
317
|
+
#### Platform Note
|
|
318
|
+
|
|
319
|
+
**Chocolatey does not run within WSL.** WSL provides a Linux environment, and Chocolatey is Windows-only software.
|
|
320
|
+
|
|
321
|
+
Within WSL, use APT for package management:
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
# Update package lists
|
|
325
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
|
|
326
|
+
|
|
327
|
+
# Example: Install a package with APT
|
|
328
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
**Note**: If you have Chocolatey installed on your Windows host (outside WSL), you can invoke it from WSL by calling the Windows executable:
|
|
332
|
+
|
|
333
|
+
```bash
|
|
334
|
+
# Call Windows Chocolatey from within WSL (not recommended for most use cases)
|
|
335
|
+
/mnt/c/ProgramData/chocolatey/bin/choco.exe --version
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
However, packages installed via Chocolatey on Windows are not accessible within the WSL Linux environment. Use APT for software needed within WSL.
|
|
339
|
+
|
|
340
|
+
---
|
|
341
|
+
|
|
342
|
+
### Git Bash (Windows)
|
|
343
|
+
|
|
344
|
+
#### Prerequisites
|
|
345
|
+
|
|
346
|
+
- Windows operating system with Git Bash installed
|
|
347
|
+
- Chocolatey installed on the Windows host (see Windows section above)
|
|
348
|
+
- Administrator privileges (run Git Bash as Administrator for package operations)
|
|
349
|
+
|
|
350
|
+
Git Bash is a terminal emulator for Windows that provides a bash-like shell. Since Git Bash runs on Windows, it can invoke Chocolatey commands directly.
|
|
351
|
+
|
|
352
|
+
#### Installation Steps
|
|
353
|
+
|
|
354
|
+
Chocolatey must be installed on the Windows host first. You cannot install Chocolatey from within Git Bash because the installation requires PowerShell.
|
|
355
|
+
|
|
356
|
+
**Step 1: Install Chocolatey via PowerShell**
|
|
357
|
+
|
|
358
|
+
Open an Administrator PowerShell window (not Git Bash) and run:
|
|
359
|
+
|
|
360
|
+
```powershell
|
|
361
|
+
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'))
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
**Step 2: Verify from Git Bash**
|
|
365
|
+
|
|
366
|
+
After installation, open a new Git Bash window (close and reopen if already open) and verify Chocolatey is accessible:
|
|
367
|
+
|
|
368
|
+
```bash
|
|
369
|
+
choco --version
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
#### Using Chocolatey from Git Bash
|
|
373
|
+
|
|
374
|
+
Once installed, you can run Chocolatey commands from Git Bash. Note that package installation typically requires Administrator privileges.
|
|
375
|
+
|
|
376
|
+
To run Git Bash as Administrator:
|
|
377
|
+
1. Right-click the Git Bash shortcut
|
|
378
|
+
2. Select "Run as administrator"
|
|
379
|
+
|
|
380
|
+
Then run Chocolatey commands as normal:
|
|
381
|
+
|
|
382
|
+
```bash
|
|
383
|
+
# List installed packages
|
|
384
|
+
choco list
|
|
385
|
+
|
|
386
|
+
# Install a package (requires Administrator)
|
|
387
|
+
choco install wget -y
|
|
388
|
+
|
|
389
|
+
# Upgrade all packages (requires Administrator)
|
|
390
|
+
choco upgrade all -y
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
#### Verification
|
|
394
|
+
|
|
395
|
+
Confirm Chocolatey is accessible from Git Bash:
|
|
396
|
+
|
|
397
|
+
```bash
|
|
398
|
+
choco --version
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
Expected output (version numbers may vary):
|
|
402
|
+
|
|
403
|
+
```
|
|
404
|
+
2.4.1
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
Test installing a package (run Git Bash as Administrator):
|
|
408
|
+
|
|
409
|
+
```bash
|
|
410
|
+
choco install curl -y
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
#### Troubleshooting
|
|
414
|
+
|
|
415
|
+
**Problem**: `choco: command not found`
|
|
416
|
+
|
|
417
|
+
**Solution**: Git Bash may not have inherited the updated PATH. Close Git Bash completely and reopen it. If the problem persists, verify the PATH includes Chocolatey:
|
|
418
|
+
|
|
419
|
+
```bash
|
|
420
|
+
echo $PATH | tr ':' '\n' | grep -i choco
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
If Chocolatey is not in the PATH, add it to your `~/.bashrc`:
|
|
424
|
+
|
|
425
|
+
```bash
|
|
426
|
+
echo 'export PATH="$PATH:/c/ProgramData/chocolatey/bin"' >> ~/.bashrc
|
|
427
|
+
source ~/.bashrc
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
**Problem**: Package installation fails with access denied
|
|
431
|
+
|
|
432
|
+
**Solution**: You must run Git Bash as Administrator to install packages. Right-click Git Bash and select "Run as administrator".
|
|
433
|
+
|
|
434
|
+
**Problem**: Chocolatey commands hang or timeout
|
|
435
|
+
|
|
436
|
+
**Solution**: Some Chocolatey commands may not work well in Git Bash's mintty terminal. Try running the command in PowerShell or Command Prompt instead, or use `winpty`:
|
|
437
|
+
|
|
438
|
+
```bash
|
|
439
|
+
winpty choco install wget -y
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
## Post-Installation Configuration
|
|
445
|
+
|
|
446
|
+
After installing Chocolatey on Windows, consider these optional but recommended configurations.
|
|
447
|
+
|
|
448
|
+
### Enable Global Confirmation
|
|
449
|
+
|
|
450
|
+
To avoid typing `-y` on every command, enable global confirmation:
|
|
451
|
+
|
|
452
|
+
```powershell
|
|
453
|
+
choco feature enable -n allowGlobalConfirmation
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
With this setting, all `choco install`, `choco upgrade`, and `choco uninstall` commands will run non-interactively without requiring the `-y` flag.
|
|
457
|
+
|
|
458
|
+
### Configure Package Cache Location
|
|
459
|
+
|
|
460
|
+
By default, Chocolatey caches packages in `C:\ProgramData\chocolatey\lib`. To change the cache location:
|
|
461
|
+
|
|
462
|
+
```powershell
|
|
463
|
+
choco config set cacheLocation "D:\ChocolateyCache"
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
### Configure Proxy Settings
|
|
467
|
+
|
|
468
|
+
If you are behind a corporate proxy, configure Chocolatey to use it:
|
|
469
|
+
|
|
470
|
+
```powershell
|
|
471
|
+
choco config set proxy "http://proxy.example.com:8080"
|
|
472
|
+
choco config set proxyUser "username"
|
|
473
|
+
choco config set proxyPassword "password"
|
|
474
|
+
```
|
|
475
|
+
|
|
476
|
+
### Disable Telemetry
|
|
477
|
+
|
|
478
|
+
Chocolatey does not collect telemetry by default in the open-source version. If using Chocolatey for Business, consult the documentation for telemetry settings.
|
|
479
|
+
|
|
480
|
+
### Common Chocolatey Commands
|
|
481
|
+
|
|
482
|
+
| Command | Description |
|
|
483
|
+
|---------|-------------|
|
|
484
|
+
| `choco install <package> -y` | Install a package silently |
|
|
485
|
+
| `choco uninstall <package> -y` | Remove a package silently |
|
|
486
|
+
| `choco upgrade <package> -y` | Upgrade a specific package |
|
|
487
|
+
| `choco upgrade all -y` | Upgrade all installed packages |
|
|
488
|
+
| `choco list` | List installed packages |
|
|
489
|
+
| `choco search <term>` | Search for packages |
|
|
490
|
+
| `choco info <package>` | Show package information |
|
|
491
|
+
| `choco outdated` | List packages with available updates |
|
|
492
|
+
| `choco pin add -n <package>` | Prevent a package from being upgraded |
|
|
493
|
+
| `choco source list` | List configured package sources |
|
|
494
|
+
|
|
495
|
+
---
|
|
496
|
+
|
|
497
|
+
## Common Issues
|
|
498
|
+
|
|
499
|
+
### Issue: Package Installation Fails Silently
|
|
500
|
+
|
|
501
|
+
**Symptoms**: `choco install` completes but the software is not installed
|
|
502
|
+
|
|
503
|
+
**Solutions**:
|
|
504
|
+
|
|
505
|
+
Check the Chocolatey log for errors:
|
|
506
|
+
|
|
507
|
+
```powershell
|
|
508
|
+
Get-Content C:\ProgramData\chocolatey\logs\chocolatey.log -Tail 100
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
Some packages have underlying installers that may fail. Try reinstalling with verbose output:
|
|
512
|
+
|
|
513
|
+
```powershell
|
|
514
|
+
choco install <package> -y --verbose
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
### Issue: Checksum Verification Failed
|
|
518
|
+
|
|
519
|
+
**Symptoms**: `ERROR - The remote file either doesn't exist, is unauthorized, or is forbidden for url`
|
|
520
|
+
|
|
521
|
+
**Solutions**:
|
|
522
|
+
|
|
523
|
+
The package may have an outdated checksum. You can skip checksum verification (use with caution):
|
|
524
|
+
|
|
525
|
+
```powershell
|
|
526
|
+
choco install <package> -y --ignore-checksums
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
Better: Report the issue to the package maintainer on chocolatey.org.
|
|
530
|
+
|
|
531
|
+
### Issue: Conflicting Software Versions
|
|
532
|
+
|
|
533
|
+
**Symptoms**: Multiple versions of the same software installed
|
|
534
|
+
|
|
535
|
+
**Solutions**:
|
|
536
|
+
|
|
537
|
+
List installed packages and their versions:
|
|
538
|
+
|
|
539
|
+
```powershell
|
|
540
|
+
choco list
|
|
541
|
+
```
|
|
542
|
+
|
|
543
|
+
Uninstall the conflicting version:
|
|
544
|
+
|
|
545
|
+
```powershell
|
|
546
|
+
choco uninstall <package> -y
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
Then install the desired version:
|
|
550
|
+
|
|
551
|
+
```powershell
|
|
552
|
+
choco install <package> --version=<version> -y
|
|
553
|
+
```
|
|
554
|
+
|
|
555
|
+
### Issue: Chocolatey Commands Require Administrator
|
|
556
|
+
|
|
557
|
+
**Symptoms**: `Access denied` or `requires elevation` errors
|
|
558
|
+
|
|
559
|
+
**Solutions**:
|
|
560
|
+
|
|
561
|
+
Most Chocolatey operations require Administrator privileges. Always run PowerShell or Command Prompt as Administrator for package operations.
|
|
562
|
+
|
|
563
|
+
For listing installed packages (read-only), Administrator privileges are not required:
|
|
564
|
+
|
|
565
|
+
```powershell
|
|
566
|
+
choco list
|
|
567
|
+
```
|
|
568
|
+
|
|
569
|
+
### Issue: Network Timeout During Installation
|
|
570
|
+
|
|
571
|
+
**Symptoms**: Downloads timeout or fail intermittently
|
|
572
|
+
|
|
573
|
+
**Solutions**:
|
|
574
|
+
|
|
575
|
+
Increase the command execution timeout:
|
|
576
|
+
|
|
577
|
+
```powershell
|
|
578
|
+
choco config set commandExecutionTimeoutSeconds 14400
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
If behind a proxy, ensure proxy settings are configured correctly (see Post-Installation Configuration).
|
|
582
|
+
|
|
583
|
+
### Issue: PATH Not Updated After Package Installation
|
|
584
|
+
|
|
585
|
+
**Symptoms**: Installed program not found in PATH
|
|
586
|
+
|
|
587
|
+
**Solutions**:
|
|
588
|
+
|
|
589
|
+
Close and reopen your terminal to refresh the PATH. If the problem persists, the package may install to a non-standard location. Check the package documentation or run:
|
|
590
|
+
|
|
591
|
+
```powershell
|
|
592
|
+
choco info <package>
|
|
593
|
+
```
|
|
594
|
+
|
|
595
|
+
Some packages require a system restart to update PATH correctly.
|
|
596
|
+
|
|
597
|
+
---
|
|
598
|
+
|
|
599
|
+
## Upgrading Chocolatey
|
|
600
|
+
|
|
601
|
+
To upgrade Chocolatey to the latest version:
|
|
602
|
+
|
|
603
|
+
```powershell
|
|
604
|
+
choco upgrade chocolatey -y
|
|
605
|
+
```
|
|
606
|
+
|
|
607
|
+
Verify the upgrade:
|
|
608
|
+
|
|
609
|
+
```powershell
|
|
610
|
+
choco --version
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
---
|
|
614
|
+
|
|
615
|
+
## Uninstalling Chocolatey
|
|
616
|
+
|
|
617
|
+
To completely remove Chocolatey from your system:
|
|
618
|
+
|
|
619
|
+
**Step 1: Uninstall All Packages**
|
|
620
|
+
|
|
621
|
+
```powershell
|
|
622
|
+
choco uninstall all -y
|
|
623
|
+
```
|
|
624
|
+
|
|
625
|
+
**Step 2: Remove Chocolatey Directory**
|
|
626
|
+
|
|
627
|
+
Run the following in Administrator PowerShell:
|
|
628
|
+
|
|
629
|
+
```powershell
|
|
630
|
+
Remove-Item -Recurse -Force C:\ProgramData\chocolatey
|
|
631
|
+
```
|
|
632
|
+
|
|
633
|
+
**Step 3: Remove Environment Variables**
|
|
634
|
+
|
|
635
|
+
```powershell
|
|
636
|
+
[Environment]::SetEnvironmentVariable("ChocolateyInstall", $null, [EnvironmentVariableTarget]::Machine)
|
|
637
|
+
[Environment]::SetEnvironmentVariable("ChocolateyToolsLocation", $null, [EnvironmentVariableTarget]::Machine)
|
|
638
|
+
```
|
|
639
|
+
|
|
640
|
+
**Step 4: Remove from PATH**
|
|
641
|
+
|
|
642
|
+
Manually edit the system PATH environment variable to remove the Chocolatey bin directory:
|
|
643
|
+
|
|
644
|
+
1. Open System Properties (Win+Pause or search "Environment Variables")
|
|
645
|
+
2. Click "Environment Variables"
|
|
646
|
+
3. Under "System variables", find "Path" and click "Edit"
|
|
647
|
+
4. Remove the entry for `C:\ProgramData\chocolatey\bin`
|
|
648
|
+
5. Click OK to save
|
|
649
|
+
|
|
650
|
+
---
|
|
651
|
+
|
|
652
|
+
## References
|
|
653
|
+
|
|
654
|
+
- [Chocolatey Official Website](https://chocolatey.org/)
|
|
655
|
+
- [Chocolatey Installation Documentation](https://chocolatey.org/install)
|
|
656
|
+
- [Chocolatey Setup/Install Documentation](https://docs.chocolatey.org/en-us/choco/setup/)
|
|
657
|
+
- [Chocolatey Commands Reference](https://docs.chocolatey.org/en-us/choco/commands/)
|
|
658
|
+
- [Chocolatey Package Repository](https://community.chocolatey.org/packages)
|
|
659
|
+
- [Chocolatey GitHub Repository](https://github.com/chocolatey/choco)
|
|
660
|
+
- [Chocolatey Getting Started Guide](https://docs.chocolatey.org/en-us/getting-started/)
|
|
661
|
+
- [Chocolatey FAQ](https://docs.chocolatey.org/en-us/faqs/)
|