improve next-in-path handling, fix line endings
This commit is contained in:
parent
f546b49599
commit
31a59f0207
14 changed files with 62 additions and 48 deletions
1
devel/g8
1
devel/g8
|
|
@ -2,6 +2,7 @@
|
|||
#dep:g8
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
G8=$(next-in-path g8 $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
|
||||
args=()
|
||||
zparseopts -D -E \
|
||||
|
|
|
|||
|
|
@ -2,12 +2,19 @@
|
|||
# Usage: next-in-path <program name> <current $0>
|
||||
typeset -U path
|
||||
next-in-path() {
|
||||
entries=( $(which -a $1) )
|
||||
index=${entries[(ie)$2]}
|
||||
local entries=( $(which -a $1) )
|
||||
local index=${entries[(ie)$2]}
|
||||
local result
|
||||
if [[ $index -le ${#entries} ]]; then
|
||||
# found $0, use next entry
|
||||
echo $entries[$((index + 1))]
|
||||
result=$entries[$((index + 1))]
|
||||
else
|
||||
echo $entries[1]
|
||||
result=$entries[1]
|
||||
fi
|
||||
|
||||
if [[ -n $result ]]; then
|
||||
echo $result
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,4 +9,6 @@ fi
|
|||
|
||||
envwrapconf=${XDG_CONFIG_HOME:-$HOME/.config}/envwrap/$program
|
||||
[[ -e $envwrapconf ]] && source $envwrapconf
|
||||
$(next-in-path "$program" $0) "$@"
|
||||
next=$(next-in-path "$program" $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next "$@"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/zsh
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
export PASSWORD_STORE_ENABLE_EXTENSIONS=true
|
||||
$(next-in-path pass $0) $@
|
||||
next=$(next-in-path pass $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next $@
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#!/bin/zsh
|
||||
#dep:xi xbps-checkvers ag
|
||||
#dep:xi xbps-checkvers rg
|
||||
|
||||
source ${$(realpath "$0"):h:h}/lib/common.zsh
|
||||
|
||||
|
|
@ -62,7 +62,7 @@ else
|
|||
succeed "on $branch"
|
||||
fi
|
||||
|
||||
packages=( $(ag -G 'template' restricted=yes srcpkgs/ | cut -d/ -f 2 | sort -u) )
|
||||
packages=( $(rg -g 'template' restricted=yes srcpkgs/ | cut -d/ -f 2 | sort -u) )
|
||||
|
||||
version() { grep -Poe '(?<=^version=).*$' srcpkgs/$1/template }
|
||||
install_restricted() {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/zsh
|
||||
#dep:abcde
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
$(next-in-path abcde $0) -c ${XDG_CONFIG_HOME:-$HOME/.config}/abcde/abcde.conf $@
|
||||
next=$(next-in-path abcde $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next -c ${XDG_CONFIG_HOME:-$HOME/.config}/abcde/abcde.conf $@
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/zsh
|
||||
#dep:mbsync
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
$(next-in-path mbsync $0) -c ${XDG_CONFIG_HOME:-$HOME/.config}/mbsyncrc $@
|
||||
next=$(next-in-path mbsync $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next -c ${XDG_CONFIG_HOME:-$HOME/.config}/mbsyncrc $@
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/zsh
|
||||
#dep:mvn
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
$(next-in-path mvn $0) -gs $XDG_CONFIG_HOME/maven/settings.xml $@
|
||||
next=$(next-in-path mvn $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next -gs $XDG_CONFIG_HOME/maven/settings.xml $@
|
||||
|
|
|
|||
|
|
@ -1,5 +1,12 @@
|
|||
#!/bin/zsh
|
||||
#dep:node
|
||||
local SELF=$(realpath "$0")
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
export NODE_REPL_HISTORY="$XDG_DATA_HOME"/node_repl_history
|
||||
$(next-in-path node $0) $@
|
||||
NEXT=$(next-in-path node $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
if [[ $NEXT == $SELF ]]; then
|
||||
exec /usr/bin/node $@
|
||||
else
|
||||
exec $NEXT $@
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -2,4 +2,6 @@
|
|||
#dep:npm
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc
|
||||
$(next-in-path npm $0) $@
|
||||
next=$(next-in-path npm $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next $@
|
||||
|
|
|
|||
|
|
@ -5,4 +5,6 @@ RIPGREP_CONFIG_PATH=${XDG_CONFIG_HOME:-$HOME/.config}/ripgreprc
|
|||
if [[ -e $RIPGREP_CONFIG_PATH ]]; then
|
||||
export RIPGREP_CONFIG_PATH
|
||||
fi
|
||||
$(next-in-path rg $0) $@
|
||||
next=$(next-in-path rg $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next $@
|
||||
|
|
|
|||
|
|
@ -15,4 +15,6 @@ opts=(
|
|||
"-Dsbt.override.build.repos=true"
|
||||
)
|
||||
export SBT_OPTS=${(j: :)opts}
|
||||
$(next-in-path sbt $0) $@
|
||||
next=$(next-in-path sbt $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next $@
|
||||
|
|
|
|||
|
|
@ -1,32 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
#dep:steam
|
||||
|
||||
FAKEHOME=${XDG_DATA_HOME:-$HOME/.local/share}/steam
|
||||
echo "Starting Steam in faked home $FAKEHOME" >&2
|
||||
|
||||
# Symlink a file to the fake home
|
||||
link_dir() {
|
||||
# Replace HOME with FAKEHOME in the link name
|
||||
link_name=$(echo $1 | sed "s|^$HOME|$FAKEHOME|")
|
||||
|
||||
# Creates the link's parent directory and symlinks it
|
||||
mkdir -p $(dirname $link_name)
|
||||
if [ ! -d $link_name ]; then
|
||||
echo "Linking $link_name" >&2
|
||||
ln -s $1 $link_name
|
||||
fi
|
||||
}
|
||||
|
||||
mkdir -p $FAKEHOME
|
||||
|
||||
link_dir $XDG_DATA_HOME # ~/.local/share
|
||||
link_dir $XDG_CACHE_HOME # ~/.cache
|
||||
link_dir $XDG_CONFIG_HOME # ~/.config
|
||||
|
||||
# If .steam exists in ~/ and not in the fake home, move it to the fake home
|
||||
if [ -d $HOME/.steam ] && [ ! -d $FAKEHOME/.steam ]; then
|
||||
echo "migrating $HOME/.steam to $FAKEHOME" >&2
|
||||
mv $HOME/.steam $FAKEHOME/
|
||||
fi
|
||||
export HOME=$FAKEHOME
|
||||
#FAKEHOME=${XDG_DATA_HOME:-$HOME/.local/share}/steam
|
||||
#echo "Starting Steam in faked home $FAKEHOME" >&2
|
||||
#
|
||||
## If .steam exists in ~/ and not in the fake home, move it to the fake home
|
||||
#if [ -d $HOME/.steam ] && [ ! -d $FAKEHOME/.steam ]; then
|
||||
# echo "migrating $HOME/.steam to $FAKEHOME" >&2
|
||||
# mv $HOME/.steam $FAKEHOME/
|
||||
#fi
|
||||
#export HOME=$FAKEHOME
|
||||
exec /usr/bin/steam $@
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/zsh
|
||||
#dep:wget
|
||||
source ${$(realpath "$0"):h:h}/lib/next-in-path.zsh
|
||||
$(next-in-path wget $0) --hsts-file="${XDG_DATA_HOME:-$HOME/.local/share}/wget-hsts" "$@"
|
||||
next=$(next-in-path wget $0)
|
||||
if (( $? != 0 )); then exit 1; fi
|
||||
$next --hsts-file="${XDG_DATA_HOME:-$HOME/.local/share}/wget-hsts" "$@"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue