@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,641 @@
|
|
|
1
|
+
# Installing Google Chrome Canary
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
Google Chrome Canary is the experimental, bleeding-edge version of the Chrome web browser. It receives nightly updates and contains the latest features, APIs, and experimental web technologies before they reach the stable Chrome release. Chrome Canary is designed for developers and early adopters who want to test upcoming browser features, experiment with new web APIs, and identify potential compatibility issues early in the development cycle.
|
|
6
|
+
|
|
7
|
+
**Important**: Chrome Canary is not intended for daily browsing. It may contain bugs, crash unexpectedly, and exhibit unstable behavior. Install it alongside your stable Chrome installation for testing purposes only.
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
|
|
11
|
+
Before installing Chrome Canary on any platform, ensure:
|
|
12
|
+
|
|
13
|
+
1. **Internet connectivity** - Required to download the installer
|
|
14
|
+
2. **64-bit operating system** - Chrome Canary requires a 64-bit system on all supported platforms
|
|
15
|
+
3. **Sufficient disk space** - Approximately 500 MB for installation
|
|
16
|
+
4. **Administrative privileges** - Required on most platforms for system-wide installation
|
|
17
|
+
|
|
18
|
+
**Note**: Chrome Canary can run alongside Google Chrome stable. Both browsers maintain separate user profiles and do not interfere with each other.
|
|
19
|
+
|
|
20
|
+
## Dependencies
|
|
21
|
+
|
|
22
|
+
### macOS (Homebrew)
|
|
23
|
+
- **Required:**
|
|
24
|
+
- `Homebrew` - Install via `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`
|
|
25
|
+
- **Optional:** None
|
|
26
|
+
- **Auto-installed:** None (Homebrew handles any system-level dependencies transparently)
|
|
27
|
+
|
|
28
|
+
### Ubuntu (APT/Snap)
|
|
29
|
+
- **Required:**
|
|
30
|
+
- `wget` - Install via `sudo apt install wget` (usually pre-installed)
|
|
31
|
+
- `gnupg` - Install via `sudo apt install gnupg` (usually pre-installed)
|
|
32
|
+
- **Optional:** None
|
|
33
|
+
- **Auto-installed:** Chrome runtime dependencies (fonts, libraries, etc.) are automatically resolved by APT during installation
|
|
34
|
+
|
|
35
|
+
### Raspberry Pi OS (APT/Snap)
|
|
36
|
+
- **Required:** None
|
|
37
|
+
- **Optional:** None
|
|
38
|
+
- **Auto-installed:** None
|
|
39
|
+
- **Note:** Installation not supported on this platform. Google does not provide ARM builds of Chrome Canary.
|
|
40
|
+
|
|
41
|
+
### Amazon Linux (DNF/YUM)
|
|
42
|
+
- **Required:** None
|
|
43
|
+
- **Optional:** None
|
|
44
|
+
- **Auto-installed:** None
|
|
45
|
+
- **Note:** Installation not supported on this platform. Google does not provide RPM packages for Chrome Canary.
|
|
46
|
+
|
|
47
|
+
### Windows (Chocolatey/winget)
|
|
48
|
+
- **Required:**
|
|
49
|
+
- `Chocolatey` - Install via PowerShell (Administrator): `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'))`
|
|
50
|
+
- **Optional:** None
|
|
51
|
+
- **Auto-installed:** .NET Framework and other Windows runtime dependencies are handled automatically by Chocolatey
|
|
52
|
+
|
|
53
|
+
### Git Bash (Manual/Portable)
|
|
54
|
+
- **Required:**
|
|
55
|
+
- `Chocolatey` - Uses Windows installation method (see Windows section above)
|
|
56
|
+
- **Optional:** None
|
|
57
|
+
- **Auto-installed:** Same as Windows platform
|
|
58
|
+
|
|
59
|
+
## Platform-Specific Installation
|
|
60
|
+
|
|
61
|
+
### macOS (Homebrew)
|
|
62
|
+
|
|
63
|
+
#### Prerequisites
|
|
64
|
+
|
|
65
|
+
- macOS 12 (Monterey) or later
|
|
66
|
+
- Homebrew package manager installed
|
|
67
|
+
- Terminal access
|
|
68
|
+
|
|
69
|
+
If Homebrew is not installed, install it first:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
#### Installation Steps
|
|
76
|
+
|
|
77
|
+
Run the following command to install Chrome Canary:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
brew install --cask --quiet google-chrome@canary
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
The `--quiet` flag suppresses non-essential output, making the command suitable for automation scripts. The `--cask` flag specifies that this is a macOS application (as opposed to a command-line tool).
|
|
84
|
+
|
|
85
|
+
#### Verification
|
|
86
|
+
|
|
87
|
+
Confirm the installation succeeded by launching Chrome Canary:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
open -a "Google Chrome Canary"
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Alternatively, verify the application exists:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
ls -la /Applications/Google\ Chrome\ Canary.app
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Expected output shows the application directory with its contents.
|
|
100
|
+
|
|
101
|
+
To check the installed version, run Chrome Canary and navigate to `chrome://version` in the address bar, or use:
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --version
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
#### Troubleshooting
|
|
108
|
+
|
|
109
|
+
**Problem**: `Error: Cask 'google-chrome@canary' is unavailable`
|
|
110
|
+
|
|
111
|
+
**Solution**: Update Homebrew to get the latest cask definitions:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
brew update
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**Problem**: Installation fails with "macOS version not supported"
|
|
118
|
+
|
|
119
|
+
**Solution**: Chrome Canary requires macOS 12 or later. Upgrade your operating system or use an older version of Chrome stable for older macOS versions.
|
|
120
|
+
|
|
121
|
+
**Problem**: `brew: command not found`
|
|
122
|
+
|
|
123
|
+
**Solution**: Homebrew is not in your PATH. Add it by running:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
eval "$(/opt/homebrew/bin/brew shellenv)"
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
For permanent fix, add the above line to your `~/.zshrc` or `~/.bash_profile`.
|
|
130
|
+
|
|
131
|
+
**Problem**: Quarantine warning when first launching
|
|
132
|
+
|
|
133
|
+
**Solution**: macOS may quarantine downloaded applications. Remove the quarantine attribute:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
xattr -dr com.apple.quarantine /Applications/Google\ Chrome\ Canary.app
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
### Ubuntu/Debian (APT)
|
|
142
|
+
|
|
143
|
+
#### Prerequisites
|
|
144
|
+
|
|
145
|
+
- Ubuntu 18.04 or later, or Debian 10 or later (64-bit only)
|
|
146
|
+
- x86_64 architecture (Intel/AMD processors)
|
|
147
|
+
- sudo privileges
|
|
148
|
+
- `wget` and `gnupg` packages installed
|
|
149
|
+
|
|
150
|
+
Chrome Canary is available through Google's official APT repository. This method provides automatic updates through the standard APT update mechanism.
|
|
151
|
+
|
|
152
|
+
#### Installation Steps
|
|
153
|
+
|
|
154
|
+
**Step 1**: Install required dependencies:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gnupg
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**Step 2**: Download and install Google's signing key:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
wget -qO - https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /etc/apt/keyrings/google-chrome.gpg
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Step 3**: Add the Google Chrome repository:
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list > /dev/null
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Step 4**: Update the package list and install Chrome Canary:
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y google-chrome-canary
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
#### Verification
|
|
179
|
+
|
|
180
|
+
Confirm the installation succeeded:
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
google-chrome-canary --version
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Expected output (version numbers may vary):
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
Google Chrome 145.0.7614.0 canary
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
To launch Chrome Canary:
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
google-chrome-canary
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
#### Troubleshooting
|
|
199
|
+
|
|
200
|
+
**Problem**: `E: Unable to locate package google-chrome-canary`
|
|
201
|
+
|
|
202
|
+
**Solution**: The repository may not have been added correctly. Verify the repository file exists:
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
cat /etc/apt/sources.list.d/google-chrome.list
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
If empty or missing, repeat Step 3 from the installation steps.
|
|
209
|
+
|
|
210
|
+
**Problem**: GPG key error during `apt-get update`
|
|
211
|
+
|
|
212
|
+
**Solution**: Re-download and install the signing key:
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
sudo rm -f /etc/apt/keyrings/google-chrome.gpg
|
|
216
|
+
wget -qO - https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /etc/apt/keyrings/google-chrome.gpg
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
**Problem**: `dpkg: error processing package` with dependency issues
|
|
220
|
+
|
|
221
|
+
**Solution**: Fix broken dependencies:
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get install -f -y
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**Problem**: Chrome Canary fails to launch with "no sandbox" error
|
|
228
|
+
|
|
229
|
+
**Solution**: Chrome requires a proper sandbox environment. If running in a container or VM without proper privileges, launch with:
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
google-chrome-canary --no-sandbox
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
**Warning**: Running without a sandbox reduces security and should only be done in isolated testing environments.
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
### Raspberry Pi OS (APT)
|
|
240
|
+
|
|
241
|
+
#### Platform Limitation
|
|
242
|
+
|
|
243
|
+
**Google Chrome Canary is NOT available for Raspberry Pi OS.**
|
|
244
|
+
|
|
245
|
+
Google does not provide ARM builds of Chrome Canary. The Chrome team only releases Canary builds for x86_64 (Intel/AMD) architectures on Linux. Raspberry Pi devices use ARM processors, which are incompatible with the available Chrome Canary packages.
|
|
246
|
+
|
|
247
|
+
#### Recommended Alternative
|
|
248
|
+
|
|
249
|
+
Use Chromium, the open-source project that Chrome is based on. Chromium is pre-installed on Raspberry Pi OS and provides similar functionality:
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y chromium-browser
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
Verify installation:
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
chromium-browser --version
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
**Note**: Chromium does not have a "Canary" equivalent channel. The standard Chromium package tracks stable releases. For newer features, you can build Chromium from source, though this is time-consuming and resource-intensive on Raspberry Pi hardware.
|
|
262
|
+
|
|
263
|
+
#### Why This Limitation Exists
|
|
264
|
+
|
|
265
|
+
Google prioritizes Canary builds for platforms where most developers work (x86_64 desktops). ARM Linux devices represent a small fraction of the developer market, so Google has not allocated resources to produce and test ARM Canary builds. The unstable nature of Canary would also compound the challenges of supporting a less common architecture.
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
|
|
269
|
+
### Amazon Linux/RHEL (DNF/YUM)
|
|
270
|
+
|
|
271
|
+
#### Platform Limitation
|
|
272
|
+
|
|
273
|
+
**Google Chrome Canary is NOT available for Amazon Linux, RHEL, CentOS, or Fedora.**
|
|
274
|
+
|
|
275
|
+
Google does not release Chrome Canary packages for RPM-based Linux distributions. The Chrome Canary channel is only available for Debian/Ubuntu-based systems on Linux.
|
|
276
|
+
|
|
277
|
+
#### Recommended Alternative
|
|
278
|
+
|
|
279
|
+
Use the Chrome Unstable (Dev) channel, which is the closest available alternative. It receives updates approximately weekly and includes experimental features before they reach the Beta or Stable channels.
|
|
280
|
+
|
|
281
|
+
**For Amazon Linux 2023 / Fedora:**
|
|
282
|
+
|
|
283
|
+
**Step 1**: Enable the Google Chrome repository:
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
sudo tee /etc/yum.repos.d/google-chrome.repo > /dev/null << 'EOF'
|
|
287
|
+
[google-chrome]
|
|
288
|
+
name=google-chrome
|
|
289
|
+
baseurl=https://dl.google.com/linux/chrome/rpm/stable/$basearch
|
|
290
|
+
enabled=1
|
|
291
|
+
gpgcheck=1
|
|
292
|
+
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
|
|
293
|
+
EOF
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
**Step 2**: Install Chrome Unstable (Dev channel):
|
|
297
|
+
|
|
298
|
+
```bash
|
|
299
|
+
sudo dnf install -y google-chrome-unstable
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
**For Amazon Linux 2 / CentOS 7:**
|
|
303
|
+
|
|
304
|
+
```bash
|
|
305
|
+
sudo yum install -y google-chrome-unstable
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
Verify installation:
|
|
309
|
+
|
|
310
|
+
```bash
|
|
311
|
+
google-chrome-unstable --version
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
#### Why This Limitation Exists
|
|
315
|
+
|
|
316
|
+
Google has historically focused Canary releases on platforms with the largest developer populations. The Debian/Ubuntu ecosystem dominates Linux desktop usage among developers, so Google prioritizes APT-based Canary packages. The Unstable (Dev) channel provides a similar "early access" experience with weekly updates.
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
### Windows (Chocolatey)
|
|
321
|
+
|
|
322
|
+
#### Prerequisites
|
|
323
|
+
|
|
324
|
+
- Windows 10 or Windows 11 (64-bit)
|
|
325
|
+
- Chocolatey package manager installed
|
|
326
|
+
- Administrator PowerShell or Command Prompt
|
|
327
|
+
|
|
328
|
+
If Chocolatey is not installed, install it first by running this command in an Administrator PowerShell:
|
|
329
|
+
|
|
330
|
+
```powershell
|
|
331
|
+
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'))
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
#### Installation Steps
|
|
335
|
+
|
|
336
|
+
Run the following command in an Administrator PowerShell or Command Prompt:
|
|
337
|
+
|
|
338
|
+
```powershell
|
|
339
|
+
choco install googlechromecanary -y --pre
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
The `-y` flag automatically confirms all prompts, enabling fully non-interactive installation. The `--pre` flag allows installation of prerelease packages (Chrome Canary is marked as prerelease in Chocolatey).
|
|
343
|
+
|
|
344
|
+
**Important Note**: The Chocolatey package always installs the latest version of Chrome Canary, regardless of any version specified. Google does not offer archived Canary builds for download.
|
|
345
|
+
|
|
346
|
+
#### Verification
|
|
347
|
+
|
|
348
|
+
Open a new Command Prompt or PowerShell window (required for PATH to update), then verify installation:
|
|
349
|
+
|
|
350
|
+
```powershell
|
|
351
|
+
where "Google Chrome Canary"
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
Or launch Chrome Canary directly:
|
|
355
|
+
|
|
356
|
+
```powershell
|
|
357
|
+
Start-Process "chrome-canary"
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
Chrome Canary installs to: `C:\Users\<username>\AppData\Local\Google\Chrome SxS\Application\chrome.exe`
|
|
361
|
+
|
|
362
|
+
#### Troubleshooting
|
|
363
|
+
|
|
364
|
+
**Problem**: `googlechromecanary not found` or package not available
|
|
365
|
+
|
|
366
|
+
**Solution**: Ensure you include the `--pre` flag, as Chrome Canary is marked as a prerelease package:
|
|
367
|
+
|
|
368
|
+
```powershell
|
|
369
|
+
choco install googlechromecanary -y --pre
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
**Problem**: Checksum mismatch error during installation
|
|
373
|
+
|
|
374
|
+
**Solution**: Google frequently updates Canary (daily), which can cause checksum mismatches. Ignore the checksum and install anyway:
|
|
375
|
+
|
|
376
|
+
```powershell
|
|
377
|
+
choco install googlechromecanary -y --pre --ignore-checksums
|
|
378
|
+
```
|
|
379
|
+
|
|
380
|
+
**Problem**: Installation fails with access denied
|
|
381
|
+
|
|
382
|
+
**Solution**: Ensure you are running PowerShell or Command Prompt as Administrator. Right-click and select "Run as administrator".
|
|
383
|
+
|
|
384
|
+
**Problem**: Chrome Canary not found after installation
|
|
385
|
+
|
|
386
|
+
**Solution**: Chrome Canary installs per-user, not system-wide. Check the user's local application data:
|
|
387
|
+
|
|
388
|
+
```powershell
|
|
389
|
+
dir "$env:LOCALAPPDATA\Google\Chrome SxS\Application\chrome.exe"
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
---
|
|
393
|
+
|
|
394
|
+
### WSL (Ubuntu)
|
|
395
|
+
|
|
396
|
+
#### Prerequisites
|
|
397
|
+
|
|
398
|
+
- Windows Subsystem for Linux with Ubuntu installed
|
|
399
|
+
- WSL 2 recommended for best performance
|
|
400
|
+
- sudo privileges within WSL
|
|
401
|
+
- X server or WSLg for GUI applications (Windows 11 includes WSLg by default)
|
|
402
|
+
|
|
403
|
+
WSL Ubuntu installations follow the same process as native Ubuntu, using Google's APT repository.
|
|
404
|
+
|
|
405
|
+
#### Installation Steps
|
|
406
|
+
|
|
407
|
+
**Step 1**: Install required dependencies:
|
|
408
|
+
|
|
409
|
+
```bash
|
|
410
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget gnupg
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
**Step 2**: Download and install Google's signing key:
|
|
414
|
+
|
|
415
|
+
```bash
|
|
416
|
+
wget -qO - https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /etc/apt/keyrings/google-chrome.gpg
|
|
417
|
+
```
|
|
418
|
+
|
|
419
|
+
**Step 3**: Add the Google Chrome repository:
|
|
420
|
+
|
|
421
|
+
```bash
|
|
422
|
+
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list > /dev/null
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
**Step 4**: Update the package list and install Chrome Canary:
|
|
426
|
+
|
|
427
|
+
```bash
|
|
428
|
+
sudo DEBIAN_FRONTEND=noninteractive apt-get update -y && sudo DEBIAN_FRONTEND=noninteractive apt-get install -y google-chrome-canary
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
#### Verification
|
|
432
|
+
|
|
433
|
+
Confirm the installation succeeded:
|
|
434
|
+
|
|
435
|
+
```bash
|
|
436
|
+
google-chrome-canary --version
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
To launch Chrome Canary with GUI (requires WSLg or X server):
|
|
440
|
+
|
|
441
|
+
```bash
|
|
442
|
+
google-chrome-canary &
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
#### Troubleshooting
|
|
446
|
+
|
|
447
|
+
**Problem**: Chrome Canary fails to launch with display errors
|
|
448
|
+
|
|
449
|
+
**Solution**: On Windows 11 with WSLg, ensure WSLg is enabled. On Windows 10, install and configure an X server like VcXsrv:
|
|
450
|
+
|
|
451
|
+
```bash
|
|
452
|
+
export DISPLAY=:0
|
|
453
|
+
google-chrome-canary
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
**Problem**: Chrome crashes immediately on launch in WSL
|
|
457
|
+
|
|
458
|
+
**Solution**: WSL may have issues with Chrome's sandbox. Launch with sandbox disabled (testing environments only):
|
|
459
|
+
|
|
460
|
+
```bash
|
|
461
|
+
google-chrome-canary --no-sandbox --disable-gpu
|
|
462
|
+
```
|
|
463
|
+
|
|
464
|
+
**Problem**: Slow performance or rendering issues
|
|
465
|
+
|
|
466
|
+
**Solution**: Disable GPU acceleration if running through X11 forwarding:
|
|
467
|
+
|
|
468
|
+
```bash
|
|
469
|
+
google-chrome-canary --disable-gpu
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
**Problem**: `E: Unable to locate package google-chrome-canary`
|
|
473
|
+
|
|
474
|
+
**Solution**: Follow the complete installation steps to set up the Google Chrome repository. The default Ubuntu repositories in WSL do not include Google Chrome packages.
|
|
475
|
+
|
|
476
|
+
---
|
|
477
|
+
|
|
478
|
+
### Git Bash (Windows Installation)
|
|
479
|
+
|
|
480
|
+
#### Prerequisites
|
|
481
|
+
|
|
482
|
+
- Windows 10 or Windows 11 (64-bit)
|
|
483
|
+
- Git Bash installed (comes with Git for Windows)
|
|
484
|
+
- Chrome Canary installed on Windows (see Windows section above)
|
|
485
|
+
|
|
486
|
+
**Note**: Git Bash on Windows does not require a separate Chrome Canary installation. Git Bash inherits the Windows PATH and can access Windows applications directly. Once Chrome Canary is installed on Windows, it is automatically available in Git Bash.
|
|
487
|
+
|
|
488
|
+
#### Installation Steps
|
|
489
|
+
|
|
490
|
+
Install Chrome Canary on Windows using the Windows installer. From Git Bash, you can trigger the installation using Chocolatey (if installed on Windows):
|
|
491
|
+
|
|
492
|
+
```bash
|
|
493
|
+
/c/ProgramData/chocolatey/bin/choco.exe install googlechromecanary -y --pre
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
Alternatively, download and run the official installer silently:
|
|
497
|
+
|
|
498
|
+
```bash
|
|
499
|
+
# Download the installer
|
|
500
|
+
curl -L -o /tmp/ChromeCanarySetup.exe "https://dl.google.com/tag/s/appguid%3D%7B4EA16AC7-FD5A-47C3-875B-DBF4A2008C20%7D%26iid%3D%7B00000000-0000-0000-0000-000000000000%7D%26lang%3Den%26browser%3D4%26usagestats%3D0%26appname%3DChrome%2520Canary%26needsadmin%3Dprefers%26ap%3Dx64-canary-statsdef_0%26brand%3DGGLS/dl/chrome/install/ChromeSetup.exe"
|
|
501
|
+
|
|
502
|
+
# Run silent installation (opens Windows installer)
|
|
503
|
+
/tmp/ChromeCanarySetup.exe /silent /install
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
After installation, close and reopen Git Bash for PATH changes to take effect.
|
|
507
|
+
|
|
508
|
+
#### Verification
|
|
509
|
+
|
|
510
|
+
Confirm Chrome Canary is accessible from Git Bash:
|
|
511
|
+
|
|
512
|
+
```bash
|
|
513
|
+
"/c/Users/$USER/AppData/Local/Google/Chrome SxS/Application/chrome.exe" --version
|
|
514
|
+
```
|
|
515
|
+
|
|
516
|
+
Or if Chrome Canary is in your PATH:
|
|
517
|
+
|
|
518
|
+
```bash
|
|
519
|
+
chrome-canary --version
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
#### Troubleshooting
|
|
523
|
+
|
|
524
|
+
**Problem**: Chrome Canary executable not found
|
|
525
|
+
|
|
526
|
+
**Solution**: Chrome Canary installs to the user's AppData directory. Access it directly:
|
|
527
|
+
|
|
528
|
+
```bash
|
|
529
|
+
"/c/Users/$USER/AppData/Local/Google/Chrome SxS/Application/chrome.exe"
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
Create an alias for convenience in `~/.bashrc`:
|
|
533
|
+
|
|
534
|
+
```bash
|
|
535
|
+
alias chrome-canary='"/c/Users/$USER/AppData/Local/Google/Chrome SxS/Application/chrome.exe"'
|
|
536
|
+
```
|
|
537
|
+
|
|
538
|
+
**Problem**: Chrome opens but Git Bash terminal hangs
|
|
539
|
+
|
|
540
|
+
**Solution**: Launch Chrome in the background:
|
|
541
|
+
|
|
542
|
+
```bash
|
|
543
|
+
"/c/Users/$USER/AppData/Local/Google/Chrome SxS/Application/chrome.exe" &
|
|
544
|
+
```
|
|
545
|
+
|
|
546
|
+
**Problem**: Cannot download installer with curl
|
|
547
|
+
|
|
548
|
+
**Solution**: Ensure curl is configured to follow redirects and use the Windows temp directory:
|
|
549
|
+
|
|
550
|
+
```bash
|
|
551
|
+
curl -L -o "$TEMP/ChromeCanarySetup.exe" "https://www.google.com/chrome/canary/thank-you.html?installdataindex=empty&statcb=0&defaultbrowser=0"
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
---
|
|
555
|
+
|
|
556
|
+
## Post-Installation Configuration
|
|
557
|
+
|
|
558
|
+
Chrome Canary runs with a separate user profile from Chrome stable. This allows you to test experimental features without affecting your primary browsing data.
|
|
559
|
+
|
|
560
|
+
### Enable Experimental Features
|
|
561
|
+
|
|
562
|
+
Access Chrome's experimental flags:
|
|
563
|
+
|
|
564
|
+
1. Open Chrome Canary
|
|
565
|
+
2. Navigate to `chrome://flags` in the address bar
|
|
566
|
+
3. Search for specific features or browse categories
|
|
567
|
+
4. Enable desired experiments and relaunch
|
|
568
|
+
|
|
569
|
+
### Command-Line Flags for Testing
|
|
570
|
+
|
|
571
|
+
Launch Chrome Canary with specific testing configurations:
|
|
572
|
+
|
|
573
|
+
```bash
|
|
574
|
+
# Enable all experimental web platform features
|
|
575
|
+
google-chrome-canary --enable-experimental-web-platform-features
|
|
576
|
+
|
|
577
|
+
# Disable web security for local development (use with caution)
|
|
578
|
+
google-chrome-canary --disable-web-security --user-data-dir=/tmp/chrome-dev
|
|
579
|
+
|
|
580
|
+
# Enable verbose logging for debugging
|
|
581
|
+
google-chrome-canary --enable-logging --v=1
|
|
582
|
+
```
|
|
583
|
+
|
|
584
|
+
### Sync Settings (Optional)
|
|
585
|
+
|
|
586
|
+
Chrome Canary supports Google account sync, but consider keeping it disabled to maintain isolation between your stable and experimental browser environments.
|
|
587
|
+
|
|
588
|
+
---
|
|
589
|
+
|
|
590
|
+
## Common Issues
|
|
591
|
+
|
|
592
|
+
### Issue: Chrome Canary Crashes Frequently
|
|
593
|
+
|
|
594
|
+
**Symptoms**: Browser crashes on startup or while browsing.
|
|
595
|
+
|
|
596
|
+
**Solution**: Chrome Canary is inherently unstable. If crashes are severe:
|
|
597
|
+
|
|
598
|
+
1. Reset Chrome Canary by deleting its profile directory
|
|
599
|
+
2. Disable recently enabled flags at `chrome://flags`
|
|
600
|
+
3. Wait for the next nightly update, which may include a fix
|
|
601
|
+
|
|
602
|
+
Profile locations:
|
|
603
|
+
- **macOS**: `~/Library/Application Support/Google/Chrome Canary/`
|
|
604
|
+
- **Linux**: `~/.config/google-chrome-canary/`
|
|
605
|
+
- **Windows**: `%LOCALAPPDATA%\Google\Chrome SxS\User Data\`
|
|
606
|
+
|
|
607
|
+
### Issue: Extensions Not Working
|
|
608
|
+
|
|
609
|
+
**Symptoms**: Certain extensions fail to load or function correctly.
|
|
610
|
+
|
|
611
|
+
**Solution**: Extensions may not be compatible with bleeding-edge Chrome APIs. Check the extension's compatibility or use Chrome stable for extensions requiring stability.
|
|
612
|
+
|
|
613
|
+
### Issue: Website Rendering Incorrectly
|
|
614
|
+
|
|
615
|
+
**Symptoms**: Websites appear broken or differently than in stable Chrome.
|
|
616
|
+
|
|
617
|
+
**Solution**: This may indicate experimental rendering changes. Test the same site in Chrome stable to confirm it's a Canary-specific issue. Report bugs to the Chromium bug tracker.
|
|
618
|
+
|
|
619
|
+
### Issue: Multiple Chrome Versions Conflict
|
|
620
|
+
|
|
621
|
+
**Symptoms**: Wrong version of Chrome opens, or unexpected behavior.
|
|
622
|
+
|
|
623
|
+
**Solution**: Chrome Canary installs separately from Chrome stable:
|
|
624
|
+
- **macOS**: "Google Chrome Canary.app" vs "Google Chrome.app"
|
|
625
|
+
- **Linux**: `google-chrome-canary` vs `google-chrome-stable`
|
|
626
|
+
- **Windows**: "Chrome SxS" directory vs "Chrome" directory
|
|
627
|
+
|
|
628
|
+
Ensure you launch the correct executable.
|
|
629
|
+
|
|
630
|
+
---
|
|
631
|
+
|
|
632
|
+
## References
|
|
633
|
+
|
|
634
|
+
- [Google Chrome Canary Official Page](https://www.google.com/chrome/canary/)
|
|
635
|
+
- [Homebrew Cask: google-chrome@canary](https://formulae.brew.sh/cask/google-chrome@canary)
|
|
636
|
+
- [Chocolatey Package: googlechromecanary](https://community.chocolatey.org/packages/googlechromecanary)
|
|
637
|
+
- [Winget Package: Google.Chrome.Canary](https://winget.run/pkg/Google/Chrome.Canary)
|
|
638
|
+
- [Google Chrome APT Repository (Ubuntu Updates)](https://www.ubuntuupdates.org/ppa/google_chrome)
|
|
639
|
+
- [Chromium Project](https://www.chromium.org/)
|
|
640
|
+
- [Chrome Release Channels](https://www.chromium.org/getting-involved/dev-channel/)
|
|
641
|
+
- [Chrome Flags Documentation](https://peter.sh/experiments/chromium-command-line-switches/)
|