[IMPROVED]

Distribuciones Linux soportadas:
- Debian
- Ubuntu
- LinuxMint
- Fedora
- AlmaLinux
- Arch
- Rocky Linux
- Fedora
- Oracle Linux
Idiomas soportados:
- es (español)
Otros Sistemas Operativos soportados:
- MacOS bajo brew
- FreeBSD
Nuevas Funcionalidades:
Bootstrap.sh -Intalación de python3 y actualización de OS
This commit is contained in:
Mauro Rosero P. 2024-12-01 13:52:35 -05:00
parent f4973e517f
commit 7624035655
Signed by: mrosero
GPG key ID: 83BD2A5F674B7E26

96
bin/bootstrap.sh Executable file
View file

@ -0,0 +1,96 @@
#!/bin/bash
#bootstrap.sh
#
# Derechos de Autor (C) [2024] [Mauro Rosero P. <mauro@roser.one>]
#
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
# bajo los términos de la Licencia Pública Affero General de GNU tal como
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
# o (a su elección) cualquier versión posterior.
#
# Este programa se distribuye con la esperanza de que sea útil,
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
# Licencia Pública Affero General de GNU para obtener más detalles.
#
# Debería haber recibido una copia de la Licencia Pública Affero General
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
DEVSPATH=developers
DEVSTEAM=odoo
BIN_HOME=$HOME/$DEVSPATH/$DEVSTEAM
BIN_MESG=bin/msg
BIN_LIBS=bin/lib
PYTHON_PACKAGE=python3
# CHECK SHELL LANGUAGE
BIN_LANG=${LANG:0:2}
# LOAD BASE BASH LIBRARY
source $BIN_HOME/$BIN_LIBS/base.lib
#baselib_test
load_bootstrap_msg() {
local BIN_PATH=$1
local MSG_PATH=$2
local LANGUAGE=$3
# Load head messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "head"
# Load bootstrap messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "bootstrap"
}
install() {
local BIN_PATH=$1
local LIBRARY=$2
local MESSAGES=$3
local INSTALL_LANG=$4
# Load base bash library
source $BIN_PATH/$LIBRARY/base.lib
# Load bootstrap bash library
source $BIN_PATH/$LIBRARY/bootstrap.lib
# Load bootstrap messages
load_bootstrap_msg $BIN_PATH $MESSAGES $INSTALL_LANG
# Install or Update python from OS Packages
command_installed $PYTHON_PACKAGE
if [ $? -eq 0 ]
then
os_update
else
python3_install
fi
# Verificar distribución y ejecutar la función correspondiente para instalar Ansible
#if [ -f /etc/debian_version ] || [ -f /etc/os-release ]; then
# install_ansible_debian
#elif [ -f /etc/redhat-release ]; then
# install_ansible_redhat
#elif [ "$(uname)" == "Darwin" ]; then
# install_ansible_macos
#elif [ -f /etc/arch-release ]; then
# install_ansible_arch
#elif [ -f /etc/rc.conf ]; then
# install_ansible_bsd
#else
# echo "${pymsg_014}"
# exit 1
#fi
}
# Load messages
load_bootstrap_msg $BIN_HOME $BIN_MESG $BIN_LANG
# Display Headers
display_text_header $BIN_HOME "$bomsg_000 $head_000"
# Run install with sudo
sudo bash -c "$(declare -f load_bootstrap_msg; declare -f install); install $BIN_HOME $BIN_LIBS $BIN_MESG $BIN_LANG"