16 Commits

Author SHA1 Message Date
f07cca6df2 - Add line shading in isl_dump_html function. 2026-02-16 08:52:35 +01:00
9175496bde - Improve ISL management. 2026-02-14 12:08:21 +01:00
a07e6d6fc6 - Add Image Stacking Log functions,
- Add ISL support,
- Rebuild for updates.
2026-02-13 19:19:39 +01:00
e9109899d7 - Finally rename file_disable into file_enable! 2025-11-28 10:33:17 +01:00
8c8276691d - Fix file_disable function export. 2025-11-28 10:12:07 +01:00
e64e12a8dd - Rebuild for updates,
- Rename file_disenable function into file_disable.
2025-11-28 10:01:41 +01:00
c8b8c35970 - Rebuild for updates. 2025-09-19 17:22:57 +02:00
f378119ad0 - Add file_disenable() function,
- Rebuild for updates.
2025-06-26 17:57:13 +02:00
5095c8d9ac - Add Rx3 testing media source,
- Rebuild for updates.
2025-05-28 17:05:23 +02:00
77ed04d07b - Add i586 arch,
- Rebuild for updates.
2025-04-13 10:37:16 +02:00
db9a0b4279 - Add Rx3 urpmi media source,
- Rebuild for updates.
2025-03-08 11:39:42 +01:00
065a98426c - Fix compose indetation. 2024-11-11 23:04:02 +01:00
c2b1abf29d - Move & Rename repo from Rx3/Base-MGA9 to Rx3-Docker/Base,
- New version naming standard,
- Now use docker_tools for .env building,
- Add ceteval bash function,
- Strip down the base:
  - Remove python,
  - Remove dnf,
  - Rmove xz,
  - Remove unused libraries.
2024-11-10 23:20:19 +01:00
c576a65a93 - Add mpm 1.0.0 (Meta Package Manager),
- Fix mirror list in ReadMe.txt.
2024-10-04 14:55:18 +02:00
e9bafeed3f - Add mirror list to urpmi and use Rx3 internal & external mirrors first. 2024-10-02 14:14:54 +02:00
ae9fa2dba6 - Add xz rpm. 2024-08-28 16:09:58 +02:00
5 changed files with 366 additions and 41 deletions

View File

