dotfiles-tui 0.0.5

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 (204) hide show
  1. checksums.yaml +7 -0
  2. data/.env.example +4 -0
  3. data/.gitattributes +1 -0
  4. data/.github/workflows/publish-gem.yml +36 -0
  5. data/.gitignore +316 -0
  6. data/.shellcheckrc +1 -0
  7. data/.stow-local-ignore +23 -0
  8. data/.vscode/settings.json +2 -0
  9. data/Configs/aerospace/.config/aerospace/aerospace.toml +265 -0
  10. data/Configs/alacritty/.config/alacritty/alacritty.toml +31 -0
  11. data/Configs/conda/.condarc +1 -0
  12. data/Configs/continue/.continue/.continueignore +0 -0
  13. data/Configs/continue/.continue/.continuerc.json +3 -0
  14. data/Configs/continue/.continue/config.json +48 -0
  15. data/Configs/docker/.docker/completion/completion.zsh +3 -0
  16. data/Configs/editorconfig/.editorconfig +16 -0
  17. data/Configs/fzf/.fzf/completion/completion.zsh +8 -0
  18. data/Configs/git/.config/gitconfig/core +83 -0
  19. data/Configs/git/.config/gitconfig/home +20 -0
  20. data/Configs/git/.config/gitconfig/template.txt +7 -0
  21. data/Configs/git/.config/gitconfig/work +23 -0
  22. data/Configs/git/.gitconfig +25 -0
  23. data/Configs/gpg/.gnupg/.#lk0x000000015060b4e0.macBook.pro.24088 +2 -0
  24. data/Configs/gpg/.gnupg/gpg-agent.conf +3 -0
  25. data/Configs/gpg/.gnupg/openpgp-revocs.d/DE999E2ACEAE3E8EAD660459688CB4D444FB1024.rev +28 -0
  26. data/Configs/gpg/.gnupg/private-keys-v1.d/0FF407C984AC03CCC60D924C5B315977DF45D5D0.key +7 -0
  27. data/Configs/gpg/.gnupg/private-keys-v1.d/2B711D7C4A8BE25322C9966B73E6842F7E64CD38.key +7 -0
  28. data/Configs/gpg/.gnupg/pubring.kbx +0 -0
  29. data/Configs/gpg/.gnupg/trustdb.gpg +0 -0
  30. data/Configs/kitty/.config/kitty/current-theme.conf +80 -0
  31. data/Configs/kitty/.config/kitty/kitty.conf +93 -0
  32. data/Configs/nvim/.config/nvim/.stylua.toml +6 -0
  33. data/Configs/nvim/.config/nvim/README.md +9 -0
  34. data/Configs/nvim/.config/nvim/init.lua +37 -0
  35. data/Configs/nvim/.config/nvim/lazy-lock.json +29 -0
  36. data/Configs/nvim/.config/nvim/lua/chadrc.lua +17 -0
  37. data/Configs/nvim/.config/nvim/lua/configs/conform.lua +15 -0
  38. data/Configs/nvim/.config/nvim/lua/configs/lazy.lua +47 -0
  39. data/Configs/nvim/.config/nvim/lua/configs/lspconfig.lua +24 -0
  40. data/Configs/nvim/.config/nvim/lua/configs/null_ls.lua +27 -0
  41. data/Configs/nvim/.config/nvim/lua/mappings.lua +10 -0
  42. data/Configs/nvim/.config/nvim/lua/options.lua +6 -0
  43. data/Configs/nvim/.config/nvim/lua/plugins/init.lua +25 -0
  44. data/Configs/oh-my-posh/.config/oh-my-posh/theme/config.json +71 -0
  45. data/Configs/pip/.config/pip/pip.conf +3 -0
  46. data/Configs/python/.pythonrc +25 -0
  47. data/Configs/starship/.config/starship/starship.toml +134 -0
  48. data/Configs/starship/.config/starship/themes/frappe.toml +27 -0
  49. data/Configs/starship/.config/starship/themes/latte.toml +27 -0
  50. data/Configs/starship/.config/starship/themes/macchiato.toml +27 -0
  51. data/Configs/starship/.config/starship/themes/mocha.toml +27 -0
  52. data/Configs/tmux/.tmux.conf +21 -0
  53. data/Configs/wezterm/.config/wezterm/core/colors.lua +10 -0
  54. data/Configs/wezterm/.config/wezterm/core/font.lua +5 -0
  55. data/Configs/wezterm/.config/wezterm/core/helper.lua +22 -0
  56. data/Configs/wezterm/.config/wezterm/core/init.lua +20 -0
  57. data/Configs/wezterm/.config/wezterm/core/keybindings/init.lua +16 -0
  58. data/Configs/wezterm/.config/wezterm/core/keybindings/macos.lua +106 -0
  59. data/Configs/wezterm/.config/wezterm/core/keybindings/windows.lua +99 -0
  60. data/Configs/wezterm/.config/wezterm/core/launch.lua +41 -0
  61. data/Configs/wezterm/.config/wezterm/core/maximized.lua +5 -0
  62. data/Configs/wezterm/.config/wezterm/core/mousebindings.lua +23 -0
  63. data/Configs/wezterm/.config/wezterm/core/tab_title.lua +26 -0
  64. data/Configs/wezterm/.config/wezterm/core/window.lua +8 -0
  65. data/Configs/wezterm/.config/wezterm/wezterm.lua +83 -0
  66. data/Configs/zellij/.config/zellij/config.kdl +410 -0
  67. data/Configs/zellij/.config/zellij/layouts/default.kdl +159 -0
  68. data/Configs/zellij/.config/zellij/plugins/room.wasm +0 -0
  69. data/Configs/zellij/.config/zellij/plugins/zjstatus.wasm +0 -0
  70. data/Configs/zsh/.hushlogin +0 -0
  71. data/Configs/zsh/.localrc +42 -0
  72. data/Configs/zsh/.profile +3 -0
  73. data/Configs/zsh/.shellcheckrc +1 -0
  74. data/Configs/zsh/.zprofile +3 -0
  75. data/Configs/zsh/.zsh/autoload/backup_restore +84 -0
  76. data/Configs/zsh/.zsh/autoload/cat +8 -0
  77. data/Configs/zsh/.zsh/autoload/change_wallpaper +1 -0
  78. data/Configs/zsh/.zsh/autoload/clean_dstore +6 -0
  79. data/Configs/zsh/.zsh/autoload/clean_pycache +6 -0
  80. data/Configs/zsh/.zsh/autoload/convert_mkv_to_mp4 +14 -0
  81. data/Configs/zsh/.zsh/autoload/create_macos_installer +26 -0
  82. data/Configs/zsh/.zsh/autoload/download +71 -0
  83. data/Configs/zsh/.zsh/autoload/fail +2 -0
  84. data/Configs/zsh/.zsh/autoload/flush_dns +6 -0
  85. data/Configs/zsh/.zsh/autoload/info +1 -0
  86. data/Configs/zsh/.zsh/autoload/ls +8 -0
  87. data/Configs/zsh/.zsh/autoload/reset_beyond_compare +15 -0
  88. data/Configs/zsh/.zsh/autoload/reset_final_cut_pro +5 -0
  89. data/Configs/zsh/.zsh/autoload/reset_launch_pad +3 -0
  90. data/Configs/zsh/.zsh/autoload/reset_open_list +3 -0
  91. data/Configs/zsh/.zsh/autoload/speedup_terminal +6 -0
  92. data/Configs/zsh/.zsh/autoload/start_aria2_server +1 -0
  93. data/Configs/zsh/.zsh/autoload/success +1 -0
  94. data/Configs/zsh/.zsh/autoload/update_system +19 -0
  95. data/Configs/zsh/.zsh/autoload/user +1 -0
  96. data/Configs/zsh/.zsh/autoload/vim +9 -0
  97. data/Configs/zsh/.zsh/autoload/warn +1 -0
  98. data/Configs/zsh/.zsh/completion/aliases.zsh +3 -0
  99. data/Configs/zsh/.zsh/completion/completion.zsh +33 -0
  100. data/Configs/zsh/.zsh/completion/config.zsh +118 -0
  101. data/Configs/zsh/.zsh/completion/exports.zsh +108 -0
  102. data/Configs/zsh/.zsh/completion/fpath.zsh +8 -0
  103. data/Configs/zsh/.zsh_history +283 -0
  104. data/Configs/zsh/.zshenv +2 -0
  105. data/Configs/zsh/.zshrc +54 -0
  106. data/Gemfile +3 -0
  107. data/Gemfile.lock +87 -0
  108. data/Hooks/adguard/pre.rb +7 -0
  109. data/Hooks/aerospace/pre.rb +8 -0
  110. data/Hooks/aide/post.rb +7 -0
  111. data/Hooks/aide/pre.rb +7 -0
  112. data/Hooks/alacritty/pre.rb +7 -0
  113. data/Hooks/alfred/pre.rb +7 -0
  114. data/Hooks/atuin/post.rb +27 -0
  115. data/Hooks/atuin/pre.rb +7 -0
  116. data/Hooks/bartender/pre.rb +7 -0
  117. data/Hooks/bun/pre.rb +7 -0
  118. data/Hooks/carapace/pre.rb +7 -0
  119. data/Hooks/cargo/pre.rb +7 -0
  120. data/Hooks/choosy/pre.rb +7 -0
  121. data/Hooks/controld/pre.rb +7 -0
  122. data/Hooks/core/common.rb +36 -0
  123. data/Hooks/core/final.rb +23 -0
  124. data/Hooks/core/lib/configurator.rb +593 -0
  125. data/Hooks/core/lib/display.rb +120 -0
  126. data/Hooks/core/lib/hook_config.rb +96 -0
  127. data/Hooks/core/lib/hook_context.rb +124 -0
  128. data/Hooks/core/lib/hooks.rb +45 -0
  129. data/Hooks/core/lib/logger.rb +23 -0
  130. data/Hooks/core/lib/menu.rb +70 -0
  131. data/Hooks/core/lib/spinner.rb +50 -0
  132. data/Hooks/core/lib/system.rb +78 -0
  133. data/Hooks/core/lib/tweaks.rb +59 -0
  134. data/Hooks/core/library.rb +3 -0
  135. data/Hooks/core/pre.rb +17 -0
  136. data/Hooks/ctrld/pre.rb +7 -0
  137. data/Hooks/deskpad/pre.rb +7 -0
  138. data/Hooks/fonts/pre.rb +60 -0
  139. data/Hooks/ghostty/pre.rb +10 -0
  140. data/Hooks/git/post.rb +20 -0
  141. data/Hooks/git/pre.rb +7 -0
  142. data/Hooks/gpg/post.rb +16 -0
  143. data/Hooks/gpg/pre.rb +7 -0
  144. data/Hooks/ice-hidemenubar/pre.rb +7 -0
  145. data/Hooks/iterm/IC Green PPL.itermcolors +344 -0
  146. data/Hooks/iterm/chalkboard.webp +0 -0
  147. data/Hooks/iterm/com.googlecode.iterm2.plist +2371 -0
  148. data/Hooks/iterm/post.rb +7 -0
  149. data/Hooks/iterm/pre.rb +7 -0
  150. data/Hooks/jujutsu/post.rb +13 -0
  151. data/Hooks/jujutsu/pre.rb +7 -0
  152. data/Hooks/keka/pre.rb +7 -0
  153. data/Hooks/kitty/pre.rb +7 -0
  154. data/Hooks/lazyvim/pre.rb +7 -0
  155. data/Hooks/lima/pre.rb +7 -0
  156. data/Hooks/little-snitch/pre.rb +7 -0
  157. data/Hooks/microsoft-edge/pre.rb +7 -0
  158. data/Hooks/mos/pre.rb +7 -0
  159. data/Hooks/nvchad/pre.rb +7 -0
  160. data/Hooks/oh-my-posh/config.json +58 -0
  161. data/Hooks/oh-my-posh/post.rb +7 -0
  162. data/Hooks/oh-my-posh/pre.rb +7 -0
  163. data/Hooks/pearcleaner/pre.rb +7 -0
  164. data/Hooks/pycharm/pre.rb +7 -0
  165. data/Hooks/raindropio/pre.rb +7 -0
  166. data/Hooks/rectangle/RectangleConfig.json +258 -0
  167. data/Hooks/rectangle/com.knollsoft.Rectangle.plist +0 -0
  168. data/Hooks/rectangle/post.rb +22 -0
  169. data/Hooks/rectangle/pre.rb +7 -0
  170. data/Hooks/slack/pre.rb +7 -0
  171. data/Hooks/soundsource/pre.rb +7 -0
  172. data/Hooks/ssh/post.rb +8 -0
  173. data/Hooks/starship/pre.rb +7 -0
  174. data/Hooks/sublime_text/post.rb +25 -0
  175. data/Hooks/sublime_text/pre.rb +7 -0
  176. data/Hooks/swiftformat-for-xcode/pre.rb +7 -0
  177. data/Hooks/syncthing/pre.rb +7 -0
  178. data/Hooks/synology/pre.rb +7 -0
  179. data/Hooks/tailscale/pre.rb +7 -0
  180. data/Hooks/tmux/post.rb +7 -0
  181. data/Hooks/tmux/pre.rb +7 -0
  182. data/Hooks/topnotch/pre.rb +7 -0
  183. data/Hooks/transmission/pre.rb +7 -0
  184. data/Hooks/vscode/extensions.txt +16 -0
  185. data/Hooks/vscode/keybindings.json +26 -0
  186. data/Hooks/vscode/post.rb +29 -0
  187. data/Hooks/vscode/pre.rb +9 -0
  188. data/Hooks/vscode/settings.json +139 -0
  189. data/Hooks/vscode/style.css +29 -0
  190. data/Hooks/wezterm/pre.rb +7 -0
  191. data/Hooks/wins/pre.rb +7 -0
  192. data/Hooks/zed/pre.rb +7 -0
  193. data/Hooks/zellij/post.rb +7 -0
  194. data/Hooks/zellij/pre.rb +7 -0
  195. data/Hooks/zoxide/pre.rb +7 -0
  196. data/Hooks/zsh/pre.rb +19 -0
  197. data/LICENSE +21 -0
  198. data/README.md +100 -0
  199. data/bin/dotfiles-tui +6 -0
  200. data/bootstrap.rb +186 -0
  201. data/dotfiles-tui.gemspec +47 -0
  202. data/lib/dotfiles_tui/version.rb +5 -0
  203. data/lib/dotfiles_tui.rb +15 -0
  204. metadata +275 -0
