karnel-termux 4.8.0 → 4.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -3
- package/install.sh +2 -2
- package/karnel/cli/commands/backup.sh +5 -2
- package/karnel/cli/commands/doctor/fixes.sh +111 -13
- package/karnel/cli/commands/doctor.sh +104 -10
- package/karnel/cli/commands/init.sh +2 -2
- package/karnel/cli/commands/install.sh +26 -44
- package/karnel/cli/commands/list.sh +74 -13
- package/karnel/cli/commands/open.sh +18 -2
- package/karnel/cli/commands/reinstall.sh +68 -46
- package/karnel/cli/commands/restore.sh +16 -0
- package/karnel/cli/commands/search.sh +1 -0
- package/karnel/cli/commands/start.sh +7 -2
- package/karnel/cli/commands/uninstall.sh +38 -0
- package/karnel/cli/commands/update.sh +34 -0
- package/karnel/cli/commands/voice.sh +11 -6
- package/karnel/cli/karnel.sh +81 -45
- package/karnel/modules/ai.sh +21 -6
- package/karnel/modules/deploy.sh +4 -0
- package/karnel/modules/games.sh +81 -4
- package/karnel/modules/network.sh +88 -0
- package/karnel/modules/shell.sh +1 -1
- package/karnel/modules/ui.sh +4 -0
- package/karnel/modules/utils.sh +88 -0
- package/karnel/modules/voice.sh +8 -2
- package/karnel/tools/ai/all.sh +1 -0
- package/karnel/tools/ai/antigravity-cli/install.sh +0 -0
- package/karnel/tools/ai/claude-code/install.sh +0 -0
- package/karnel/tools/ai/cline/install.sh +8 -8
- package/karnel/tools/ai/codegraph/install.sh +8 -5
- package/karnel/tools/ai/codex/install.sh +0 -0
- package/karnel/tools/ai/command-code/install.sh +0 -0
- package/karnel/tools/ai/copilot-termux/install.sh +0 -0
- package/karnel/tools/ai/crush/install.sh +0 -0
- package/karnel/tools/ai/ctx7/install.sh +0 -0
- package/karnel/tools/ai/engram/install.sh +5 -2
- package/karnel/tools/ai/freebuff/install.sh +0 -0
- package/karnel/tools/ai/gemini-cli/install.sh +0 -0
- package/karnel/tools/ai/gentle-ai/install.sh +1 -1
- package/karnel/tools/ai/hermes-agent/install.sh +0 -0
- package/karnel/tools/ai/kilocode-cli/install.sh +0 -0
- package/karnel/tools/ai/kimchi-code/install.sh +3 -1
- package/karnel/tools/ai/kimi-code/install.sh +0 -0
- package/karnel/tools/ai/kiro/install.sh +0 -0
- package/karnel/tools/ai/mimocode/install.sh +0 -0
- package/karnel/tools/ai/minimax-cli/install.sh +0 -0
- package/karnel/tools/ai/mistral-vibe/install.sh +0 -0
- package/karnel/tools/ai/odysseus/install.sh +0 -0
- package/karnel/tools/ai/ollama/install.sh +0 -0
- package/karnel/tools/ai/openclaude/install.sh +0 -0
- package/karnel/tools/ai/openclaw/install.sh +0 -0
- package/karnel/tools/ai/opencode/install.sh +0 -0
- package/karnel/tools/ai/openspec/install.sh +0 -0
- package/karnel/tools/ai/pi/install.sh +0 -0
- package/karnel/tools/ai/qoder/README.md +50 -0
- package/karnel/tools/ai/qoder/bin/qodercli +28 -0
- package/karnel/tools/ai/qoder/helper/qoder_helper.c +47 -0
- package/karnel/tools/ai/qoder/install.sh +367 -0
- package/karnel/tools/ai/qwen-code/install.sh +0 -0
- package/karnel/tools/auto/all.sh +1 -1
- package/karnel/tools/auto/n8n/install.sh +0 -0
- package/karnel/tools/db/all.sh +1 -1
- package/karnel/tools/db/mariadb/install.sh +0 -0
- package/karnel/tools/db/mongodb/install.sh +0 -0
- package/karnel/tools/db/postgresql/install.sh +0 -0
- package/karnel/tools/db/sqlite/install.sh +0 -0
- package/karnel/tools/deploy/all.sh +2 -2
- package/karnel/tools/deploy/netlify/install.sh +0 -0
- package/karnel/tools/deploy/railway/install.sh +0 -0
- package/karnel/tools/deploy/vercel/install.sh +0 -0
- package/karnel/tools/dev/all.sh +1 -21
- package/karnel/tools/dev/bat/install.sh +0 -0
- package/karnel/tools/dev/bc/install.sh +0 -0
- package/karnel/tools/dev/cloudflared/install.sh +0 -0
- package/karnel/tools/dev/curl/install.sh +0 -0
- package/karnel/tools/dev/fzf/install.sh +0 -0
- package/karnel/tools/dev/gh/install.sh +0 -0
- package/karnel/tools/dev/html2text/install.sh +0 -0
- package/karnel/tools/dev/imagemagick/install.sh +0 -0
- package/karnel/tools/dev/jq/install.sh +0 -0
- package/karnel/tools/dev/lsd/install.sh +0 -0
- package/karnel/tools/dev/make/install.sh +0 -0
- package/karnel/tools/dev/ncurses/install.sh +0 -0
- package/karnel/tools/dev/proot/install.sh +0 -0
- package/karnel/tools/dev/shfmt/install.sh +0 -0
- package/karnel/tools/dev/snyk/install.sh +0 -0
- package/karnel/tools/dev/tmate/install.sh +0 -0
- package/karnel/tools/dev/translate/install.sh +0 -0
- package/karnel/tools/dev/tree/install.sh +0 -0
- package/karnel/tools/dev/udocker/install.sh +0 -0
- package/karnel/tools/dev/wget/install.sh +0 -0
- package/karnel/tools/editor/all.sh +1 -1
- package/karnel/tools/editor/code-server/install.sh +0 -0
- package/karnel/tools/games/all.sh +1 -1
- package/karnel/tools/games/arcade/install.sh +0 -0
- package/karnel/tools/games/buzz/install.sh +0 -0
- package/karnel/tools/games/ctfgod/install.sh +0 -0
- package/karnel/tools/games/detective/install.sh +0 -0
- package/karnel/tools/games/pet-friends/install.sh +0 -0
- package/karnel/tools/games/tamagotchi/install.sh +0 -0
- package/karnel/tools/lang/all.sh +2 -1
- package/karnel/tools/lang/bun/bin/bun +27 -0
- package/karnel/tools/lang/bun/install.sh +318 -0
- package/karnel/tools/lang/bun/src/bun-shim.c +352 -0
- package/karnel/tools/lang/bun/src/bun_wrapper.c +55 -0
- package/karnel/tools/lang/clang/install.sh +0 -0
- package/karnel/tools/lang/golang/install.sh +0 -0
- package/karnel/tools/lang/nodejs/install.sh +0 -0
- package/karnel/tools/lang/perl/install.sh +0 -0
- package/karnel/tools/lang/php/install.sh +0 -0
- package/karnel/tools/lang/python/install.sh +0 -0
- package/karnel/tools/lang/rust/install.sh +0 -0
- package/karnel/tools/network/all.sh +65 -0
- package/karnel/tools/network/dark/README.md +45 -0
- package/karnel/tools/network/dark/dark.py +709 -0
- package/karnel/tools/network/dark/install.sh +51 -0
- package/karnel/tools/network/dedsec-network/README.md +42 -0
- package/karnel/tools/network/dedsec-network/dedsec-network.py +709 -0
- package/karnel/tools/network/dedsec-network/install.sh +50 -0
- package/karnel/tools/npm/all.sh +1 -1
- package/karnel/tools/npm/live-server/install.sh +0 -0
- package/karnel/tools/npm/localtunnel/install.sh +0 -0
- package/karnel/tools/npm/markserv/install.sh +0 -0
- package/karnel/tools/npm/ncu/install.sh +0 -0
- package/karnel/tools/npm/nestjs/install.sh +0 -0
- package/karnel/tools/npm/ngrok/install.sh +0 -0
- package/karnel/tools/npm/prettier/install.sh +0 -0
- package/karnel/tools/npm/psqlformat/install.sh +0 -0
- package/karnel/tools/npm/turbopack/install.sh +0 -0
- package/karnel/tools/npm/typescript/install.sh +0 -0
- package/karnel/tools/npm/vercel/install.sh +0 -0
- package/karnel/tools/osint/all.sh +1 -1
- package/karnel/tools/osint/robin/common.sh +0 -0
- package/karnel/tools/osint/robin/install.sh +0 -0
- package/karnel/tools/shell/all.sh +1 -1
- package/karnel/tools/shell/better-npm/install.sh +0 -0
- package/karnel/tools/shell/fzf-tab/install.sh +0 -0
- package/karnel/tools/shell/history-substring/install.sh +0 -0
- package/karnel/tools/shell/powerlevel10k/install.sh +0 -0
- package/karnel/tools/shell/you-should-use/install.sh +0 -0
- package/karnel/tools/shell/zsh-autopair/install.sh +0 -0
- package/karnel/tools/shell/zsh-autosuggestions/install.sh +0 -0
- package/karnel/tools/shell/zsh-completions/install.sh +0 -0
- package/karnel/tools/shell/zsh-defer/install.sh +0 -0
- package/karnel/tools/shell/zsh-syntax-highlighting/install.sh +0 -0
- package/karnel/tools/ui/all.sh +1 -1
- package/karnel/tools/ui/banner/install.sh +0 -0
- package/karnel/tools/ui/cursor/install.sh +0 -0
- package/karnel/tools/ui/extra-keys/install.sh +0 -0
- package/karnel/tools/ui/font/install.sh +0 -0
- package/karnel/tools/utils/all.sh +88 -0
- package/karnel/tools/utils/applaunch/README.md +43 -0
- package/karnel/tools/{dev → utils}/applaunch/install.sh +3 -3
- package/karnel/tools/utils/fconv/README.md +41 -0
- package/karnel/tools/{dev → utils}/fconv/install.sh +3 -3
- package/karnel/tools/utils/filecheck/README.md +41 -0
- package/karnel/tools/{dev → utils}/filecheck/install.sh +3 -3
- package/karnel/tools/utils/httptmux/README.md +42 -0
- package/karnel/tools/{dev → utils}/httptmux/install.sh +0 -0
- package/karnel/tools/utils/notes/README.md +41 -0
- package/karnel/tools/{dev → utils}/notes/install.sh +3 -3
- package/karnel/tools/utils/passman/README.md +42 -0
- package/karnel/tools/{dev → utils}/passman/install.sh +3 -3
- package/karnel/tools/utils/qrcode/README.md +41 -0
- package/karnel/tools/utils/qrcode/install.sh +50 -0
- package/karnel/tools/utils/qrcode/qrcode.py +89 -0
- package/karnel/tools/utils/splash/README.md +41 -0
- package/karnel/tools/{dev → utils}/splash/install.sh +3 -3
- package/karnel/tools/utils/treex/README.md +41 -0
- package/karnel/tools/{dev → utils}/treex/install.sh +3 -3
- package/karnel/tools/utils/websites/README.md +41 -0
- package/karnel/tools/{dev → utils}/websites/install.sh +3 -3
- package/karnel/tools/utils/zork/README.md +43 -0
- package/karnel/tools/{dev → utils}/zork/install.sh +3 -3
- package/karnel/utils/banner.sh +8 -6
- package/karnel/utils/bootstrap.sh +1 -1
- package/karnel/utils/env.sh +1 -1
- package/karnel/utils/log.sh +0 -1
- package/package.json +1 -1
- package/scripts/completion.bash +3 -3
- package/scripts/completion.zsh +0 -12
- package/karnel/cli/commands/doctor/system.sh +0 -89
- /package/karnel/tools/{dev → utils}/applaunch/applaunch.py +0 -0
- /package/karnel/tools/{dev → utils}/fconv/fconv.py +0 -0
- /package/karnel/tools/{dev → utils}/filecheck/filecheck.py +0 -0
- /package/karnel/tools/{dev → utils}/notes/notes.py +0 -0
- /package/karnel/tools/{dev → utils}/passman/passman.py +0 -0
- /package/karnel/tools/{dev → utils}/splash/splash.py +0 -0
- /package/karnel/tools/{dev → utils}/treex/treex.py +0 -0
- /package/karnel/tools/{dev → utils}/websites/websites.py +0 -0
|
@@ -25,6 +25,10 @@ reinstall_main() {
|
|
|
25
25
|
list_item "ui - Reinstall Termux UI"
|
|
26
26
|
list_item "auto - Reinstall automation tools"
|
|
27
27
|
list_item "games - Reinstall games"
|
|
28
|
+
list_item "network - Reinstall network tools"
|
|
29
|
+
list_item "utils - Reinstall utility scripts"
|
|
30
|
+
list_item "deploy - Reinstall deploy CLIs"
|
|
31
|
+
list_item "voice - Reinstall voice command"
|
|
28
32
|
list_item "osint - Reinstall OSINT tools"
|
|
29
33
|
echo
|
|
30
34
|
log_info "Reinstall specific tools with flags:"
|
|
@@ -40,6 +44,7 @@ reinstall_main() {
|
|
|
40
44
|
|
|
41
45
|
local module_target=""
|
|
42
46
|
local -a tool_flags=()
|
|
47
|
+
local -a invalid_args=()
|
|
43
48
|
|
|
44
49
|
for arg in "$@"; do
|
|
45
50
|
if [[ "$arg" == --* ]]; then
|
|
@@ -47,9 +52,20 @@ reinstall_main() {
|
|
|
47
52
|
tool_flags+=("$flag")
|
|
48
53
|
elif [[ -z "$module_target" ]]; then
|
|
49
54
|
module_target="$arg"
|
|
55
|
+
else
|
|
56
|
+
invalid_args+=("$arg")
|
|
50
57
|
fi
|
|
51
58
|
done
|
|
52
59
|
|
|
60
|
+
if [[ ${#invalid_args[@]} -gt 0 ]]; then
|
|
61
|
+
log_error "Invalid arguments: ${invalid_args[*]}"
|
|
62
|
+
echo
|
|
63
|
+
log_info "To reinstall specific tools, use -- before the name:"
|
|
64
|
+
log_info " ${D_CYAN}karnel reinstall $module_target --${invalid_args[0]}${NC}"
|
|
65
|
+
echo
|
|
66
|
+
return 1
|
|
67
|
+
fi
|
|
68
|
+
|
|
53
69
|
if [[ -z "$module_target" ]]; then
|
|
54
70
|
log_error "No target specified"
|
|
55
71
|
echo "Run 'karnel reinstall' to see available targets"
|
|
@@ -107,10 +123,26 @@ _reinstall_full_module() {
|
|
|
107
123
|
import "@/tools/games/all"
|
|
108
124
|
reinstall_all_games
|
|
109
125
|
;;
|
|
126
|
+
deploy)
|
|
127
|
+
import "@/modules/deploy"
|
|
128
|
+
reinstall_deploy
|
|
129
|
+
;;
|
|
130
|
+
voice)
|
|
131
|
+
import "@/modules/voice"
|
|
132
|
+
reinstall_voice
|
|
133
|
+
;;
|
|
110
134
|
osint)
|
|
111
135
|
import "@/modules/osint"
|
|
112
136
|
reinstall_osint
|
|
113
137
|
;;
|
|
138
|
+
network)
|
|
139
|
+
import "@/modules/network"
|
|
140
|
+
reinstall_network
|
|
141
|
+
;;
|
|
142
|
+
utils)
|
|
143
|
+
import "@/modules/utils"
|
|
144
|
+
reinstall_utils
|
|
145
|
+
;;
|
|
114
146
|
*)
|
|
115
147
|
log_warn "Unknown reinstall target: $target"
|
|
116
148
|
echo "Run 'karnel reinstall' to see available targets"
|
|
@@ -171,8 +203,8 @@ _reinstall_specific_tools() {
|
|
|
171
203
|
reinstall_kilocode_cli
|
|
172
204
|
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
173
205
|
;;
|
|
174
|
-
kimchi)
|
|
175
|
-
|
|
206
|
+
kimchi-code)
|
|
207
|
+
reinstall_kimchi_code
|
|
176
208
|
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
177
209
|
;;
|
|
178
210
|
mimocode)
|
|
@@ -235,6 +267,26 @@ _reinstall_specific_tools() {
|
|
|
235
267
|
reinstall_copilot_termux
|
|
236
268
|
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
237
269
|
;;
|
|
270
|
+
kiro)
|
|
271
|
+
reinstall_kiro
|
|
272
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
273
|
+
;;
|
|
274
|
+
crush)
|
|
275
|
+
reinstall_crush
|
|
276
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
277
|
+
;;
|
|
278
|
+
cline)
|
|
279
|
+
reinstall_cline
|
|
280
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
281
|
+
;;
|
|
282
|
+
odysseus)
|
|
283
|
+
reinstall_odysseus
|
|
284
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
285
|
+
;;
|
|
286
|
+
omni-route)
|
|
287
|
+
reinstall_omni_route
|
|
288
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
289
|
+
;;
|
|
238
290
|
*)
|
|
239
291
|
log_warn "Unknown AI tool: --$tool"
|
|
240
292
|
;;
|
|
@@ -387,49 +439,9 @@ _reinstall_specific_tools() {
|
|
|
387
439
|
reinstall_snyk
|
|
388
440
|
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
389
441
|
;;
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
;;
|
|
394
|
-
zork)
|
|
395
|
-
reinstall_zork
|
|
396
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
397
|
-
;;
|
|
398
|
-
fconv)
|
|
399
|
-
reinstall_fconv
|
|
400
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
401
|
-
;;
|
|
402
|
-
filecheck)
|
|
403
|
-
reinstall_filecheck
|
|
404
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
405
|
-
;;
|
|
406
|
-
websites)
|
|
407
|
-
reinstall_websites
|
|
408
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
409
|
-
;;
|
|
410
|
-
notes)
|
|
411
|
-
reinstall_notes
|
|
412
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
413
|
-
;;
|
|
414
|
-
treex)
|
|
415
|
-
reinstall_treex
|
|
416
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
417
|
-
;;
|
|
418
|
-
passman)
|
|
419
|
-
reinstall_passman
|
|
420
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
421
|
-
;;
|
|
422
|
-
applaunch)
|
|
423
|
-
reinstall_applaunch
|
|
424
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
425
|
-
;;
|
|
426
|
-
splash)
|
|
427
|
-
reinstall_splash
|
|
428
|
-
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
429
|
-
;;
|
|
430
|
-
*)
|
|
431
|
-
log_warn "Unknown tool: --$tool"
|
|
432
|
-
;;
|
|
442
|
+
*)
|
|
443
|
+
log_warn "Unknown tool: --$tool"
|
|
444
|
+
;;
|
|
433
445
|
esac
|
|
434
446
|
done
|
|
435
447
|
|
|
@@ -561,8 +573,12 @@ _reinstall_specific_tools() {
|
|
|
561
573
|
|
|
562
574
|
for tool in "${tools[@]}"; do
|
|
563
575
|
case "$tool" in
|
|
576
|
+
bun)
|
|
577
|
+
reinstall_bun
|
|
578
|
+
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
579
|
+
;;
|
|
564
580
|
nodejs)
|
|
565
|
-
|
|
581
|
+
reinstall_nodejs
|
|
566
582
|
case $? in 0) ((reinstalled_count++));; 1) ((failed_count++));; esac
|
|
567
583
|
;;
|
|
568
584
|
python)
|
|
@@ -769,6 +785,12 @@ _reinstall_specific_tools() {
|
|
|
769
785
|
_robin_print_disclaimer
|
|
770
786
|
_batch_tool_action "osint" "reinstall" "${tools[@]}"
|
|
771
787
|
;;
|
|
788
|
+
network)
|
|
789
|
+
_batch_tool_action "network" "reinstall" "${tools[@]}"
|
|
790
|
+
;;
|
|
791
|
+
utils)
|
|
792
|
+
_batch_tool_action "utils" "reinstall" "${tools[@]}"
|
|
793
|
+
;;
|
|
772
794
|
*)
|
|
773
795
|
log_warn "Unknown reinstall target: $module"
|
|
774
796
|
echo "Run 'karnel reinstall' to see available targets"
|
|
@@ -47,6 +47,22 @@ restore_main() {
|
|
|
47
47
|
echo
|
|
48
48
|
log_info "Restoring: $(basename "$file")"
|
|
49
49
|
[[ -f "$manifest" ]] && log_info "$(wc -l < "$manifest") tools to reinstall"
|
|
50
|
+
|
|
51
|
+
# Checksum verification
|
|
52
|
+
local checksum_file="$file.sha256"
|
|
53
|
+
if [[ -f "$checksum_file" ]]; then
|
|
54
|
+
log_info "Verifying checksum..."
|
|
55
|
+
if sha256sum -c "$checksum_file" &>/dev/null; then
|
|
56
|
+
log_success "Checksum verified"
|
|
57
|
+
else
|
|
58
|
+
log_error "Checksum mismatch! Backup may be corrupted"
|
|
59
|
+
read_confirm "Continue anyway?" confirm
|
|
60
|
+
[[ "$confirm" != "y" ]] && { log_info "Cancelled"; return 1; }
|
|
61
|
+
fi
|
|
62
|
+
else
|
|
63
|
+
log_warn "No checksum file found (pre-checksum backup)"
|
|
64
|
+
fi
|
|
65
|
+
|
|
50
66
|
echo
|
|
51
67
|
|
|
52
68
|
read_confirm "Proceed with restore?" confirm
|
|
@@ -43,6 +43,11 @@ _start_editor() {
|
|
|
43
43
|
|
|
44
44
|
local port="${1:-8080}"
|
|
45
45
|
|
|
46
|
+
if ! [[ "$port" =~ ^[0-9]+$ ]] || (( port < 1024 || port > 65535 )); then
|
|
47
|
+
log_error "Invalid port: $port (must be between 1024 and 65535)"
|
|
48
|
+
return 1
|
|
49
|
+
fi
|
|
50
|
+
|
|
46
51
|
echo
|
|
47
52
|
box "Starting code-server"
|
|
48
53
|
echo
|
|
@@ -50,10 +55,10 @@ _start_editor() {
|
|
|
50
55
|
log_info "Port: $port"
|
|
51
56
|
log_info "Password set via --auth password flag"
|
|
52
57
|
echo
|
|
53
|
-
log_success "Open http://
|
|
58
|
+
log_success "Open http://127.0.0.1:$port in your browser"
|
|
54
59
|
echo
|
|
55
60
|
log_info "Press Ctrl+C to stop"
|
|
56
61
|
echo
|
|
57
62
|
|
|
58
|
-
code-server . --bind-addr "
|
|
63
|
+
code-server . --bind-addr "127.0.0.1:$port" --auth password
|
|
59
64
|
}
|
|
@@ -24,6 +24,11 @@ uninstall_main() {
|
|
|
24
24
|
list_item "shell - Remove ZSH + Oh My Zsh"
|
|
25
25
|
list_item "ui - Restore Termux UI to default"
|
|
26
26
|
list_item "auto - Remove automation tools"
|
|
27
|
+
list_item "network - Remove network tools"
|
|
28
|
+
list_item "utils - Remove utility scripts"
|
|
29
|
+
list_item "games - Remove games"
|
|
30
|
+
list_item "deploy - Remove deploy CLIs"
|
|
31
|
+
list_item "voice - Remove voice command"
|
|
27
32
|
list_item "osint - Remove OSINT tools"
|
|
28
33
|
echo
|
|
29
34
|
log_info "Uninstall specific tools with flags:"
|
|
@@ -40,6 +45,7 @@ uninstall_main() {
|
|
|
40
45
|
# Separate module target from tool flags
|
|
41
46
|
local module_target=""
|
|
42
47
|
local -a tool_flags=()
|
|
48
|
+
local -a invalid_args=()
|
|
43
49
|
|
|
44
50
|
for arg in "$@"; do
|
|
45
51
|
if [[ "$arg" == --* ]]; then
|
|
@@ -47,9 +53,21 @@ uninstall_main() {
|
|
|
47
53
|
tool_flags+=("$flag")
|
|
48
54
|
elif [[ -z "$module_target" ]]; then
|
|
49
55
|
module_target="$arg"
|
|
56
|
+
else
|
|
57
|
+
invalid_args+=("$arg")
|
|
50
58
|
fi
|
|
51
59
|
done
|
|
52
60
|
|
|
61
|
+
# If there are invalid arguments, show error and abort
|
|
62
|
+
if [[ ${#invalid_args[@]} -gt 0 ]]; then
|
|
63
|
+
log_error "Invalid arguments: ${invalid_args[*]}"
|
|
64
|
+
echo
|
|
65
|
+
log_info "To uninstall specific tools, use -- before the name:"
|
|
66
|
+
log_info " ${D_CYAN}karnel uninstall $module_target --${invalid_args[0]}${NC}"
|
|
67
|
+
echo
|
|
68
|
+
return 1
|
|
69
|
+
fi
|
|
70
|
+
|
|
53
71
|
# If no module target specified, show error
|
|
54
72
|
if [[ -z "$module_target" ]]; then
|
|
55
73
|
log_error "No target specified"
|
|
@@ -111,6 +129,26 @@ _uninstall_full_module() {
|
|
|
111
129
|
import "@/modules/osint"
|
|
112
130
|
uninstall_osint
|
|
113
131
|
;;
|
|
132
|
+
network)
|
|
133
|
+
import "@/modules/network"
|
|
134
|
+
uninstall_network
|
|
135
|
+
;;
|
|
136
|
+
utils)
|
|
137
|
+
import "@/modules/utils"
|
|
138
|
+
uninstall_utils
|
|
139
|
+
;;
|
|
140
|
+
games)
|
|
141
|
+
import "@/tools/games/all"
|
|
142
|
+
uninstall_all_games
|
|
143
|
+
;;
|
|
144
|
+
deploy)
|
|
145
|
+
import "@/modules/deploy"
|
|
146
|
+
uninstall_deploy
|
|
147
|
+
;;
|
|
148
|
+
voice)
|
|
149
|
+
import "@/modules/voice"
|
|
150
|
+
uninstall_voice
|
|
151
|
+
;;
|
|
114
152
|
*)
|
|
115
153
|
log_warn "Unknown uninstall target: $target"
|
|
116
154
|
echo "Run 'karnel uninstall' to see available targets"
|
|
@@ -25,6 +25,11 @@ update_main() {
|
|
|
25
25
|
list_item "shell - Update ZSH plugins"
|
|
26
26
|
list_item "ui - Update Termux UI"
|
|
27
27
|
list_item "auto - Update Automation Tools"
|
|
28
|
+
list_item "network - Update network tools"
|
|
29
|
+
list_item "utils - Update utility scripts"
|
|
30
|
+
list_item "games - Update games"
|
|
31
|
+
list_item "deploy - Update deploy CLIs"
|
|
32
|
+
list_item "voice - Update voice command"
|
|
28
33
|
list_item "osint - Update OSINT tools"
|
|
29
34
|
echo
|
|
30
35
|
log_info "Update specific tools with flags:"
|
|
@@ -39,6 +44,7 @@ update_main() {
|
|
|
39
44
|
# Separate module target from tool flags
|
|
40
45
|
local module_target=""
|
|
41
46
|
local -a tool_flags=()
|
|
47
|
+
local -a invalid_args=()
|
|
42
48
|
|
|
43
49
|
for arg in "$@"; do
|
|
44
50
|
if [[ "$arg" == --* ]]; then
|
|
@@ -46,9 +52,21 @@ update_main() {
|
|
|
46
52
|
tool_flags+=("$flag")
|
|
47
53
|
elif [[ -z "$module_target" ]]; then
|
|
48
54
|
module_target="$arg"
|
|
55
|
+
else
|
|
56
|
+
invalid_args+=("$arg")
|
|
49
57
|
fi
|
|
50
58
|
done
|
|
51
59
|
|
|
60
|
+
# If there are invalid arguments, show error and abort
|
|
61
|
+
if [[ ${#invalid_args[@]} -gt 0 ]]; then
|
|
62
|
+
log_error "Invalid arguments: ${invalid_args[*]}"
|
|
63
|
+
echo
|
|
64
|
+
log_info "To update specific tools, use -- before the name:"
|
|
65
|
+
log_info " ${D_CYAN}karnel update $module_target --${invalid_args[0]}${NC}"
|
|
66
|
+
echo
|
|
67
|
+
return 1
|
|
68
|
+
fi
|
|
69
|
+
|
|
52
70
|
# If no module target specified, show error
|
|
53
71
|
if [[ -z "$module_target" ]]; then
|
|
54
72
|
log_error "No target specified"
|
|
@@ -117,6 +135,22 @@ _update_full_module() {
|
|
|
117
135
|
import "@/modules/osint"
|
|
118
136
|
update_osint
|
|
119
137
|
;;
|
|
138
|
+
network)
|
|
139
|
+
import "@/modules/network"
|
|
140
|
+
update_network
|
|
141
|
+
;;
|
|
142
|
+
utils)
|
|
143
|
+
import "@/modules/utils"
|
|
144
|
+
update_utils
|
|
145
|
+
;;
|
|
146
|
+
deploy)
|
|
147
|
+
import "@/modules/deploy"
|
|
148
|
+
update_deploy
|
|
149
|
+
;;
|
|
150
|
+
voice)
|
|
151
|
+
import "@/modules/voice"
|
|
152
|
+
update_voice
|
|
153
|
+
;;
|
|
120
154
|
*)
|
|
121
155
|
log_warn "Unknown update target: $target"
|
|
122
156
|
echo "Run 'karnel update' to see available targets"
|
|
@@ -52,14 +52,13 @@ voice_help() {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
voice_main() {
|
|
55
|
-
local agent="${1:-}"
|
|
56
55
|
local lang=""
|
|
57
56
|
local skip_edit=false
|
|
58
57
|
local no_clip=false
|
|
59
58
|
local extra_args=()
|
|
60
|
-
local
|
|
59
|
+
local agent=""
|
|
61
60
|
|
|
62
|
-
# Parse
|
|
61
|
+
# Parse all arguments: flags can appear anywhere
|
|
63
62
|
while [[ $# -gt 0 ]]; do
|
|
64
63
|
case "$1" in
|
|
65
64
|
--lang) lang="${2:-}"; shift 2 ;;
|
|
@@ -67,14 +66,20 @@ voice_main() {
|
|
|
67
66
|
--no-clip) no_clip=true; shift ;;
|
|
68
67
|
--help|-h) voice_help; return ;;
|
|
69
68
|
--) shift; break ;;
|
|
70
|
-
|
|
69
|
+
-*)
|
|
70
|
+
log_warn "Unknown option: $1"
|
|
71
|
+
shift
|
|
72
|
+
;;
|
|
73
|
+
*)
|
|
74
|
+
[[ -z "$agent" ]] && agent="$1"
|
|
75
|
+
shift
|
|
76
|
+
;;
|
|
71
77
|
esac
|
|
72
78
|
done
|
|
73
79
|
|
|
74
|
-
agent="${1:-}"
|
|
75
80
|
[[ -z "$agent" ]] && { voice_help; return; }
|
|
76
81
|
|
|
77
|
-
if [[
|
|
82
|
+
if [[ "$agent" == "--help" ]] || [[ "$agent" == "-h" ]]; then
|
|
78
83
|
voice_help
|
|
79
84
|
return
|
|
80
85
|
fi
|