@sebastienrousseau/dotfiles 0.2.469 → 0.2.499
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/docs/ARCHITECTURE.md +62 -0
- package/docs/COMPLIANCE.md +47 -0
- package/docs/COPYRIGHT +6 -0
- package/docs/OPERATIONS.md +103 -0
- package/docs/PLAN.md +161 -0
- package/docs/PR_DESCRIPTION.md +150 -0
- package/docs/ROADMAP.md +148 -0
- package/docs/ROADMAP_legacy.md +556 -0
- package/docs/SECURITY_CHECKLIST.md +25 -0
- package/docs/TASK.md +99 -0
- package/docs/WALKTHROUGH.md +46 -0
- package/package.json +64 -76
- package/scripts/backup.sh +142 -0
- package/{dist/scripts → scripts}/banner.sh +1 -1
- package/scripts/benchmark.sh +20 -0
- package/{dist/scripts → scripts}/build.sh +1 -1
- package/{dist/scripts → scripts}/clean.sh +1 -1
- package/{dist/scripts → scripts}/compile.sh +1 -1
- package/{dist/scripts → scripts}/copy.sh +1 -1
- package/scripts/detect-collisions.py +84 -0
- package/scripts/doctor.sh +79 -0
- package/{dist/scripts → scripts}/dotfiles.sh +1 -1
- package/{dist/scripts → scripts}/download.sh +1 -1
- package/{dist/scripts → scripts}/help.sh +1 -1
- package/scripts/lock-configs.sh +57 -0
- package/scripts/package.sh +46 -0
- package/{dist/scripts → scripts}/ssh.sh +1 -1
- package/scripts/teleport.sh +23 -0
- package/scripts/test-aliases.sh +25 -0
- package/scripts/test_smoke.sh +88 -0
- package/{dist/scripts → scripts}/unpack.sh +1 -1
- package/scripts/verify_state.sh +60 -0
- package/templates/projects/go/README.md +3 -0
- package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +7 -0
- package/templates/projects/go/go.mod +3 -0
- package/templates/projects/node/README.md +3 -0
- package/templates/projects/node/package.json +10 -0
- package/templates/projects/node/src/index.js +2 -0
- package/templates/projects/python/README.md +3 -0
- package/templates/projects/python/pyproject.toml +10 -0
- package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +1 -0
- package/templates/projects/python/tests/test_basic.py +2 -0
- package/LICENSE +0 -1283
- package/README.md +0 -398
- package/dist/Makefile +0 -140
- package/dist/bin/backup.d.ts +0 -3
- package/dist/bin/backup.d.ts.map +0 -1
- package/dist/bin/backup.js +0 -4
- package/dist/bin/backup.js.map +0 -1
- package/dist/bin/constants.d.ts +0 -7
- package/dist/bin/constants.d.ts.map +0 -1
- package/dist/bin/constants.js +0 -2
- package/dist/bin/constants.js.map +0 -1
- package/dist/bin/copy.d.ts +0 -3
- package/dist/bin/copy.d.ts.map +0 -1
- package/dist/bin/copy.js +0 -3
- package/dist/bin/copy.js.map +0 -1
- package/dist/bin/dotfiles.d.ts +0 -3
- package/dist/bin/dotfiles.d.ts.map +0 -1
- package/dist/bin/dotfiles.js +0 -2
- package/dist/bin/dotfiles.js.map +0 -1
- package/dist/bin/download.d.ts +0 -3
- package/dist/bin/download.d.ts.map +0 -1
- package/dist/bin/download.js +0 -2
- package/dist/bin/download.js.map +0 -1
- package/dist/bin/index.d.ts +0 -2
- package/dist/bin/index.d.ts.map +0 -1
- package/dist/bin/index.js +0 -1
- package/dist/bin/index.js.map +0 -1
- package/dist/bin/transfer.d.ts +0 -3
- package/dist/bin/transfer.d.ts.map +0 -1
- package/dist/bin/transfer.js +0 -4
- package/dist/bin/transfer.js.map +0 -1
- package/dist/bin/unpack.d.ts +0 -3
- package/dist/bin/unpack.d.ts.map +0 -1
- package/dist/bin/unpack.js +0 -3
- package/dist/bin/unpack.js.map +0 -1
- package/dist/filesizes.txt +0 -382
- package/dist/lib/README.md +0 -86
- package/dist/lib/aliases/README.md +0 -57
- package/dist/lib/aliases/archives/README.md +0 -145
- package/dist/lib/aliases/archives/archives.aliases.sh +0 -114
- package/dist/lib/aliases/cd/README.md +0 -146
- package/dist/lib/aliases/cd/cd.aliases.sh +0 -51
- package/dist/lib/aliases/chmod/README.md +0 -160
- package/dist/lib/aliases/chmod/chmod.aliases.sh +0 -107
- package/dist/lib/aliases/clear/README.md +0 -37
- package/dist/lib/aliases/clear/clear.aliases.sh +0 -71
- package/dist/lib/aliases/configuration/README.md +0 -39
- package/dist/lib/aliases/configuration/configuration.aliases.sh +0 -70
- package/dist/lib/aliases/default/README.md +0 -40
- package/dist/lib/aliases/default/default.aliases.sh +0 -139
- package/dist/lib/aliases/dig/README.md +0 -37
- package/dist/lib/aliases/dig/dig.aliases.sh +0 -43
- package/dist/lib/aliases/disk-usage/README.md +0 -36
- package/dist/lib/aliases/disk-usage/du.aliases.sh +0 -84
- package/dist/lib/aliases/editor/README.md +0 -53
- package/dist/lib/aliases/editor/editor.aliases.sh +0 -26
- package/dist/lib/aliases/find/README.md +0 -46
- package/dist/lib/aliases/find/find.aliases.sh +0 -60
- package/dist/lib/aliases/gcloud/README.md +0 -63
- package/dist/lib/aliases/gcloud/gcloud.aliases.sh +0 -335
- package/dist/lib/aliases/git/README.md +0 -153
- package/dist/lib/aliases/git/git.aliases.sh +0 -544
- package/dist/lib/aliases/gnu/README.md +0 -89
- package/dist/lib/aliases/gnu/gnucoreutils-aliases.sh +0 -150
- package/dist/lib/aliases/heroku/README.md +0 -430
- package/dist/lib/aliases/heroku/heroku.aliases.sh +0 -1053
- package/dist/lib/aliases/interactive/README.md +0 -55
- package/dist/lib/aliases/interactive/interactive.aliases.sh +0 -50
- package/dist/lib/aliases/list/README.md +0 -131
- package/dist/lib/aliases/list/list.aliases.sh +0 -132
- package/dist/lib/aliases/macOS/README.md +0 -42
- package/dist/lib/aliases/macOS/macos.aliases.sh +0 -65
- package/dist/lib/aliases/make/README.md +0 -32
- package/dist/lib/aliases/make/make.aliases.sh +0 -35
- package/dist/lib/aliases/mkdir/README.md +0 -30
- package/dist/lib/aliases/mkdir/mkdir.aliases.sh +0 -29
- package/dist/lib/aliases/npm/README.md +0 -41
- package/dist/lib/aliases/npm/npm.aliases.sh +0 -61
- package/dist/lib/aliases/permission/README.md +0 -47
- package/dist/lib/aliases/permission/permission.aliases.sh +0 -73
- package/dist/lib/aliases/pnpm/README.md +0 -53
- package/dist/lib/aliases/pnpm/pnpm.aliases.sh +0 -76
- package/dist/lib/aliases/ps/README.md +0 -29
- package/dist/lib/aliases/ps/ps.aliases.sh +0 -20
- package/dist/lib/aliases/python/python.aliases.sh +0 -141
- package/dist/lib/aliases/rsync/README.md +0 -25
- package/dist/lib/aliases/rsync/rsync.aliases.sh +0 -17
- package/dist/lib/aliases/rust/README.md +0 -182
- package/dist/lib/aliases/rust/rust.aliases.sh +0 -119
- package/dist/lib/aliases/subversion/README.md +0 -66
- package/dist/lib/aliases/subversion/subversion.aliases.sh +0 -47
- package/dist/lib/aliases/sudo/README.md +0 -27
- package/dist/lib/aliases/sudo/sudo.aliases.sh +0 -20
- package/dist/lib/aliases/tmux/README.md +0 -31
- package/dist/lib/aliases/tmux/tmux.aliases.sh +0 -36
- package/dist/lib/aliases/update/README.md +0 -38
- package/dist/lib/aliases/update/update.aliases.sh +0 -310
- package/dist/lib/aliases/uuid/README.md +0 -24
- package/dist/lib/aliases/uuid/uuid.aliases.sh +0 -19
- package/dist/lib/aliases/wget/README.md +0 -27
- package/dist/lib/aliases/wget/wget.aliases.sh +0 -22
- package/dist/lib/aliases.sh +0 -50
- package/dist/lib/configurations/README.md +0 -18
- package/dist/lib/configurations/bash/bashrc +0 -167
- package/dist/lib/configurations/curl/cacert.pem +0 -3460
- package/dist/lib/configurations/curl/curlrc +0 -53
- package/dist/lib/configurations/default/color.sh +0 -24
- package/dist/lib/configurations/default/constants.sh +0 -43
- package/dist/lib/configurations/default/editor.sh +0 -18
- package/dist/lib/configurations/default/prompt.sh +0 -48
- package/dist/lib/configurations/gem/gemrc +0 -9
- package/dist/lib/configurations/input/inputrc +0 -23
- package/dist/lib/configurations/jshint/jshintrc +0 -37
- package/dist/lib/configurations/nano/nanorc +0 -35
- package/dist/lib/configurations/profile/profile +0 -37
- package/dist/lib/configurations/prompt/prompt.sh +0 -81
- package/dist/lib/configurations/tmux/default +0 -18
- package/dist/lib/configurations/tmux/display +0 -30
- package/dist/lib/configurations/tmux/linux +0 -18
- package/dist/lib/configurations/tmux/navigation +0 -30
- package/dist/lib/configurations/tmux/panes +0 -10
- package/dist/lib/configurations/tmux/theme +0 -29
- package/dist/lib/configurations/tmux/tmux +0 -21
- package/dist/lib/configurations/vim/vimrc +0 -193
- package/dist/lib/configurations/wget/wgetrc +0 -40
- package/dist/lib/configurations/zsh/zshrc +0 -50
- package/dist/lib/configurations.sh +0 -45
- package/dist/lib/functions/README.md +0 -92
- package/dist/lib/functions/apihealth.sh +0 -277
- package/dist/lib/functions/apilatency.sh +0 -157
- package/dist/lib/functions/apiload.sh +0 -165
- package/dist/lib/functions/backup.sh +0 -143
- package/dist/lib/functions/cdls.sh +0 -60
- package/dist/lib/functions/curlheader.sh +0 -78
- package/dist/lib/functions/curlstatus.sh +0 -74
- package/dist/lib/functions/curltime.sh +0 -75
- package/dist/lib/functions/encode64.sh +0 -107
- package/dist/lib/functions/environment.sh +0 -78
- package/dist/lib/functions/extract.sh +0 -86
- package/dist/lib/functions/freespace.sh +0 -67
- package/dist/lib/functions/genpwd.sh +0 -105
- package/dist/lib/functions/goto.sh +0 -67
- package/dist/lib/functions/hexdump.sh +0 -96
- package/dist/lib/functions/hiddenfiles.sh +0 -77
- package/dist/lib/functions/hostinfo.sh +0 -98
- package/dist/lib/functions/hstats.sh +0 -75
- package/dist/lib/functions/httpdebug.sh +0 -113
- package/dist/lib/functions/kebabcase.sh +0 -61
- package/dist/lib/functions/keygen.sh +0 -194
- package/dist/lib/functions/last.sh +0 -112
- package/dist/lib/functions/logout.sh +0 -120
- package/dist/lib/functions/lowercase.sh +0 -61
- package/dist/lib/functions/matrix.sh +0 -216
- package/dist/lib/functions/mount_read_only.sh +0 -11
- package/dist/lib/functions/myproc.sh +0 -9
- package/dist/lib/functions/prependpath.sh +0 -21
- package/dist/lib/functions/ql.sh +0 -9
- package/dist/lib/functions/rd.sh +0 -17
- package/dist/lib/functions/remove_disk.sh +0 -11
- package/dist/lib/functions/ren.sh +0 -73
- package/dist/lib/functions/sentencecase.sh +0 -63
- package/dist/lib/functions/showhiddenfiles.sh +0 -14
- package/dist/lib/functions/size.sh +0 -16
- package/dist/lib/functions/snakecase.sh +0 -61
- package/dist/lib/functions/stopwatch.sh +0 -15
- package/dist/lib/functions/sysinfo.sh +0 -145
- package/dist/lib/functions/titlecase.sh +0 -65
- package/dist/lib/functions/uppercase.sh +0 -61
- package/dist/lib/functions/view-source.sh +0 -9
- package/dist/lib/functions/vscode.sh +0 -32
- package/dist/lib/functions/whoisport.sh +0 -14
- package/dist/lib/functions/zipf.sh +0 -16
- package/dist/lib/functions.sh +0 -46
- package/dist/lib/history.sh +0 -90
- package/dist/lib/paths/README.md +0 -52
- package/dist/lib/paths/custom.paths.sh +0 -40
- package/dist/lib/paths/default.paths.sh +0 -37
- package/dist/lib/paths.sh +0 -46
- package/dist/scripts/backup.sh +0 -95
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
################################################################################
|
|
4
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - Matrix Effect Generator (matrix)
|
|
5
|
-
# Made with ♥ by Sebastien Rousseau
|
|
6
|
-
# License: MIT
|
|
7
|
-
#
|
|
8
|
-
# Description:
|
|
9
|
-
# matrix is a utility function to generate Matrix-style effects in the terminal
|
|
10
|
-
# with customizable colors. It supports multiple color themes and a rainbow
|
|
11
|
-
# effect option.
|
|
12
|
-
#
|
|
13
|
-
################################################################################
|
|
14
|
-
|
|
15
|
-
# Define colors
|
|
16
|
-
MATRIX_GREEN='\033[38;5;46m' # Green (#00FF00)
|
|
17
|
-
MATRIX_PURPLE='\033[38;5;55m' # Purple (#2D1681)
|
|
18
|
-
MATRIX_RED='\033[38;5;196m' # Red (#EB0000)
|
|
19
|
-
MATRIX_BLUE='\033[38;5;33m' # Blue (#007ACC)
|
|
20
|
-
MATRIX_WHITE='\033[38;5;15m' # White (#FFFFFF)
|
|
21
|
-
MATRIX_YELLOW='\033[38;5;226m' # Yellow
|
|
22
|
-
RESET_COLOR='\033[0m'
|
|
23
|
-
|
|
24
|
-
VERSION="1.0.0"
|
|
25
|
-
|
|
26
|
-
# Logging functions
|
|
27
|
-
log_info() {
|
|
28
|
-
echo "[INFO] $*"
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
log_warning() {
|
|
32
|
-
echo "[WARNING] $*" >&2
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
log_error() {
|
|
36
|
-
echo "[ERROR] $*" >&2
|
|
37
|
-
exit 1
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
show_help() {
|
|
41
|
-
cat << 'EOH'
|
|
42
|
-
🅳🅾🆃🅵🅸🅻🅴🆂 - Matrix Effect Generator (matrix)
|
|
43
|
-
|
|
44
|
-
Description:
|
|
45
|
-
Generate Matrix-style effects in the terminal with customizable colors.
|
|
46
|
-
Supports multiple color themes and a rainbow effect option.
|
|
47
|
-
|
|
48
|
-
Usage:
|
|
49
|
-
matrix [options]
|
|
50
|
-
matrix --help
|
|
51
|
-
|
|
52
|
-
Options:
|
|
53
|
-
--color <name> Select color theme:
|
|
54
|
-
green - Classic green (default)
|
|
55
|
-
purple - Purple (#2D1681)
|
|
56
|
-
red - Red (#EB0000)
|
|
57
|
-
blue - Blue (#007ACC)
|
|
58
|
-
white - White (#FFFFFF)
|
|
59
|
-
yellow - Yellow
|
|
60
|
-
--rainbow Enable rainbow color effect
|
|
61
|
-
--slow Reduce animation speed
|
|
62
|
-
--fast Increase animation speed
|
|
63
|
-
--help Display this help menu and exit
|
|
64
|
-
--version Display version information and exit
|
|
65
|
-
|
|
66
|
-
Examples:
|
|
67
|
-
matrix
|
|
68
|
-
# Classic green Matrix effect
|
|
69
|
-
|
|
70
|
-
matrix --color purple
|
|
71
|
-
# Purple Matrix effect
|
|
72
|
-
|
|
73
|
-
matrix --rainbow
|
|
74
|
-
# Rainbow color effect
|
|
75
|
-
|
|
76
|
-
matrix --color blue --slow
|
|
77
|
-
# Slow blue Matrix effect
|
|
78
|
-
|
|
79
|
-
Notes:
|
|
80
|
-
- Press Ctrl+C to exit
|
|
81
|
-
- Animation speed can be adjusted with --slow or --fast
|
|
82
|
-
- Terminal size is automatically detected
|
|
83
|
-
- Minimum terminal size required: 20x10
|
|
84
|
-
- Colors can be customized by modifying the color variables
|
|
85
|
-
EOH
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
show_version() {
|
|
89
|
-
echo "Matrix Effect Generator v${VERSION}"
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
cleanup() {
|
|
93
|
-
printf '\e[?25h' # Show cursor
|
|
94
|
-
tput rmcup # Restore screen
|
|
95
|
-
tput cnorm # Show cursor
|
|
96
|
-
clear
|
|
97
|
-
exit 0
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
matrix() {
|
|
101
|
-
# Check for help and version flags before parsing options
|
|
102
|
-
if [[ "$1" == "--help" ]]; then
|
|
103
|
-
show_help
|
|
104
|
-
return 0
|
|
105
|
-
elif [[ "$1" == "--version" ]]; then
|
|
106
|
-
show_version
|
|
107
|
-
return 0
|
|
108
|
-
fi
|
|
109
|
-
|
|
110
|
-
# Check terminal size
|
|
111
|
-
if [[ "${LINES:-0}" -lt 10 || "${COLUMNS:-0}" -lt 20 ]]; then
|
|
112
|
-
log_error "Terminal window too small. Minimum size: 20x10"
|
|
113
|
-
fi
|
|
114
|
-
|
|
115
|
-
# Default settings
|
|
116
|
-
local color="$MATRIX_GREEN"
|
|
117
|
-
local speed=0.05
|
|
118
|
-
local rainbow=false
|
|
119
|
-
|
|
120
|
-
# Parse options
|
|
121
|
-
while [[ $# -gt 0 ]]; do
|
|
122
|
-
case "$1" in
|
|
123
|
-
--color)
|
|
124
|
-
case "$2" in
|
|
125
|
-
green) color="$MATRIX_GREEN" ;;
|
|
126
|
-
purple) color="$MATRIX_PURPLE" ;;
|
|
127
|
-
red) color="$MATRIX_RED" ;;
|
|
128
|
-
blue) color="$MATRIX_BLUE" ;;
|
|
129
|
-
white) color="$MATRIX_WHITE" ;;
|
|
130
|
-
yellow) color="$MATRIX_YELLOW" ;;
|
|
131
|
-
*) log_error "Invalid color: '$2'. Use 'matrix --help' for available colors." ;;
|
|
132
|
-
esac
|
|
133
|
-
shift 2
|
|
134
|
-
;;
|
|
135
|
-
--rainbow)
|
|
136
|
-
rainbow=true
|
|
137
|
-
shift
|
|
138
|
-
;;
|
|
139
|
-
--slow)
|
|
140
|
-
speed=0.1
|
|
141
|
-
shift
|
|
142
|
-
;;
|
|
143
|
-
--fast)
|
|
144
|
-
speed=0.02
|
|
145
|
-
shift
|
|
146
|
-
;;
|
|
147
|
-
--help)
|
|
148
|
-
show_help
|
|
149
|
-
return 0
|
|
150
|
-
;;
|
|
151
|
-
--version)
|
|
152
|
-
show_version
|
|
153
|
-
return 0
|
|
154
|
-
;;
|
|
155
|
-
*)
|
|
156
|
-
log_error "Unknown option: '$1'. Use 'matrix --help' for usage information."
|
|
157
|
-
;;
|
|
158
|
-
esac
|
|
159
|
-
done
|
|
160
|
-
|
|
161
|
-
# Save screen state and hide cursor
|
|
162
|
-
tput smcup
|
|
163
|
-
printf '\e[?25l'
|
|
164
|
-
printf '\e[1;40m'
|
|
165
|
-
clear
|
|
166
|
-
|
|
167
|
-
# Trap cleanup for exit signals
|
|
168
|
-
trap cleanup INT TERM EXIT
|
|
169
|
-
|
|
170
|
-
if $rainbow; then
|
|
171
|
-
# Rainbow effect
|
|
172
|
-
while true; do
|
|
173
|
-
echo "${LINES:-40} ${COLUMNS:-80} $((RANDOM % COLUMNS)) $((RANDOM % 72))"
|
|
174
|
-
sleep "$speed"
|
|
175
|
-
done | awk -v reset="$RESET_COLOR" '
|
|
176
|
-
{
|
|
177
|
-
letters="日ハミヒーウシナミニサワツオリアホテマケメエカキムユラセネスタヌヘ";
|
|
178
|
-
c=$4;
|
|
179
|
-
if (c <= 0 || c > length(letters)) next;
|
|
180
|
-
letter=substr(letters, c, 1);
|
|
181
|
-
a[$3] = 0;
|
|
182
|
-
for (x in a) {
|
|
183
|
-
o = a[x];
|
|
184
|
-
a[x] = a[x] + 1;
|
|
185
|
-
random_color = "\033[38;5;" int(rand() * 255) "m";
|
|
186
|
-
if (o > 0 && x > 0) {
|
|
187
|
-
printf "\033[%s;%sH%s%s%s", o, x, random_color, letter, reset;
|
|
188
|
-
printf "\033[%s;%sH%s%s%s", a[x], x, reset, letter, reset;
|
|
189
|
-
}
|
|
190
|
-
if (a[x] >= $1) a[x] = 0;
|
|
191
|
-
}
|
|
192
|
-
}'
|
|
193
|
-
else
|
|
194
|
-
# Single color effect
|
|
195
|
-
while true; do
|
|
196
|
-
echo "${LINES:-40} ${COLUMNS:-80} $((RANDOM % COLUMNS)) $((RANDOM % 72))"
|
|
197
|
-
sleep "$speed"
|
|
198
|
-
done | awk -v color="$color" -v reset="$RESET_COLOR" '
|
|
199
|
-
{
|
|
200
|
-
letters="日ハミヒーウシナミニサワツオリアホテマケメエカキムユラセネスタヌヘ";
|
|
201
|
-
c=$4;
|
|
202
|
-
if (c <= 0 || c > length(letters)) next;
|
|
203
|
-
letter=substr(letters, c, 1);
|
|
204
|
-
a[$3] = 0;
|
|
205
|
-
for (x in a) {
|
|
206
|
-
o = a[x];
|
|
207
|
-
a[x] = a[x] + 1;
|
|
208
|
-
if (o > 0 && x > 0) {
|
|
209
|
-
printf "\033[%s;%sH%s%s%s", o, x, color, letter, reset;
|
|
210
|
-
printf "\033[%s;%sH%s%s%s", a[x], x, reset, letter, reset;
|
|
211
|
-
}
|
|
212
|
-
if (a[x] >= $1) a[x] = 0;
|
|
213
|
-
}
|
|
214
|
-
}'
|
|
215
|
-
fi
|
|
216
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# mount_read_only: Function to mount a read-only disk image as read-write
|
|
9
|
-
mount_read_only() {
|
|
10
|
-
hdiutil attach "$1" -shadow /tmp/"$1".shadow -noverify
|
|
11
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# myproc: Function to list processes owned by an user
|
|
9
|
-
myproc() { ps "$@" -u "${USER}" -o pid,%cpu,%mem,start,time,command; }
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# ----------------------------------------------------------------------------
|
|
9
|
-
# 1.0 Setting PATH environments.
|
|
10
|
-
# ----------------------------------------------------------------------------
|
|
11
|
-
|
|
12
|
-
## ----------------------------------------------------------------------------
|
|
13
|
-
## 1.1 Prepend $PATH without duplicates.
|
|
14
|
-
## ----------------------------------------------------------------------------
|
|
15
|
-
|
|
16
|
-
# prependpath: Prepend $PATH without duplicates
|
|
17
|
-
prependpath() {
|
|
18
|
-
if ! echo "${PATH}" | tr ":" "\n" | grep -qx "$1"; then
|
|
19
|
-
PATH="$1:${PATH}"
|
|
20
|
-
fi
|
|
21
|
-
}
|
package/dist/lib/functions/ql.sh
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# ql: Function to open any file in MacOS Quicklook Preview
|
|
9
|
-
ql() { qlmanage -p "$*" >&/dev/null; }
|
package/dist/lib/functions/rd.sh
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# rd: Function to remove a directory and its files
|
|
9
|
-
rd() {
|
|
10
|
-
if [[ "$#" != 1 ]]; then
|
|
11
|
-
echo "[ERROR] Please add one argument" >&2
|
|
12
|
-
return 1
|
|
13
|
-
fi
|
|
14
|
-
echo "[INFO] The operation completed successfully, directory listing of $1:"
|
|
15
|
-
rm -rf "$1" || exit
|
|
16
|
-
ls -lh
|
|
17
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# remove_disk: spin down unneeded disk
|
|
9
|
-
remove_disk() {
|
|
10
|
-
diskutil eject "$1"
|
|
11
|
-
}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
################################################################################
|
|
4
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - File Extension Renamer (ren)
|
|
5
|
-
# Made with ♥ by Sebastien Rousseau
|
|
6
|
-
# License: MIT
|
|
7
|
-
#
|
|
8
|
-
# Description:
|
|
9
|
-
# ren is a utility function to rename file extensions in the current directory.
|
|
10
|
-
# It supports batch renaming with confirmation.
|
|
11
|
-
#
|
|
12
|
-
# Usage:
|
|
13
|
-
# ren OLD_EXT NEW_EXT
|
|
14
|
-
#
|
|
15
|
-
# Example:
|
|
16
|
-
# ren txt md # Rename all .txt files to .md
|
|
17
|
-
#
|
|
18
|
-
################################################################################
|
|
19
|
-
|
|
20
|
-
ren() {
|
|
21
|
-
# Check if we have both arguments
|
|
22
|
-
if [[ $# -ne 2 ]]; then
|
|
23
|
-
echo "[ERROR] Usage: ren OLD_EXT NEW_EXT" >&2
|
|
24
|
-
return 1
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
local old_ext="$1"
|
|
28
|
-
local new_ext="$2"
|
|
29
|
-
local count=0
|
|
30
|
-
|
|
31
|
-
# First check if any matching files exist
|
|
32
|
-
for file in *."$old_ext"; do
|
|
33
|
-
# Skip if no matches found
|
|
34
|
-
[[ -e "$file" ]] || {
|
|
35
|
-
echo "[WARNING] No files found with extension .$old_ext"
|
|
36
|
-
return 0
|
|
37
|
-
}
|
|
38
|
-
((count++))
|
|
39
|
-
break
|
|
40
|
-
done
|
|
41
|
-
|
|
42
|
-
# Show what we're about to do
|
|
43
|
-
echo "[INFO] Found files with .$old_ext extension. Converting to .$new_ext"
|
|
44
|
-
echo "[INFO] The following files will be renamed:"
|
|
45
|
-
for file in *."$old_ext"; do
|
|
46
|
-
echo " $file → ${file%."$old_ext"}.$new_ext"
|
|
47
|
-
done
|
|
48
|
-
|
|
49
|
-
# Ask for confirmation
|
|
50
|
-
echo -n "Proceed with rename? [y/N] "
|
|
51
|
-
read -r response
|
|
52
|
-
if [[ ! "${response}" =~ ^[Yy]$ ]]; then
|
|
53
|
-
echo "[INFO] Operation cancelled"
|
|
54
|
-
return 0
|
|
55
|
-
fi
|
|
56
|
-
|
|
57
|
-
# Perform the rename
|
|
58
|
-
local success=0
|
|
59
|
-
local failed=0
|
|
60
|
-
for file in *."$old_ext"; do
|
|
61
|
-
if mv "$file" "${file%."$old_ext"}.$new_ext"; then
|
|
62
|
-
echo "[SUCCESS] Renamed: $file → ${file%."$old_ext"}.$new_ext"
|
|
63
|
-
((success++))
|
|
64
|
-
else
|
|
65
|
-
echo "[ERROR] Failed to rename: $file" >&2
|
|
66
|
-
((failed++))
|
|
67
|
-
fi
|
|
68
|
-
done
|
|
69
|
-
|
|
70
|
-
# Show summary
|
|
71
|
-
echo "----------------------------------------"
|
|
72
|
-
echo "[COMPLETE] Successfully renamed: $success, Failed: $failed"
|
|
73
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
################################################################################
|
|
4
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - Cross-Platform Sentencecase Utility (sentencecase)
|
|
5
|
-
# Made with ♥ by Sebastien Rousseau
|
|
6
|
-
# License: MIT
|
|
7
|
-
#
|
|
8
|
-
# Description:
|
|
9
|
-
# sentencecase converts file or directory names to sentence case. It capitalizes
|
|
10
|
-
# the first character of the first word, while the rest of the characters are
|
|
11
|
-
# lowercased. This is different from title case, as only the very first letter
|
|
12
|
-
# is capitalized.
|
|
13
|
-
#
|
|
14
|
-
# Usage:
|
|
15
|
-
# sentencecase <file_or_directory> [<file_or_directory> ...]
|
|
16
|
-
#
|
|
17
|
-
# Arguments:
|
|
18
|
-
# <file_or_directory> One or more file or directory paths to rename
|
|
19
|
-
# to sentence case.
|
|
20
|
-
#
|
|
21
|
-
# Notes:
|
|
22
|
-
# - Already sentence case files are skipped.
|
|
23
|
-
# - Non-existent paths will produce an error message.
|
|
24
|
-
# - Complex scenarios (multiple words, punctuation) are handled by simply
|
|
25
|
-
# making all letters lowercase except the first character.
|
|
26
|
-
#
|
|
27
|
-
################################################################################
|
|
28
|
-
|
|
29
|
-
sentencecase() {
|
|
30
|
-
if [[ "$#" -lt 1 ]]; then
|
|
31
|
-
echo "[ERROR] Please provide at least one file or directory to convert to sentence case." >&2
|
|
32
|
-
return 1
|
|
33
|
-
fi
|
|
34
|
-
|
|
35
|
-
for file in "$@"; do
|
|
36
|
-
if [[ ! -e "$file" ]]; then
|
|
37
|
-
echo "[ERROR] The file or directory '$file' does not exist." >&2
|
|
38
|
-
continue
|
|
39
|
-
fi
|
|
40
|
-
|
|
41
|
-
dirname=$(dirname "$file")
|
|
42
|
-
filename=$(basename "$file")
|
|
43
|
-
|
|
44
|
-
# Convert filename to lowercase
|
|
45
|
-
lc_filename=$(printf "%s" "$filename" | tr '[:upper:]' '[:lower:]')
|
|
46
|
-
|
|
47
|
-
# Capitalize only the first character
|
|
48
|
-
sc_filename="$(printf "%s" "${lc_filename:0:1}" | tr '[:lower:]' '[:upper:]')${lc_filename:1}"
|
|
49
|
-
|
|
50
|
-
# If already sentence case, skip
|
|
51
|
-
if [[ "$filename" == "$sc_filename" ]]; then
|
|
52
|
-
echo "[INFO] '$file' is already in sentence case."
|
|
53
|
-
continue
|
|
54
|
-
fi
|
|
55
|
-
|
|
56
|
-
newname="${dirname}/${sc_filename}"
|
|
57
|
-
if mv "$file" "$newname"; then
|
|
58
|
-
echo "[INFO] Renamed '$file' to '$newname'."
|
|
59
|
-
else
|
|
60
|
-
echo "[ERROR] Failed to rename '$file'." >&2
|
|
61
|
-
fi
|
|
62
|
-
done
|
|
63
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# Show hidden system and dotfile files
|
|
9
|
-
showhiddenfiles() {
|
|
10
|
-
defaults write com.apple.Finder AppleShowAllFiles YES
|
|
11
|
-
osascript -e 'tell application "Finder" to quit'
|
|
12
|
-
sleep 0.25
|
|
13
|
-
osascript -e 'tell application "Finder" to activate'
|
|
14
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - size
|
|
4
|
-
# Made with ♥ by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# size: Function to check a file size
|
|
9
|
-
size() {
|
|
10
|
-
if [[ "$#" != 1 ]]; then
|
|
11
|
-
echo "[ERROR] Please add one argument (file or directory)" >&2
|
|
12
|
-
return 1
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
stat -f '[INFO] Directory total size: %z bytes' "$1"
|
|
16
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
################################################################################
|
|
4
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - Cross-Platform Snakecase Utility (snakecase)
|
|
5
|
-
# Made with ♥ by Sebastien Rousseau
|
|
6
|
-
# License: MIT
|
|
7
|
-
#
|
|
8
|
-
# Description:
|
|
9
|
-
# snakecase converts file or directory names to snake_case. All letters
|
|
10
|
-
# are lowercase and spaces or other non-alphanumeric characters are replaced
|
|
11
|
-
# by underscores.
|
|
12
|
-
#
|
|
13
|
-
# Usage:
|
|
14
|
-
# snakecase <file_or_directory> [<file_or_directory> ...]
|
|
15
|
-
#
|
|
16
|
-
# Arguments:
|
|
17
|
-
# <file_or_directory> One or more file or directory paths to rename
|
|
18
|
-
# to snake_case.
|
|
19
|
-
#
|
|
20
|
-
# Notes:
|
|
21
|
-
# - Already snake_case files are skipped.
|
|
22
|
-
# - Non-existent paths will produce an error message.
|
|
23
|
-
# - Special characters (other than alphanumeric and '.') are replaced
|
|
24
|
-
# with underscores.
|
|
25
|
-
#
|
|
26
|
-
################################################################################
|
|
27
|
-
|
|
28
|
-
snakecase() {
|
|
29
|
-
if [[ "$#" -lt 1 ]]; then
|
|
30
|
-
echo "[ERROR] Please provide at least one file or directory to convert to snake_case." >&2
|
|
31
|
-
return 1
|
|
32
|
-
fi
|
|
33
|
-
|
|
34
|
-
for file in "$@"; do
|
|
35
|
-
if [[ ! -e "$file" ]]; then
|
|
36
|
-
echo "[ERROR] The file or directory '$file' does not exist." >&2
|
|
37
|
-
continue
|
|
38
|
-
fi
|
|
39
|
-
|
|
40
|
-
dirname=$(dirname "$file")
|
|
41
|
-
filename=$(basename "$file")
|
|
42
|
-
|
|
43
|
-
# Convert to lowercase and replace non-alphanumeric chars (except '.') with underscores
|
|
44
|
-
sc_filename=$(printf "%s" "$filename" \
|
|
45
|
-
| tr '[:upper:]' '[:lower:]' \
|
|
46
|
-
| sed 's/[^[:alnum:].]/_/g')
|
|
47
|
-
|
|
48
|
-
# If already snake_case, skip
|
|
49
|
-
if [[ "$filename" == "$sc_filename" ]]; then
|
|
50
|
-
echo "[INFO] '$file' is already in snake_case."
|
|
51
|
-
continue
|
|
52
|
-
fi
|
|
53
|
-
|
|
54
|
-
newname="${dirname}/${sc_filename}"
|
|
55
|
-
if mv "$file" "$newname"; then
|
|
56
|
-
echo "[INFO] Renamed '$file' to '$newname'."
|
|
57
|
-
else
|
|
58
|
-
echo "[ERROR] Failed to rename '$file'." >&2
|
|
59
|
-
fi
|
|
60
|
-
done
|
|
61
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.469) - <https://dotfiles.io>
|
|
4
|
-
# Made with ♥ in London, UK by Sebastien Rousseau
|
|
5
|
-
# Copyright (c) 2015-2025. All rights reserved
|
|
6
|
-
# License: MIT
|
|
7
|
-
|
|
8
|
-
# stopwatch: Function for a stopwatch
|
|
9
|
-
stopwatch() {
|
|
10
|
-
date1=$(gdate +%s)
|
|
11
|
-
while true; do
|
|
12
|
-
echo -ne "$(gdate -u --date @$(($(date +%s) - date1)) +%H:%M:%S || true)\r"
|
|
13
|
-
sleep 0.1
|
|
14
|
-
done
|
|
15
|
-
}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
################################################################################
|
|
3
|
-
# 🅳🅾🆃🅵🅸🅻🅴🆂 - sysinfo
|
|
4
|
-
# Made with ♥ by Sebastien Rousseau
|
|
5
|
-
# License: MIT
|
|
6
|
-
#
|
|
7
|
-
# sysinfo - A minimal system information script with emoji OS icons.
|
|
8
|
-
#
|
|
9
|
-
# This script displays basic system information in a style similar to neofetch,
|
|
10
|
-
# but simpler. It attempts to detect OS, CPU, GPU, memory, etc.
|
|
11
|
-
#
|
|
12
|
-
# Usage:
|
|
13
|
-
# sysinfo
|
|
14
|
-
#
|
|
15
|
-
################################################################################
|
|
16
|
-
|
|
17
|
-
#-------------------------------#
|
|
18
|
-
# Color Variables #
|
|
19
|
-
#-------------------------------#
|
|
20
|
-
GREEN='\033[0;32m'
|
|
21
|
-
RESET='\033[0m'
|
|
22
|
-
|
|
23
|
-
#######################################
|
|
24
|
-
# Detect platform and choose an emoji.
|
|
25
|
-
#######################################
|
|
26
|
-
case "$(uname -s)" in
|
|
27
|
-
Darwin)
|
|
28
|
-
emoji="🍎"
|
|
29
|
-
;;
|
|
30
|
-
Linux)
|
|
31
|
-
emoji="🐧"
|
|
32
|
-
;;
|
|
33
|
-
CYGWIN*|MINGW*|MSYS*)
|
|
34
|
-
emoji="🪟"
|
|
35
|
-
;;
|
|
36
|
-
*)
|
|
37
|
-
emoji="🖥"
|
|
38
|
-
;;
|
|
39
|
-
esac
|
|
40
|
-
|
|
41
|
-
hostname=$(hostname)
|
|
42
|
-
|
|
43
|
-
#######################################
|
|
44
|
-
# Collect system information depending on OS.
|
|
45
|
-
#######################################
|
|
46
|
-
if [[ "$(uname -s)" = "Darwin" ]]; then
|
|
47
|
-
hw_info=$(system_profiler SPHardwareDataType)
|
|
48
|
-
disp_info=$(system_profiler SPDisplaysDataType)
|
|
49
|
-
|
|
50
|
-
model_name=$(echo "${hw_info}" | awk -F': ' '/Model Name/{print $2}')
|
|
51
|
-
model_id=$(echo "${hw_info}" | awk -F': ' '/Model Identifier/{print $2}')
|
|
52
|
-
chip=$(echo "${hw_info}" | awk -F': ' '/Chip/{print $2}')
|
|
53
|
-
total_cores=$(echo "${hw_info}" | awk -F': ' '/Total Number of Cores/{print $2}')
|
|
54
|
-
mem=$(echo "${hw_info}" | awk -F': ' '/Memory/{print $2}')
|
|
55
|
-
|
|
56
|
-
os="macOS $(sw_vers -productVersion)"
|
|
57
|
-
kernel=$(uname -r)
|
|
58
|
-
uptime=$(uptime | sed 's/.*up //' | sed 's/, .*//')
|
|
59
|
-
cpu="$chip ($total_cores cores)"
|
|
60
|
-
gpu=$(echo "${disp_info}" | awk -F': ' '/Chipset Model/ {print $2; exit}')
|
|
61
|
-
resolution=$(echo "${disp_info}" | awk -F': ' '/Resolution/{print $2}' | head -n1)
|
|
62
|
-
shell=$(basename "${SHELL}")
|
|
63
|
-
|
|
64
|
-
terminal=${TERM_PROGRAM:-"${TERM}"}
|
|
65
|
-
memory="${mem}"
|
|
66
|
-
|
|
67
|
-
elif [[ "$(uname -s)" = "Linux" ]]; then
|
|
68
|
-
# OS
|
|
69
|
-
if [ -f /etc/os-release ]; then
|
|
70
|
-
os=$(awk -F= '/^PRETTY_NAME/{print $2}' /etc/os-release 2>/dev/null | tr -d \")
|
|
71
|
-
else
|
|
72
|
-
os=$(uname -s)
|
|
73
|
-
fi
|
|
74
|
-
|
|
75
|
-
kernel=$(uname -r)
|
|
76
|
-
uptime=$(uptime -p | sed 's/up //')
|
|
77
|
-
shell=$(basename "${SHELL}")
|
|
78
|
-
terminal=${TERM:-"Unknown"}
|
|
79
|
-
|
|
80
|
-
# CPU (check if lscpu is available)
|
|
81
|
-
if command -v lscpu >/dev/null 2>&1; then
|
|
82
|
-
cpu=$(lscpu 2>/dev/null | awk -F': +' '/Model name/ {print $2; exit}')
|
|
83
|
-
else
|
|
84
|
-
cpu="Unknown CPU"
|
|
85
|
-
fi
|
|
86
|
-
|
|
87
|
-
# GPU (check if lspci is available)
|
|
88
|
-
if command -v lspci >/dev/null 2>&1; then
|
|
89
|
-
gpu=$(lspci 2>/dev/null | grep -E "VGA|3D" | sed -E "s/.*: (.*)/\1/" | head -n1)
|
|
90
|
-
else
|
|
91
|
-
gpu="Unknown GPU"
|
|
92
|
-
fi
|
|
93
|
-
|
|
94
|
-
# Memory
|
|
95
|
-
mem_total_kb=$(grep MemTotal /proc/meminfo 2>/dev/null | awk '{print $2}')
|
|
96
|
-
if [ -n "${mem_total_kb:-}" ]; then
|
|
97
|
-
memory=$(awk "BEGIN {printf \"%.1fGiB\",$mem_total_kb/1024/1024}")
|
|
98
|
-
else
|
|
99
|
-
memory="Unknown"
|
|
100
|
-
fi
|
|
101
|
-
|
|
102
|
-
# Resolution (check if xrandr is available)
|
|
103
|
-
if command -v xrandr >/dev/null 2>&1; then
|
|
104
|
-
resolution=$(xrandr --current 2>/dev/null | awk '/\*/{print $1; exit}')
|
|
105
|
-
else
|
|
106
|
-
resolution="Unknown"
|
|
107
|
-
fi
|
|
108
|
-
|
|
109
|
-
model_name=""
|
|
110
|
-
model_id=""
|
|
111
|
-
|
|
112
|
-
else
|
|
113
|
-
# Fallback
|
|
114
|
-
os=$(uname -s)
|
|
115
|
-
kernel=$(uname -r)
|
|
116
|
-
uptime="Unknown"
|
|
117
|
-
cpu="Unknown"
|
|
118
|
-
gpu="Unknown"
|
|
119
|
-
shell=$(basename "${SHELL}")
|
|
120
|
-
terminal=${TERM:-"Unknown"}
|
|
121
|
-
memory="Unknown"
|
|
122
|
-
resolution="Unknown"
|
|
123
|
-
model_name=""
|
|
124
|
-
model_id=""
|
|
125
|
-
fi
|
|
126
|
-
|
|
127
|
-
#######################################
|
|
128
|
-
# Print system information.
|
|
129
|
-
#######################################
|
|
130
|
-
sysinfo() {
|
|
131
|
-
printf "%s %s\n" "${emoji}" "${hostname}"
|
|
132
|
-
echo "------------------"
|
|
133
|
-
echo "${GREEN}OS:${RESET} ${os}"
|
|
134
|
-
echo "${GREEN}Kernel:${RESET} ${kernel}"
|
|
135
|
-
echo "${GREEN}Uptime:${RESET} ${uptime}"
|
|
136
|
-
echo "${GREEN}CPU:${RESET} ${cpu}"
|
|
137
|
-
echo "${GREEN}GPU:${RESET} ${gpu}"
|
|
138
|
-
echo "${GREEN}Memory:${RESET} ${memory}"
|
|
139
|
-
echo "${GREEN}Shell:${RESET} ${shell}"
|
|
140
|
-
echo "${GREEN}Terminal:${RESET} ${terminal}"
|
|
141
|
-
echo "${GREEN}Resolution:${RESET} ${resolution}"
|
|
142
|
-
if [[ -n "${model_name}" ]] && [[ -n "${model_id}" ]]; then
|
|
143
|
-
echo "Model: ${model_name} (${model_id})"
|
|
144
|
-
fi
|
|
145
|
-
}
|