From e7a1a851a830471cb4ac2ab8326a9a2ede4ff83d Mon Sep 17 00:00:00 2001 From: pika Date: Sat, 24 May 2025 02:44:09 +0200 Subject: [PATCH] wip --- template.sh | 54 +++++++++++++++++++++++++++++++++-------------------- 1 file changed, 34 insertions(+), 20 deletions(-) diff --git a/template.sh b/template.sh index bd4c84e..45e0ff4 100644 --- a/template.sh +++ b/template.sh @@ -6,44 +6,58 @@ command -v "$@" >/dev/null 2>&1 } - # WHY: - # This import will give you the following variables: - # _sudo="sudo -E" <- only if non root user - # distro = - # arch = bool - # fedora = bool - # opensuse = bool.... - # You can then use it for, `if $arch; then` - # Also this gives you the _install command, which installs a package pased on the packagemanager/distro used. - # CAUTION: - # This only wokrs for generic package names, like neovim, or vim, or tmux etc.. - # not every package packagemanager has the same packagenames for their packages.. getImports() { - local url="https://git.k4li.de/scripts/imports/raw/branch/main/distros.sh" + local url="$1" local import="$(mktemp)" if command_exists curl; then curl -fsSL $url -o $import elif command_exists wget; then - wget -o $import $url + wget -O $import $url else echo "curl/wget is required, but missing.." exit 69 fi source "$import" + + echo "${BLUE}Sourcing external script:${NC} $url" sleep 0.1 rm -f "$import" } - getDependencies() { - echo_info "Checking build dependencies.." + setup-env() { + # WHY: + # This import will give you the following variables: + # _sudo="sudo -E" <- only if non root user + # distro = + # arch = bool + # fedora = bool + # opensuse = bool.... + # You can then use it for, `if $arch; then` + # Also this gives you the _install command, which installs a package pased on the packagemanager/distro used. + # + # CAUTION: + # This only wokrs for generic package names, like neovim, or vim, or tmux etc.. + # not every package packagemanager has the same packagenames for their packages.. + # + # local beddu=https://git.k4li.de/scripts/beddu/raw/branch/main/dist/beddu.sh + # local pika=https://git.k4li.de/scripts/imports/raw/branch/main/distros.sh + # dream ~= combined beddu and pika + local dream=https://git.k4li.de/scripts/imports/raw/branch/main/dream.sh + if ! command_exists pkg-install && ! command_exists check-and-install && ! command_exists pen; then + getImports $dream + fi + } + + getDependencies() { # INFO: # ╭─────────────────────────────────────────────────────────────────────────╮ # │ You can define dependencies for various linux distros here. It will │ # │ automagically be pulled via the $pkgArray[$distro] variable │ # ╰─────────────────────────────────────────────────────────────────────────╯ depsDebian=() + depsUbuntu=() depsFedora=() depsOpensuse=() depsArch=() @@ -66,10 +80,10 @@ case "$distro" in debian | ubuntu | arch | fedora | alpine | opensuse) - checkAndInstall "${pkgArray[@]}" + check-and-install ${pkgArray[@]} ;; *) - echo_error "There are no dependencies to install for $distro" + pen bold yellow "There are no dependencies to install for $distro" return 69 ;; esac @@ -77,11 +91,11 @@ main() { if $silent; then - echo_warning "Executing script silently!" + pen yellow "ARG: Executing script silently!" fi if ! getDependencies; then - echo_error "Error when installing dependencies.." + throw "Error when installing dependencies.." fi case "$distro" in