mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-01-27 22:45:27 +00:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1028d3847c | ||
| 3498c6b739 | |||
| 83eb7d861e | |||
| 22090129ec | |||
|
|
5b0ca2a63b | ||
|
|
c5fa136a1f |
4
Brewfile
4
Brewfile
@@ -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
|
||||
|
||||
Submodule config/nvim updated: 346c19a0ed...f92846d0e8
@@ -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
|
||||
|
||||
@@ -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
50
local/bin/x-sha256sum-matcher
Executable 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
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Submodule tools/dotbot updated: da928a4c6b...b04a3f1844
Reference in New Issue
Block a user