@fredlackey/devutils 0.0.17 → 0.0.19

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.
Files changed (331) hide show
  1. package/README.md +32 -150
  2. package/package.json +5 -82
  3. package/bin/dev.js +0 -16
  4. package/files/README.md +0 -0
  5. package/files/claude/.claude/commands/setup-context.md +0 -3
  6. package/files/monorepos/_archive/README.md +0 -36
  7. package/files/monorepos/_legacy/README.md +0 -36
  8. package/files/monorepos/ai-docs/README.md +0 -33
  9. package/files/monorepos/apps/README.md +0 -24
  10. package/files/monorepos/docs/README.md +0 -40
  11. package/files/monorepos/packages/README.md +0 -25
  12. package/files/monorepos/research/README.md +0 -29
  13. package/files/monorepos/scripts/README.md +0 -24
  14. package/src/cli.js +0 -72
  15. package/src/commands/README.md +0 -41
  16. package/src/commands/configure.js +0 -199
  17. package/src/commands/identity.js +0 -1630
  18. package/src/commands/ignore.js +0 -247
  19. package/src/commands/install.js +0 -526
  20. package/src/commands/setup.js +0 -246
  21. package/src/commands/status.js +0 -223
  22. package/src/commands/update.js +0 -142
  23. package/src/commands/version.js +0 -100
  24. package/src/completion.js +0 -284
  25. package/src/constants.js +0 -45
  26. package/src/ignore/claude-code.txt +0 -10
  27. package/src/ignore/docker.txt +0 -18
  28. package/src/ignore/linux.txt +0 -23
  29. package/src/ignore/macos.txt +0 -36
  30. package/src/ignore/node.txt +0 -55
  31. package/src/ignore/terraform.txt +0 -37
  32. package/src/ignore/vscode.txt +0 -18
  33. package/src/ignore/windows.txt +0 -35
  34. package/src/index.js +0 -0
  35. package/src/installs/README.md +0 -399
  36. package/src/installs/adobe-creative-cloud.js +0 -546
  37. package/src/installs/adobe-creative-cloud.md +0 -605
  38. package/src/installs/appcleaner.js +0 -321
  39. package/src/installs/appcleaner.md +0 -699
  40. package/src/installs/apt-transport-https.js +0 -390
  41. package/src/installs/apt-transport-https.md +0 -678
  42. package/src/installs/atomicparsley.js +0 -642
  43. package/src/installs/atomicparsley.md +0 -795
  44. package/src/installs/aws-cli.js +0 -797
  45. package/src/installs/aws-cli.md +0 -727
  46. package/src/installs/balena-etcher.js +0 -710
  47. package/src/installs/balena-etcher.md +0 -761
  48. package/src/installs/bambu-studio.js +0 -1143
  49. package/src/installs/bambu-studio.md +0 -780
  50. package/src/installs/bash-completion.js +0 -575
  51. package/src/installs/bash-completion.md +0 -833
  52. package/src/installs/bash.js +0 -417
  53. package/src/installs/bash.md +0 -993
  54. package/src/installs/beyond-compare.js +0 -603
  55. package/src/installs/beyond-compare.md +0 -813
  56. package/src/installs/brave-browser.js +0 -968
  57. package/src/installs/brave-browser.md +0 -650
  58. package/src/installs/build-essential.js +0 -529
  59. package/src/installs/build-essential.md +0 -977
  60. package/src/installs/ca-certificates.js +0 -618
  61. package/src/installs/ca-certificates.md +0 -937
  62. package/src/installs/caffeine.js +0 -508
  63. package/src/installs/caffeine.md +0 -839
  64. package/src/installs/camtasia.js +0 -596
  65. package/src/installs/camtasia.md +0 -762
  66. package/src/installs/chatgpt.js +0 -476
  67. package/src/installs/chatgpt.md +0 -814
  68. package/src/installs/chocolatey.js +0 -456
  69. package/src/installs/chocolatey.md +0 -661
  70. package/src/installs/chrome-canary.js +0 -419
  71. package/src/installs/chrome-canary.md +0 -641
  72. package/src/installs/chromium.js +0 -667
  73. package/src/installs/chromium.md +0 -838
  74. package/src/installs/claude-code.js +0 -576
  75. package/src/installs/claude-code.md +0 -1173
  76. package/src/installs/cloudflare-warp.js +0 -900
  77. package/src/installs/cloudflare-warp.md +0 -1047
  78. package/src/installs/comet-browser.js +0 -588
  79. package/src/installs/comet-browser.md +0 -731
  80. package/src/installs/curl.js +0 -379
  81. package/src/installs/curl.md +0 -714
  82. package/src/installs/cursor.js +0 -579
  83. package/src/installs/cursor.md +0 -970
  84. package/src/installs/dbeaver.js +0 -924
  85. package/src/installs/dbeaver.md +0 -939
  86. package/src/installs/dbschema.js +0 -692
  87. package/src/installs/dbschema.md +0 -925
  88. package/src/installs/dependencies.md +0 -453
  89. package/src/installs/development-tools.js +0 -600
  90. package/src/installs/development-tools.md +0 -977
  91. package/src/installs/docker.js +0 -1029
  92. package/src/installs/docker.md +0 -1109
  93. package/src/installs/drawio.js +0 -1019
  94. package/src/installs/drawio.md +0 -795
  95. package/src/installs/elmedia-player.js +0 -347
  96. package/src/installs/elmedia-player.md +0 -556
  97. package/src/installs/ffmpeg.js +0 -889
  98. package/src/installs/ffmpeg.md +0 -852
  99. package/src/installs/file.js +0 -464
  100. package/src/installs/file.md +0 -987
  101. package/src/installs/gemini-cli.js +0 -811
  102. package/src/installs/gemini-cli.md +0 -1153
  103. package/src/installs/git.js +0 -400
  104. package/src/installs/git.md +0 -907
  105. package/src/installs/gitego.js +0 -949
  106. package/src/installs/gitego.md +0 -1172
  107. package/src/installs/go.js +0 -931
  108. package/src/installs/go.md +0 -958
  109. package/src/installs/google-antigravity.js +0 -913
  110. package/src/installs/google-antigravity.md +0 -1075
  111. package/src/installs/google-chrome.js +0 -833
  112. package/src/installs/google-chrome.md +0 -862
  113. package/src/installs/gpg.js +0 -480
  114. package/src/installs/gpg.md +0 -1056
  115. package/src/installs/homebrew.js +0 -1033
  116. package/src/installs/homebrew.md +0 -988
  117. package/src/installs/imageoptim.js +0 -968
  118. package/src/installs/imageoptim.md +0 -1119
  119. package/src/installs/installers.json +0 -4032
  120. package/src/installs/installers.json.tmp +0 -3953
  121. package/src/installs/jq.js +0 -400
  122. package/src/installs/jq.md +0 -809
  123. package/src/installs/keyboard-maestro.js +0 -719
  124. package/src/installs/keyboard-maestro.md +0 -825
  125. package/src/installs/kiro.js +0 -864
  126. package/src/installs/kiro.md +0 -1015
  127. package/src/installs/latex.js +0 -789
  128. package/src/installs/latex.md +0 -1095
  129. package/src/installs/lftp.js +0 -356
  130. package/src/installs/lftp.md +0 -907
  131. package/src/installs/lsb-release.js +0 -346
  132. package/src/installs/lsb-release.md +0 -814
  133. package/src/installs/messenger.js +0 -847
  134. package/src/installs/messenger.md +0 -900
  135. package/src/installs/microsoft-office.js +0 -568
  136. package/src/installs/microsoft-office.md +0 -760
  137. package/src/installs/microsoft-teams.js +0 -801
  138. package/src/installs/microsoft-teams.md +0 -886
  139. package/src/installs/moom.js +0 -326
  140. package/src/installs/moom.md +0 -570
  141. package/src/installs/node.js +0 -904
  142. package/src/installs/node.md +0 -1153
  143. package/src/installs/nordpass.js +0 -716
  144. package/src/installs/nordpass.md +0 -921
  145. package/src/installs/nordvpn.js +0 -892
  146. package/src/installs/nordvpn.md +0 -1052
  147. package/src/installs/nvm.js +0 -995
  148. package/src/installs/nvm.md +0 -1057
  149. package/src/installs/ohmyzsh.js +0 -529
  150. package/src/installs/ohmyzsh.md +0 -1094
  151. package/src/installs/openssh.js +0 -804
  152. package/src/installs/openssh.md +0 -1056
  153. package/src/installs/pandoc.js +0 -662
  154. package/src/installs/pandoc.md +0 -1036
  155. package/src/installs/parallels-desktop.js +0 -431
  156. package/src/installs/parallels-desktop.md +0 -446
  157. package/src/installs/pinentry.js +0 -510
  158. package/src/installs/pinentry.md +0 -1142
  159. package/src/installs/pngyu.js +0 -869
  160. package/src/installs/pngyu.md +0 -896
  161. package/src/installs/postman.js +0 -799
  162. package/src/installs/postman.md +0 -940
  163. package/src/installs/procps.js +0 -425
  164. package/src/installs/procps.md +0 -851
  165. package/src/installs/safari-tech-preview.js +0 -374
  166. package/src/installs/safari-tech-preview.md +0 -533
  167. package/src/installs/sfnt2woff.js +0 -658
  168. package/src/installs/sfnt2woff.md +0 -795
  169. package/src/installs/shellcheck.js +0 -481
  170. package/src/installs/shellcheck.md +0 -1005
  171. package/src/installs/slack.js +0 -741
  172. package/src/installs/slack.md +0 -865
  173. package/src/installs/snagit.js +0 -585
  174. package/src/installs/snagit.md +0 -844
  175. package/src/installs/software-properties-common.js +0 -372
  176. package/src/installs/software-properties-common.md +0 -805
  177. package/src/installs/spotify.js +0 -877
  178. package/src/installs/spotify.md +0 -901
  179. package/src/installs/studio-3t.js +0 -823
  180. package/src/installs/studio-3t.md +0 -918
  181. package/src/installs/sublime-text.js +0 -804
  182. package/src/installs/sublime-text.md +0 -914
  183. package/src/installs/superwhisper.js +0 -706
  184. package/src/installs/superwhisper.md +0 -630
  185. package/src/installs/tailscale.js +0 -745
  186. package/src/installs/tailscale.md +0 -1100
  187. package/src/installs/tar.js +0 -389
  188. package/src/installs/tar.md +0 -946
  189. package/src/installs/termius.js +0 -798
  190. package/src/installs/termius.md +0 -844
  191. package/src/installs/terraform.js +0 -779
  192. package/src/installs/terraform.md +0 -899
  193. package/src/installs/tfenv.js +0 -778
  194. package/src/installs/tfenv.md +0 -1091
  195. package/src/installs/tidal.js +0 -771
  196. package/src/installs/tidal.md +0 -864
  197. package/src/installs/tmux.js +0 -346
  198. package/src/installs/tmux.md +0 -1030
  199. package/src/installs/tree.js +0 -411
  200. package/src/installs/tree.md +0 -833
  201. package/src/installs/unzip.js +0 -460
  202. package/src/installs/unzip.md +0 -879
  203. package/src/installs/vim.js +0 -421
  204. package/src/installs/vim.md +0 -1040
  205. package/src/installs/vlc.js +0 -821
  206. package/src/installs/vlc.md +0 -927
  207. package/src/installs/vscode.js +0 -843
  208. package/src/installs/vscode.md +0 -1002
  209. package/src/installs/wget.js +0 -420
  210. package/src/installs/wget.md +0 -791
  211. package/src/installs/whatsapp.js +0 -729
  212. package/src/installs/whatsapp.md +0 -854
  213. package/src/installs/winpty.js +0 -352
  214. package/src/installs/winpty.md +0 -620
  215. package/src/installs/woff2.js +0 -553
  216. package/src/installs/woff2.md +0 -977
  217. package/src/installs/wsl.js +0 -572
  218. package/src/installs/wsl.md +0 -699
  219. package/src/installs/xcode-clt.js +0 -520
  220. package/src/installs/xcode-clt.md +0 -351
  221. package/src/installs/xcode.js +0 -560
  222. package/src/installs/xcode.md +0 -573
  223. package/src/installs/yarn.js +0 -824
  224. package/src/installs/yarn.md +0 -1074
  225. package/src/installs/yq.js +0 -654
  226. package/src/installs/yq.md +0 -944
  227. package/src/installs/yt-dlp.js +0 -701
  228. package/src/installs/yt-dlp.md +0 -946
  229. package/src/installs/yum-utils.js +0 -297
  230. package/src/installs/yum-utils.md +0 -648
  231. package/src/installs/zoom.js +0 -759
  232. package/src/installs/zoom.md +0 -884
  233. package/src/installs/zsh.js +0 -455
  234. package/src/installs/zsh.md +0 -1008
  235. package/src/scripts/README.md +0 -617
  236. package/src/scripts/STATUS.md +0 -208
  237. package/src/scripts/afk.js +0 -411
  238. package/src/scripts/backup-all.js +0 -746
  239. package/src/scripts/backup-source.js +0 -727
  240. package/src/scripts/brewd.js +0 -389
  241. package/src/scripts/brewi.js +0 -520
  242. package/src/scripts/brewr.js +0 -527
  243. package/src/scripts/brews.js +0 -477
  244. package/src/scripts/brewu.js +0 -504
  245. package/src/scripts/c.js +0 -201
  246. package/src/scripts/ccurl.js +0 -341
  247. package/src/scripts/certbot-crontab-init.js +0 -504
  248. package/src/scripts/certbot-init.js +0 -657
  249. package/src/scripts/ch.js +0 -355
  250. package/src/scripts/claude-danger.js +0 -268
  251. package/src/scripts/clean-dev.js +0 -435
  252. package/src/scripts/clear-dns-cache.js +0 -541
  253. package/src/scripts/clone.js +0 -435
  254. package/src/scripts/code-all.js +0 -437
  255. package/src/scripts/count-files.js +0 -211
  256. package/src/scripts/count-folders.js +0 -211
  257. package/src/scripts/count.js +0 -264
  258. package/src/scripts/d.js +0 -219
  259. package/src/scripts/datauri.js +0 -389
  260. package/src/scripts/delete-files.js +0 -380
  261. package/src/scripts/docker-clean.js +0 -426
  262. package/src/scripts/dp.js +0 -442
  263. package/src/scripts/e.js +0 -390
  264. package/src/scripts/empty-trash.js +0 -513
  265. package/src/scripts/evm.js +0 -444
  266. package/src/scripts/fetch-github-repos.js +0 -456
  267. package/src/scripts/get-channel.js +0 -345
  268. package/src/scripts/get-course.js +0 -399
  269. package/src/scripts/get-dependencies.js +0 -306
  270. package/src/scripts/get-folder.js +0 -799
  271. package/src/scripts/get-tunes.js +0 -426
  272. package/src/scripts/get-video.js +0 -367
  273. package/src/scripts/git-backup.js +0 -577
  274. package/src/scripts/git-clone.js +0 -493
  275. package/src/scripts/git-pup.js +0 -319
  276. package/src/scripts/git-push.js +0 -396
  277. package/src/scripts/h.js +0 -622
  278. package/src/scripts/hide-desktop-icons.js +0 -499
  279. package/src/scripts/hide-hidden-files.js +0 -538
  280. package/src/scripts/install-dependencies-from.js +0 -456
  281. package/src/scripts/ips.js +0 -663
  282. package/src/scripts/iso.js +0 -370
  283. package/src/scripts/killni.js +0 -577
  284. package/src/scripts/ll.js +0 -467
  285. package/src/scripts/local-ip.js +0 -325
  286. package/src/scripts/m.js +0 -524
  287. package/src/scripts/map.js +0 -309
  288. package/src/scripts/mkd.js +0 -351
  289. package/src/scripts/ncu-update-all.js +0 -457
  290. package/src/scripts/nginx-init.js +0 -718
  291. package/src/scripts/npmi.js +0 -382
  292. package/src/scripts/o.js +0 -511
  293. package/src/scripts/org-by-date.js +0 -338
  294. package/src/scripts/p.js +0 -224
  295. package/src/scripts/packages.js +0 -330
  296. package/src/scripts/path.js +0 -225
  297. package/src/scripts/ports.js +0 -597
  298. package/src/scripts/q.js +0 -305
  299. package/src/scripts/refresh-files.js +0 -394
  300. package/src/scripts/remove-smaller-files.js +0 -516
  301. package/src/scripts/rename-files-with-date.js +0 -533
  302. package/src/scripts/resize-image.js +0 -539
  303. package/src/scripts/rm-safe.js +0 -669
  304. package/src/scripts/s.js +0 -540
  305. package/src/scripts/set-git-public.js +0 -365
  306. package/src/scripts/show-desktop-icons.js +0 -475
  307. package/src/scripts/show-hidden-files.js +0 -472
  308. package/src/scripts/tpa.js +0 -280
  309. package/src/scripts/tpo.js +0 -280
  310. package/src/scripts/u.js +0 -505
  311. package/src/scripts/vpush.js +0 -437
  312. package/src/scripts/y.js +0 -283
  313. package/src/utils/README.md +0 -95
  314. package/src/utils/common/apps.js +0 -143
  315. package/src/utils/common/display.js +0 -157
  316. package/src/utils/common/network.js +0 -185
  317. package/src/utils/common/os.js +0 -294
  318. package/src/utils/common/package-manager.js +0 -301
  319. package/src/utils/common/privileges.js +0 -138
  320. package/src/utils/common/shell.js +0 -216
  321. package/src/utils/macos/apps.js +0 -228
  322. package/src/utils/macos/brew.js +0 -315
  323. package/src/utils/ubuntu/apt.js +0 -307
  324. package/src/utils/ubuntu/desktop.js +0 -292
  325. package/src/utils/ubuntu/snap.js +0 -344
  326. package/src/utils/ubuntu/systemd.js +0 -286
  327. package/src/utils/windows/choco.js +0 -465
  328. package/src/utils/windows/env.js +0 -246
  329. package/src/utils/windows/registry.js +0 -269
  330. package/src/utils/windows/shell.js +0 -240
  331. package/src/utils/windows/winget.js +0 -489
@@ -1,641 +0,0 @@
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/)