@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.
Files changed (259) hide show
  1. package/README.md +5 -5
  2. package/package.json +1 -1
  3. package/src/commands/install.js +374 -36
  4. package/src/installs/adobe-creative-cloud.js +527 -25
  5. package/src/installs/adobe-creative-cloud.md +605 -0
  6. package/src/installs/appcleaner.js +303 -26
  7. package/src/installs/appcleaner.md +699 -0
  8. package/src/installs/apt-transport-https.js +390 -0
  9. package/src/installs/apt-transport-https.md +678 -0
  10. package/src/installs/atomicparsley.js +624 -26
  11. package/src/installs/atomicparsley.md +795 -0
  12. package/src/installs/aws-cli.js +779 -26
  13. package/src/installs/aws-cli.md +727 -0
  14. package/src/installs/balena-etcher.js +688 -26
  15. package/src/installs/balena-etcher.md +761 -0
  16. package/src/installs/bambu-studio.js +912 -26
  17. package/src/installs/bambu-studio.md +780 -0
  18. package/src/installs/bash-completion.js +554 -23
  19. package/src/installs/bash-completion.md +833 -0
  20. package/src/installs/bash.js +399 -26
  21. package/src/installs/bash.md +993 -0
  22. package/src/installs/beyond-compare.js +585 -26
  23. package/src/installs/beyond-compare.md +813 -0
  24. package/src/installs/build-essential.js +511 -26
  25. package/src/installs/build-essential.md +977 -0
  26. package/src/installs/ca-certificates.js +618 -0
  27. package/src/installs/ca-certificates.md +937 -0
  28. package/src/installs/caffeine.js +490 -26
  29. package/src/installs/caffeine.md +839 -0
  30. package/src/installs/camtasia.js +577 -25
  31. package/src/installs/camtasia.md +762 -0
  32. package/src/installs/chatgpt.js +458 -26
  33. package/src/installs/chatgpt.md +814 -0
  34. package/src/installs/chocolatey.js +447 -0
  35. package/src/installs/chocolatey.md +661 -0
  36. package/src/installs/chrome-canary.js +472 -26
  37. package/src/installs/chrome-canary.md +641 -0
  38. package/src/installs/chromium.js +645 -26
  39. package/src/installs/chromium.md +838 -0
  40. package/src/installs/claude-code.js +558 -26
  41. package/src/installs/claude-code.md +1173 -0
  42. package/src/installs/curl.js +361 -26
  43. package/src/installs/curl.md +714 -0
  44. package/src/installs/cursor.js +561 -26
  45. package/src/installs/cursor.md +970 -0
  46. package/src/installs/dbschema.js +674 -26
  47. package/src/installs/dbschema.md +925 -0
  48. package/src/installs/dependencies.md +435 -0
  49. package/src/installs/development-tools.js +600 -0
  50. package/src/installs/development-tools.md +977 -0
  51. package/src/installs/docker.js +1010 -25
  52. package/src/installs/docker.md +1109 -0
  53. package/src/installs/drawio.js +1001 -26
  54. package/src/installs/drawio.md +795 -0
  55. package/src/installs/elmedia-player.js +328 -25
  56. package/src/installs/elmedia-player.md +556 -0
  57. package/src/installs/ffmpeg.js +870 -25
  58. package/src/installs/ffmpeg.md +852 -0
  59. package/src/installs/file.js +464 -0
  60. package/src/installs/file.md +987 -0
  61. package/src/installs/gemini-cli.js +793 -26
  62. package/src/installs/gemini-cli.md +1153 -0
  63. package/src/installs/git.js +382 -26
  64. package/src/installs/git.md +907 -0
  65. package/src/installs/gitego.js +931 -26
  66. package/src/installs/gitego.md +1172 -0
  67. package/src/installs/go.js +913 -26
  68. package/src/installs/go.md +958 -0
  69. package/src/installs/google-chrome.js +801 -25
  70. package/src/installs/google-chrome.md +862 -0
  71. package/src/installs/gpg.js +412 -73
  72. package/src/installs/gpg.md +1056 -0
  73. package/src/installs/homebrew.js +1015 -26
  74. package/src/installs/homebrew.md +988 -0
  75. package/src/installs/imageoptim.js +950 -26
  76. package/src/installs/imageoptim.md +1119 -0
  77. package/src/installs/installers.json +2297 -0
  78. package/src/installs/jq.js +382 -26
  79. package/src/installs/jq.md +809 -0
  80. package/src/installs/keyboard-maestro.js +701 -26
  81. package/src/installs/keyboard-maestro.md +825 -0
  82. package/src/installs/latex.js +771 -26
  83. package/src/installs/latex.md +1095 -0
  84. package/src/installs/lftp.js +338 -26
  85. package/src/installs/lftp.md +907 -0
  86. package/src/installs/lsb-release.js +346 -0
  87. package/src/installs/lsb-release.md +814 -0
  88. package/src/installs/messenger.js +829 -26
  89. package/src/installs/messenger.md +900 -0
  90. package/src/installs/microsoft-office.js +550 -26
  91. package/src/installs/microsoft-office.md +760 -0
  92. package/src/installs/microsoft-teams.js +782 -25
  93. package/src/installs/microsoft-teams.md +886 -0
  94. package/src/installs/node.js +886 -26
  95. package/src/installs/node.md +1153 -0
  96. package/src/installs/nordpass.js +698 -26
  97. package/src/installs/nordpass.md +921 -0
  98. package/src/installs/nvm.js +977 -26
  99. package/src/installs/nvm.md +1057 -0
  100. package/src/installs/openssh.js +734 -64
  101. package/src/installs/openssh.md +1056 -0
  102. package/src/installs/pandoc.js +644 -26
  103. package/src/installs/pandoc.md +1036 -0
  104. package/src/installs/pinentry.js +492 -26
  105. package/src/installs/pinentry.md +1142 -0
  106. package/src/installs/pngyu.js +851 -26
  107. package/src/installs/pngyu.md +896 -0
  108. package/src/installs/postman.js +781 -26
  109. package/src/installs/postman.md +940 -0
  110. package/src/installs/procps.js +425 -0
  111. package/src/installs/procps.md +851 -0
  112. package/src/installs/safari-tech-preview.js +355 -25
  113. package/src/installs/safari-tech-preview.md +533 -0
  114. package/src/installs/sfnt2woff.js +640 -26
  115. package/src/installs/sfnt2woff.md +795 -0
  116. package/src/installs/shellcheck.js +463 -26
  117. package/src/installs/shellcheck.md +1005 -0
  118. package/src/installs/slack.js +722 -25
  119. package/src/installs/slack.md +865 -0
  120. package/src/installs/snagit.js +566 -25
  121. package/src/installs/snagit.md +844 -0
  122. package/src/installs/software-properties-common.js +372 -0
  123. package/src/installs/software-properties-common.md +805 -0
  124. package/src/installs/spotify.js +858 -25
  125. package/src/installs/spotify.md +901 -0
  126. package/src/installs/studio-3t.js +803 -26
  127. package/src/installs/studio-3t.md +918 -0
  128. package/src/installs/sublime-text.js +780 -25
  129. package/src/installs/sublime-text.md +914 -0
  130. package/src/installs/superwhisper.js +687 -25
  131. package/src/installs/superwhisper.md +630 -0
  132. package/src/installs/tailscale.js +727 -26
  133. package/src/installs/tailscale.md +1100 -0
  134. package/src/installs/tar.js +389 -0
  135. package/src/installs/tar.md +946 -0
  136. package/src/installs/termius.js +780 -26
  137. package/src/installs/termius.md +844 -0
  138. package/src/installs/terraform.js +761 -26
  139. package/src/installs/terraform.md +899 -0
  140. package/src/installs/tidal.js +752 -25
  141. package/src/installs/tidal.md +864 -0
  142. package/src/installs/tmux.js +328 -26
  143. package/src/installs/tmux.md +1030 -0
  144. package/src/installs/tree.js +393 -26
  145. package/src/installs/tree.md +833 -0
  146. package/src/installs/unzip.js +460 -0
  147. package/src/installs/unzip.md +879 -0
  148. package/src/installs/vim.js +403 -26
  149. package/src/installs/vim.md +1040 -0
  150. package/src/installs/vlc.js +803 -26
  151. package/src/installs/vlc.md +927 -0
  152. package/src/installs/vscode.js +825 -26
  153. package/src/installs/vscode.md +1002 -0
  154. package/src/installs/wget.js +415 -0
  155. package/src/installs/wget.md +791 -0
  156. package/src/installs/whatsapp.js +710 -25
  157. package/src/installs/whatsapp.md +854 -0
  158. package/src/installs/winpty.js +352 -0
  159. package/src/installs/winpty.md +620 -0
  160. package/src/installs/woff2.js +535 -26
  161. package/src/installs/woff2.md +977 -0
  162. package/src/installs/wsl.js +572 -0
  163. package/src/installs/wsl.md +699 -0
  164. package/src/installs/xcode-clt.js +520 -0
  165. package/src/installs/xcode-clt.md +351 -0
  166. package/src/installs/xcode.js +542 -26
  167. package/src/installs/xcode.md +573 -0
  168. package/src/installs/yarn.js +806 -26
  169. package/src/installs/yarn.md +1074 -0
  170. package/src/installs/yq.js +636 -26
  171. package/src/installs/yq.md +944 -0
  172. package/src/installs/yt-dlp.js +683 -26
  173. package/src/installs/yt-dlp.md +946 -0
  174. package/src/installs/yum-utils.js +297 -0
  175. package/src/installs/yum-utils.md +648 -0
  176. package/src/installs/zoom.js +740 -25
  177. package/src/installs/zoom.md +884 -0
  178. package/src/scripts/README.md +567 -45
  179. package/src/scripts/STATUS.md +208 -0
  180. package/src/scripts/afk.js +395 -7
  181. package/src/scripts/backup-all.js +731 -9
  182. package/src/scripts/backup-source.js +711 -8
  183. package/src/scripts/brewd.js +373 -7
  184. package/src/scripts/brewi.js +505 -9
  185. package/src/scripts/brewr.js +512 -9
  186. package/src/scripts/brews.js +462 -9
  187. package/src/scripts/brewu.js +488 -7
  188. package/src/scripts/c.js +185 -7
  189. package/src/scripts/ccurl.js +325 -8
  190. package/src/scripts/certbot-crontab-init.js +488 -8
  191. package/src/scripts/certbot-init.js +641 -9
  192. package/src/scripts/ch.js +339 -7
  193. package/src/scripts/claude-danger.js +253 -8
  194. package/src/scripts/clean-dev.js +419 -8
  195. package/src/scripts/clear-dns-cache.js +525 -7
  196. package/src/scripts/clone.js +417 -7
  197. package/src/scripts/code-all.js +420 -7
  198. package/src/scripts/count-files.js +195 -8
  199. package/src/scripts/count-folders.js +195 -8
  200. package/src/scripts/count.js +248 -8
  201. package/src/scripts/d.js +203 -7
  202. package/src/scripts/datauri.js +373 -8
  203. package/src/scripts/delete-files.js +363 -7
  204. package/src/scripts/docker-clean.js +410 -8
  205. package/src/scripts/dp.js +426 -7
  206. package/src/scripts/e.js +375 -9
  207. package/src/scripts/empty-trash.js +497 -7
  208. package/src/scripts/evm.js +428 -9
  209. package/src/scripts/fetch-github-repos.js +441 -10
  210. package/src/scripts/get-channel.js +329 -8
  211. package/src/scripts/get-course.js +384 -11
  212. package/src/scripts/get-dependencies.js +290 -9
  213. package/src/scripts/get-folder.js +783 -10
  214. package/src/scripts/get-tunes.js +411 -10
  215. package/src/scripts/get-video.js +352 -9
  216. package/src/scripts/git-backup.js +561 -9
  217. package/src/scripts/git-clone.js +477 -9
  218. package/src/scripts/git-pup.js +303 -7
  219. package/src/scripts/git-push.js +380 -8
  220. package/src/scripts/h.js +607 -9
  221. package/src/scripts/hide-desktop-icons.js +483 -7
  222. package/src/scripts/hide-hidden-files.js +522 -7
  223. package/src/scripts/install-dependencies-from.js +440 -9
  224. package/src/scripts/ips.js +647 -10
  225. package/src/scripts/iso.js +354 -8
  226. package/src/scripts/killni.js +561 -7
  227. package/src/scripts/ll.js +451 -8
  228. package/src/scripts/local-ip.js +310 -8
  229. package/src/scripts/m.js +508 -8
  230. package/src/scripts/map.js +293 -8
  231. package/src/scripts/mkd.js +287 -7
  232. package/src/scripts/ncu-update-all.js +441 -8
  233. package/src/scripts/nginx-init.js +702 -12
  234. package/src/scripts/npmi.js +366 -7
  235. package/src/scripts/o.js +495 -8
  236. package/src/scripts/org-by-date.js +321 -7
  237. package/src/scripts/p.js +208 -7
  238. package/src/scripts/packages.js +313 -8
  239. package/src/scripts/path.js +209 -7
  240. package/src/scripts/ports.js +582 -8
  241. package/src/scripts/q.js +290 -8
  242. package/src/scripts/refresh-files.js +378 -10
  243. package/src/scripts/remove-smaller-files.js +500 -8
  244. package/src/scripts/rename-files-with-date.js +517 -9
  245. package/src/scripts/resize-image.js +523 -9
  246. package/src/scripts/rm-safe.js +653 -8
  247. package/src/scripts/s.js +525 -9
  248. package/src/scripts/set-git-public.js +349 -7
  249. package/src/scripts/show-desktop-icons.js +459 -7
  250. package/src/scripts/show-hidden-files.js +456 -7
  251. package/src/scripts/tpa.js +265 -8
  252. package/src/scripts/tpo.js +264 -7
  253. package/src/scripts/u.js +489 -7
  254. package/src/scripts/vpush.js +422 -8
  255. package/src/scripts/y.js +267 -7
  256. package/src/utils/common/os.js +94 -2
  257. package/src/utils/ubuntu/apt.js +13 -7
  258. package/src/utils/windows/choco.js +82 -26
  259. package/src/utils/windows/winget.js +89 -27
@@ -0,0 +1,844 @@
1
+ # Installing Termius
2
+
3
+ ## Dependencies
4
+
5
+ ### macOS (Homebrew)
6
+ - **Required:**
7
+ - Homebrew - Install via `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"` or `dev install homebrew`
8
+ - **Optional:** None
9
+ - **Auto-installed:** None (Homebrew handles all application dependencies internally)
10
+
11
+ ### Ubuntu (APT/Snap)
12
+ - **Required:**
13
+ - Snap (snapd) - Pre-installed on Ubuntu 16.04+. If missing: `sudo apt-get update && sudo apt-get install -y snapd`
14
+ - systemd - Pre-installed on Ubuntu (required for snapd socket management)
15
+ - **Optional:** None
16
+ - **Auto-installed:** All Snap package dependencies are automatically handled by snapd
17
+
18
+ ### Raspberry Pi OS (APT/Snap)
19
+ - **Installation not supported** - Termius does not provide ARM packages. The desktop application requires x86_64 architecture. Use Termius on another device to connect TO the Raspberry Pi.
20
+
21
+ ### Amazon Linux (DNF/YUM)
22
+ - **Required:**
23
+ - DNF or YUM package manager - Pre-installed on Amazon Linux
24
+ - systemd - Pre-installed (required for snapd service management)
25
+ - **Optional:**
26
+ - EPEL repository - Required for Amazon Linux 2 to install snapd: `sudo amazon-linux-extras install -y epel`
27
+ - Graphical desktop environment - Termius is a GUI application
28
+ - **Auto-installed:** Snap package dependencies are automatically handled by snapd
29
+
30
+ ### Windows (Chocolatey)
31
+ - **Required:**
32
+ - 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'))`
33
+ - PowerShell - Pre-installed on Windows 10/11
34
+ - **Optional:** None
35
+ - **Auto-installed:** All Chocolatey package dependencies
36
+
37
+ ### Git Bash (Manual/Portable)
38
+ - **Required:**
39
+ - PowerShell on Windows host - Pre-installed on Windows 10/11
40
+ - Chocolatey on Windows host - Install via Administrator PowerShell (see Windows section above)
41
+ - Git Bash (Git for Windows) - Download from https://git-scm.com/download/win
42
+ - **Optional:** None
43
+ - **Auto-installed:** Same as Windows platform (Chocolatey handles dependencies)
44
+
45
+ ## Overview
46
+
47
+ Termius is a modern SSH client designed for productivity and collaboration. It enables secure connections to Linux servers, IoT devices, Docker containers, virtual machines, Raspberry Pi devices, and cloud instances (AWS, DigitalOcean, etc.) from desktop and mobile devices. Termius provides a multi-tab interface with split-view support, encrypted credential storage using AES-256 encryption, and cross-device synchronization for hosts, keys, and settings.
48
+
49
+ Key features include:
50
+ - SSH, Mosh, Telnet, Port Forwarding, and SFTP support
51
+ - Encrypted vault for storing credentials and SSH keys
52
+ - Snippets for frequently used commands and scripts
53
+ - Team collaboration with secure credential sharing
54
+ - Biometric authentication (Windows Hello, Touch ID, Face ID)
55
+
56
+ **Important Platform Note**: The Termius desktop application is only available for x86_64 (64-bit) architectures on Linux. ARM-based systems (including Raspberry Pi running as a desktop) do not have official native Termius desktop support. Termius is typically used as a client TO connect to ARM devices like Raspberry Pi, not run ON them.
57
+
58
+ ## Prerequisites
59
+
60
+ Before installing Termius on any platform, ensure:
61
+
62
+ 1. **Internet connectivity** - Required to download Termius and sync data across devices
63
+ 2. **Administrative privileges** - Required for system-wide installation on most platforms
64
+ 3. **64-bit operating system** - Required for desktop applications (x86_64 architecture on Linux)
65
+ 4. **Termius account** (optional) - Free accounts enable syncing hosts and settings across devices
66
+
67
+ ## Platform-Specific Installation
68
+
69
+ ### macOS (Homebrew)
70
+
71
+ #### Prerequisites
72
+
73
+ - macOS 10.15 (Catalina) or later
74
+ - Homebrew package manager installed
75
+ - Apple Silicon (M1/M2/M3/M4) or Intel processor
76
+ - At least 300 MB free disk space
77
+
78
+ If Homebrew is not installed, install it first:
79
+
80
+ ```bash
81
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
82
+ ```
83
+
84
+ #### Installation Steps
85
+
86
+ Run the following command to install Termius:
87
+
88
+ ```bash
89
+ brew install --quiet --cask termius
90
+ ```
91
+
92
+ The `--quiet` flag suppresses non-essential output for automation-friendly installation. The `--cask` flag specifies the graphical application version.
93
+
94
+ After installation, launch Termius from the Applications folder or via command line:
95
+
96
+ ```bash
97
+ open -a Termius
98
+ ```
99
+
100
+ **Note**: On first launch, Termius will display the login screen. Create an account or sign in to enable cross-device synchronization.
101
+
102
+ #### Verification
103
+
104
+ Confirm the installation succeeded by checking if the application exists:
105
+
106
+ ```bash
107
+ ls /Applications/ | grep -i termius
108
+ ```
109
+
110
+ Expected output:
111
+
112
+ ```
113
+ Termius.app
114
+ ```
115
+
116
+ Verify Termius can launch:
117
+
118
+ ```bash
119
+ open -a Termius
120
+ ```
121
+
122
+ #### Troubleshooting
123
+
124
+ **Problem**: `Error: Cask 'termius' requires macOS >= 10.15`
125
+
126
+ **Solution**: Your macOS version is too old. Termius requires macOS 10.15 (Catalina) or later. Upgrade your operating system before installing.
127
+
128
+ **Problem**: "Termius is damaged and can't be opened" error
129
+
130
+ **Solution**: Clear the quarantine attribute:
131
+
132
+ ```bash
133
+ xattr -cr "/Applications/Termius.app"
134
+ ```
135
+
136
+ **Problem**: Cask already installed
137
+
138
+ **Solution**: If you need to reinstall, first uninstall then reinstall:
139
+
140
+ ```bash
141
+ brew uninstall --cask termius
142
+ brew install --quiet --cask termius
143
+ ```
144
+
145
+ **Problem**: Termius fails to start after macOS upgrade
146
+
147
+ **Solution**: Reinstall Termius:
148
+
149
+ ```bash
150
+ brew uninstall --cask termius
151
+ brew install --quiet --cask termius
152
+ ```
153
+
154
+ ---
155
+
156
+ ### Ubuntu/Debian (Snap)
157
+
158
+ #### Prerequisites
159
+
160
+ - Ubuntu 16.04 LTS or later, or Debian 10 (Buster) or later (64-bit x86_64)
161
+ - sudo privileges
162
+ - Snap package manager (pre-installed on Ubuntu 16.04+)
163
+ - At least 300 MB free disk space
164
+
165
+ Snap is pre-installed on Ubuntu 16.04 and later. If snap is not installed (common on Debian):
166
+
167
+ ```bash
168
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
169
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y snapd
170
+ sudo systemctl enable --now snapd.socket
171
+ sudo ln -sf /var/lib/snapd/snap /snap
172
+ ```
173
+
174
+ After installing snapd on Debian, log out and log back in (or reboot) for the snap command to become available in your PATH.
175
+
176
+ #### Installation Steps
177
+
178
+ Run the following command to install Termius via Snap:
179
+
180
+ ```bash
181
+ sudo snap install termius-app
182
+ ```
183
+
184
+ After installation, launch Termius:
185
+
186
+ ```bash
187
+ termius-app &
188
+ ```
189
+
190
+ The ampersand (`&`) runs Termius in the background, freeing your terminal.
191
+
192
+ #### Verification
193
+
194
+ Confirm the installation succeeded:
195
+
196
+ ```bash
197
+ snap list termius-app
198
+ ```
199
+
200
+ Expected output (version may vary):
201
+
202
+ ```
203
+ Name Version Rev Tracking Publisher Notes
204
+ termius-app 9.34.8 xxx latest/stable nicklara -
205
+ ```
206
+
207
+ Verify Termius launches correctly:
208
+
209
+ ```bash
210
+ termius-app &
211
+ ```
212
+
213
+ The Termius window should appear within a few seconds.
214
+
215
+ #### Troubleshooting
216
+
217
+ **Problem**: `error: snap "termius-app" is not available on stable for this architecture`
218
+
219
+ **Solution**: This error occurs on 32-bit systems or ARM architecture. Termius's Snap package requires 64-bit x86_64 architecture. Check your architecture:
220
+
221
+ ```bash
222
+ uname -m
223
+ ```
224
+
225
+ If output is anything other than `x86_64`, you cannot install the Termius desktop application natively. Consider using Termius on another device to connect to this system remotely.
226
+
227
+ **Problem**: "cannot communicate with server: Post ... dial unix /run/snapd.socket"
228
+
229
+ **Solution**: The snap daemon is not running. Start it:
230
+
231
+ ```bash
232
+ sudo systemctl start snapd
233
+ sudo systemctl enable snapd
234
+ ```
235
+
236
+ **Problem**: Termius fails to launch with GPU/rendering errors
237
+
238
+ **Solution**: Disable GPU acceleration by launching with:
239
+
240
+ ```bash
241
+ termius-app --disable-gpu &
242
+ ```
243
+
244
+ **Problem**: Termius window appears but remains blank
245
+
246
+ **Solution**: This may be a graphics driver issue. Try:
247
+
248
+ ```bash
249
+ termius-app --disable-gpu --disable-software-rasterizer &
250
+ ```
251
+
252
+ ---
253
+
254
+ ### Raspberry Pi OS (ARM)
255
+
256
+ #### Platform Limitation
257
+
258
+ **Termius does not provide native ARM packages for the desktop application.** The Termius Snap package and desktop application are only available for x86_64 architecture. Raspberry Pi devices use ARM processors (armhf or aarch64), which are not supported for running Termius locally.
259
+
260
+ **Important**: Termius is primarily designed as a client TO connect to Raspberry Pi and other ARM devices, not to run ON them directly.
261
+
262
+ #### Prerequisites
263
+
264
+ - Raspberry Pi OS (64-bit or 32-bit)
265
+ - Raspberry Pi 3 or later (with network connectivity)
266
+ - sudo privileges
267
+
268
+ #### Alternative Approaches
269
+
270
+ **Option 1: Use Termius on Another Device**
271
+
272
+ The recommended approach is to install Termius on a supported device (Windows, macOS, Linux x86_64, iOS, or Android) and connect to your Raspberry Pi via SSH.
273
+
274
+ On your Raspberry Pi, ensure SSH is enabled:
275
+
276
+ ```bash
277
+ sudo systemctl enable --now ssh
278
+ ```
279
+
280
+ Get your Raspberry Pi's IP address:
281
+
282
+ ```bash
283
+ hostname -I
284
+ ```
285
+
286
+ Then connect using Termius from your desktop or mobile device.
287
+
288
+ **Option 2: Use Native SSH Client on Raspberry Pi**
289
+
290
+ If you need an SSH client on Raspberry Pi to connect to other servers, use the built-in OpenSSH client:
291
+
292
+ ```bash
293
+ # OpenSSH client is pre-installed on Raspberry Pi OS
294
+ # Verify it exists:
295
+ ssh -V
296
+
297
+ # Connect to a remote server:
298
+ ssh user@remote-server.example.com
299
+ ```
300
+
301
+ #### Verification
302
+
303
+ For the SSH approach on Raspberry Pi, verify SSH client is available:
304
+
305
+ ```bash
306
+ ssh -V
307
+ ```
308
+
309
+ Expected output (version may vary):
310
+
311
+ ```
312
+ OpenSSH_8.4p1 Debian-5+deb11u2, OpenSSL 1.1.1n 15 Mar 2022
313
+ ```
314
+
315
+ #### Troubleshooting
316
+
317
+ **Problem**: SSH service not running on Raspberry Pi
318
+
319
+ **Solution**: Enable and start the SSH service:
320
+
321
+ ```bash
322
+ sudo systemctl enable --now ssh
323
+ ```
324
+
325
+ **Problem**: Cannot find Raspberry Pi IP address
326
+
327
+ **Solution**: Check the IP address:
328
+
329
+ ```bash
330
+ hostname -I
331
+ ```
332
+
333
+ Or use:
334
+
335
+ ```bash
336
+ ip addr show | grep inet
337
+ ```
338
+
339
+ ---
340
+
341
+ ### Amazon Linux/RHEL (DNF/YUM via Snap)
342
+
343
+ #### Prerequisites
344
+
345
+ - Amazon Linux 2023, Amazon Linux 2, RHEL 8/9, or Fedora (64-bit x86_64)
346
+ - sudo privileges
347
+ - Graphical desktop environment (required for Termius GUI)
348
+ - At least 300 MB free disk space
349
+
350
+ **Important**: Amazon Linux EC2 instances typically run headless (no GUI). If you are running a headless server, install Termius on your local workstation and use it to connect to your Amazon Linux instances. The Termius desktop application requires a graphical environment.
351
+
352
+ #### Installation Steps
353
+
354
+ **Step 1: Install and Configure Snapd**
355
+
356
+ **For Amazon Linux 2023 / Fedora:**
357
+
358
+ ```bash
359
+ sudo dnf install -y snapd
360
+ sudo systemctl enable --now snapd.socket
361
+ sudo ln -sf /var/lib/snapd/snap /snap
362
+ ```
363
+
364
+ Log out and log back in (or reboot) for PATH updates to take effect.
365
+
366
+ **For Amazon Linux 2:**
367
+
368
+ Amazon Linux 2 does not have snapd in the default repositories. Enable EPEL first:
369
+
370
+ ```bash
371
+ sudo amazon-linux-extras install -y epel
372
+ sudo yum install -y snapd
373
+ sudo systemctl enable --now snapd.socket
374
+ sudo ln -sf /var/lib/snapd/snap /snap
375
+ ```
376
+
377
+ Log out and log back in (or reboot) for PATH updates to take effect.
378
+
379
+ **For RHEL 8/9:**
380
+
381
+ ```bash
382
+ # RHEL 9
383
+ sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
384
+
385
+ # RHEL 8
386
+ # sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
387
+
388
+ sudo dnf upgrade -y
389
+ sudo yum install -y snapd
390
+ sudo systemctl enable --now snapd.socket
391
+ sudo ln -sf /var/lib/snapd/snap /snap
392
+ ```
393
+
394
+ Log out and log back in (or reboot) for PATH updates to take effect.
395
+
396
+ **Step 2: Install Termius**
397
+
398
+ ```bash
399
+ sudo snap install termius-app
400
+ ```
401
+
402
+ After installation, launch Termius:
403
+
404
+ ```bash
405
+ termius-app &
406
+ ```
407
+
408
+ #### Verification
409
+
410
+ Confirm the installation succeeded:
411
+
412
+ ```bash
413
+ snap list termius-app
414
+ ```
415
+
416
+ Expected output (version may vary):
417
+
418
+ ```
419
+ Name Version Rev Tracking Publisher Notes
420
+ termius-app 9.34.8 xxx latest/stable nicklara -
421
+ ```
422
+
423
+ Verify Termius can launch (requires graphical environment):
424
+
425
+ ```bash
426
+ termius-app &
427
+ ```
428
+
429
+ #### Troubleshooting
430
+
431
+ **Problem**: "No snap 'termius-app' available" error
432
+
433
+ **Solution**: Ensure snapd is properly installed and the socket is active:
434
+
435
+ ```bash
436
+ sudo systemctl status snapd.socket
437
+ ```
438
+
439
+ If not running:
440
+
441
+ ```bash
442
+ sudo systemctl enable --now snapd.socket
443
+ ```
444
+
445
+ **Problem**: Termius fails to launch with display errors
446
+
447
+ **Solution**: Termius requires a graphical environment. For headless servers:
448
+ - Use X11 forwarding with SSH: `ssh -X user@server` then run `termius-app`
449
+ - Use VNC or RDP to connect to a desktop session
450
+ - Install Termius on your local workstation instead and connect to the server remotely
451
+
452
+ **Problem**: snap command not found after installation
453
+
454
+ **Solution**: Log out and log back in, or add snap to your PATH manually:
455
+
456
+ ```bash
457
+ export PATH=$PATH:/snap/bin
458
+ ```
459
+
460
+ Add this line to your `~/.bashrc` for persistence.
461
+
462
+ ---
463
+
464
+ ### Windows (Chocolatey)
465
+
466
+ #### Prerequisites
467
+
468
+ - Windows 10 or Windows 11 (64-bit)
469
+ - At least 300 MB free disk space
470
+ - Administrator PowerShell or Command Prompt
471
+ - Chocolatey package manager installed
472
+
473
+ If Chocolatey is not installed, install it first by running this command in an Administrator PowerShell:
474
+
475
+ ```powershell
476
+ 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'))
477
+ ```
478
+
479
+ #### Installation Steps
480
+
481
+ Run the following command in an Administrator PowerShell or Command Prompt:
482
+
483
+ ```powershell
484
+ choco install termius -y
485
+ ```
486
+
487
+ The `-y` flag automatically confirms all prompts, enabling fully non-interactive installation.
488
+
489
+ After installation, Termius can be launched from the Start Menu or via command line:
490
+
491
+ ```powershell
492
+ Start-Process "Termius"
493
+ ```
494
+
495
+ **Note**: On first launch, Termius will display the login screen. Create an account or sign in to enable cross-device synchronization.
496
+
497
+ #### Verification
498
+
499
+ Open a new Command Prompt or PowerShell window, then verify Termius is installed:
500
+
501
+ ```powershell
502
+ choco list termius
503
+ ```
504
+
505
+ Expected output (version may vary):
506
+
507
+ ```
508
+ termius 9.34.8
509
+ 1 packages installed.
510
+ ```
511
+
512
+ Launch Termius to verify it opens correctly:
513
+
514
+ ```powershell
515
+ Start-Process "Termius"
516
+ ```
517
+
518
+ The application should launch and display the login screen.
519
+
520
+ #### Troubleshooting
521
+
522
+ **Problem**: `choco: command not found` or `'choco' is not recognized`
523
+
524
+ **Solution**: Chocolatey is not installed or not in PATH. Install Chocolatey first (see Prerequisites), then open a new terminal window.
525
+
526
+ **Problem**: Installation fails with permission errors
527
+
528
+ **Solution**: Run PowerShell as Administrator. Right-click PowerShell in the Start Menu and select "Run as administrator".
529
+
530
+ **Problem**: Termius fails to launch after installation
531
+
532
+ **Solution**: Restart your computer to ensure all components are properly registered, then try launching again.
533
+
534
+ **Problem**: Need to update Termius
535
+
536
+ **Solution**: Run the upgrade command:
537
+
538
+ ```powershell
539
+ choco upgrade termius -y
540
+ ```
541
+
542
+ **Alternative: Install via winget**
543
+
544
+ If you prefer using winget (built into Windows 11 and Windows 10 21H2+):
545
+
546
+ ```powershell
547
+ winget install --id Termius.Termius --silent --accept-package-agreements --accept-source-agreements
548
+ ```
549
+
550
+ ---
551
+
552
+ ### WSL (Ubuntu)
553
+
554
+ #### Platform Approach
555
+
556
+ **Termius is installed on the Windows host, not within WSL.** The recommended approach is to install Termius on Windows and use it from the Windows desktop while working within WSL.
557
+
558
+ #### Prerequisites
559
+
560
+ - Windows 10 version 2004 or higher, or Windows 11
561
+ - WSL 2 enabled with Ubuntu distribution installed
562
+ - Administrator access on Windows for Termius installation
563
+
564
+ #### Installation Steps
565
+
566
+ **Step 1: Install Termius on Windows**
567
+
568
+ From a Windows Administrator PowerShell:
569
+
570
+ ```powershell
571
+ choco install termius -y
572
+ ```
573
+
574
+ **Step 2: Access Termius from WSL**
575
+
576
+ From within your WSL terminal, you can launch Windows Termius:
577
+
578
+ ```bash
579
+ # Launch Termius using Windows command
580
+ cmd.exe /c start "" "Termius"
581
+ ```
582
+
583
+ This command uses Windows interoperability to launch the Termius application installed on the Windows host.
584
+
585
+ **Alternative: Create a convenience alias**
586
+
587
+ Add to your `~/.bashrc`:
588
+
589
+ ```bash
590
+ echo 'alias termius="cmd.exe /c start \"\" \"Termius\""' >> ~/.bashrc
591
+ source ~/.bashrc
592
+ ```
593
+
594
+ Then simply run `termius` from your WSL terminal.
595
+
596
+ #### Verification
597
+
598
+ From WSL, verify you can launch Windows Termius:
599
+
600
+ ```bash
601
+ cmd.exe /c start "" "Termius"
602
+ ```
603
+
604
+ Termius should open in a new window on the Windows desktop.
605
+
606
+ #### Troubleshooting
607
+
608
+ **Problem**: Cannot launch Termius from WSL
609
+
610
+ **Solution**: Ensure Termius is installed on Windows first. Run `choco list termius` in a Windows PowerShell to verify installation.
611
+
612
+ **Problem**: "start: command not found"
613
+
614
+ **Solution**: Use the full Windows command syntax:
615
+
616
+ ```bash
617
+ cmd.exe /c start "" "Termius"
618
+ ```
619
+
620
+ **Problem**: Termius opens but WSL integration does not work
621
+
622
+ **Solution**: Termius works independently of WSL. Use Termius to connect to remote servers; your WSL environment is separate from Termius's SSH connections.
623
+
624
+ ---
625
+
626
+ ### Git Bash (Windows Installation)
627
+
628
+ #### Prerequisites
629
+
630
+ - Windows 10 or Windows 11 (64-bit)
631
+ - Git Bash installed (comes with Git for Windows)
632
+ - Administrator access for Termius installation
633
+
634
+ #### Installation Steps
635
+
636
+ Git Bash runs on Windows, so Termius is installed on the Windows host and accessible from Git Bash.
637
+
638
+ **Step 1: Install Termius on Windows**
639
+
640
+ From an Administrator Command Prompt or PowerShell (not Git Bash):
641
+
642
+ ```powershell
643
+ choco install termius -y
644
+ ```
645
+
646
+ **Step 2: Access Termius from Git Bash**
647
+
648
+ After installation, Termius can be launched from Git Bash:
649
+
650
+ ```bash
651
+ start "" "Termius"
652
+ ```
653
+
654
+ Or use the explicit command form:
655
+
656
+ ```bash
657
+ cmd //c "start \"\" \"Termius\""
658
+ ```
659
+
660
+ #### Verification
661
+
662
+ From Git Bash, verify Termius can be launched:
663
+
664
+ ```bash
665
+ start "" "Termius"
666
+ ```
667
+
668
+ Termius should open in a new window.
669
+
670
+ #### Troubleshooting
671
+
672
+ **Problem**: `start: command not found`
673
+
674
+ **Solution**: Use the Windows-style command:
675
+
676
+ ```bash
677
+ cmd //c "start \"\" \"Termius\""
678
+ ```
679
+
680
+ **Problem**: Termius does not launch
681
+
682
+ **Solution**: Ensure Termius is installed on Windows. Open a Windows Command Prompt and verify:
683
+
684
+ ```cmd
685
+ choco list termius
686
+ ```
687
+
688
+ If not installed, install it from an Administrator PowerShell first.
689
+
690
+ **Problem**: Need to use Termius in scripts
691
+
692
+ **Solution**: For scripting, use the Windows command wrapper:
693
+
694
+ ```bash
695
+ #!/bin/bash
696
+ # Launch Termius silently
697
+ cmd //c "start /min \"\" \"Termius\"" 2>/dev/null
698
+ ```
699
+
700
+ ---
701
+
702
+ ## Post-Installation Configuration
703
+
704
+ After installing Termius on any platform, complete these configuration steps.
705
+
706
+ ### Creating an Account
707
+
708
+ While Termius works without an account, creating one enables:
709
+ - Syncing hosts, keys, and settings across all devices
710
+ - Encrypted cloud backup of your SSH configurations
711
+ - Team collaboration features (paid plans)
712
+
713
+ 1. Launch Termius
714
+ 2. Click "Create Account" or "Sign Up"
715
+ 3. Enter your email and create a password
716
+ 4. Verify your email address
717
+
718
+ ### Importing SSH Config
719
+
720
+ Termius can import your existing SSH configuration:
721
+
722
+ 1. Open Termius Settings (gear icon)
723
+ 2. Navigate to Import/Export
724
+ 3. Select "Import from SSH config"
725
+ 4. Termius will parse your `~/.ssh/config` file and import hosts
726
+
727
+ ### Adding Your First Host
728
+
729
+ 1. Click the "+" button or "New Host"
730
+ 2. Enter the host details:
731
+ - **Label**: A friendly name for the connection
732
+ - **Address**: IP address or hostname
733
+ - **Port**: SSH port (default: 22)
734
+ - **Username**: Your SSH username
735
+ - **Authentication**: Password or SSH Key
736
+ 3. Click "Save"
737
+ 4. Double-click the host to connect
738
+
739
+ ### Configuring SSH Keys
740
+
741
+ To use SSH key authentication:
742
+
743
+ 1. Go to Termius Settings > Keychain
744
+ 2. Click "Add Key"
745
+ 3. Either generate a new key pair or import an existing private key
746
+ 4. Associate the key with specific hosts
747
+
748
+ ### Setting Up Snippets
749
+
750
+ Save frequently used commands as snippets:
751
+
752
+ 1. Go to Snippets in the sidebar
753
+ 2. Click "New Snippet"
754
+ 3. Enter a name and the command(s)
755
+ 4. Access snippets during terminal sessions with the snippet menu
756
+
757
+ ---
758
+
759
+ ## Common Issues
760
+
761
+ ### Issue: "Connection Refused" or "Connection Timed Out"
762
+
763
+ **Symptoms**: Cannot connect to remote host
764
+
765
+ **Solutions**:
766
+ - Verify the server's SSH service is running
767
+ - Check the IP address/hostname is correct
768
+ - Ensure port 22 (or custom SSH port) is open in firewall
769
+ - Verify network connectivity with `ping`
770
+
771
+ ### Issue: "Host Key Verification Failed"
772
+
773
+ **Symptoms**: Connection fails with host key warning
774
+
775
+ **Solutions**:
776
+ - If the server was reinstalled, remove the old key: click "Remove and Reconnect" when prompted
777
+ - Verify you are connecting to the correct server (not a man-in-the-middle attack)
778
+
779
+ ### Issue: "Permission Denied (publickey)"
780
+
781
+ **Symptoms**: Key authentication fails
782
+
783
+ **Solutions**:
784
+ - Ensure the correct key is associated with the host in Termius
785
+ - Verify the public key is in the remote server's `~/.ssh/authorized_keys`
786
+ - Check file permissions on the server: `chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys`
787
+
788
+ ### Issue: Sync Not Working
789
+
790
+ **Symptoms**: Hosts and settings do not sync across devices
791
+
792
+ **Solutions**:
793
+ - Verify you are signed into the same Termius account on all devices
794
+ - Check internet connectivity
795
+ - Force sync by going to Settings > Sync > Sync Now
796
+ - Sign out and sign back in
797
+
798
+ ### Issue: Terminal Rendering Issues
799
+
800
+ **Symptoms**: Characters display incorrectly, or terminal appears corrupted
801
+
802
+ **Solutions**:
803
+ - Try a different terminal font in Settings > Appearance
804
+ - Adjust terminal encoding settings
805
+ - Clear the terminal buffer and reconnect
806
+
807
+ ### Issue: High CPU Usage
808
+
809
+ **Symptoms**: Termius consumes excessive CPU
810
+
811
+ **Solutions**:
812
+ - Close unused terminal tabs and sessions
813
+ - Disable hardware acceleration in settings
814
+ - Restart Termius
815
+
816
+ ---
817
+
818
+ ## Summary Table
819
+
820
+ | Platform | Native Support | Installation Method | Notes |
821
+ |----------|---------------|---------------------|-------|
822
+ | macOS | Yes | `brew install --quiet --cask termius` | Requires macOS 10.15+ |
823
+ | Windows | Yes | `choco install termius -y` | Primary supported platform |
824
+ | Ubuntu/Debian | Yes | `sudo snap install termius-app` | x86_64 only |
825
+ | Raspberry Pi | No | N/A | Use Termius on another device to connect to Pi |
826
+ | Amazon Linux/RHEL | Yes | Snap via EPEL + `sudo snap install termius-app` | x86_64 only, requires GUI |
827
+ | WSL | N/A | Install on Windows host | Uses Windows installation |
828
+ | Git Bash | N/A | Uses Windows installation | Inherits Windows Termius |
829
+
830
+ ---
831
+
832
+ ## References
833
+
834
+ - [Termius Official Website](https://termius.com/)
835
+ - [Termius Downloads](https://termius.com/download/windows)
836
+ - [Termius for Linux](https://termius.com/free-ssh-client-for-linux)
837
+ - [Termius Homebrew Cask](https://formulae.brew.sh/cask/termius)
838
+ - [Termius Chocolatey Package](https://community.chocolatey.org/packages/termius)
839
+ - [Termius Snap Package](https://snapcraft.io/termius-app)
840
+ - [Termius on Microsoft Store](https://apps.microsoft.com/detail/9nk1gdvpx09v)
841
+ - [Termius on Mac App Store](https://apps.apple.com/us/app/termius-modern-ssh-client/id549039908)
842
+ - [Install Termius on Ubuntu via Snap](https://snapcraft.io/install/termius-app/ubuntu)
843
+ - [Install Termius on Fedora via Snap](https://snapcraft.io/install/termius-app/fedora)
844
+ - [Install Termius on RHEL via Snap](https://snapcraft.io/install/termius-app/rhel)