@@ -1,8 +1,9 @@
# Rx3 Base Mageia-9 Docker Image
# Rx3-Docker/Base Docker Image
#-------------------------------------------------------------------------------
FROM mageia:9
ARG IMG_URL
ARG LANG
ARG LANGUAGE
ARG LOCALTIME
@@ -18,33 +19,241 @@ LANGUAGE=${LANGUAGE}"
ARG RX3_SH='export PAGER=less \n\
export MANPAGER="less -isr" \n\
export EDITOR=emacs \n\
export ISL_FILE=/etc/img_stack_log \n\
\n\
\n\
\n\
cateval() \n\
{ \n\
while read line \n\
do \n\
eval $line 2>/dev/null \n\
eval echo $( echo $line | sed -e `s/"/\\"/g`) \n\
done <$1 \n\
} \n\
\n\
export -f cateval \n\
\n\
\n\
\n\
print() \n\
{ \n\
if [[ "$1" == "-i" ]] \n\
then \n\
shift \n\
\n\
str="%s"`\\\\n` \n\
else \n\
str="%s"`\\n` \n\
fi \n\
\n\
printf "${str}" "$*" \n\
} \n\
\n\
export -f print \n\
\n\
\n\
\n\
file_enable() \n\
{ \n\
fd_file="$1" \n\
fd_state="$2" \n\
\n\
\n\
if [[ "$fd_state" == "TRUE" ]] \n\
then \n\
if [[ ! -f "${fd_file}" ]] \n\
then \n\
mv ${fd_file}.disable ${fd_file} \n\
fi \n\
else \n\
if [[ -f "${fd_file}" ]] \n\
then \n\
mv ${fd_file} ${fd_file}.disable \n\
fi \n\
fi \n\
} \n\
\n\
export -f file_enable \n\
\n\
\n\
\n\
isl_add() \n\
{ \n\
url="$1" \n\
\n\
\n\
reg=${url%%/*} \n\
\n\
if [[ "${reg}" == *.* ]] \n\
then \n\
url=${url#*/} \n\
else \n\
reg="-" \n\
fi \n\
\n\
tag=${url/*:} \n\
name=${url%:*} \n\
\n\
if [[ "${tag}" == "${name}" ]] \n\
then \n\
echo "Bad tag format in URL!" \n\
return 1 \n\
fi \n\
\n\
ts=$(date -u +"%Y/%m/%d %H:%M:%S") \n\
\n\
if [[ ! -e ${ISL_FILE} ]] \n\
then \n\
id=1 \n\
else \n\
id=$(( $(wc -l <${ISL_FILE}) + 1)) \n\
fi \n\
\n\
str="${id} ${ts} ${reg} ${name} ${tag}" \n\
\n\
if [[ $id == "1" ]] \n\
then \n\
echo "${str}" >${ISL_FILE} \n\
else \n\
sed -i `1i\`"${str}" ${ISL_FILE} \n\
fi \n\
} \n\
\n\
export -f isl_add \n\
\n\
\n\
\n\
isl_top() \n\
{ \n\
line=$( head -1 ${ISL_FILE}) \n\
\n\
if [[ "$1" == "-i" ]] \n\
then \n\
set ${line} \n\
\n\
echo "$5:$6" \n\
else \n\
echo "${line}" \n\
fi \n\
} \n\
\n\
export -f isl_top \n\
\n\
\n\
\n\
isl_cat() \n\
{ \n\
if [[ "$1" == "-r" ]] \n\
then \n\
tac ${ISL_FILE} \n\
else \n\
cat ${ISL_FILE} \n\
fi \n\
} \n\
\n\
export -f isl_cat \n\
\n\
\n\
\n\
isl_html_dump() \n\
{ \n\
r_flag="" \n\
i_flag="" \n\
\n\
while [[ $# -gt 0 ]] \n\
do \n\
if [[ "$1" == "-r" ]] \n\
then \n\
r_flag="$1" \n\
else \n\
if [[ "$1" == "-i" ]] \n\
then \n\
i_flag="-i" \n\
fi \n\
fi \n\
\n\
shift \n\
done \n\
\n\
i=1 \n\
\n\
isl_cat "${r_flag}" | while read line \n\
do \n\
set $line \n\
\n\
if [[ $(( $i % 2)) -eq 0 ]] \n\
then \n\
print "${i_flag}" ` <tr class="shade">` \n\
else \n\
print "${i_flag}" " <tr>" \n\
fi \n\
\n\
j=1 \n\
while [[ $j -lt 7 ]] \n\
do \n\
if [[ "$j" == "1" ]] \n\
then \n\
print "${i_flag}" " <th>${!j}</th>" \n\
else \n\
print "${i_flag}" " <td>${!j}</td>" \n\
fi \n\
\n\
j=$(( $j + 1)) \n\
done \n\
\n\
print "${i_flag}" " </tr>" \n\
i=$(( $i + 1)) \n\
done \n\
} \n\
\n\
export -f isl_html_dump \n\
\n\
\n\
\n\
alias ll="ls -la" \n\
alias em="emacs"'
#---------------------------------------------------------------------------------------------------
ARG MIRRORLIST_MGA='http://mirror.xor.rx3/mageia/distrib/9/x86_64 https://mirror.rx3.net/mageia/distrib/9/x86_64 ftp://ftp.proxad.net/mirrors/mageia.org/distrib/9/x86_64 http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/9/x86_64'
ARG MIRRORLIST_RX3='http://mirror.xor.rx3/rx3/distrib/9/x86_64 https://mirror.rx3.net/rx3/distrib/9/x86_64'
ARG GIT_MPM_REPO='https://git.rx3.org/gitea/Rx3/mpm/raw/tag/mpm-1.0.0'
RUN echo -e "${LOCALE_CONF}" | sed -e 's/ *$//' > /etc/locale.conf \
&& ln -s /usr/share/zoneinfo/${LOCALTIME} /etc/localtime \
&& urpmi.removemedia -a \
&& urpmi.addmedia --distrib http://ftp.free.fr/mirrors/mageia.org/distrib/9/x86_64 \
&& urpmi.update --no-ignore "Nonfree Release" "Nonfree Updates" "Tainted Release" "Tainted Updates" \
&& urpmi.update -a \
&& urpmi --force --replacepkgs glibc locales locales-en \
&& urpmi --force --auto-update \
&& rm -f /var/log/dnf* /var/log/hawkey.log \
&& echo -e "${RX3_SH}" | sed -e 's/ *$//' >/etc/profile.d/rx3.sh
RUN echo -e "${LOCALE_CONF}" | sed -e 's/ *$//' > /etc/locale.conf \
&& ln -s /usr/share/zoneinfo/${LOCALTIME} /etc/localtime \
&& urpmi.removemedia -a \
&& rm -f /var/cache/urpmi/mirrors.cache \
&& urpmi.addmedia --distrib --mirrorlist "${MIRRORLIST_MGA}" \
&& urpmi.addmedia --distrib --mirrorlist "${MIRRORLIST_RX3}" \
&& for arch in "" "32bit "; do for media in "Core" "Nonfree" "Tainted"; do for type in "Release" "Updates"; do urpmi.update --no-ignore "${media} ${arch}${type}"; done; done; done \
&& urpmi.update -a \
&& urpmi --force --replacepkgs glibc locales locales-en \
&& rpm -e $(rpm -qa | grep -e python -e dnf) gobject-introspection \
&& rpm -e lib64comps0 lib64gio2.0_0 lib64girepository1.0_1 lib64glib-gir2.0 lib64gpgme11 lib64modulemd2 lib64modulemd-gir2.0 lib64mpdec3 lib64nsl2 lib64repo0 lib64rpmsign9 lib64solv1 lib64yaml0_2 lib64zck1 \
&& urpmi --force --auto-update \
&& rm -f /var/log/dnf* /var/log/hawkey.log \
&& echo -e "${RX3_SH}" | sed -e "s/\`/'/g" -e 's/ *$//' >/etc/profile.d/rx3.sh \
&& . /etc/profile.d/rx3.sh && isl_add ${IMG_URL}
ADD ${GIT_MPM_REPO}/sbin/mpm /usr/local/sbin
ADD ${GIT_MPM_REPO}/etc/mpm.conf /etc
RUN chmod u+x /usr/local/sbin/mpm
#COPY usr/local/sbin/mpm /usr/local/sbin
#COPY etc/mpm.conf /etc
FROM scratch
ARG IMG_NAME
ARG IMG_FULL_NAME
ARG IMG_NAME_FULL
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_NAME}.name=${IMG_FULL_NAME}
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}