@@ -0,0 +1,84 @@
1
+ #!/bin/bash
2
+
3
+ # Backup and Restore Script for Specific Directories
4
+ # Default source and target directories (can be overridden by external parameters)
5
+ DEFAULT_SOURCE="/Users/narender/"
6
+ DEFAULT_TARGET="/Volumes/Install macOS Sequoia/BackUp/"
7
+
8
+ # Allow overriding the source and target directories with arguments
9
+ SOURCE_DIR=${2:-$DEFAULT_SOURCE}
10
+ DEST_DIR=${3:-$DEFAULT_TARGET}
11
+
12
+ # Directories to include in backup/restore
13
+ INCLUDE_DIRS=(
14
+ "Desktop"
15
+ "Documents"
16
+ "Downloads"
17
+ "Movies"
18
+ "Music"
19
+ "Photos"
20
+ "Software"
21
+ "Virtual Machines.localized"
22
+ ".dotfiles"
23
+ )
24
+
25
+ # Ensure correct usage
26
+ if [ "$#" -lt 1 ] || [ "$#" -gt 3 ]; then
27
+ echo "Usage: $0 [backup|restore] [source_directory] [destination_directory]"
28
+ echo "Using defaults: SOURCE='$DEFAULT_SOURCE', TARGET='$DEFAULT_TARGET'"
29
+ exit 1
30
+ fi
31
+
32
+ # Mode of operation
33
+ MODE=$1
34
+
35
+ # Validate source and destination directories
36
+ if [ ! -d "$SOURCE_DIR" ]; then
37
+ echo "Error: Source directory '$SOURCE_DIR' does not exist."
38
+ exit 1
39
+ fi
40
+
41
+ if [ ! -d "$DEST_DIR" ]; then
42
+ echo "Error: Destination directory '$DEST_DIR' does not exist."
43
+ exit 1
44
+ fi
45
+
46
+ # Normalize directories to ensure trailing slash
47
+ SOURCE_DIR="${SOURCE_DIR%/}/"
48
+ DEST_DIR="${DEST_DIR%/}/"
49
+
50
+ # Function to process backup/restore
51
+ process() {
52
+ local action=$1
53
+ local from_dir=$2
54
+ local to_dir=$3
55
+
56
+ for dir in "${INCLUDE_DIRS[@]}"; do
57
+ if [ -d "${from_dir}${dir}" ]; then
58
+ echo "${action^}: ${from_dir}${dir} -> ${to_dir}${dir}"
59
+ rsync -r "${from_dir}${dir}/" "${to_dir}${dir}/"
60
+ else
61
+ echo "Skipping: ${from_dir}${dir} (does not exist)"
62
+ fi
63
+ done
64
+ }
65
+
66
+ # Perform the action
67
+ case "$MODE" in
68
+ backup)
69
+ echo "Starting backup from '$SOURCE_DIR' to '$DEST_DIR'..."
70
+ process "backup" "$SOURCE_DIR" "$DEST_DIR"
71
+ echo "Backup completed."
72
+ ;;
73
+ restore)
74
+ echo "Starting restore from '$DEST_DIR' to '$SOURCE_DIR'..."
75
+ process "restore" "$DEST_DIR" "$SOURCE_DIR"
76
+ echo "Restore completed."
77
+ ;;
78
+ *)
79
+ echo "Invalid mode: $MODE. Use 'backup' or 'restore'."
80
+ exit 1
81
+ ;;
82
+ esac
83
+
84
+ exit 0
@@ -0,0 +1,8 @@
1
+ #!/bin/bash
2
+
3
+ # Function to handle the 'cat' alias with conditional logic
4
+ if command -v bat >/dev/null 2>&1; then
5
+ bat "$@"
6
+ else
7
+ command cat "$@"
8
+ fi
@@ -0,0 +1 @@
1
+ osascript -e "tell application \"Finder\" to set desktop picture to POSIX file \"$1\""
@@ -0,0 +1,6 @@
1
+ dir=${1:-"."}
2
+ if [[ $dir == '.' ]]; then
3
+ dir=$(pwd)
4
+ fi
5
+ success "Cleaning .DStore in [$dir]."
6
+ find "$dir" -name .DS_Store -exec rm -f '{}' \; -print 2>/dev/null
@@ -0,0 +1,6 @@
1
+ dir=${1:-"."}
2
+ if [[ $dir == '.' ]]; then
3
+ dir=$(pwd)
4
+ fi
5
+ success "Cleaning [*.pyc] [__pycache__] [.pytest_cache] in [$dir]."
6
+ find "$dir" \( -iregex "*.pyc$" -o -name "__pycache__" -o -name ".pytest_cache" \) -exec rm -rf '{}' + -print 2>/dev/null
@@ -0,0 +1,14 @@
1
+ mkvs=()
2
+ FFMPEG=$(which ffmpeg)
3
+ if [ -z "${FFMPEG}" ]; then
4
+ printf "ffmpeg not found"
5
+ return 1
6
+ fi
7
+ while IFS= read -r -d $'\0'; do
8
+ mkvs+=("$REPLY")
9
+ done < <(find . -iname "*.mkv" -print0)
10
+
11
+ for mkv in ${mkvs[@]}; do
12
+ target_mp4=${mkv/.mkv/.mp4}
13
+ sudo ${FFMPEG} -i "${mkv}" -c copy "${target_mp4}" && sudo rm -f "${mkv}"
14
+ done
@@ -0,0 +1,26 @@
1
+ usbPath=$1
2
+ target=${2:-"home"}
3
+
4
+ if [[ $target == "home" ]]; then
5
+ basePath=$(cd /Applications/Install\ macOS* && printf "%s" "$(pwd)" && cd "${HOME}" || exit)
6
+ else
7
+ basePath="${HOME}/Software/Disc Images/Mac OS X/9. macOS Monterey/Install macOS Monterey.app"
8
+ fi
9
+ info "$target"
10
+
11
+ if [[ -d $usbPath ]]; then
12
+ success "Valid USB Drive\n"
13
+ else
14
+ warn "💩 Invalid or no USB Drive."
15
+ return 1
16
+ fi
17
+ info "$usbPath"
18
+
19
+ createInstallMediaBinary="$basePath/Contents/Resources/createinstallmedia"
20
+ if [[ -e "$createInstallMediaBinary" ]]; then
21
+ success "Initiating media creation\n"
22
+ sudo "$createInstallMediaBinary" --nointeraction --volume "$usbPath"
23
+ else
24
+ warn "💩 Invalid path %s\n" "$createInstallMediaBinary"
25
+ return 1
26
+ fi
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ function usage() {
4
+ info "download [-u <File or URL>] [-d <Target Dir> | Default: ${HOME}/Downloads/]"
5
+ }
6
+
7
+ function _downloadFile() {
8
+ fileUrl="$1"
9
+ target=${2:-"${HOME}/Downloads"}
10
+ wget -q --tries=1 https://torrends.to/torrent-tracker-list/\?download\=latest -O /tmp/lol.txt
11
+ if [[ $? == 0 && -s /tmp/lol.txt ]]; then
12
+ bt_tracker=$(paste -s -d, /tmp/lol.txt)
13
+ env aria2c -x 16 -c --seed-time=0 --file-allocation=none -UMozilla/5.0 --log-level=info --summary-interval=0 --bt-tracker="${bt_tracker}" --dir="${target}" "${fileUrl}"
14
+ else
15
+ env aria2c -x 16 -c --seed-time=0 --file-allocation=none -UMozilla/5.0 --log-level=info --summary-interval=0 --dir="${target}" "${fileUrl}"
16
+ fi
17
+ }
18
+
19
+ function main() {
20
+ # if no options are provided, show usage
21
+ if [[ $# -eq 0 ]]; then
22
+ usage
23
+ return 1
24
+ fi
25
+
26
+ while getopts ":u:d:" opt; do
27
+ case $opt in
28
+ u)
29
+ urlPath="$OPTARG"
30
+ ;;
31
+ d)
32
+ targetDir="$OPTARG"
33
+ ;;
34
+ *)
35
+ usage
36
+ return 1
37
+ ;;
38
+ esac
39
+ done
40
+
41
+ if [[ -z $urlPath ]]; then
42
+ fail "missing filePath or urlPath"
43
+ downloadHelper
44
+ return 1
45
+ fi
46
+
47
+ if [[ "$targetDir" == "." ]]; then
48
+ targetDir=$(pwd)
49
+ fi
50
+
51
+ if [[ -z "$targetDir" ]]; then
52
+ targetDir="${HOME}/Downloads/"
53
+ fi
54
+
55
+ info "Downloading $urlPath to $targetDir"
56
+
57
+ # download all torrents
58
+ if [[ "$urlPath" == "*" ]]; then
59
+ find . -type f -name "*.torrent" -print0 | while IFS= read -r -d '' file; do
60
+ info "Downloading file: ${file}"
61
+ _downloadFile "${file}" "${targetDir}"
62
+ done
63
+ return 0
64
+ fi
65
+
66
+ # download a single file
67
+ _downloadFile "${urlPath}" "${targetDir}"
68
+ }
69
+
70
+ # Call the main function
71
+ main "$@"
@@ -0,0 +1,2 @@
1
+ printf "\r\033[2K [\033[0;31mFAIL\033[0m] $1\n"
2
+ exit
@@ -0,0 +1,6 @@
1
+ sudo dscacheutil -flushcache
2
+ sudo killall -HUP mDNSResponder
3
+ if [[ -f "${HOME}/Library/Caches/com.apple.Safari/Cache.db*" ]]; then
4
+ sudo rm -f "${HOME}/Library/Caches/com.apple.Safari/Cache.db*"
5
+ fi
6
+ success "DNS Cache flushed.\n"
@@ -0,0 +1 @@
1
+ printf "\r [ \033[00;34m..\033[0m ] $1\n"
@@ -0,0 +1,8 @@
1
+ #!/bin/bash
2
+
3
+ # Function to handle the 'ls' alias with conditional logic
4
+ if command -v lsd >/dev/null 2>&1; then
5
+ lsd "$@"
6
+ else
7
+ command ls "$@"
8
+ fi
@@ -0,0 +1,15 @@
1
+ sudo rm -rf ~/.config/bcompare #thinks bensonkb
2
+ sudo sed -i "s/keexjEP3t4Mue23hrnuPtY4TdcsqNiJL-5174TsUdLmJSIXKfG2NGPwBL6vnRPddT7tH29qpkneX63DO9ECSPE9rzY1zhThHERg8lHM9IBFT+rVuiY823aQJuqzxCKI\
3
+ E1bcDqM4wgW01FH6oCBP1G4ub01xmb4BGSUG6ZrjxWHJyNLyIlGvOhoY2HAYzEtzYGwxFZn2JZ66o4RONkXjX0DF9EzsdUef3UAS+JQ+fCYReLawdjEe6tXCv88GKaaPKWxCeaUL9PejI\
4
+ CQgRQOLGOZtZQkLgAelrOtehxz5ANOOqCaJgy2mJLQVLM5SJ9Dli909c5ybvEhVmIC0dc9dWH+/N9KmiLVlKMU7RJqnE+WXEEPI1SgglmfmLc1yVH7dqBb9ehOoKG9UE+HAE1YvH1XX2XV\
5
+ GeEqYUY-Tsk7YBTz0WpSpoYyPgx6Iki5KLtQ5G-aKP9eysnkuOAkrvHU8bLbGtZteGwJarev03PhfCioJL4OSqsmQGEvDbHFEbNl1qJtdwEriR+VNZts9vNNLk7UGfeNwIiqpxjk4Mn09n\
6
+ mSd8FhM4ifvcaIbNCRoMPGl6KU12iseSe+w+1kFsLhX+OhQM8WXcWV10cGqBzQE9OqOLUcg9n0krrR3KrohstS9smTwEx9olyLYppvC0p5i7dAx2deWvM1ZxKNs0BvcXGukR+/g" \
7
+ /usr/lib/beyondcompare/BCompare
8
+ printf "Enter License\n"
9
+ printf """
10
+ --- BEGIN LICENSE KEY ---
11
+ GXN1eh9FbDiX1ACdd7XKMV7hL7x0ClBJLUJ-zFfKofjaj2yxE53xauIfkqZ8FoLpcZ0Ux6McTyNmODDSvSIHLYhg1QkTxjCeSCk6ARz0ABJcnUmd3dZYJNWFyJun14rmGByRnVPL49QH+Rs0kjRGKCB\
12
+ -cb8IT4Gf0Ue9WMQ1A6t31MO9jmjoYUeoUmbeAQSofvuK8GN1rLRv7WXfUJ0uyvYlGLqzq1ZoJAJDyo0Kdr4ThF-IXcv2cxVyWVW1SaMq8GFosDEGThnY7C-SgNXW30jqAOgiRjKKRX9RuNeDMF\
13
+ qgP2cuf0NMvyMrMScnM1ZyiAaJJtzbxqN5hZOMClUTE+++
14
+ --- END LICENSE KEY -----
15
+ """
@@ -0,0 +1,5 @@
1
+ application_support="${HOME}/Library/Application Support"
2
+
3
+ [[ -e "${application_support}/.ffuserdata" ]] && rm -rf "${application_support}/.ffuserdata"
4
+
5
+ [[ -e "${application_support}/.lpxuserdata" ]] && rm -rf "${application_support}/.lpxuserdata"
@@ -0,0 +1,3 @@
1
+ sudo find 2>/dev/null /private/var/folders/ -type d -name com.apple.dock.launchpad -exec rm -rf {} +; killall Dock
2
+ # defaults write com.apple.dock ResetLaunchPad -bool true && sudo killall Dock
3
+ # change_wallpaper "/System/Library/Desktop Pictures/Big Sur.heic"
@@ -0,0 +1,3 @@
1
+ /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister \
2
+ -kill -r -domain local -domain system -domain user
3
+ killall Finder
@@ -0,0 +1,6 @@
1
+ if [[ -n "$(ls -A /private/var/log/asl/*.asl 2>/dev/null)" ]]; then
2
+ sudo rm -f /private/var/log/asl/*.asl
3
+ success "Terminal cleaned.!\n"
4
+ else
5
+ info "❗No action performed.\n"
6
+ fi
@@ -0,0 +1 @@
1
+ aria2c --enable-rpc --rpc-listen-all --rpc-secret Samar1tan1sD3v1l
@@ -0,0 +1 @@
1
+ printf "\r\033[2K [ \033[00;32mOK\033[0m ] $1\n"
@@ -0,0 +1,19 @@
1
+ # update linuxOS
2
+ if [[ $(uname -s) == "Linux" ]]; then
3
+ sudo apt clean all && sudo apt update && sudo apt upgrade -y && sudo apt dist-upgrade -y && sudo apt autoremove -y && sudo apt autoclean -y
4
+ return
5
+ else
6
+ info "Fixing Permission for Brew"
7
+ # chmod -R go-w '/opt/homebrew/share/zsh'
8
+ chmod -R go-w "$(brew --repo)"
9
+ sudo chown -R $(whoami) $(brew --prefix)/*
10
+ brew_commands=('update-reset' 'update' 'upgrade' 'doctor' 'cleanup')
11
+ for each_command in ${brew_commands[@]}; do
12
+ first_char=$(printf ${each_command:0:1} | tr '[:lower:]' '[:upper:]')
13
+ last_chars=${each_command:1}
14
+ info "${first_char}${last_chars} "
15
+ brew $each_command --quiet
16
+ done
17
+ info "Fetching macOS updates"
18
+ sudo softwareupdate --install --all && success "Software update Completed." || fail "Software update Failed."
19
+ fi
@@ -0,0 +1 @@
1
+ printf "\r [ \033[0;33m??\033[0m ] $1\n"
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ # Function to handle the 'vim' alias with conditional logic
4
+
5
+ if command -v zellij >/dev/null 2>&1; then
6
+ zellij action switch-mode locked && nvim "$@" && zellij action switch-mode normal
7
+ else
8
+ nvim "$@"
9
+ fi
@@ -0,0 +1 @@
1
+ printf "\r\033[2K [\033[0;33mWARNING\033[0m] $1\n"
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ alias reload!='exec "$SHELL" -l'
@@ -0,0 +1,33 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # forces zsh to realize new commands
4
+ zstyle ':completion:*' completer _oldlist _expand _complete _match _ignored _approximate
5
+
6
+ # matches case insensitive for lowercase
7
+ zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
8
+
9
+ # pasting with tabs doesn't perform completion
10
+ zstyle ':completion:*' insert-tab pending
11
+
12
+ # rehash if command not found (possibly recently installed)
13
+ zstyle ':completion:*' rehash true
14
+
15
+ # menu if nb items > 2
16
+ zstyle ':completion:*' menu select=2
17
+
18
+ # dump compdump to /tmp
19
+ zstyle ':completion:*' compdump /tmp/.zcompdump
20
+
21
+ # bind key for backward and forward search for a specific command
22
+ setopt share_history
23
+ setopt hist_expire_dups_first
24
+ setopt hist_ignore_dups
25
+ setopt hist_verify
26
+ # bindkey "^[[A" history-search-backward
27
+ # bindkey "^[[B" history-search-forward
28
+
29
+ setopt autocd beep extendedglob nomatch notify
30
+ bindkey -v
31
+
32
+ # set emacs binding
33
+ set -o emacs
@@ -0,0 +1,118 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ export LSCOLORS='exfxcxdxbxegedabagacad'
4
+ export CLICOLOR=true
5
+ export DOTFILES="${HOME}/.dotfiles"
6
+
7
+ fpath=("${HOME}/.zsh/autoload" ${HOME}/.zsh/autoload ${fpath} /opt/homebrew/bin/brew)
8
+
9
+ # Load and initialise completion system
10
+ autoload -Uz compinit
11
+ compinit -d /tmp/.zcompdump-${USER}-${HOST}
12
+
13
+ autoload -Uz "${HOME}"/.zsh/autoload/*(:t)
14
+ autoload -Uz up-line-or-beginning-search
15
+ autoload -Uz down-line-or-beginning-search
16
+ autoload -Uz edit-command-line
17
+
18
+ # custom functions
19
+ autoload -Uz info
20
+ autoload -Uz user
21
+ autoload -Uz success
22
+ autoload -Uz fail
23
+ autoload -Uz cleanDStore
24
+ autoload -Uz convertMkvToMp4
25
+ autoload -Uz cleanPyCache
26
+ autoload -Uz timeCapsule
27
+ autoload -Uz speedupTimeMachineBackup
28
+ autoload -Uz createInstallMedia
29
+ autoload -Uz flushDNS
30
+ autoload -Uz resetOpenList
31
+ autoload -Uz changeWallpaper
32
+ autoload -Uz resetLaunchPad
33
+ autoload -Uz speedupTerminal
34
+ autoload -Uz updateSystem
35
+ autoload -Uz backUp
36
+ autoload -Uz squashCommits
37
+ autoload -Uz startAria2Server
38
+ autoload -Uz download
39
+ autoload -Uz resetBeyondCompare
40
+ autoload -Uz sangerProxy
41
+ autoload -Uz vpnUp
42
+ autoload -Uz vpnDown
43
+
44
+ HISTFILE=~/.zsh_history
45
+ HISTSIZE=10000
46
+ SAVEHIST=10000
47
+ HISTCONTROL=ignoreboth
48
+
49
+ # don't nice background tasks
50
+ setopt NO_BG_NICE
51
+ setopt NO_HUP
52
+ setopt NO_BEEP
53
+ # allow functions to have local options
54
+ setopt LOCAL_OPTIONS
55
+ # allow functions to have local traps
56
+ setopt LOCAL_TRAPS
57
+ # share history between sessions ???
58
+ setopt SHARE_HISTORY
59
+ # add timestamps to history
60
+ setopt EXTENDED_HISTORY
61
+ setopt PROMPT_SUBST
62
+ setopt CORRECT
63
+ setopt COMPLETE_IN_WORD
64
+ # adds history
65
+ setopt APPEND_HISTORY
66
+ # adds history incrementally and share it across sessions
67
+ setopt INC_APPEND_HISTORY
68
+ setopt SHARE_HISTORY
69
+ # don't record dupes in history
70
+ setopt HIST_IGNORE_ALL_DUPS
71
+ setopt HIST_REDUCE_BLANKS
72
+ setopt HIST_IGNORE_DUPS
73
+ setopt HIST_IGNORE_SPACE
74
+ setopt HIST_VERIFY
75
+ setopt HIST_EXPIRE_DUPS_FIRST
76
+ # dont ask for confirmation in rm globs*
77
+ setopt RM_STAR_SILENT
78
+
79
+ zle -N up-line-or-beginning-search
80
+ zle -N down-line-or-beginning-search
81
+ zle -N edit-command-line
82
+
83
+ # fuzzy find: start to type
84
+ bindkey "${terminfo[kcuu1]:-$'\e[A'}" up-line-or-beginning-search
85
+ bindkey "${terminfo[kcud1]:-$'\e[B'}" down-line-or-beginning-search
86
+ bindkey "${terminfo[cuu1]:-$'\e[A'}" up-line-or-beginning-search
87
+ bindkey "${terminfo[cud1]:-$'\e[B'}" down-line-or-beginning-search
88
+
89
+ # backward and forward word with option+left/right
90
+ bindkey '^[^[[D' backward-word
91
+ bindkey '^[b' backward-word
92
+ bindkey '^[^[[C' forward-word
93
+ bindkey '^[f' forward-word
94
+
95
+ # to to the beggining/end of line with fn+left/right or home/end
96
+ bindkey "${terminfo[khome]:-\e[H}" beginning-of-line
97
+ bindkey '^[[H' beginning-of-line
98
+ bindkey "${terminfo[kend]:-\e[F}" end-of-line
99
+ bindkey '^[[F' end-of-line
100
+
101
+ # delete char with backspaces and delete
102
+ bindkey '^[[3~' delete-char
103
+ bindkey '^?' backward-delete-char
104
+
105
+ # delete word with ctrl+backspace
106
+ # bindkey '^[[3;5~' backward-delete-word
107
+ # bindkey '^[[3~' backward-delete-word
108
+
109
+ # edit command line in $EDITOR
110
+ # bindkey '^e' edit-command-line
111
+
112
+ # search history with fzf if installed, default otherwise
113
+ if test -d /usr/local/opt/fzf/shell; then
114
+ # shellcheck disable=SC1091
115
+ . /usr/local/opt/fzf/shell/key-bindings.zsh
116
+ else
117
+ bindkey '^R' history-incremental-search-backward
118
+ fi
@@ -0,0 +1,108 @@
1
+ # set -x
2
+
3
+ # shortcut to this dotfiles path is $DOTFILES
4
+ export DOTFILES="${HOME}/.dotfiles"
5
+
6
+ # your project folder that we can `c [tab]` to
7
+ export PROJECTS="${HOME}/Code"
8
+
9
+ # your default editor
10
+ export EDITOR='vim'
11
+ export VEDITOR='code'
12
+ export VISUAL='code'
13
+
14
+ export REPORTTIME=10
15
+
16
+ # export CFLAGS for pycrypto
17
+ CFLAGS="-I/usr/local/include -L/usr/local/lib"
18
+ export CFLAGS
19
+
20
+ # export GPG_TTY for gpg
21
+ export GPG_TTY=$(tty)
22
+
23
+ # python related exports
24
+ export PYTHONPYCACHEPREFIX='/tmp/'
25
+
26
+ export PYTHON_CONFIGURE_OPTS="--enable-framework"
27
+
28
+ # Python startup script for better python interpreter
29
+ export PYTHONSTARTUP=${HOME}/.pythonrc
30
+
31
+ # home dir local path exports
32
+ export PATH="/opt/homebrew/sbin:/opt/homebrew/bin:/usr/local/sbin:${HOME}/.local/bin:$PATH"
33
+
34
+ # gem path for local user
35
+ export PATH="/opt/homebrew/opt/ruby/bin":$PATH
36
+ if [[ $(command -v ruby) == "/opt/homebrew/opt/ruby/bin/ruby" ]]; then
37
+ export PATH="/opt/homebrew/lib/ruby/gems/3.3.0/bin":$PATH
38
+ export CFLAGS="-I/opt/homebrew/lib/ruby/gems/3.3.0/gems/"
39
+ fi
40
+
41
+ # remove local errors
42
+ export LC_ALL="en_US.UTF-8"
43
+ export LC_MONETARY="en_US.UTF-8"
44
+ export LC_NUMERIC="en_US.UTF-8"
45
+ export LC_MESSAGES="en_US.UTF-8"
46
+ export LC_COLLATE="en_US.UTF-8"
47
+ export LC_CTYPE="en_US.UTF-8"
48
+ export LC_TIME="en_US.UTF-8"
49
+ export LANG="en_US.UTF-8"
50
+ export LC_TERMINAL="iTerm2"
51
+
52
+ # export heroku cli path
53
+ export PATH="/usr/local/opt/heroku-node/bin:$PATH"
54
+
55
+ export PUB_HOSTED_URL="https://pub.dev/"
56
+
57
+ # need nextflow in path
58
+ export PATH="/opt/homebrew/opt/openjdk/bin:$PATH"
59
+ export JAVA_CMD=/opt/homebrew/opt/openjdk/bin/java
60
+
61
+ # export default profile for AWS
62
+ export AWS_PROFILE="No AWS"
63
+
64
+ ## export GOPATH for go lang package library path
65
+ export GOPATH=${HOME}/.golib
66
+ if ! [[ -e "${HOME}/.golib" ]]; then
67
+ mkdir -p "${HOME}/.golib"
68
+ go install -v golang.org/x/tools/gopls@latest
69
+ go install -v github.com/uudashr/gopkgs/v2/cmd/gopkgs@latest
70
+ go install -v github.com/ramya-rao-a/go-outline@latest
71
+ go install -v github.com/go-delve/delve/cmd/dlv@latest
72
+ go install -v github.com/go-delve/delve/cmd/dlv@master@latest
73
+ go install -v honnef.co/go/tools/cmd/staticcheck@latest
74
+ fi
75
+
76
+ ## export GOPATH to system PATH
77
+ export PATH=$PATH:$GOPATH/bin
78
+
79
+ ## export main go user source path
80
+ export GOPATH=$GOPATH:${HOME}/Developer/practiceGo
81
+
82
+ export ZSH_COMPDUMP_DIR="${HOME}/.cache/zsh"
83
+ if ! [[ -d "${ZSH_COMPDUMP_DIR}" ]]; then
84
+ mkdir -p "${ZSH_COMPDUMP_DIR}"
85
+ fi
86
+ export ZSH_COMPDUMP="$ZSH_COMPDUMP_DIR/.zcompdump"
87
+
88
+ # export npm global install packages
89
+ NPM_CONFIG_PREFIX=${HOME}/.npm-global
90
+ mkdir -p ${NPM_CONFIG_PREFIX}
91
+ export NPM_CONFIG_PREFIX
92
+
93
+ # export GPG TTY
94
+ export GPG_TTY=$(tty)
95
+
96
+ # set ZDOTDIR to tmp
97
+ export ZDOTDIR=${HOME}
98
+ export ZSH_COMPDUMP=/tmp/.zcompdump-${USER}-${HOST}
99
+
100
+ export HISTFILE=/Users/narender/.zsh_history
101
+ export HISTSIZE=10000
102
+ export SAVEHIST=10000
103
+
104
+ # export XDG_CONFIG_HOME default to ~/.config
105
+ export XDG_CONFIG_HOME=${HOME}/.config/
106
+
107
+ # set starship config location
108
+ export STARSHIP_CONFIG=${XDG_CONFIG_HOME}/starship/starship.toml
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ #add each topic folder to fpath so that they can add functions and completion scripts
4
+ for topic_folder in $DOTFILES/*; do
5
+ if [ -d "$topic_folder" ]; then
6
+ fpath=($topic_folder $fpath)
7
+ fi
8
+ done