omni-catalyst 1.0.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/LICENSE +21 -0
- package/README.md +1137 -0
- package/core/bin/core +85 -0
- package/core/bin/omni +21 -0
- package/core/cli/commands/--version.sh +8 -0
- package/core/cli/commands/brain.sh +1549 -0
- package/core/cli/commands/doctor.sh +834 -0
- package/core/cli/commands/env.sh +226 -0
- package/core/cli/commands/init.sh +1266 -0
- package/core/cli/commands/install.sh +759 -0
- package/core/cli/commands/list.sh +397 -0
- package/core/cli/commands/open.sh +71 -0
- package/core/cli/commands/pg.sh +761 -0
- package/core/cli/commands/reinstall.sh +694 -0
- package/core/cli/commands/show.sh +90 -0
- package/core/cli/commands/uninstall.sh +700 -0
- package/core/cli/commands/update.sh +754 -0
- package/core/cli/commands/voice.sh +170 -0
- package/core/cli/core.sh +82 -0
- package/core/cli/omni.sh +634 -0
- package/core/modules/ai.sh +152 -0
- package/core/modules/auto.sh +90 -0
- package/core/modules/db.sh +94 -0
- package/core/modules/deploy.sh +50 -0
- package/core/modules/dev.sh +126 -0
- package/core/modules/editor.sh +101 -0
- package/core/modules/lang.sh +100 -0
- package/core/modules/npm.sh +122 -0
- package/core/modules/shell.sh +312 -0
- package/core/modules/ui.sh +115 -0
- package/core/tools/ai/all.sh +63 -0
- package/core/tools/ai/antigravity-cli/README.md +45 -0
- package/core/tools/ai/antigravity-cli/bin/agy +28 -0
- package/core/tools/ai/antigravity-cli/helper/agy_helper.c +39 -0
- package/core/tools/ai/antigravity-cli/install.sh +469 -0
- package/core/tools/ai/claude-code/README.md +45 -0
- package/core/tools/ai/claude-code/bin/claude +29 -0
- package/core/tools/ai/claude-code/helper/claude_helper.c +42 -0
- package/core/tools/ai/claude-code/install.sh +278 -0
- package/core/tools/ai/codegraph/README.md +43 -0
- package/core/tools/ai/codegraph/bin/codegraph +3 -0
- package/core/tools/ai/codegraph/install.sh +149 -0
- package/core/tools/ai/codex/README.md +44 -0
- package/core/tools/ai/codex/install.sh +104 -0
- package/core/tools/ai/command-code/README.md +62 -0
- package/core/tools/ai/command-code/install.sh +136 -0
- package/core/tools/ai/engram/README.md +44 -0
- package/core/tools/ai/engram/install.sh +127 -0
- package/core/tools/ai/freebuff/README.md +52 -0
- package/core/tools/ai/freebuff/bin/freebuff +28 -0
- package/core/tools/ai/freebuff/helper/freebuff_helper.c +47 -0
- package/core/tools/ai/freebuff/install.sh +301 -0
- package/core/tools/ai/gemini-cli/README.md +46 -0
- package/core/tools/ai/gemini-cli/install.sh +111 -0
- package/core/tools/ai/gentle-ai/README.md +42 -0
- package/core/tools/ai/gentle-ai/install.sh +253 -0
- package/core/tools/ai/gentle-ai/termux-patches.go +256 -0
- package/core/tools/ai/gga/README.md +49 -0
- package/core/tools/ai/gga/install.sh +134 -0
- package/core/tools/ai/hermes-agent/README.md +50 -0
- package/core/tools/ai/hermes-agent/install.sh +80 -0
- package/core/tools/ai/heygen/README.md +24 -0
- package/core/tools/ai/heygen/install.sh +126 -0
- package/core/tools/ai/kilocode-cli/README.md +45 -0
- package/core/tools/ai/kilocode-cli/bin/kilocode +21 -0
- package/core/tools/ai/kilocode-cli/helper/kilocode_helper.c +47 -0
- package/core/tools/ai/kilocode-cli/install.sh +179 -0
- package/core/tools/ai/kimchi-code/README.md +8 -0
- package/core/tools/ai/kimchi-code/install.sh +120 -0
- package/core/tools/ai/kimi-code/README.md +45 -0
- package/core/tools/ai/kimi-code/install.sh +111 -0
- package/core/tools/ai/kiro-cli/README.md +23 -0
- package/core/tools/ai/kiro-cli/install.sh +127 -0
- package/core/tools/ai/mimocode/README.md +43 -0
- package/core/tools/ai/mimocode/bin/mimo +28 -0
- package/core/tools/ai/mimocode/helper/mimocode_helper.c +47 -0
- package/core/tools/ai/mimocode/install.sh +287 -0
- package/core/tools/ai/minimax-cli/README.md +45 -0
- package/core/tools/ai/minimax-cli/install.sh +111 -0
- package/core/tools/ai/mistral-vibe/README.md +46 -0
- package/core/tools/ai/mistral-vibe/install.sh +119 -0
- package/core/tools/ai/odysseus/README.md +35 -0
- package/core/tools/ai/odysseus/install.sh +163 -0
- package/core/tools/ai/ollama/README.md +44 -0
- package/core/tools/ai/ollama/install.sh +78 -0
- package/core/tools/ai/openclaude/README.md +46 -0
- package/core/tools/ai/openclaude/install.sh +110 -0
- package/core/tools/ai/openclaw/README.md +47 -0
- package/core/tools/ai/openclaw/install.sh +112 -0
- package/core/tools/ai/opencode/README.md +51 -0
- package/core/tools/ai/opencode/bin/opencode +28 -0
- package/core/tools/ai/opencode/helper/opencode_helper.c +57 -0
- package/core/tools/ai/opencode/install.sh +290 -0
- package/core/tools/ai/pi/README.md +46 -0
- package/core/tools/ai/pi/install.sh +104 -0
- package/core/tools/ai/qwen-code/README.md +45 -0
- package/core/tools/ai/qwen-code/install.sh +111 -0
- package/core/tools/ai/seedance/README.md +22 -0
- package/core/tools/ai/seedance/install.sh +134 -0
- package/core/tools/ai/veo3/README.md +36 -0
- package/core/tools/ai/veo3/install.sh +151 -0
- package/core/tools/auto/all.sh +57 -0
- package/core/tools/auto/n8n/README.md +47 -0
- package/core/tools/auto/n8n/install.sh +102 -0
- package/core/tools/db/all.sh +60 -0
- package/core/tools/db/mariadb/README.md +43 -0
- package/core/tools/db/mariadb/install.sh +65 -0
- package/core/tools/db/mongodb/README.md +42 -0
- package/core/tools/db/mongodb/install.sh +73 -0
- package/core/tools/db/postgresql/README.md +45 -0
- package/core/tools/db/postgresql/install.sh +65 -0
- package/core/tools/db/sqlite/README.md +44 -0
- package/core/tools/db/sqlite/install.sh +65 -0
- package/core/tools/deploy/all.sh +39 -0
- package/core/tools/deploy/netlify/install.sh +41 -0
- package/core/tools/deploy/railway/install.sh +47 -0
- package/core/tools/deploy/vercel/install.sh +43 -0
- package/core/tools/dev/all.sh +75 -0
- package/core/tools/dev/bat/README.md +44 -0
- package/core/tools/dev/bat/install.sh +82 -0
- package/core/tools/dev/bc/README.md +44 -0
- package/core/tools/dev/bc/install.sh +82 -0
- package/core/tools/dev/cloudflared/README.md +43 -0
- package/core/tools/dev/cloudflared/install.sh +82 -0
- package/core/tools/dev/curl/README.md +43 -0
- package/core/tools/dev/curl/install.sh +82 -0
- package/core/tools/dev/fzf/README.md +44 -0
- package/core/tools/dev/fzf/install.sh +82 -0
- package/core/tools/dev/gh/README.md +43 -0
- package/core/tools/dev/gh/install.sh +82 -0
- package/core/tools/dev/html2text/README.md +44 -0
- package/core/tools/dev/html2text/install.sh +82 -0
- package/core/tools/dev/imagemagick/README.md +44 -0
- package/core/tools/dev/imagemagick/install.sh +82 -0
- package/core/tools/dev/jq/README.md +44 -0
- package/core/tools/dev/jq/install.sh +82 -0
- package/core/tools/dev/lsd/README.md +44 -0
- package/core/tools/dev/lsd/install.sh +82 -0
- package/core/tools/dev/make/README.md +44 -0
- package/core/tools/dev/make/install.sh +82 -0
- package/core/tools/dev/ncurses/README.md +42 -0
- package/core/tools/dev/ncurses/install.sh +82 -0
- package/core/tools/dev/proot/README.md +43 -0
- package/core/tools/dev/proot/install.sh +82 -0
- package/core/tools/dev/shfmt/README.md +44 -0
- package/core/tools/dev/shfmt/install.sh +82 -0
- package/core/tools/dev/tmate/README.md +44 -0
- package/core/tools/dev/tmate/install.sh +82 -0
- package/core/tools/dev/translate/README.md +44 -0
- package/core/tools/dev/translate/install.sh +82 -0
- package/core/tools/dev/tree/README.md +44 -0
- package/core/tools/dev/tree/install.sh +82 -0
- package/core/tools/dev/udocker/README.md +44 -0
- package/core/tools/dev/udocker/install.sh +82 -0
- package/core/tools/dev/wget/README.md +44 -0
- package/core/tools/dev/wget/install.sh +82 -0
- package/core/tools/editor/all.sh +58 -0
- package/core/tools/editor/neovim/README.md +43 -0
- package/core/tools/editor/neovim/install.sh +66 -0
- package/core/tools/editor/nvchad/README.md +45 -0
- package/core/tools/editor/nvchad/install.sh +110 -0
- package/core/tools/lang/all.sh +63 -0
- package/core/tools/lang/clang/README.md +43 -0
- package/core/tools/lang/clang/install.sh +79 -0
- package/core/tools/lang/golang/README.md +43 -0
- package/core/tools/lang/golang/install.sh +79 -0
- package/core/tools/lang/nodejs/README.md +43 -0
- package/core/tools/lang/nodejs/install.sh +79 -0
- package/core/tools/lang/perl/README.md +43 -0
- package/core/tools/lang/perl/install.sh +79 -0
- package/core/tools/lang/php/README.md +43 -0
- package/core/tools/lang/php/install.sh +79 -0
- package/core/tools/lang/python/README.md +43 -0
- package/core/tools/lang/python/install.sh +79 -0
- package/core/tools/lang/rust/README.md +43 -0
- package/core/tools/lang/rust/install.sh +79 -0
- package/core/tools/npm/all.sh +67 -0
- package/core/tools/npm/live-server/README.md +43 -0
- package/core/tools/npm/live-server/install.sh +95 -0
- package/core/tools/npm/localtunnel/README.md +43 -0
- package/core/tools/npm/localtunnel/install.sh +111 -0
- package/core/tools/npm/markserv/README.md +43 -0
- package/core/tools/npm/markserv/install.sh +94 -0
- package/core/tools/npm/ncu/README.md +43 -0
- package/core/tools/npm/ncu/install.sh +94 -0
- package/core/tools/npm/nestjs/README.md +43 -0
- package/core/tools/npm/nestjs/install.sh +94 -0
- package/core/tools/npm/ngrok/README.md +44 -0
- package/core/tools/npm/ngrok/install.sh +94 -0
- package/core/tools/npm/prettier/README.md +43 -0
- package/core/tools/npm/prettier/install.sh +94 -0
- package/core/tools/npm/psqlformat/README.md +43 -0
- package/core/tools/npm/psqlformat/install.sh +94 -0
- package/core/tools/npm/turbopack/README.md +8 -0
- package/core/tools/npm/turbopack/install.sh +41 -0
- package/core/tools/npm/typescript/README.md +43 -0
- package/core/tools/npm/typescript/install.sh +94 -0
- package/core/tools/npm/vercel/README.md +43 -0
- package/core/tools/npm/vercel/install.sh +94 -0
- package/core/tools/shell/all.sh +67 -0
- package/core/tools/shell/better-npm/README.md +43 -0
- package/core/tools/shell/better-npm/install.sh +85 -0
- package/core/tools/shell/fzf-tab/README.md +44 -0
- package/core/tools/shell/fzf-tab/install.sh +85 -0
- package/core/tools/shell/history-substring/README.md +43 -0
- package/core/tools/shell/history-substring/install.sh +85 -0
- package/core/tools/shell/powerlevel10k/README.md +43 -0
- package/core/tools/shell/powerlevel10k/install.sh +85 -0
- package/core/tools/shell/you-should-use/README.md +43 -0
- package/core/tools/shell/you-should-use/install.sh +85 -0
- package/core/tools/shell/zsh-autopair/README.md +44 -0
- package/core/tools/shell/zsh-autopair/install.sh +85 -0
- package/core/tools/shell/zsh-autosuggestions/README.md +43 -0
- package/core/tools/shell/zsh-autosuggestions/install.sh +85 -0
- package/core/tools/shell/zsh-completions/README.md +43 -0
- package/core/tools/shell/zsh-completions/install.sh +85 -0
- package/core/tools/shell/zsh-defer/README.md +43 -0
- package/core/tools/shell/zsh-defer/install.sh +85 -0
- package/core/tools/shell/zsh-syntax-highlighting/README.md +43 -0
- package/core/tools/shell/zsh-syntax-highlighting/install.sh +72 -0
- package/core/tools/ui/all.sh +61 -0
- package/core/tools/ui/banner/README.md +42 -0
- package/core/tools/ui/banner/install.sh +151 -0
- package/core/tools/ui/cursor/README.md +42 -0
- package/core/tools/ui/cursor/install.sh +58 -0
- package/core/tools/ui/extra-keys/README.md +43 -0
- package/core/tools/ui/extra-keys/install.sh +62 -0
- package/core/tools/ui/font/README.md +43 -0
- package/core/tools/ui/font/install.sh +63 -0
- package/core/utils/banner.sh +519 -0
- package/core/utils/bootstrap.sh +25 -0
- package/core/utils/colors.sh +31 -0
- package/core/utils/dialogrc +30 -0
- package/core/utils/env.sh +53 -0
- package/core/utils/log.sh +598 -0
- package/install.sh +272 -0
- package/package.json +43 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_shell.log"
|
|
6
|
+
ZSH_PLUGINS_DIR="$HOME/.zsh-plugins"
|
|
7
|
+
|
|
8
|
+
_zsh_completions_dependencies() {
|
|
9
|
+
declare -A DEPS=(
|
|
10
|
+
["zsh"]="zsh"
|
|
11
|
+
["zoxide"]="zoxide"
|
|
12
|
+
["git"]="git"
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
local pkg_name bin_name
|
|
16
|
+
for pkg_name in "${!DEPS[@]}"; do
|
|
17
|
+
bin_name="${DEPS[$pkg_name]}"
|
|
18
|
+
if ! command -v "$bin_name" &>/dev/null; then
|
|
19
|
+
if ! pkg install "$pkg_name" -y &>>"$LOG_FILE"; then
|
|
20
|
+
log_error "Failed to install $pkg_name"
|
|
21
|
+
return 1
|
|
22
|
+
fi
|
|
23
|
+
fi
|
|
24
|
+
done
|
|
25
|
+
|
|
26
|
+
log_success "Shell dependencies installed"
|
|
27
|
+
return 0
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
_install_zsh_completions_git() {
|
|
31
|
+
loading "Installing zsh-completions" _install_zsh_completions_git_impl
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
_install_zsh_completions_git_impl() {
|
|
35
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
36
|
+
if ! git clone --depth=1 "https://github.com/zsh-users/zsh-completions.git" "$ZSH_PLUGINS_DIR/zsh-completions" &>>"$LOG_FILE"; then
|
|
37
|
+
log_error "Failed to install zsh-completions"
|
|
38
|
+
return 1
|
|
39
|
+
fi
|
|
40
|
+
return 0
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
install_zsh_completions() {
|
|
44
|
+
if [[ -d "$ZSH_PLUGINS_DIR/zsh-completions" ]]; then
|
|
45
|
+
log_info "zsh-completions already installed"
|
|
46
|
+
return 0
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
_zsh_completions_dependencies
|
|
50
|
+
|
|
51
|
+
_install_zsh_completions_git || return 1
|
|
52
|
+
log_success "Installed"
|
|
53
|
+
return 0
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
_uninstall_zsh_completions_impl() {
|
|
57
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-completions" ]]; then
|
|
58
|
+
log_info "zsh-completions is not installed"
|
|
59
|
+
return 0
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
rm -rf "$ZSH_PLUGINS_DIR/zsh-completions"
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
uninstall_zsh_completions() {
|
|
66
|
+
loading "Uninstalling zsh-completions" _uninstall_zsh_completions_impl
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
_update_zsh_completions_impl() {
|
|
70
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-completions/.git" ]]; then
|
|
71
|
+
log_warn "zsh-completions not installed"
|
|
72
|
+
return 0
|
|
73
|
+
fi
|
|
74
|
+
|
|
75
|
+
git -C "$ZSH_PLUGINS_DIR/zsh-completions" pull &>>"$LOG_FILE"
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
update_zsh_completions() {
|
|
79
|
+
loading "Updating zsh-completions" _update_zsh_completions_impl
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
reinstall_zsh_completions() {
|
|
83
|
+
uninstall_zsh_completions
|
|
84
|
+
install_zsh_completions
|
|
85
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Zsh-defer
|
|
2
|
+
|
|
3
|
+
Deferred plugin loading for faster ZSH startup
|
|
4
|
+
|
|
5
|
+
**Package:** zsh-defer
|
|
6
|
+
**Author:** israel676767
|
|
7
|
+
**Repository:** https://github.com/israel676767/omni
|
|
8
|
+
**Official:** https://github.com/romkatv/zsh-defer
|
|
9
|
+
**Type:** ZSH plugin (git clone)
|
|
10
|
+
**License:** MIT
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Zsh-defer defers the loading of ZSH plugins to after the first prompt, significantly improving shell startup time. Non-essential plugins are loaded in the background while the shell remains responsive.
|
|
15
|
+
|
|
16
|
+
## Dependencies
|
|
17
|
+
|
|
18
|
+
- ZSH, git, zoxide
|
|
19
|
+
|
|
20
|
+
## Install
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
core install shell --zsh-defer
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Uninstall
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
core uninstall shell --zsh-defer
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Update
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
core update shell --zsh-defer
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Notes
|
|
39
|
+
|
|
40
|
+
- Installed in `~/.zsh-plugins/`
|
|
41
|
+
- Delays plugin loading until after first prompt
|
|
42
|
+
- Improves perceived ZSH startup time
|
|
43
|
+
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_shell.log"
|
|
6
|
+
ZSH_PLUGINS_DIR="$HOME/.zsh-plugins"
|
|
7
|
+
|
|
8
|
+
_zsh_defer_dependencies() {
|
|
9
|
+
declare -A DEPS=(
|
|
10
|
+
["zsh"]="zsh"
|
|
11
|
+
["zoxide"]="zoxide"
|
|
12
|
+
["git"]="git"
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
local pkg_name bin_name
|
|
16
|
+
for pkg_name in "${!DEPS[@]}"; do
|
|
17
|
+
bin_name="${DEPS[$pkg_name]}"
|
|
18
|
+
if ! command -v "$bin_name" &>/dev/null; then
|
|
19
|
+
if ! pkg install "$pkg_name" -y &>>"$LOG_FILE"; then
|
|
20
|
+
log_error "Failed to install $pkg_name"
|
|
21
|
+
return 1
|
|
22
|
+
fi
|
|
23
|
+
fi
|
|
24
|
+
done
|
|
25
|
+
|
|
26
|
+
log_success "Shell dependencies installed"
|
|
27
|
+
return 0
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
_install_zsh_defer_git() {
|
|
31
|
+
loading "Installing zsh-defer" _install_zsh_defer_git_impl
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
_install_zsh_defer_git_impl() {
|
|
35
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
36
|
+
if ! git clone --depth=1 "https://github.com/romkatv/zsh-defer.git" "$ZSH_PLUGINS_DIR/zsh-defer" &>>"$LOG_FILE"; then
|
|
37
|
+
log_error "Failed to install zsh-defer"
|
|
38
|
+
return 1
|
|
39
|
+
fi
|
|
40
|
+
return 0
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
install_zsh_defer() {
|
|
44
|
+
if [[ -d "$ZSH_PLUGINS_DIR/zsh-defer" ]]; then
|
|
45
|
+
log_info "zsh-defer already installed"
|
|
46
|
+
return 0
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
_zsh_defer_dependencies
|
|
50
|
+
|
|
51
|
+
_install_zsh_defer_git || return 1
|
|
52
|
+
log_success "Installed"
|
|
53
|
+
return 0
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
_uninstall_zsh_defer_impl() {
|
|
57
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-defer" ]]; then
|
|
58
|
+
log_info "zsh-defer is not installed"
|
|
59
|
+
return 2
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
rm -rf "$ZSH_PLUGINS_DIR/zsh-defer"
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
uninstall_zsh_defer() {
|
|
66
|
+
loading "Uninstalling zsh-defer" _uninstall_zsh_defer_impl
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
_update_zsh_defer_impl() {
|
|
70
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-defer/.git" ]]; then
|
|
71
|
+
log_warn "zsh-defer not installed"
|
|
72
|
+
return 0
|
|
73
|
+
fi
|
|
74
|
+
|
|
75
|
+
git -C "$ZSH_PLUGINS_DIR/zsh-defer" pull &>>"$LOG_FILE"
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
update_zsh_defer() {
|
|
79
|
+
loading "Updating zsh-defer" _update_zsh_defer_impl
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
reinstall_zsh_defer() {
|
|
83
|
+
uninstall_zsh_defer
|
|
84
|
+
install_zsh_defer
|
|
85
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Zsh-syntax-highlighting
|
|
2
|
+
|
|
3
|
+
Real-time syntax highlighting for ZSH commands
|
|
4
|
+
|
|
5
|
+
**Package:** zsh-syntax-highlighting
|
|
6
|
+
**Author:** israel676767
|
|
7
|
+
**Repository:** https://github.com/israel676767/omni
|
|
8
|
+
**Official:** https://github.com/zsh-users/zsh-syntax-highlighting
|
|
9
|
+
**Type:** ZSH plugin (git clone)
|
|
10
|
+
**License:** BSD 3-Clause
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Zsh-syntax-highlighting provides real-time syntax highlighting for commands as you type in ZSH. Valid commands are highlighted in green, invalid in red, and various tokens get different colors for better readability.
|
|
15
|
+
|
|
16
|
+
## Dependencies
|
|
17
|
+
|
|
18
|
+
- ZSH, git, zoxide
|
|
19
|
+
|
|
20
|
+
## Install
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
core install shell --zsh-syntax-highlighting
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Uninstall
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
core uninstall shell --zsh-syntax-highlighting
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Update
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
core update shell --zsh-syntax-highlighting
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Notes
|
|
39
|
+
|
|
40
|
+
- Installed in `~/.zsh-plugins/`
|
|
41
|
+
- Highlights commands in real-time
|
|
42
|
+
- Must be loaded last in plugin order
|
|
43
|
+
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_shell.log"
|
|
6
|
+
ZSH_PLUGINS_DIR="$HOME/.zsh-plugins"
|
|
7
|
+
|
|
8
|
+
_zsh_syntax_highlighting_dependencies() {
|
|
9
|
+
if command -v git &>/dev/null && command -v zsh &>/dev/null; then
|
|
10
|
+
return 0
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
14
|
+
pkg install zsh zoxide git -y &>>"$LOG_FILE"
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
_install_zsh_syntax_highlighting_git() {
|
|
18
|
+
loading "Installing zsh-syntax-highlighting" _install_zsh_syntax_highlighting_git_impl
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
_install_zsh_syntax_highlighting_git_impl() {
|
|
22
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
23
|
+
if ! git clone --depth=1 "https://github.com/zsh-users/zsh-syntax-highlighting.git" "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting" &>>"$LOG_FILE"; then
|
|
24
|
+
log_error "Failed to install zsh-syntax-highlighting"
|
|
25
|
+
return 1
|
|
26
|
+
fi
|
|
27
|
+
return 0
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
install_zsh_syntax_highlighting() {
|
|
31
|
+
if [[ -d "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting" ]]; then
|
|
32
|
+
log_info "zsh-syntax-highlighting already installed"
|
|
33
|
+
return 0
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
_zsh_syntax_highlighting_dependencies
|
|
37
|
+
|
|
38
|
+
_install_zsh_syntax_highlighting_git || return 1
|
|
39
|
+
log_success "Installed"
|
|
40
|
+
return 0
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
_uninstall_zsh_syntax_highlighting_impl() {
|
|
44
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting" ]]; then
|
|
45
|
+
log_info "zsh-syntax-highlighting is not installed"
|
|
46
|
+
return 0
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
rm -rf "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting"
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
uninstall_zsh_syntax_highlighting() {
|
|
53
|
+
loading "Uninstalling zsh-syntax-highlighting" _uninstall_zsh_syntax_highlighting_impl
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
_update_zsh_syntax_highlighting_impl() {
|
|
57
|
+
if [[ ! -d "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting/.git" ]]; then
|
|
58
|
+
log_warn "zsh-syntax-highlighting not installed"
|
|
59
|
+
return 0
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
git -C "$ZSH_PLUGINS_DIR/zsh-syntax-highlighting" pull &>>"$LOG_FILE"
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
update_zsh_syntax_highlighting() {
|
|
66
|
+
loading "Updating zsh-syntax-highlighting" _update_zsh_syntax_highlighting_impl
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
reinstall_zsh_syntax_highlighting() {
|
|
70
|
+
uninstall_zsh_syntax_highlighting
|
|
71
|
+
install_zsh_syntax_highlighting
|
|
72
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_ui.log"
|
|
6
|
+
TERMUX_DIR="$HOME/.termux"
|
|
7
|
+
|
|
8
|
+
UI_COMPONENTS=(
|
|
9
|
+
"font"
|
|
10
|
+
"extra-keys"
|
|
11
|
+
"cursor"
|
|
12
|
+
"banner"
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
for _tool in "${UI_COMPONENTS[@]}"; do
|
|
16
|
+
source "$(dirname "$BASH_SOURCE")/$_tool/install.sh"
|
|
17
|
+
done
|
|
18
|
+
unset _tool
|
|
19
|
+
|
|
20
|
+
_batch_ui() {
|
|
21
|
+
local action="$1"
|
|
22
|
+
local action_past="$2"
|
|
23
|
+
local count_var="$3"
|
|
24
|
+
local count=0
|
|
25
|
+
local failed=0
|
|
26
|
+
local total=${#UI_COMPONENTS[@]}
|
|
27
|
+
local current=0
|
|
28
|
+
local func_name
|
|
29
|
+
|
|
30
|
+
progress_start "$total" "${action_past}ing UI components..."
|
|
31
|
+
|
|
32
|
+
for tool in "${UI_COMPONENTS[@]}"; do
|
|
33
|
+
func_name="${action}_${tool//-/_}"
|
|
34
|
+
if declare -f "$func_name" &>/dev/null; then
|
|
35
|
+
loading "${action_past^}ing ${tool}" "$func_name"
|
|
36
|
+
case $? in 0) ((count++));; 1) ((failed++));; esac
|
|
37
|
+
fi
|
|
38
|
+
((current++))
|
|
39
|
+
progress_update "$current" "$total"
|
|
40
|
+
done
|
|
41
|
+
|
|
42
|
+
progress_done "$total"
|
|
43
|
+
eval "$count_var=$count"
|
|
44
|
+
return $failed
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
install_all_ui_components() {
|
|
48
|
+
_batch_ui "install" "install" "installed_count"
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
uninstall_all_ui_components() {
|
|
52
|
+
_batch_ui "uninstall" "uninstall" "uninstalled_count"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
update_all_ui_components() {
|
|
56
|
+
_batch_ui "update" "update" "updated_count"
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
reinstall_all_ui_components() {
|
|
60
|
+
_batch_ui "reinstall" "reinstall" "reinstalled_count"
|
|
61
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Banner Configuration for Termux
|
|
2
|
+
|
|
3
|
+
Customize Termux with Omni Catalyst Banner
|
|
4
|
+
|
|
5
|
+
**Package:** omni-catalyst (banner config)
|
|
6
|
+
**Author:** israel676767
|
|
7
|
+
**Repository:** https://github.com/israel676767/omni
|
|
8
|
+
**Type:** Termux UI customization
|
|
9
|
+
**License:** MIT
|
|
10
|
+
|
|
11
|
+
## Description
|
|
12
|
+
|
|
13
|
+
Configure a custom banner for Termux using Omni Catalyst. This package allows you to set a personalized welcome message that appears when you start Termux, enhancing your terminal experience.
|
|
14
|
+
|
|
15
|
+
## Dependencies
|
|
16
|
+
|
|
17
|
+
- Termux (base installation)
|
|
18
|
+
|
|
19
|
+
## Install
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
core install ui --banner
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Uninstall
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
core uninstall ui --banner
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Update
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
core update ui --banner
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Notes
|
|
38
|
+
|
|
39
|
+
- Source file: `~/.local/share/omni/assets/banner/omni.txt`
|
|
40
|
+
- removes Termux welcome message: motd
|
|
41
|
+
- Restart Termux to apply changes
|
|
42
|
+
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_ui.log"
|
|
6
|
+
|
|
7
|
+
OMNI_BANNER_MARKER="# ===== Omni Banner ====="
|
|
8
|
+
OMNI_MOTD_BACKUP="$OMNI_CACHE/motd.backup"
|
|
9
|
+
|
|
10
|
+
_backup_motd() {
|
|
11
|
+
if [[ ! -e "$PREFIX/etc/motd" ]]; then
|
|
12
|
+
return 0
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
if [[ -e "$OMNI_MOTD_BACKUP" ]]; then
|
|
16
|
+
log_info "Termux MOTD already backed up"
|
|
17
|
+
return 0
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
log_info "Backing up Termux MOTD..."
|
|
21
|
+
mv "$PREFIX/etc/motd" "$OMNI_MOTD_BACKUP"
|
|
22
|
+
log_success "Termux MOTD backed up to $OMNI_MOTD_BACKUP"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
_restore_motd() {
|
|
26
|
+
if [[ ! -e "$OMNI_MOTD_BACKUP" ]]; then
|
|
27
|
+
return 0
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
if [[ -e "$PREFIX/etc/motd" ]]; then
|
|
31
|
+
log_warn "Termux MOTD already exists, skipping restore"
|
|
32
|
+
return 0
|
|
33
|
+
fi
|
|
34
|
+
|
|
35
|
+
log_info "Restoring Termux MOTD..."
|
|
36
|
+
mv "$OMNI_MOTD_BACKUP" "$PREFIX/etc/motd"
|
|
37
|
+
log_success "Termux MOTD restored"
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
_detect_shell_config() {
|
|
41
|
+
if [[ -f "$HOME/.zshrc" ]]; then
|
|
42
|
+
echo "$HOME/.zshrc"
|
|
43
|
+
elif [[ -f "$HOME/.bashrc" ]]; then
|
|
44
|
+
echo "$HOME/.bashrc"
|
|
45
|
+
fi
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
_install_banner_impl() {
|
|
49
|
+
local shell_config
|
|
50
|
+
shell_config="$(_detect_shell_config)"
|
|
51
|
+
|
|
52
|
+
if [[ -z "$shell_config" ]]; then
|
|
53
|
+
log_warn "No shell config file found (.zshrc or .bashrc)"
|
|
54
|
+
return 1
|
|
55
|
+
fi
|
|
56
|
+
|
|
57
|
+
if grep -qF "$OMNI_BANNER_MARKER" "$shell_config" 2>/dev/null; then
|
|
58
|
+
log_info "Omni Banner already installed"
|
|
59
|
+
return 0
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
local banner_script="$OMNI_UTILS/banner.sh"
|
|
63
|
+
if [[ ! -f "$banner_script" ]]; then
|
|
64
|
+
log_error "Banner script not found: $banner_script"
|
|
65
|
+
return 1
|
|
66
|
+
fi
|
|
67
|
+
|
|
68
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
69
|
+
|
|
70
|
+
cat >>"$shell_config" <<EOF
|
|
71
|
+
|
|
72
|
+
$OMNI_BANNER_MARKER
|
|
73
|
+
source "$banner_script"
|
|
74
|
+
EOF
|
|
75
|
+
|
|
76
|
+
log_success "Omni Banner installed"
|
|
77
|
+
|
|
78
|
+
_backup_motd
|
|
79
|
+
|
|
80
|
+
log_warn "Restart Termux or run: source $shell_config"
|
|
81
|
+
return 0
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
install_banner() {
|
|
85
|
+
if grep -qF "$OMNI_BANNER_MARKER" "$(_detect_shell_config)" 2>/dev/null; then
|
|
86
|
+
log_info "Omni Banner already installed"
|
|
87
|
+
return 0
|
|
88
|
+
fi
|
|
89
|
+
log_info "Installing Omni Banner..."
|
|
90
|
+
mkdir -p "$(dirname "$LOG_FILE")"
|
|
91
|
+
loading "Installing Banner" _install_banner_impl
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
_uninstall_banner_impl() {
|
|
95
|
+
local shell_config
|
|
96
|
+
shell_config="$(_detect_shell_config)"
|
|
97
|
+
|
|
98
|
+
if [[ -z "$shell_config" ]]; then
|
|
99
|
+
log_warn "No shell config file found"
|
|
100
|
+
return 1
|
|
101
|
+
fi
|
|
102
|
+
|
|
103
|
+
if ! grep -qF "$OMNI_BANNER_MARKER" "$shell_config" 2>/dev/null; then
|
|
104
|
+
log_warn "Omni Banner not installed"
|
|
105
|
+
return 0
|
|
106
|
+
fi
|
|
107
|
+
|
|
108
|
+
local marker_line
|
|
109
|
+
marker_line="$(grep -nF "$OMNI_BANNER_MARKER" "$shell_config" | head -1 | cut -d: -f1)"
|
|
110
|
+
|
|
111
|
+
if [[ -n "$marker_line" ]]; then
|
|
112
|
+
local prev_line=$((marker_line - 1))
|
|
113
|
+
if sed -n "${prev_line}p" "$shell_config" 2>/dev/null | grep -q '^$'; then
|
|
114
|
+
sed -i "$((prev_line)),$((marker_line + 1))d" "$shell_config"
|
|
115
|
+
else
|
|
116
|
+
sed -i "$marker_line,$((marker_line + 1))d" "$shell_config"
|
|
117
|
+
fi
|
|
118
|
+
log_success "Omni Banner uninstalled"
|
|
119
|
+
else
|
|
120
|
+
log_warn "Could not locate banner marker for removal"
|
|
121
|
+
return 1
|
|
122
|
+
fi
|
|
123
|
+
|
|
124
|
+
_restore_motd
|
|
125
|
+
|
|
126
|
+
return 0
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
uninstall_banner() {
|
|
130
|
+
if ! grep -qF "$OMNI_BANNER_MARKER" "$(_detect_shell_config)" 2>/dev/null; then
|
|
131
|
+
log_warn "Omni Banner not installed"
|
|
132
|
+
return 0
|
|
133
|
+
fi
|
|
134
|
+
log_info "Uninstalling Omni Banner..."
|
|
135
|
+
loading "Uninstalling Banner" _uninstall_banner_impl
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
_update_banner_impl() {
|
|
139
|
+
uninstall_banner
|
|
140
|
+
install_banner
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
update_banner() {
|
|
144
|
+
log_info "Updating Omni Banner..."
|
|
145
|
+
loading "Updating Banner" _update_banner_impl
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
reinstall_banner() {
|
|
149
|
+
uninstall_banner
|
|
150
|
+
install_banner
|
|
151
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Cursor Color
|
|
2
|
+
|
|
3
|
+
Customize Termux terminal cursor color
|
|
4
|
+
|
|
5
|
+
**Package:** omni-catalyst (cursor config)
|
|
6
|
+
**Author:** israel676767
|
|
7
|
+
**Repository:** https://github.com/israel676767/omni
|
|
8
|
+
**Type:** Termux UI customization
|
|
9
|
+
**License:** MIT
|
|
10
|
+
|
|
11
|
+
## Description
|
|
12
|
+
|
|
13
|
+
Configures the Termux terminal cursor color to a custom value (default: green #00FF00). This provides better cursor visibility and personalization of the Termux terminal appearance.
|
|
14
|
+
|
|
15
|
+
## Dependencies
|
|
16
|
+
|
|
17
|
+
- Termux (base installation)
|
|
18
|
+
|
|
19
|
+
## Install
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
core install ui --cursor
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Uninstall
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
core uninstall ui --cursor
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Update
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
core update ui --cursor
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Notes
|
|
38
|
+
|
|
39
|
+
- Config file: `~/.termux/colors.properties`
|
|
40
|
+
- Default cursor color: green (#00FF00)
|
|
41
|
+
- Restart Termux to apply changes
|
|
42
|
+
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
import "@/utils/log"
|
|
4
|
+
|
|
5
|
+
LOG_FILE="$OMNI_CACHE/install_ui.log"
|
|
6
|
+
TERMUX_DIR="$HOME/.termux"
|
|
7
|
+
|
|
8
|
+
_install_cursor_impl() {
|
|
9
|
+
mkdir -p "$(dirname "$LOG_FILE")" "$TERMUX_DIR"
|
|
10
|
+
|
|
11
|
+
cat >"$TERMUX_DIR/colors.properties" <<'EOF'
|
|
12
|
+
cursor=#00FF00
|
|
13
|
+
EOF
|
|
14
|
+
|
|
15
|
+
log_success "Cursor color set to #00FF00 (green)"
|
|
16
|
+
return 0
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
install_cursor() {
|
|
20
|
+
if [[ -f "$TERMUX_DIR/colors.properties" ]]; then
|
|
21
|
+
log_info "Cursor Color already configured"
|
|
22
|
+
return 0
|
|
23
|
+
fi
|
|
24
|
+
log_info "Installing Cursor Color..."
|
|
25
|
+
loading "Installing Cursor Color" _install_cursor_impl
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
_uninstall_cursor_impl() {
|
|
29
|
+
if [[ -f "$TERMUX_DIR/colors.properties" ]]; then
|
|
30
|
+
rm "$TERMUX_DIR/colors.properties"
|
|
31
|
+
log_success "Cursor Color uninstalled"
|
|
32
|
+
else
|
|
33
|
+
log_warn "Cursor Color not configured"
|
|
34
|
+
fi
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
uninstall_cursor() {
|
|
38
|
+
if [[ ! -f "$TERMUX_DIR/colors.properties" ]]; then
|
|
39
|
+
log_info "Cursor Color is not installed"
|
|
40
|
+
return 0
|
|
41
|
+
fi
|
|
42
|
+
log_info "Uninstalling Cursor Color..."
|
|
43
|
+
loading "Uninstalling Cursor Color" _uninstall_cursor_impl
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
_update_cursor_impl() {
|
|
47
|
+
install_cursor
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
update_cursor() {
|
|
51
|
+
log_info "Updating Cursor Color..."
|
|
52
|
+
loading "Updating Cursor Color" _update_cursor_impl
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
reinstall_cursor() {
|
|
56
|
+
uninstall_cursor
|
|
57
|
+
install_cursor
|
|
58
|
+
}
|