config: improve zsh bootstrapping
This commit is contained in:
parent
e386d2ba04
commit
b71d05327a
|
@ -0,0 +1,24 @@
|
||||||
|
command_not_found_handler() {
|
||||||
|
local pkgs cmd="$1"
|
||||||
|
|
||||||
|
pkgs=(${(f)"$(pkgfile -b -v -- "$cmd" 2>/dev/null)"})
|
||||||
|
if [[ -n "$pkgs" ]]; then
|
||||||
|
printf 'The application %s is not installed. It may be found in the following packages:\n' "$cmd"
|
||||||
|
printf ' %s\n' $pkgs[@]
|
||||||
|
setopt shwordsplit
|
||||||
|
pkg_array=($pkgs[@])
|
||||||
|
pkgname="${${(@s:/:)pkg_array}[2]}"
|
||||||
|
printf 'Do you want to Install package %s? (y/N) ' $pkgname
|
||||||
|
if read -q "choice? "; then
|
||||||
|
echo
|
||||||
|
echo "Executing command: pamac install $pkgname"
|
||||||
|
pamac install $pkgname
|
||||||
|
else
|
||||||
|
echo " "
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
printf 'zsh: command not found: %s\n' "$cmd"
|
||||||
|
fi 1>&2
|
||||||
|
|
||||||
|
return 127
|
||||||
|
}
|
|
@ -27,13 +27,26 @@ ExecStart=-$agetty --skip-login --login-options $USER %I" |
|
||||||
sudo tee /etc/systemd/system/getty@tty1.service.d/override.conf /etc/systemd/system/getty@tty2.service.d/override.conf /etc/systemd/system/getty@tty3.service.d/override.conf
|
sudo tee /etc/systemd/system/getty@tty1.service.d/override.conf /etc/systemd/system/getty@tty2.service.d/override.conf /etc/systemd/system/getty@tty3.service.d/override.conf
|
||||||
|
|
||||||
highlight "Sysyadm setup"
|
highlight "Sysyadm setup"
|
||||||
if test -d "/etc/yadm"
|
if test -d "/etc/yadm/repo.git/"
|
||||||
then sy l
|
then sy l
|
||||||
else sy clone
|
else echo "" | sy clone
|
||||||
fi
|
fi
|
||||||
|
|
||||||
SECTION "Software"
|
SECTION "Software"
|
||||||
|
|
||||||
|
highlight "Cleanup Manjaro Sway Dotfiles"
|
||||||
|
rmexist() {
|
||||||
|
for arg
|
||||||
|
do test -e "$arg" && echo -n "$arg: " && rm -rI "$arg"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
rmexist "$XDG_CONFIG_HOME/nvim/init.lua" "$HOME/.emacs.d/"
|
||||||
|
|
||||||
|
highlight "MPD"
|
||||||
|
mkdir "${XDG_STATE_HOME}/mpd"
|
||||||
|
sudo systemctl enable --now mpd
|
||||||
|
mpc update
|
||||||
|
|
||||||
template() {
|
template() {
|
||||||
local dir=$(dirname "$1")
|
local dir=$(dirname "$1")
|
||||||
local file=${1/.template}
|
local file=${1/.template}
|
||||||
|
@ -76,10 +89,13 @@ test -d "$_ovpn" &&
|
||||||
sudo chown -vR janek:openvpn "$_ovpn"
|
sudo chown -vR janek:openvpn "$_ovpn"
|
||||||
|
|
||||||
highlight "Cron"
|
highlight "Cron"
|
||||||
|
sudo systemctl enable --now cronie
|
||||||
|
if test -d "/etc/rsyslog.d"; then
|
||||||
echo 'cron.* /var/log/cron.log' | sudo tee /etc/rsyslog.d/60-cron.conf
|
echo 'cron.* /var/log/cron.log' | sudo tee /etc/rsyslog.d/60-cron.conf
|
||||||
hasService=$(which service 2>/dev/null)
|
hasService=$(which service 2>/dev/null)
|
||||||
test "$hasService" && sudo service rsyslog restart || sudo systemctl restart rsyslog
|
test "$hasService" && sudo service rsyslog restart || sudo systemctl restart rsyslog
|
||||||
test "$hasService" && sudo service cron reload || sudo systemctl reload cronie
|
test "$hasService" && sudo service cron reload || sudo systemctl reload cronie
|
||||||
|
fi
|
||||||
|
|
||||||
highlight "Zsh"
|
highlight "Zsh"
|
||||||
test -n "$ZSH" || export ZSH="${XDG_DATA_HOME:-$HOME/.local/share}/zsh/oh-my-zsh"
|
test -n "$ZSH" || export ZSH="${XDG_DATA_HOME:-$HOME/.local/share}/zsh/oh-my-zsh"
|
||||||
|
|
|
@ -187,7 +187,6 @@ source_existing() {
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
source_existing /usr/share/zsh/manjaro-zsh-config
|
|
||||||
source_existing $CONFIG_ZSH/.p10k.zsh # To customize prompt, run `p10k configure` or edit .p10k.zsh.
|
source_existing $CONFIG_ZSH/.p10k.zsh # To customize prompt, run `p10k configure` or edit .p10k.zsh.
|
||||||
source_existing /usr/share/fzf/key-bindings.zsh /usr/share/fzf/completion.zsh
|
source_existing /usr/share/fzf/key-bindings.zsh /usr/share/fzf/completion.zsh
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue