Compare commits

...

8 Commits

Author SHA1 Message Date
ivuorinen
cea61a5719 chore(git): Update submodules (automated)
config/nvim v3.33.4
2023-07-19 03:36:20 +00:00
ivuorinen
28c29d94f2 chore(git): Update submodules (automated)
config/nvim v3.33.3
2023-07-18 03:11:59 +00:00
ivuorinen
1028d3847c chore(git): Update submodules (automated)
config/nvim v3.33.1
2023-07-17 03:16:42 +00:00
3498c6b739 fix(tools): update git dirty without parameters 2023-07-13 17:07:18 +03:00
83eb7d861e feat(tools): sha256-matcher, cheat script tweaks 2023-07-12 22:44:08 +03:00
22090129ec feat(tools): dfm brew install tweaks 2023-07-12 21:19:18 +03:00
ivuorinen
5b0ca2a63b chore(git): Update submodules (automated)
config/nvim v3.32.0
2023-07-12 03:12:30 +00:00
ivuorinen
c5fa136a1f chore(git): Update submodules (automated)
dotbot v1.19.2
2023-07-10 03:16:15 +00:00
9 changed files with 106 additions and 9 deletions

View File

@@ -50,6 +50,8 @@ brew "pkg-config"
brew "choose-rust"
# Cross-platform make
brew "cmake"
# Dependency manager for Cocoa projects
brew "cocoapods"
# Get, unpack, build, and install modules from CPAN
brew "cpanminus"
# Open source suite of directory software
@@ -276,6 +278,8 @@ cask "dbngin"
cask "docker"
# Reimagine your terminal
cask "fig"
# UI toolkit for building applications for mobile, web and desktop
cask "flutter"
# Unofficial overcast.fm podcast app
cask "fog"
# Typeface made for developers

View File

@@ -149,7 +149,7 @@ function section_brew
have brew && {
case "$1" in
install)
brew bundle install --file="$BREWFILE" && msg_yay "Done!"
brew bundle install --file="$BREWFILE" --force --quiet && msg_yay "Done!"
;;
update)
brew update && brew outdated && brew upgrade && brew cleanup

View File

@@ -46,7 +46,7 @@ gitdirty()
if [[ "${d:0:2}" == "--" ]] || [[ "$d" == "vendor" ]] || [[ "$d" == "node_modules" ]]; then
echo ""
else
cd "$d" > /dev/null
cd "$d"
# If we have `.git` folder, check it.
if [[ -d ".git" ]]; then
@@ -58,7 +58,7 @@ gitdirty()
printf " %s %s\n" "$ICON" "$(pwd)"
else
# If it wasn't git repository, check subdirectories.
gitdirtyrepos -- *
gitdirtyrepos ./*
fi
fi
cd .. > /dev/null

50
local/bin/x-sha256sum-matcher Executable file
View File

@@ -0,0 +1,50 @@
#!/usr/bin/env bash
# x-sha256sum-matcher
#
# Check if two files are the same
#
# Ismo Vuorinen <https://github.com/ivuorinen> 2023
# MIT License
# ENV Variables
: "${VERBOSE:=0}" # VERBOSE=1 x-sha256sum-matcher file1 file2
file_1="$1"
file_2="$2"
# return sha256sum for file
# $1 - filename (string)
get_sha256sum() {
sha256sum "$1" | head -c 64
}
[ $# -eq 0 ] && {
echo "Usage: $0 file1.sh file2.sh" && exit 1
}
msg() {
[[ "$VERBOSE" -eq 1 ]] && echo "$1"
}
error() {
msg "(!) ERROR: $1" && exit 1
}
if [ ! -f "$file_1" ]; then
error "File 1 does not exist: $file_1"
fi
if [ ! -f "$file_2" ]; then
error "File 2 does not exist: $file_2"
fi
file_1_hash=$(get_sha256sum "$file_1")
file_2_hash=$(get_sha256sum "$file_2")
if [ "$file_1_hash" != "$file_2_hash" ]; then
error "Files do not match"
else
msg "(*) Success: Files do match"
exit 0;
fi

View File

@@ -35,8 +35,10 @@ for f in ${PBB_CHAPTERS[@]}; do
HEADER=$(grep -e '^[#] ' "$f" | head -1 | awk '{print tolower($2)}')
CHEAT_FILE="$CHEAT_DEST/${HEADER}"
if [ ! -f "$CHEAT_FILE" ]; then
cp "$f" "$CHEAT_FILE" && msg_run "$CHEAT_FILE"
replacable "$f" "$CHEAT_FILE"
override=$?
if [ "$override" -ne 1 ]; then
cp "$f" "$CHEAT_FILE" && msg_run "Updated: $CHEAT_FILE"
fi
LC_ALL=C perl -pi.bak -e 's/\<\!-- CHAPTER END --\>//' "$CHEAT_FILE"

View File

@@ -51,8 +51,10 @@ for d in "$TLDR_TEMP_DIR"/pages/*; do
TLDR_FILE="$SECTION_DIR/${FILENAME}"
# echo "-> dest: $TLDR_FILE"
if [ ! -f "$TLDR_FILE" ]; then
cp "$FILE" "$TLDR_FILE" && msg_run "$TLDR_FILE"
replacable "$FILE" "$TLDR_FILE"
override=$?
if [ "$override" -ne 1 ]; then
cp "$FILE" "$TLDR_FILE" && msg_run "Updated: $TLDR_FILE"
fi
if [ -f "$TLDR_FILE" ] && [ '---' != "$(head -1 < "$TLDR_FILE")" ]; then

View File

@@ -230,3 +230,42 @@ rnd()
{
echo $RANDOM | md5sum | head -c 20
}
# return sha256sum for file
# $1 - filename (string)
function get_sha256sum()
{
sha256sum "$1" | head -c 64
}
# Replacable file
#
# $1 - filename (string)
# $2 - filename (string)
#
# Returns 1 when replacable, 0 when not replacable.
function replacable()
{
FILE1="$1"
FILE2="$2"
[[ ! -r "$FILE1" ]] && { msg_err "File 1 ($FILE1) does not exist" && return 1; }
[[ ! -r "$FILE2" ]] && { msg_err "File 2 ($FILE2) does not exist" && return 1; }
FILE1_HASH=$(get_sha256sum "$FILE1")
FILE2_HASH=$(get_sha256sum "$FILE2")
[[ $FILE1_HASH = "" ]] && {
msg_err "Could not get hash for file 1 ($FILE1)" && return 1;
}
[[ $FILE2_HASH = "" ]] && {
msg_err "Could not get hash for file 2 ($FILE2)" && return 1;
}
[[ "$FILE1_HASH" == "$FILE2_HASH" ]] && {
msg_ok "Files match, not replacable" && return 0;
}
return 1;
}