diff options
| author | 2023-12-26 19:03:41 +0500 | |
|---|---|---|
| committer | 2023-12-26 19:03:41 +0500 | |
| commit | eb3d8950895cb9ecaaa16cf700e5e1f94485bd67 (patch) | |
| tree | 7f931005db765b14208cc566192254e5e74af531 /library | |
| parent | 41d40d6c18b6ffaf5132dbc67500214bc6d6d12b (diff) | |
update
Diffstat (limited to 'library')
| -rw-r--r-- | library/stow.sh | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/library/stow.sh b/library/stow.sh new file mode 100644 index 0000000..cd6a0da --- /dev/null +++ b/library/stow.sh @@ -0,0 +1,79 @@ +#!/bin/bash + +readArrays () { + readarray -t stowPkgs < <(ls -l "$dotfiles" | grep '^d' | awk '{ print $9 }') +} + +checkPkg () { + + counterAbortedPkg=$((counterAbortedPkg+1)) + + if [ "$counterAbortedPkg" -eq 1 ]; then echo -e "$(date +%d-%m-%Y::%T) \n" >> "$dotfiles"/abortedPkg.txt + fi + + echo "Название пакета: $package" >> "$dotfiles"/abortedPkg.txt + stow -d "$dotfiles" -nvt ~ "$package" 2>&1 | awk '{ print $11 }' | sed '/^[[:space:]]*$/d' >> "$dotfiles"/abortedPkg.txt + +} + +stowNoFolding () { + setStatusE true + + stow -d "$dotfiles" --no-folding -nvt ~ "$package" + + if [ $? -eq 1 ]; then + setStatusE false + checkPkg + else + setStatusE false + stow -d "$dotfiles" --no-folding -vt ~ "$package" + fi + +} + +stowDir () { + + setStatusE true + + stow -d "$dotfiles" -nvt ~ "$package" + + if [ $? -eq 1 ]; then + setStatusE false + checkPkg + else + setStatusE false + stow -d "$dotfiles" -vt ~ "$package" + fi + +} + +stowPkgExtract () { + + for package in ${stowPkgs[@]} + do + packageFirstSymbol=${package:0:1} + + if [ "$packageFirstSymbol" = "_" ]; then + stowNoFolding + else + stowDir + fi + done + +} + +stowUpdateNoFoldingPkg () { + + for package in ${stowPkgs[@]} + do + packageFirstSymbol=${package:0:1} + + if [ "$packageFirstSymbol" = "_" ]; then + stowNoFolding + fi + done + +} + +readArrays +stowPkgExtract |
