]> git.armaanb.net Git - zpe.git/blob - zpe.zsh
first push
[zpe.git] / zpe.zsh
1 #!/usr/bin/env zsh
2 # The ZPE plugin manager. Copyright 2020 Armaan Bhojwani, MIT License
3
4 zpe-pre() {
5   config_dir=$HOME/.config/zpe/
6   plugin_dir=$HOME/.config/zpe/plugins/
7
8   [[ -d "$config_dir" ]] || mkdir -p "$config_dir"
9   touch "$config_dir"repositories
10   [[ -d "$plugin_dir" ]] || mkdir -p "$plugin_dir"
11   [[ -x git ]] && echo "please install git"
12   [[ -x find ]] && echo "please install find"
13 }
14
15 zpe-clone() {
16   while read line; do
17     git -C $plugin_dir clone $line
18   done < "${config_dir}repositories"
19 }
20
21 zpe-pull() {
22   find_dirs=$(find "$plugin_dir" -name ".git" -type d)
23   echo $find_dirs | xargs -P10 -I{} git --git-dir={} config pull.ff only
24   echo $find_dirs |  xargs  -P10 -I{} git --git-dir={} pull
25 }
26
27 main() {
28   zpe-pre
29   zpe-clone
30   zpe-pull
31 }
32
33 main