@fredlackey/devutils 0.0.18 → 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 -1028
  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 -261
  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,1030 +0,0 @@
1
- # Installing tmux
2
-
3
- ## Overview
4
-
5
- tmux is a terminal multiplexer that allows you to create, access, and control multiple terminal sessions from a single screen. Originally developed by Nicholas Marriott and first released in 2007, tmux has become an essential tool for developers, system administrators, and power users who work extensively in the command line.
6
-
7
- tmux enables you to:
8
-
9
- - Run multiple terminal sessions within a single window
10
- - Detach from sessions and reattach later (even from a different computer)
11
- - Split your terminal into multiple panes for side-by-side work
12
- - Keep processes running after disconnecting from SSH
13
- - Share terminal sessions with other users
14
- - Create persistent workspaces that survive terminal crashes
15
-
16
- The current stable version is tmux 3.6a. This guide documents tmux installation procedures for all platforms supported by DevUtils CLI.
17
-
18
- ## Dependencies
19
-
20
- ### macOS (Homebrew)
21
- - **Required:**
22
- - Homebrew - Install via `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"` or `dev install homebrew`
23
- - **Optional:** None
24
- - **Auto-installed by Homebrew:**
25
- - libevent - Event notification library (installed automatically as tmux dependency)
26
- - ncurses - Terminal handling library (installed automatically as tmux dependency)
27
- - utf8proc - Unicode processing library (installed automatically as tmux dependency)
28
-
29
- ### Ubuntu (APT/Snap)
30
- - **Required:** None (tmux is available in default repositories)
31
- - **Optional:** None
32
- - **Auto-installed by APT:**
33
- - libevent-2.1-7 - Event notification library (installed automatically as tmux dependency)
34
- - libtinfo6 - Terminal handling library (installed automatically as tmux dependency)
35
- - libc6 - Standard C library (installed automatically as tmux dependency)
36
-
37
- ### Raspberry Pi OS (APT/Snap)
38
- - **Required:** None (tmux is available in default repositories)
39
- - **Optional:** None
40
- - **Auto-installed by APT:**
41
- - libevent-2.1-7 - Event notification library (installed automatically as tmux dependency)
42
- - libtinfo6 - Terminal handling library (installed automatically as tmux dependency)
43
- - libc6 - Standard C library (installed automatically as tmux dependency)
44
-
45
- ### Amazon Linux (DNF/YUM)
46
- - **Required:** None (tmux is available in default repositories)
47
- - **Optional:** None
48
- - **Auto-installed by DNF/YUM:**
49
- - libevent - Event notification library (installed automatically as tmux dependency)
50
- - ncurses-libs - Terminal handling library (installed automatically as tmux dependency)
51
-
52
- ### Windows (Chocolatey/winget)
53
- - **Required:** WSL 2 with Ubuntu distribution is required, as tmux does not run natively on Windows
54
- - Install WSL via PowerShell (as Administrator): `wsl --install`
55
- - After WSL is installed, follow Ubuntu installation instructions within WSL environment
56
- - **Optional:** None
57
- - **Auto-installed:** None (installation not supported on native Windows)
58
-
59
- ### Git Bash (Manual/Portable)
60
- - **Required (for manual MSYS2 method):**
61
- - Git for Windows - Download from https://git-scm.com/download/win
62
- - MSYS2 - Download and install from https://www.msys2.org/
63
- - tmux binaries from MSYS2 - Install via `pacman -Sy --noconfirm tmux` in MSYS2 terminal
64
- - msys-event DLLs - Copy from MSYS2 `/usr/bin/msys-event*.dll` to Git Bash `/usr/bin/` directory
65
- - **Optional:** None
66
- - **Auto-installed:** None (installation not supported via automated script; requires manual copying of binaries)
67
-
68
- **Note:** The automated installer script does not support Windows or Git Bash. For these platforms, manual installation via WSL (Windows) or MSYS2 binary copying (Git Bash) is required. See platform-specific sections below for detailed instructions.
69
-
70
- ## Prerequisites
71
-
72
- Before installing tmux on any platform, ensure:
73
-
74
- 1. **Internet connectivity** - Required to download tmux packages
75
- 2. **Administrative privileges** - Required for system-wide installation
76
- 3. **Terminal access** - Required to run installation commands
77
-
78
- ## Platform-Specific Installation
79
-
80
- ### macOS (Homebrew)
81
-
82
- #### Prerequisites
83
-
84
- - macOS 10.15 (Catalina) or later (macOS 14 Sonoma or later recommended)
85
- - Homebrew package manager installed
86
- - Command line access via Terminal.app or iTerm2
87
-
88
- If Homebrew is not installed, install it first:
89
-
90
- ```bash
91
- /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
92
- ```
93
-
94
- #### Installation Steps
95
-
96
- Run the following command to install tmux:
97
-
98
- ```bash
99
- brew install --quiet tmux
100
- ```
101
-
102
- The `--quiet` flag suppresses non-essential output, making the installation suitable for automation and scripts.
103
-
104
- Homebrew automatically installs the required dependencies (libevent, ncurses, and utf8proc) as part of the installation process.
105
-
106
- #### Verification
107
-
108
- Confirm the installation succeeded:
109
-
110
- ```bash
111
- tmux -V
112
- ```
113
-
114
- Expected output (version numbers may vary):
115
-
116
- ```
117
- tmux 3.6a
118
- ```
119
-
120
- Verify the Homebrew version is being used:
121
-
122
- ```bash
123
- which tmux
124
- ```
125
-
126
- Expected output for Apple Silicon Macs:
127
-
128
- ```
129
- /opt/homebrew/bin/tmux
130
- ```
131
-
132
- Expected output for Intel Macs:
133
-
134
- ```
135
- /usr/local/bin/tmux
136
- ```
137
-
138
- #### Troubleshooting
139
-
140
- **Problem**: `tmux: command not found` after installation
141
-
142
- **Solution**: Ensure Homebrew's bin directory is in your PATH:
143
-
144
- ```bash
145
- echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc
146
- source ~/.zshrc
147
- ```
148
-
149
- For Intel Macs, use `/usr/local/bin` instead of `/opt/homebrew/bin`.
150
-
151
- **Problem**: `brew: command not found`
152
-
153
- **Solution**: Homebrew is not installed or not in PATH. Install Homebrew first:
154
-
155
- ```bash
156
- /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
157
- ```
158
-
159
- **Problem**: Outdated version of tmux
160
-
161
- **Solution**: Update Homebrew and upgrade tmux:
162
-
163
- ```bash
164
- brew update && brew upgrade tmux
165
- ```
166
-
167
- **Problem**: Permission errors during installation
168
-
169
- **Solution**: Homebrew should not require sudo. If you encounter permission errors, fix Homebrew permissions:
170
-
171
- ```bash
172
- sudo chown -R $(whoami) /opt/homebrew
173
- ```
174
-
175
- ---
176
-
177
- ### Ubuntu/Debian (APT)
178
-
179
- #### Prerequisites
180
-
181
- - Ubuntu 20.04 LTS or later, or Debian 11 (Bullseye) or later
182
- - sudo privileges
183
- - Internet connectivity
184
-
185
- Ubuntu and Debian include tmux in their default repositories. The repository version is stable and well-tested, though it may not be the absolute latest release.
186
-
187
- #### Installation Steps
188
-
189
- Run the following commands to install tmux:
190
-
191
- ```bash
192
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
193
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
194
- ```
195
-
196
- The `DEBIAN_FRONTEND=noninteractive` environment variable ensures no interactive prompts appear during installation, making this suitable for scripts and automation. The `-y` flag automatically confirms the installation.
197
-
198
- #### Verification
199
-
200
- Confirm the installation succeeded:
201
-
202
- ```bash
203
- tmux -V
204
- ```
205
-
206
- Expected output (version numbers may vary based on your distribution):
207
-
208
- ```
209
- tmux 3.4
210
- ```
211
-
212
- Verify the installation location:
213
-
214
- ```bash
215
- which tmux
216
- ```
217
-
218
- Expected output:
219
-
220
- ```
221
- /usr/bin/tmux
222
- ```
223
-
224
- #### Troubleshooting
225
-
226
- **Problem**: `E: Unable to locate package tmux`
227
-
228
- **Solution**: Update your package lists first:
229
-
230
- ```bash
231
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
232
- ```
233
-
234
- **Problem**: Older version of tmux than expected
235
-
236
- **Solution**: Ubuntu and Debian repositories prioritize stability over bleeding-edge versions. If you need the latest version, build from source. First, install the build dependencies:
237
-
238
- ```bash
239
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y git automake build-essential libevent-dev libncurses5-dev bison pkg-config
240
- ```
241
-
242
- Then build tmux:
243
-
244
- ```bash
245
- git clone https://github.com/tmux/tmux.git
246
- cd tmux
247
- sh autogen.sh
248
- ./configure && make
249
- sudo make install
250
- ```
251
-
252
- **Problem**: `tmux: need UTF-8 locale` error
253
-
254
- **Solution**: Ensure your locale is set correctly:
255
-
256
- ```bash
257
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y locales
258
- sudo locale-gen en_US.UTF-8
259
- export LANG=en_US.UTF-8
260
- export LC_ALL=en_US.UTF-8
261
- ```
262
-
263
- **Problem**: Package conflicts or broken dependencies
264
-
265
- **Solution**: Fix broken packages before installing:
266
-
267
- ```bash
268
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -f
269
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
270
- ```
271
-
272
- ---
273
-
274
- ### Raspberry Pi OS (APT)
275
-
276
- #### Prerequisites
277
-
278
- - Raspberry Pi OS (Bookworm or Bullseye recommended)
279
- - Raspberry Pi 3B+ or later (any model supported by Raspberry Pi OS)
280
- - sudo privileges
281
- - Internet connectivity
282
-
283
- Raspberry Pi OS is based on Debian, so tmux installation follows the Debian/APT method. tmux is available in the default repositories and works on both 32-bit (armhf) and 64-bit (arm64) architectures.
284
-
285
- #### Installation Steps
286
-
287
- First, verify your architecture:
288
-
289
- ```bash
290
- uname -m
291
- ```
292
-
293
- - `aarch64` = 64-bit ARM
294
- - `armv7l` = 32-bit ARM
295
-
296
- Install tmux using APT:
297
-
298
- ```bash
299
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
300
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
301
- ```
302
-
303
- The installation command is identical for both 32-bit and 64-bit Raspberry Pi OS.
304
-
305
- #### Verification
306
-
307
- Confirm the installation succeeded:
308
-
309
- ```bash
310
- tmux -V
311
- ```
312
-
313
- Expected output (version numbers may vary):
314
-
315
- ```
316
- tmux 3.3a
317
- ```
318
-
319
- Note: Raspberry Pi OS repositories may contain a slightly older version than Ubuntu or Homebrew. This is expected and the version provided is fully functional.
320
-
321
- Verify the installation location:
322
-
323
- ```bash
324
- which tmux
325
- ```
326
-
327
- Expected output:
328
-
329
- ```
330
- /usr/bin/tmux
331
- ```
332
-
333
- #### Troubleshooting
334
-
335
- **Problem**: Installation is slow
336
-
337
- **Solution**: Raspberry Pi SD cards can be slow. Use a high-quality SD card (Class 10 or A1/A2 rated) or boot from USB/SSD for better performance.
338
-
339
- **Problem**: `E: Unable to fetch some archives`
340
-
341
- **Solution**: Network connectivity issues. Check your internet connection and retry:
342
-
343
- ```bash
344
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
345
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
346
- ```
347
-
348
- **Problem**: `tmux: invalid LC_ALL, LC_CTYPE or LANG` error
349
-
350
- **Solution**: Reconfigure your locales:
351
-
352
- ```bash
353
- sudo dpkg-reconfigure locales
354
- ```
355
-
356
- If the error persists, set the locale manually:
357
-
358
- ```bash
359
- echo 'export LANG=en_US.UTF-8' >> ~/.bashrc
360
- echo 'export LC_ALL=en_US.UTF-8' >> ~/.bashrc
361
- source ~/.bashrc
362
- ```
363
-
364
- **Problem**: tmux version is very old
365
-
366
- **Solution**: Ensure your Raspberry Pi OS is up to date:
367
-
368
- ```bash
369
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
370
- sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y
371
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
372
- ```
373
-
374
- ---
375
-
376
- ### Amazon Linux (DNF/YUM)
377
-
378
- #### Prerequisites
379
-
380
- - Amazon Linux 2023 (AL2023) or Amazon Linux 2 (AL2)
381
- - sudo privileges
382
- - EC2 instance or compatible environment
383
-
384
- Amazon Linux 2023 uses DNF as the default package manager. Amazon Linux 2 uses YUM. tmux is included in the default Amazon Linux repositories.
385
-
386
- **Important**: Amazon Linux 2 reaches end of support on June 30, 2026. Migrate to Amazon Linux 2023 for long-term support.
387
-
388
- #### Installation Steps
389
-
390
- **For Amazon Linux 2023 (AL2023):**
391
-
392
- ```bash
393
- sudo dnf install -y tmux
394
- ```
395
-
396
- **For Amazon Linux 2 (AL2):**
397
-
398
- ```bash
399
- sudo yum install -y tmux
400
- ```
401
-
402
- The `-y` flag automatically confirms installation, enabling non-interactive execution suitable for automation and scripts.
403
-
404
- #### Verification
405
-
406
- Confirm the installation succeeded:
407
-
408
- ```bash
409
- tmux -V
410
- ```
411
-
412
- Expected output (version numbers may vary):
413
-
414
- ```
415
- tmux 3.2a
416
- ```
417
-
418
- Verify the installation location:
419
-
420
- ```bash
421
- which tmux
422
- ```
423
-
424
- Expected output:
425
-
426
- ```
427
- /usr/bin/tmux
428
- ```
429
-
430
- #### Troubleshooting
431
-
432
- **Problem**: `No match for argument: tmux`
433
-
434
- **Solution**: Update the package cache and retry:
435
-
436
- ```bash
437
- # For AL2023
438
- sudo dnf makecache
439
- sudo dnf install -y tmux
440
-
441
- # For AL2
442
- sudo yum makecache
443
- sudo yum install -y tmux
444
- ```
445
-
446
- **Problem**: tmux version is older than expected
447
-
448
- **Solution**: Amazon's repositories prioritize stability over bleeding-edge versions. If you need the latest version, build from source:
449
-
450
- ```bash
451
- # Install dependencies
452
- sudo dnf install -y git automake gcc make libevent-devel ncurses-devel bison pkg-config
453
-
454
- # Build tmux
455
- git clone https://github.com/tmux/tmux.git
456
- cd tmux
457
- sh autogen.sh
458
- ./configure && make
459
- sudo make install
460
- ```
461
-
462
- For Amazon Linux 2, replace `dnf` with `yum` in the dependency installation command.
463
-
464
- **Problem**: `Cannot find a valid baseurl for repo`
465
-
466
- **Solution**: Network or repository configuration issue. Check connectivity:
467
-
468
- ```bash
469
- # For AL2023
470
- sudo dnf check-update
471
-
472
- # For AL2
473
- sudo yum check-update
474
- ```
475
-
476
- **Problem**: Permission denied errors
477
-
478
- **Solution**: Ensure you are using sudo:
479
-
480
- ```bash
481
- sudo dnf install -y tmux
482
- ```
483
-
484
- ---
485
-
486
- ### Windows (WSL Recommended)
487
-
488
- #### Prerequisites
489
-
490
- - Windows 10 version 2004 or higher (Build 19041+), or Windows 11
491
- - Administrator access to install WSL
492
- - WSL 2 with Ubuntu distribution
493
-
494
- **Important**: tmux is a Unix-native application and does not run natively on Windows. The recommended approach is to use Windows Subsystem for Linux (WSL), which provides a full Linux environment where tmux runs properly.
495
-
496
- Native Windows alternatives like Cygwin or MSYS2 can run tmux, but WSL provides better integration and performance.
497
-
498
- #### Installation Steps
499
-
500
- **Step 1: Install WSL with Ubuntu**
501
-
502
- Open PowerShell as Administrator and run:
503
-
504
- ```powershell
505
- wsl --install
506
- ```
507
-
508
- This command installs WSL 2 with Ubuntu as the default distribution. Restart your computer when prompted.
509
-
510
- **Step 2: Set up Ubuntu**
511
-
512
- After restart, Ubuntu will launch automatically. Complete the initial setup by creating a username and password.
513
-
514
- **Step 3: Install tmux in WSL Ubuntu**
515
-
516
- Open Ubuntu (from Start Menu or Windows Terminal) and run:
517
-
518
- ```bash
519
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
520
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
521
- ```
522
-
523
- #### Verification
524
-
525
- Confirm the installation succeeded within WSL:
526
-
527
- ```bash
528
- tmux -V
529
- ```
530
-
531
- Expected output (version numbers may vary):
532
-
533
- ```
534
- tmux 3.4
535
- ```
536
-
537
- Start a tmux session to verify it works:
538
-
539
- ```bash
540
- tmux new-session -s test
541
- ```
542
-
543
- Press `Ctrl+b` then `d` to detach from the session.
544
-
545
- #### Troubleshooting
546
-
547
- **Problem**: `wsl --install` fails or WSL not available
548
-
549
- **Solution**: Enable WSL manually:
550
-
551
- ```powershell
552
- dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
553
- dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
554
- ```
555
-
556
- Restart your computer, then set WSL 2 as default:
557
-
558
- ```powershell
559
- wsl --set-default-version 2
560
- ```
561
-
562
- **Problem**: Ubuntu not installed with WSL
563
-
564
- **Solution**: Install Ubuntu manually:
565
-
566
- ```powershell
567
- wsl --install -d Ubuntu
568
- ```
569
-
570
- **Problem**: tmux sessions not persisting after closing Windows Terminal
571
-
572
- **Solution**: tmux sessions run inside WSL, which may shut down when no terminals are open. Keep WSL running in the background, or reattach to existing sessions:
573
-
574
- ```bash
575
- tmux attach-session -t test
576
- ```
577
-
578
- **Problem**: Display issues or terminal not rendering correctly
579
-
580
- **Solution**: Windows Terminal provides the best tmux experience. Install it from the Microsoft Store or via winget:
581
-
582
- ```powershell
583
- winget install --id Microsoft.WindowsTerminal --silent --accept-package-agreements --accept-source-agreements
584
- ```
585
-
586
- ---
587
-
588
- ### WSL (Ubuntu)
589
-
590
- #### Prerequisites
591
-
592
- - Windows 10 version 2004 or higher, or Windows 11
593
- - WSL 2 enabled with Ubuntu distribution installed
594
- - sudo privileges within WSL
595
-
596
- WSL runs Ubuntu (or another Linux distribution) within Windows. tmux must be installed within WSL, as it does not share binaries with Windows.
597
-
598
- #### Installation Steps
599
-
600
- Open your WSL Ubuntu terminal and run:
601
-
602
- ```bash
603
- sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
604
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y tmux
605
- ```
606
-
607
- The `DEBIAN_FRONTEND=noninteractive` environment variable ensures no interactive prompts appear during installation.
608
-
609
- #### Verification
610
-
611
- Confirm the installation succeeded:
612
-
613
- ```bash
614
- tmux -V
615
- ```
616
-
617
- Expected output (version numbers may vary):
618
-
619
- ```
620
- tmux 3.4
621
- ```
622
-
623
- Verify the installation location:
624
-
625
- ```bash
626
- which tmux
627
- ```
628
-
629
- Expected output:
630
-
631
- ```
632
- /usr/bin/tmux
633
- ```
634
-
635
- Test tmux by creating a new session:
636
-
637
- ```bash
638
- tmux new-session -s test
639
- ```
640
-
641
- #### Troubleshooting
642
-
643
- **Problem**: `Cannot connect to server` error when running tmux
644
-
645
- **Solution**: The tmux server may not be running. This can happen if the `/tmp` directory has permission issues. Check permissions:
646
-
647
- ```bash
648
- ls -la /tmp
649
- ```
650
-
651
- If needed, fix permissions:
652
-
653
- ```bash
654
- sudo chmod 1777 /tmp
655
- ```
656
-
657
- **Problem**: tmux not persisting between WSL sessions
658
-
659
- **Solution**: WSL may terminate background processes when all terminals are closed. Enable systemd in WSL to keep services running:
660
-
661
- ```bash
662
- echo -e "[boot]\nsystemd=true" | sudo tee /etc/wsl.conf
663
- ```
664
-
665
- Then restart WSL from PowerShell:
666
-
667
- ```powershell
668
- wsl --shutdown
669
- ```
670
-
671
- **Problem**: Copy/paste not working in tmux
672
-
673
- **Solution**: Enable mouse mode and configure clipboard integration. Add to your `~/.tmux.conf`:
674
-
675
- ```bash
676
- set -g mouse on
677
- set -g set-clipboard on
678
- ```
679
-
680
- **Problem**: Colors not displaying correctly
681
-
682
- **Solution**: Ensure your terminal supports 256 colors. Add to your `~/.bashrc`:
683
-
684
- ```bash
685
- export TERM=xterm-256color
686
- ```
687
-
688
- Then reload:
689
-
690
- ```bash
691
- source ~/.bashrc
692
- ```
693
-
694
- ---
695
-
696
- ### Git Bash (MSYS2 Method)
697
-
698
- #### Prerequisites
699
-
700
- - Windows 10 or Windows 11 (64-bit)
701
- - Git for Windows installed (provides Git Bash)
702
- - MSYS2 installed for obtaining tmux binaries
703
- - Administrator access
704
-
705
- **Important**: Git Bash is a minimal MSYS2 environment bundled with Git for Windows. It does not include tmux by default, but you can add tmux by copying binaries from a full MSYS2 installation. tmux only works with the MinTTY terminal (git-bash.exe), not with cmd.exe or PowerShell-based Git prompts.
706
-
707
- #### Installation Steps
708
-
709
- **Step 1: Install MSYS2**
710
-
711
- Download and install MSYS2 from https://www.msys2.org/. Run the installer and complete the setup.
712
-
713
- **Step 2: Install tmux in MSYS2**
714
-
715
- Open the MSYS2 MSYS terminal and run:
716
-
717
- ```bash
718
- pacman -Sy --noconfirm tmux
719
- ```
720
-
721
- The `--noconfirm` flag enables non-interactive installation without prompts.
722
-
723
- **Step 3: Copy tmux binaries to Git Bash**
724
-
725
- Copy the tmux executable and required DLLs from MSYS2 to Git for Windows:
726
-
727
- ```bash
728
- # Run these commands in MSYS2 terminal
729
- cp /usr/bin/tmux.exe "/c/Program Files/Git/usr/bin/"
730
- cp /usr/bin/msys-event*.dll "/c/Program Files/Git/usr/bin/"
731
- ```
732
-
733
- Note: If your Git installation is in a different location, adjust the path accordingly.
734
-
735
- **Step 4: Verify the copy**
736
-
737
- Close and reopen Git Bash, then run:
738
-
739
- ```bash
740
- tmux -V
741
- ```
742
-
743
- #### Verification
744
-
745
- Confirm tmux is accessible in Git Bash:
746
-
747
- ```bash
748
- tmux -V
749
- ```
750
-
751
- Expected output (version numbers may vary):
752
-
753
- ```
754
- tmux 3.6a
755
- ```
756
-
757
- Start a tmux session to verify it works:
758
-
759
- ```bash
760
- tmux new-session -s test
761
- ```
762
-
763
- #### Troubleshooting
764
-
765
- **Problem**: `open terminal failed: not a terminal` error
766
-
767
- **Solution**: tmux requires the MinTTY terminal. Launch Git Bash using `git-bash.exe` (the MinTTY-based terminal), not `bash.exe` or Git from cmd/PowerShell. Look for "Git Bash" in the Start Menu.
768
-
769
- **Problem**: `tmux.exe - System Error: The code execution cannot proceed because msys-event-2-1-7.dll was not found`
770
-
771
- **Solution**: Copy the missing DLL files from MSYS2. The exact DLL names may vary by version:
772
-
773
- ```bash
774
- # In MSYS2 terminal, list event DLLs
775
- ls /usr/bin/msys-event*.dll
776
-
777
- # Copy all event DLLs
778
- cp /usr/bin/msys-event*.dll "/c/Program Files/Git/usr/bin/"
779
- ```
780
-
781
- **Problem**: `tmux: command not found` after copying files
782
-
783
- **Solution**: Ensure you copied to the correct directory and restart Git Bash:
784
-
785
- ```bash
786
- # Verify tmux exists
787
- ls "/c/Program Files/Git/usr/bin/tmux.exe"
788
- ```
789
-
790
- If the file exists, close all Git Bash windows and reopen.
791
-
792
- **Problem**: tmux works but displays incorrectly
793
-
794
- **Solution**: Set the TERM variable in your `~/.bashrc`:
795
-
796
- ```bash
797
- echo 'export TERM=xterm-256color' >> ~/.bashrc
798
- source ~/.bashrc
799
- ```
800
-
801
- **Problem**: Copy/paste not working
802
-
803
- **Solution**: MinTTY handles copy/paste differently. Use `Ctrl+Insert` to copy and `Shift+Insert` to paste, or enable mouse support in tmux:
804
-
805
- ```bash
806
- echo 'set -g mouse on' >> ~/.tmux.conf
807
- ```
808
-
809
- ---
810
-
811
- ## Post-Installation Configuration
812
-
813
- After installing tmux on any platform, consider these configurations to enhance your workflow.
814
-
815
- ### Create a Configuration File
816
-
817
- tmux reads configuration from `~/.tmux.conf`. Create this file to customize tmux behavior:
818
-
819
- ```bash
820
- touch ~/.tmux.conf
821
- ```
822
-
823
- ### Common Configuration Options
824
-
825
- Add these settings to `~/.tmux.conf` for a better experience:
826
-
827
- ```bash
828
- # Enable mouse support
829
- set -g mouse on
830
-
831
- # Set prefix key to Ctrl+a (more ergonomic than default Ctrl+b)
832
- unbind C-b
833
- set -g prefix C-a
834
- bind C-a send-prefix
835
-
836
- # Start window numbering at 1 (easier to reach)
837
- set -g base-index 1
838
- setw -g pane-base-index 1
839
-
840
- # Enable 256 color support
841
- set -g default-terminal "screen-256color"
842
-
843
- # Increase scrollback buffer size
844
- set -g history-limit 10000
845
-
846
- # Reduce escape time for faster command sequences
847
- set -sg escape-time 10
848
-
849
- # Enable focus events for terminals that support it
850
- set -g focus-events on
851
-
852
- # Reload configuration with prefix + r
853
- bind r source-file ~/.tmux.conf \; display-message "Config reloaded"
854
- ```
855
-
856
- ### Reload Configuration
857
-
858
- After editing `~/.tmux.conf`, reload without restarting tmux:
859
-
860
- ```bash
861
- tmux source-file ~/.tmux.conf
862
- ```
863
-
864
- Or, if you added the keybinding above, press `prefix + r`.
865
-
866
- ### Basic tmux Commands
867
-
868
- Start a new session:
869
-
870
- ```bash
871
- tmux new-session -s mysession
872
- ```
873
-
874
- List sessions:
875
-
876
- ```bash
877
- tmux list-sessions
878
- ```
879
-
880
- Attach to an existing session:
881
-
882
- ```bash
883
- tmux attach-session -t mysession
884
- ```
885
-
886
- Detach from a session (from within tmux):
887
-
888
- Press `Ctrl+b` then `d`
889
-
890
- Kill a session:
891
-
892
- ```bash
893
- tmux kill-session -t mysession
894
- ```
895
-
896
- ---
897
-
898
- ## Common Issues
899
-
900
- ### Issue: "no server running on /tmp/tmux-1000/default"
901
-
902
- **Symptoms**: tmux commands fail with "no server running" error
903
-
904
- **Solutions**:
905
-
906
- - Start a new tmux session:
907
-
908
- ```bash
909
- tmux new-session
910
- ```
911
-
912
- - Check if the tmux socket directory exists and has correct permissions:
913
-
914
- ```bash
915
- ls -la /tmp/tmux-$(id -u)
916
- ```
917
-
918
- - If permissions are wrong, fix them:
919
-
920
- ```bash
921
- chmod 700 /tmp/tmux-$(id -u)
922
- ```
923
-
924
- ### Issue: "terminal not suitable" or "open terminal failed"
925
-
926
- **Symptoms**: tmux refuses to start with terminal-related errors
927
-
928
- **Solutions**:
929
-
930
- - Ensure you are running tmux from a proper terminal emulator, not from a script or non-interactive shell
931
-
932
- - Set the TERM variable:
933
-
934
- ```bash
935
- export TERM=xterm-256color
936
- tmux
937
- ```
938
-
939
- - On Windows Git Bash, use MinTTY (git-bash.exe), not cmd.exe or PowerShell
940
-
941
- ### Issue: Colors not displaying correctly
942
-
943
- **Symptoms**: tmux shows wrong colors or no colors
944
-
945
- **Solutions**:
946
-
947
- - Set 256-color terminal in your shell profile:
948
-
949
- ```bash
950
- export TERM=xterm-256color
951
- ```
952
-
953
- - Add to `~/.tmux.conf`:
954
-
955
- ```bash
956
- set -g default-terminal "screen-256color"
957
- ```
958
-
959
- ### Issue: tmux session lost after SSH disconnect
960
-
961
- **Symptoms**: Cannot reattach to tmux sessions after network interruption
962
-
963
- **Solutions**:
964
-
965
- - Ensure you detached properly before disconnecting. If the connection was interrupted, the session should still exist
966
-
967
- - List existing sessions:
968
-
969
- ```bash
970
- tmux list-sessions
971
- ```
972
-
973
- - Reattach to the session:
974
-
975
- ```bash
976
- tmux attach-session -t 0
977
- ```
978
-
979
- - If sessions appear stale, kill and recreate:
980
-
981
- ```bash
982
- tmux kill-server
983
- tmux new-session
984
- ```
985
-
986
- ### Issue: Keys not working correctly (especially on macOS)
987
-
988
- **Symptoms**: Function keys, Home, End, or other special keys not working
989
-
990
- **Solutions**:
991
-
992
- - Add to `~/.tmux.conf`:
993
-
994
- ```bash
995
- set-window-option -g xterm-keys on
996
- ```
997
-
998
- - For macOS Terminal.app, enable "Use Option as Meta key" in Terminal preferences
999
-
1000
- ### Issue: "sessions should be nested with care" warning
1001
-
1002
- **Symptoms**: Warning appears when starting tmux inside an existing tmux session
1003
-
1004
- **Solutions**:
1005
-
1006
- - This is a safety warning to prevent accidental nesting. If you intentionally want nested sessions, use:
1007
-
1008
- ```bash
1009
- tmux new-session -t mysession
1010
- ```
1011
-
1012
- - To disable the warning, unset the TMUX variable (not recommended for beginners):
1013
-
1014
- ```bash
1015
- unset TMUX
1016
- tmux
1017
- ```
1018
-
1019
- ---
1020
-
1021
- ## References
1022
-
1023
- - [tmux Official GitHub Repository](https://github.com/tmux/tmux)
1024
- - [tmux Official Wiki](https://github.com/tmux/tmux/wiki)
1025
- - [tmux Installation Guide](https://github.com/tmux/tmux/wiki/Installing)
1026
- - [tmux Manual Page](https://man7.org/linux/man-pages/man1/tmux.1.html)
1027
- - [Homebrew tmux Formula](https://formulae.brew.sh/formula/tmux)
1028
- - [MSYS2 tmux Package](https://packages.msys2.org/packages/tmux)
1029
- - [Ubuntu tmux Package](https://packages.ubuntu.com/search?keywords=tmux)
1030
- - [Microsoft WSL Documentation](https://learn.microsoft.com/en-us/windows/wsl/)