View File

@@ -1,14 +1,24 @@
Welcome to Rx3/Base-Mga9 docker image!
Welcome to Rx3-Docker/Base docker image!
This is project aims to build a Mageia 9 base docker image to be used by others Rx3 packaging projects.
This project aims to build a Mageia base docker image to be used by other Rx3 packaging projects.
Features:
- Curtently based on official Mageia9 docker image from github.io,
- Enable urpmi "Core", "Nonfree" and "Tainted" medium from "http://ftp.free.fr/" mirror,
- Curtently based on official Mageia 9 docker image from github.io,
- Enable urpmi "Core", "Nonfree" and "Tainted" medium (x86-64 + i586) from mirror list:
- http://mirror.xor.rx3/,
- https://mirror.rx3.net/,
- ftp://ftp.proxad.net/,
- http://distrib-coffee.ipsl.jussieu.fr/,
- Enable urpmi "Rx3" default and testings (disabled) media from mirror list:
- http://mirror.xor.rx3/,
- https://mirror.rx3.net/,
- Add Rx3 bash seting,
- Mono layered (Mageia + Rx3 Updates)
- Mono layered (Mageia + Rx3 Updates),
- Strip down base (python & dnf removed),
- Image stacking log support.
Enjoy it!
@@ -16,4 +26,4 @@ Enjoy it!
Your Rx3 Team.
arnaud@rx3.net
https://git.rx3.org/gitea/rx3/base-mga9
https://git.rx3.org/gitea/rx3-docker/base

View File

