diff --git a/backup/archive_repos/_lib/c/base.sh b/backup/archive_repos/_lib/c/base.sh index acf4d9e..0899580 100644 --- a/backup/archive_repos/_lib/c/base.sh +++ b/backup/archive_repos/_lib/c/base.sh @@ -27,6 +27,8 @@ base_lightgrey="120;120;120m" base_darkgrey_01="60;60;60m" base_darkgrey_02="50;50;50m" base_black="0;0;0m" +base_lime="0;255;0m" +base_aqua="0;255;255m" l_grey_rgb="120;120;120m" m_grey_rgb="80;80;80m" @@ -42,6 +44,8 @@ d_lightgrey="${esc_seq_fg}${base_lightgrey}" fg_darkgrey_01="${esc_seq_fg}${base_darkgrey_01}" fg_darkgrey_02="${esc_seq_fg}${base_darkgrey_02}" fg_black="${esc_seq_fg}${base_black}" +fg_lime="${esc_seq_fg}${base_lime}" +fg_aqua="${esc_seq_fg}${base_aqua}" # Named background colors # ------------------------------------------------------------------------------ @@ -52,6 +56,8 @@ bg_lightgrey="${esc_seq_fg}${c_white}${esc_seq_bg}${base_lightgrey}" bg_darkgrey_01="${esc_seq_fg}${c_white}${esc_seq_bg}${base_darkgrey_01}" bg_darkgrey_02="${esc_seq_fg}${c_white}${esc_seq_bg}${base_darkgrey_02}" bg_black="${esc_seq_fg}${c_white}${esc_seq_bg}${base_black}" +bg_lime="${esc_seq_fg}${c_white}${esc_seq_bg}${base_lime}" +bg_aqua="${esc_seq_fg}${c_white}${esc_seq_bg}${base_aqua}" # Color variations and special use cases # ------------------------------------------------------------------------------ diff --git a/backup/archive_repos/_lib/colors.sh b/backup/archive_repos/_lib/colors.sh index 0f7f7d6..9f85ed2 100644 --- a/backup/archive_repos/_lib/colors.sh +++ b/backup/archive_repos/_lib/colors.sh @@ -8,12 +8,16 @@ source ./_lib/c/base.sh # UI colors # ------------------------------------------------------------------------------ -ui_base="${lightgrey_bg}" -ui_accent_light="${lightpurple}" -ui_accent_dark="${darkpurple}" +ui_base="${bg_lightgrey}" +ui_accent_light="${fg_lightpurple}" +ui_accent_dark="${fg_darkpurple}" ui_text_normal="" -ui_text_muted="${lightgrey}" -ui_dialog_bg="${darkgrey_bg}" +ui_text_hl="${fg_ff4500}" +ui_text_muted="${fg_lightgrey}" +ui_dialog_bg="${bg_darkgrey_01}" +ui_highlight_bg="${bg_ff4500}" +ui_text_info="${fg_lime}" +ui_text_cmd="${fg_aqua}" # for var in "${!ui_@}"; do # printf '%s=%s\n' "$var" "${!var}" diff --git a/backup/archive_repos/_lib/config.sh b/backup/archive_repos/_lib/config.sh index 044bdb9..e0d40b8 100755 --- a/backup/archive_repos/_lib/config.sh +++ b/backup/archive_repos/_lib/config.sh @@ -9,20 +9,19 @@ # User specified directories (no trailing slashes!) # ------------------------------------------------------------------------------ -base_dir="~/Desktop/test" +base_dir="$HOME/Desktop/test" source_repo_dir="repos" output_dir="archive" repo_list="${base_dir}/_src/repo_list.txt" # Variables for functions - Don't mess with these # ------------------------------------------------------------------------------ -filelines="$(cat $repo_list)" source="${base_dir}/${source_repo_dir}" output="${base_dir}/${output_dir}" # Debugging # ------------------------------------------------------------------------------ -print_colors="yes" +print_colors="no" # Colors - source the colors.sh file # ------------------------------------------------------------------------------ diff --git a/backup/archive_repos/_lib/functions.sh b/backup/archive_repos/_lib/functions.sh index a37bc99..b70e60e 100755 --- a/backup/archive_repos/_lib/functions.sh +++ b/backup/archive_repos/_lib/functions.sh @@ -11,8 +11,8 @@ indent() { # ----------------------------------------------- sep() { local ch="-" - local sep_line="$(printf '%*s' "60" | tr ' ' "$ch")" - echo -e "${indent}${grey}${sep_line}${reset}${indent}" + local sep_line="$(printf '%*s' "56" | tr ' ' "$ch")" + echo -e "${ind}${fg_darkgrey_01}${sep_line}${reset}${ind}" #echo -e "-----------------------------------------------------------------------------" } @@ -20,39 +20,81 @@ aaa() { echo -e "${fg_darkgrey_01} -------------------------------------------------------- ${reset}" } -# Check directory existence +info(){ + indent; indent; echo -e "${bg_darkgrey_02}${ui_text_info} i ${reset} \c" +} + +cmd(){ + indent; indent; echo -e "${bg_darkgrey_02} ${reset}" + indent; indent; echo -e "${bg_darkgrey_02}${ui_text_cmd} > ${reset}${fg_darkgrey_01} \$ ${reset}\c" +} + +sec_hl(){ + indent; indent; echo -e "${bg_lightpurple} $1 ${reset}"; + echo +} + +line(){ + echo -e $1 +} + +line_2(){ + indent; indent; echo -e "${bg_darkgrey_02} ${reset} \c"; echo -e $1 +} + +# Check directory/file existence # ----------------------------------------------- -aaa -echo -if [ ! -d "${base_dir}" ]; then - indent; indent; echo -e "Base dir doesn't exist. Making it now." - indent; indent; echo -e "> mkdir ${base_dir}" +check_ex(){ echo - #mkdir ${source} -else - echo -e "Base dir exists at ${base_dir}" -fi - -if [ ! -d "${source}" ]; then - indent; indent; echo -e "Source dir doesn't exist. Making it now." - indent; indent; echo -e "> mkdir ${source}" + sep echo - #mkdir ${source} -else - echo -e "Source dir exists at ${source}" -fi -if [ ! -d "${output}" ]; then - indent; indent; echo -e "Output dir doesn't exist. Making it now." - indent; indent; echo -e "> mkdir ${output}" - #mkdir ${output} -else - echo -e "Output dir exists at ${output}" -fi + sec_hl "Checking for required files/folders:" -echo -aaa + if [ ! -d "${base_dir}" ]; then + info; line "${fg_lightgrey}Base dir${reset} doesn't exist."; line_2 "Making it now." + cmd; line "${fg_lightgrey}mkdir ${base_dir}${reset}" + echo; sleep 1 + mkdir ${base_dir} + else + info; line "Base dir exists at ${ui_text_cmd}${base_dir}${reset}" + echo + fi + + if [ ! -d "${source}" ]; then + info; line "${fg_lightgrey}Source dir${reset} doesn't exist."; line_2 "Making it now." + cmd; line "${fg_lightgrey}mkdir ${source}${reset}" + echo; sleep 1 + mkdir ${source} + else + info; line "Source dir exists at ${ui_text_cmd}${source}${reset}" + echo + fi + + if [ ! -d "${output}" ]; then + info; line "${fg_lightgrey}Output dir${reset} doesn't exist."; line_2 "Making it now." + cmd; line "${fg_lightgrey}mkdir ${output}${reset}" + echo; sleep 1 + mkdir ${output} + else + info; line "Output dir exists at ${ui_text_cmd}${output}${reset}" + echo + fi + + if [ ! -f "${repo_list}" ]; then + info; line "A ${fg_lightgrey}repository list${reset} doesn't exist."; line_2 "Making the ${ui_text_cmd}_src${reset} dir and an empty list now." + cmd; line "${fg_lightgrey}touch ${repo_list}${reset}" + echo; sleep 1 + mkdir ${base_dir}/_src && touch ${repo_list} + else + info; line "A repository list exists at ${ui_text_cmd}${repo_list}${reset}" + echo + fi + + echo + sep +} # # Clone everything in repo_list to source folder # # ----------------------------------------------- @@ -85,6 +127,7 @@ aaa # ----------------------------------------------- zzz (){ + filelines="$(cat $repo_list)" for line in $filelines; do suffix=".git" pre="${line##*/}" @@ -113,9 +156,10 @@ zzz (){ #zzz run() { + check_ex echo sep - indent; echo "Yay" + indent; indent; echo "Yay" sep echo aaa