- Base library:

- Implement VSL (Version Stack Log),
- ISL:
    - Add VSL support,
- URPMI-Setup
    - Add VSL support.
This commit is contained in:
2026-09-09 20:24:54 +02:00
parent d1f671c128
commit 96e9b5524b
6 changed files with 249 additions and 76 deletions

View File

@@ -1,4 +1,4 @@
Welcome to Rx3 Base 1.1.x ! Welcome to Rx3 Base 1.2.x !

View File

@@ -1,3 +1,16 @@
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Base V 1.2.0 - A. GIBERT - 2026/09/11
------------------------------------------------------------------------------------------------------------------------------------
- Base library:
- Implement VSL (Version Stack Log),
- ISL:
- Add VSL support,
- URPMI-Setup
- Add VSL support.
------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------
Rx3-Base V 1.1.3 - A. GIBERT - 2026/08/01 Rx3-Base V 1.1.3 - A. GIBERT - 2026/08/01
------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------

View File

@@ -25,7 +25,7 @@
%define name rx3-base %define name rx3-base
%define version 1.1.3 %define version 1.2.0
%define release %mkrel 1rx3 %define release %mkrel 1rx3
@@ -178,6 +178,9 @@ cp sbin/* %{buildroot}%{_sbindir}
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
%changelog %changelog
* Fri Sep 11 2026 Arnaud G. GIBERT <arnaud@rx3.net> - 1.2.0-1rx3.mga9
- Update to 1.2.0
* Sat Aug 1 2026 Arnaud G. GIBERT <arnaud@rx3.net> - 1.1.3-1rx3.mga9 * Sat Aug 1 2026 Arnaud G. GIBERT <arnaud@rx3.net> - 1.1.3-1rx3.mga9
- Update to 1.1.3 - Update to 1.1.3

View File

@@ -46,45 +46,27 @@ shopt -s extglob
# Global Variable # Global Variable
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
declare -g NAME="" declare -Ag LIB_VSL_TAB=()
declare -g VERSION="" declare -g LIB_VSL_ID_LIST=""
declare -g LIB_VSL_ID_NB=0
declare -g LIB_VSL_NAME_LEN=0
declare -g LIB_VSL_VERSION_LEN=0
declare -g DUMP="FALSE" declare LIB_NAME="Base"
declare -g DRY_RUN="FALSE" declare LIB_VERSION="1.2.0"
declare -g HELP=""
declare -g VERBOSE="FALSE"
declare -g LOG_FILE="" declare -g NAME=""
declare -g LOG_LOCK="" declare -g VERSION=""
declare -g LOG_ECHO=""
declare -g LOG_TRACE="DISABLED"
declare -g DUMP="FALSE"
declare -g DRY_RUN="FALSE"
declare -g HELP=""
declare -g VERBOSE="FALSE"
declare -g LOG_FILE=""
declare -g LOG_LOCK=""
declare -g LOG_ECHO=""
#----------------------------------------------------------------------------------------------------------------------------------- declare -g LOG_TRACE="DISABLED"
# Version Print
#-----------------------------------------------------------------------------------------------------------------------------------
version_print()
{
# echo "${VERSION}" | sed -e 's/.*: //' -e 's/-/ /' -e 's/_/\./g' -e 's/\$$//'
echo "${NAME} V${VERSION}"
}
#-----------------------------------------------------------------------------------------------------------------------------------
# Help Print
#-----------------------------------------------------------------------------------------------------------------------------------
help_print()
{
echo "${NAME} ${HELP}"
}
@@ -243,6 +225,30 @@ sh_exec()
#-----------------------------------------------------------------------------------------------------------------------------------
# Print
#-----------------------------------------------------------------------------------------------------------------------------------
print()
{
local inline="${1}"
shift
if [[ "${inline}" == "TRUE" ]]
then
str="%s"'\\n'
else
str="%s"'\n'
fi
cmd_exec printf "${str}" "$*"
}
#-------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------
# Tab Assign # Tab Assign
#-------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------
@@ -294,6 +300,171 @@ var_assign()
#--------------------------------------------------------------------------------------------------------------------------
# VSL Add
#--------------------------------------------------------------------------------------------------------------------------
vsl_add()
{
local name
local version
local file
if [[ "${BASH_SOURCE[1]}" == "$0" ]]
then
name="${NAME}"
version="${VERSION}"
file="${0}"
else
name="${LIB_NAME}"
version="${LIB_VERSION}"
file="${BASH_SOURCE[1]}"
fi
var_assign LIB_VSL_ID_LIST "${LIB_VSL_ID_NB}" INC
tab_assign LIB_VSL_TAB "${LIB_VSL_ID_NB},Name" "${name}"
tab_assign LIB_VSL_TAB "${LIB_VSL_ID_NB},Version" "${version}"
tab_assign LIB_VSL_TAB "${LIB_VSL_ID_NB},File" "${file}"
if [[ "${#name}" -gt "${LIB_VSL_NAME_LEN}" ]]
then
LIB_VSL_NAME_LEN="${#name}"
fi
if [[ "${#version}" -gt "${LIB_VSL_VERSION_LEN}" ]]
then
LIB_VSL_VERSION_LEN="${#version}"
fi
LIB_VSL_ID_NB=$(( ${LIB_VSL_ID_NB} + 1))
}
#-----------------------------------------------------------------------------------------------------------------------------------
# VSL HTML Dump
#-----------------------------------------------------------------------------------------------------------------------------------
vsl_html_dump()
{
local reverse="$1"
local inline="$2"
local i=1
local j=1
local vsl_id
local vsl_id_list
local name
local version
local file
if [[ "${reverse}" == "TRUE" ]]
then
vsl_id_list="$( echo "${LIB_VSL_ID_LIST}" | tr ' ' '\n' | tac)"
else
vsl_id_list="$( echo "${LIB_VSL_ID_LIST}" | tr ' ' '\n')"
fi
for vsl_id in ${vsl_id_list}
do
name=${LIB_VSL_TAB["${vsl_id},Name"]}
version=${LIB_VSL_TAB["${vsl_id},Version"]}
file=${LIB_VSL_TAB["${vsl_id},File"]}
if [[ $(( $i % 2)) -eq 0 ]]
then
print "${inline}" ' <tr class="shade">'
else
print "${inline}" " <tr>"
fi
print "${inline}" " <th>${i}</th><td>${name}</td><td>${version}</td>"
if [[ "${VERBOSE}" == "TRUE" ]]
then
print "${inline}" "<td>${file}</td>"
fi
print "${inline}" " </tr>"
i=$(( $i + 1))
done
}
#-----------------------------------------------------------------------------------------------------------------------------------
# Version Print
#-----------------------------------------------------------------------------------------------------------------------------------
version_print()
{
local full="${1-TRUE}"
local name_len
local version_len
local vsl_id_list
local vsl_id
local name
local version
local file
if [[ "${full}" == "TRUE" ]]
then
vsl_id_list="$( echo "${LIB_VSL_ID_LIST}" | tr ' ' '\n' | tac)"
name_len="${LIB_VSL_NAME_LEN}"
version_len="${LIB_VSL_VERSION_LEN}"
else
vsl_id_list="$(( ${LIB_VSL_ID_NB} - 1))"
name_len="${#LIB_VSL_TAB["${vsl_id_list},Name"]}"
version_len="${#LIB_VSL_TAB["${vsl_id_list},Version"]}"
fi
name_len=$(( ${name_len} + 1 ))
version_len=$(( ${version_len} + 1 ))
for vsl_id in ${vsl_id_list}
do
name=${LIB_VSL_TAB["${vsl_id},Name"]}
version=${LIB_VSL_TAB["${vsl_id},Version"]}
file=${LIB_VSL_TAB["${vsl_id},File"]}
str="$(printf "%s%*sV %s" "${name}" "$((${name_len} - ${#name}))" " " "${version}")"
if [[ "${VERBOSE}" == "TRUE" ]]
then
str+="$(printf "%*s%s" "$((${version_len} - ${#version}))" " " "${file}")"
fi
echo "${str}"
done
}
#-----------------------------------------------------------------------------------------------------------------------------------
# Help Print
#-----------------------------------------------------------------------------------------------------------------------------------
help_print()
{
version_print
echo "${NAME} ${HELP}"
}
#-------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------
# File Dir Init # File Dir Init
#-------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------
@@ -510,3 +681,13 @@ log_error()
{ {
log_print "${LOG_FILE}" "${LOG_LOCK}" "${LOG_ECHO}" "ERR" "$@" log_print "${LOG_FILE}" "${LOG_LOCK}" "${LOG_ECHO}" "ERR" "$@"
} }
#--------------------------------------------------------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------------------------------------------------------
vsl_add

View File

@@ -39,7 +39,7 @@
# Global Variables # Global Variables
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
declare -g VERSION="1.1.1" declare -g VERSION="1.2.0"
declare -g NAME="ISL" declare -g NAME="ISL"
declare -g HELP="usage: isl [-a | --add <URL>] | [-c | --cat [-r | --reverse]] | [-H | --html_dump [-i | --inline] [-r | --reverse]] | [-t | --top [-m | --image]] | [[-h | --help] | [-V | --version] [-T | --test] [-v | --verbose]" declare -g HELP="usage: isl [-a | --add <URL>] | [-c | --cat [-r | --reverse]] | [-H | --html_dump [-i | --inline] [-r | --reverse]] | [-t | --top [-m | --image]] | [[-h | --help] | [-V | --version] [-T | --test] [-v | --verbose]"
@@ -90,7 +90,7 @@ function isl_args_parse()
# #
--) shift; break;; --) shift; break;;
*) echo_error "args_parse internal error [$1] !"; exit 1;; *) echo_error "args_parse internal error [$1] !"; exit 1;;
esac esac
done done
@@ -149,7 +149,6 @@ isl_version_print()
isl_help_print() isl_help_print()
{ {
version_print
help_print help_print
} }
@@ -157,30 +156,6 @@ isl_help_print()
#-----------------------------------------------------------------------------------------------------------------------------------
# ISL Print
#-----------------------------------------------------------------------------------------------------------------------------------
isl_print()
{
local inline="$1"
shift
if [[ "${inline}" == "TRUE" ]]
then
str="%s"'\\n'
else
str="%s"'\n'
fi
cmd_exec printf "${str}" "$*"
}
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
# ISL Add # ISL Add
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
@@ -273,9 +248,9 @@ isl_html_dump()
if [[ $(( $i % 2)) -eq 0 ]] if [[ $(( $i % 2)) -eq 0 ]]
then then
isl_print "${inline}" ' <tr class="shade">' print "${inline}" ' <tr class="shade">'
else else
isl_print "${inline}" " <tr>" print "${inline}" " <tr>"
fi fi
j=1 j=1
@@ -283,15 +258,15 @@ isl_html_dump()
do do
if [[ "$j" == "1" ]] if [[ "$j" == "1" ]]
then then
isl_print "${inline}" " <th>${!j}</th>" print "${inline}" " <th>${!j}</th>"
else else
isl_print "${inline}" " <td>${!j}</td>" print "${inline}" " <td>${!j}</td>"
fi fi
j=$(( $j + 1)) j=$(( $j + 1))
done done
isl_print "${inline}" " </tr>" print "${inline}" " </tr>"
i=$(( $i + 1)) i=$(( $i + 1))
done done
} }
@@ -335,6 +310,8 @@ isl_top()
# Main # Main
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
vsl_add
orig_args=("$@") orig_args=("$@")
isl_args_parse "$@" isl_args_parse "$@"

View File

@@ -39,8 +39,8 @@
# Global Variables # Global Variables
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
declare -g VERSION="1.0.2" declare -g VERSION="1.2.0"
declare -g NAME="URPMI Setup" declare -g NAME="URPMI-Setup"
declare -g HELP="usage: urpmi-setup [ [-d | --distrib <Distrib>] [-m | --mirror-mga <Mirror_List>] [-r | --mirror-rx3 <Mirror_List>] ] | [-h | --help] | [-V | --version] [ [ -D | --dump] | [-T | --test] ] [-u | --update] [-v | --verbose] ) ]" declare -g HELP="usage: urpmi-setup [ [-d | --distrib <Distrib>] [-m | --mirror-mga <Mirror_List>] [-r | --mirror-rx3 <Mirror_List>] ] | [-h | --help] | [-V | --version] [ [ -D | --dump] | [-T | --test] ] [-u | --update] [-v | --verbose] ) ]"
declare -g DISTRIB_DEF="9" declare -g DISTRIB_DEF="9"
@@ -110,7 +110,7 @@ function us_args_parse()
# #
--) shift; break;; --) shift; break;;
*) echo_error "args_parse internal error [$1] !"; exit 1;; *) echo_error "args_parse internal error [$1] !"; exit 1;;
esac esac
done done
@@ -153,7 +153,6 @@ us_version_print()
us_help_print() us_help_print()
{ {
version_print
help_print help_print
} }
@@ -165,13 +164,14 @@ us_help_print()
# Main # Main
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
vsl_add
orig_args=("$@") orig_args=("$@")
us_args_parse "$@" us_args_parse "$@"
case "${MODE}" in case "${MODE}" in
"EXIT") "EXIT")
exit ${EXIT_CODE} exit ${EXIT_CODE}
;; ;;
@@ -188,7 +188,6 @@ case "${MODE}" in
esac esac
echo_error "${NAME}: Mode: [${MODE}] Verbose: [${VERBOSE}] Dump: [${DUMP}] Dry_Run: [${DRY_RUN}] Distrib: [${DISTRIB}] MirrorList_MGA: [${MIRRORLIST_MGA}] MirrorList_RX3: [${MIRRORLIST_RX3}] Update: [${UPDATE}]" echo_error "${NAME}: Mode: [${MODE}] Verbose: [${VERBOSE}] Dump: [${DUMP}] Dry_Run: [${DRY_RUN}] Distrib: [${DISTRIB}] MirrorList_MGA: [${MIRRORLIST_MGA}] MirrorList_RX3: [${MIRRORLIST_RX3}] Update: [${UPDATE}]"
cmd_exec urpmi.removemedia -a cmd_exec urpmi.removemedia -a