@@ -1,3 +1,105 @@
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.4.0 - A. GIBERT - 2026/02/16
------------------------------------------------------------------------------------------------------------------------------------
- Add Image Stacking Log functions,
- Add ISL support,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.6 - A. GIBERT - 2025/11/28
------------------------------------------------------------------------------------------------------------------------------------
- Rebuild for updates,
- Rename file_disenable function into file_enable.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.5 - A. GIBERT - 2025/09/19
------------------------------------------------------------------------------------------------------------------------------------
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.4 - A. GIBERT - 2025/06/26
------------------------------------------------------------------------------------------------------------------------------------
- Add file_disenable() function,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.3 - A. GIBERT - 2025/05/28
------------------------------------------------------------------------------------------------------------------------------------
- Add Rx3 testing media source,
- Rebuild for updates.
Rx3-Docker/Base V 1.3.2 - A. GIBERT - 2025/04/13
------------------------------------------------------------------------------------------------------------------------------------
- Add i586 arch,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.1 - A. GIBERT - 2025/03/08
------------------------------------------------------------------------------------------------------------------------------------
- Add Rx3 urpmi media source,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/Base V 1.3.0 - A. GIBERT - 2024/11/10
------------------------------------------------------------------------------------------------------------------------------------
- Move & Rename repo from Rx3/Base-MGA9 to Rx3-Docker/Base,
- New version naming standard,
- Now use docker_tools for .env building,
- Add ceteval bash function,
- Strip down the base:
- Remove python,
- Remove dnf,
- Remove xz,
- Remove unused libraries.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/Base-Mga9 V 1.2.6 - A. GIBERT - 2024/10/04
------------------------------------------------------------------------------------------------------------------------------------
- Add mpm 1.0.0 (Meta Package Manager).
------------------------------------------------------------------------------------------------------------------------------------
Rx3/Base-Mga9 V 1.2.5 - A. GIBERT - 2024/10/02
------------------------------------------------------------------------------------------------------------------------------------
- Add mirror list to urpmi and use Rx3 internal & external mirrors first.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/Base-Mga9 V 1.2.4 - A. GIBERT - 2024/08/28
------------------------------------------------------------------------------------------------------------------------------------
- Add xz rpm.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/Base-Mga9 V 1.2.3 - A. GIBERT - 2024/08/27
------------------------------------------------------------------------------------------------------------------------------------

View File

@@ -1,24 +1,26 @@
# Rx3 Base Mageia-9 Docker Image
# Rx3-Docker/Base Docker Image
#-------------------------------------------------------------------------------
name: ${IMG_NAME}
name: ${IMG_NAME}
services:
default:
container_name: ${IMG_NAME}
base:
container_name: ${IMG_NAME}
hostname: ${IMG_NAME}
image: ${IMG_URL}
image: ${IMG_URL}
build:
context: .
context: .
args:
- IMG_NAME=${IMG_NAME}
- IMG_FULL_NAME=${IMG_FULL_NAME}
- IMG_VERSION=${IMG_VERSION}
- IMG_MAINTAINER=${IMG_MAINTAINER}
- LANG=${LANG}
- LANGUAGE=${LANGUAGE}
- LOCALTIME=${LOCALTIME}
IMG_NAME: ${IMG_NAME}
IMG_NAME_FULL: ${IMG_NAME_FULL}
IMG_VERSION: ${IMG_VERSION}
IMG_MAINTAINER: ${IMG_MAINTAINER}
IMG_URL: ${IMG_URL}
LANG: ${LANG}
LANGUAGE: ${LANGUAGE}
LOCALTIME: ${LOCALTIME}
restart: unless-stopped
restart: unless-stopped

View File

@@ -1,13 +1,14 @@
# Rx3 Base Mageia-9 Docker Image
# Rx3-Docker/Base Docker Image
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Global Settings
#-------------------------------------------------------------------------------
IMG_ORG="rx3"
IMG_REGISTRY="docker.xor.rx3:5000"
IMG_URL_PREFIX="${IMG_REGISTRY}/${IMG_ORG}"
ORG_NAME="rx3-docker"
ORG_REGISTRY="docker.xor.rx3:5000"
ORG_URL_PREFIX="${ORG_REGISTRY}/${ORG_NAME}"
@@ -15,12 +16,13 @@ IMG_URL_PREFIX="${IMG_REGISTRY}/${IMG_ORG}"
# Image Settings
#-------------------------------------------------------------------------------
IMG_NAME="base-mga9"
IMG_FULL_NAME="Rx3 Base Mageia-9 Docker Image"
IMG_VERSION="1.2.3"
IMG_URL="${IMG_URL_PREFIX}/${IMG_NAME}:${IMG_VERSION}"
IMG_NAME="base"
IMG_NAME_FULL="Rx3-Docker/Base Docker Image"
IMG_VERSION="1.4.0-mga9"
IMG_MAINTAINER='"Arnaud G. GIBERT" <arnaud@rx3.net>'
IMG_URL_PREFIX="${ORG_URL_PREFIX}"
IMG_URL="${IMG_URL_PREFIX}/${IMG_NAME}:${IMG_VERSION}"
#-------------------------------------------------------------------------------