commit b24d160c2545c421e5b56cc6c45872617e0b0dbc Author: Adrian Schröter Date: Thu Sep 14 09:42:26 2023 +0200 Sync from SUSE:ALP:Source:Standard:1.0 base-image revision 1338de320d8f4982e7c6c5ae67e11e39 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/_service b/_service new file mode 100644 index 0000000..bd1abb0 --- /dev/null +++ b/_service @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/base-image.changes b/base-image.changes new file mode 100644 index 0000000..a67dcff --- /dev/null +++ b/base-image.changes @@ -0,0 +1,221 @@ +------------------------------------------------------------------- +Wed Aug 9 15:57:17 UTC 2023 - Dirk Müller + +- uninstall compat-usrmerge-tools + +------------------------------------------------------------------- +Wed Jul 12 12:36:04 UTC 2023 - Dirk Müller + +- add openssl explicitly to restore compatibility with SLE BCI + +------------------------------------------------------------------- +Thu Jul 6 09:01:05 UTC 2023 - Dirk Müller + +- add lsb-release +- hardlink the license files (saves 612352 bytes, which is enough + to fit in 12000 bytes of lsb-release) + +------------------------------------------------------------------- +Mon Apr 3 07:38:39 UTC 2023 - Dominique Leuenberger + +- config.sh: attempt to force delete /var/log/lastlog; don't fail + in case it already does not exist. + +------------------------------------------------------------------- +Thu Feb 23 15:36:39 UTC 2023 - Fabian Vogt + +- Add tar and gzip for simpler use in GitHub actions and similar + environments (jsc#PED-3548) + +------------------------------------------------------------------- +Wed Jul 20 12:41:11 UTC 2022 - Fabian Vogt + +- Add curl (jsc#SLE-23748) and timezone (bsc#1201537) + +------------------------------------------------------------------- +Wed Mar 9 15:17:10 UTC 2022 - Fabian Vogt + +- Add org.opencontainers.image.source label + +------------------------------------------------------------------- +Mon Feb 7 15:08:12 UTC 2022 - Fabian Vogt + +- Clean /var/log and /var/cache/zypp more explicitly to keep + file ownership intact +- Remove redundant call to zypper clean + +------------------------------------------------------------------- +Fri Jan 14 12:28:34 UTC 2022 - Dan Čermák + +- Cleanup /var/log, /var/cache/zypp and clear zypper's caches + +------------------------------------------------------------------- +Fri Jun 18 12:36:07 UTC 2021 - Fabian Vogt + +- Add patterns-base-fips to work also in FIPS environments (bsc#1183154) + +------------------------------------------------------------------- +Wed Apr 28 08:50:14 UTC 2021 - Fabian Vogt + +- Delete lastlog to work around missing support for sparse files in + go's tar writing code + +------------------------------------------------------------------- +Tue Mar 9 10:00:43 UTC 2021 - Fabian Vogt + +- Force the container's arch in zypp.conf on 32bit x86 +- openSUSE-release-appliance-docker is available meanwhile + +------------------------------------------------------------------- +Fri Oct 23 16:20:11 UTC 2020 - Ludwig Nussel + +- add systemd flavor that uses networkd and resolved. Useful and quick + booting for use in machined + +------------------------------------------------------------------- +Mon Jul 13 12:43:03 UTC 2020 - Ludwig Nussel + +- include iproute2 in lxc build + +------------------------------------------------------------------- +Fri Apr 17 14:28:44 UTC 2020 - Fabian Vogt + +- Add systemd-sysvinit to the lxc flavor for /sbin/init (boo#1169002) + +------------------------------------------------------------------- +Tue Apr 14 13:47:44 UTC 2020 - Fabian Vogt + +- Avoid using as it recreates + AnonymousUniqueId (gh#OSInside/kiwi#1396) + +------------------------------------------------------------------- +Thu Apr 2 12:16:44 UTC 2020 - Fabian Vogt + +- Install everything except for systemd/wicked in the bootstrap section +- Remove unneeded settings +- Drop explicit krb5 dep +- Add a proper LICENSE file, drop the header from config.sh +- Let kiwi uninstall live-add-yast-repos + +------------------------------------------------------------------- +Tue Feb 4 11:08:29 UTC 2020 - Fabian Vogt + +- Drop call of suseSetupProduct in config.sh, it needs find which + isn't installed anymore. Setting up baseproduct is done by the + release package's %post script already. +- Replace find call in config.sh with glob expansion +- Use set -x + +------------------------------------------------------------------- +Thu Aug 8 08:45:26 UTC 2019 - Fabian Vogt + +- Remove wrong comment + +------------------------------------------------------------------- +Thu Jul 25 12:47:27 UTC 2019 - Fabian Vogt + +- Don't install shadow, mention zypper and bash explicitly + +------------------------------------------------------------------- +Mon Mar 4 08:37:53 UTC 2019 - Fabian Vogt + +- Switch from kubic-locale-archive to glibc-locale-base + +------------------------------------------------------------------- +Thu Feb 28 15:49:30 UTC 2019 - Fabian Vogt + +- Add comment for obsrepositories back, as requested. + Let's see how long it stays this time. + +------------------------------------------------------------------- +Mon Feb 25 07:54:36 UTC 2019 - Fabian Vogt + +- Use correct org.opencontainers.image prefix + +------------------------------------------------------------------- +Thu Jan 10 15:47:40 UTC 2019 - Fabian Vogt + +- Add labels and a history entry as defined in the wiki by using + OBS services (fate#326856, bsc#1118103, boo#1119378) +- Remove comments for obsrepositories in derived containers - now implemented differently + +------------------------------------------------------------------- +Tue Dec 4 08:52:11 UTC 2018 - Adrian Schröter + +- define repositories to use for installing packages within OBS + +------------------------------------------------------------------- +Wed Oct 24 09:30:25 UTC 2018 - Fabian Vogt + +- Use "latest" as tag, "current" does not apply to the new release + workflow + +------------------------------------------------------------------- +Mon Jul 23 08:02:34 UTC 2018 - fvogt@suse.com + +- Remove stray '#' (boo#1102145) + +------------------------------------------------------------------- +Thu Jun 21 11:53:15 UTC 2018 - fvogt@suse.com + +- Remove zypp UUID (bsc#1098535) + +------------------------------------------------------------------- +Wed Jun 6 15:12:42 UTC 2018 - fvogt@suse.com + +- Use _multibuild to build both docker-compatible and lxc-compatible + images + +------------------------------------------------------------------- +Thu Mar 22 13:18:28 UTC 2018 - fvogt@suse.com + +- Use live-add-yast-repos + +------------------------------------------------------------------- +Fri Mar 16 14:24:53 UTC 2018 - fvogt@suse.com + +- Decouple from git +- Remove iputils (bsc#1085664) +- Set myself as maintainer + +------------------------------------------------------------------- +Thu Feb 22 08:51:42 UTC 2018 - containers@suse.com + +- Update to version 1519137101.bf29ee4: + * Rename the openSUSE Tumbleweed image + * Use opensuse/tumbleweed instead of opensuse:tumbleweed + * Use openSUSE-release-ftp instead of -mini, the latter is not in the repo + * TW: Clean up config.sh + * Follow the naming convention used in Kubic images (#96) + * Removing 'docker' references from sources (#95) + * Cleanup kiwi description file and config.sh (#93) + * Missing semi-colons + * Add missing semi-colons (#80) + * Update repositories management and remove Leap 42.1 (#79) + +------------------------------------------------------------------- +Tue Feb 06 15:50:40 UTC 2018 - containers@suse.com + +- Update to version 1517932213.43160c7: + * Follow the naming convention used in Kubic images (#96) + +------------------------------------------------------------------- +Tue Feb 06 15:34:07 UTC 2018 - containers@suse.com + +- Update to version 1517931143.2a0dc8a: + * Removing 'docker' references from sources (#95) + +------------------------------------------------------------------- +Tue Feb 06 15:09:37 UTC 2018 - containers@suse.com + +- Update to version 1517505535.daff6ca: + * Cleanup kiwi description file and config.sh (#93) + * Missing semi-colons + * Add missing semi-colons (#80) + * Update repositories management and remove Leap 42.1 (#79) + * Uncompress all root.tar.gz files + * Update author and contact email in the KIWI file + * Update root overlay tarball compression format + * Update old KIWI files to the current KIWI-NG + * Include krb5 package + * Fixed case of Tumbleweed release name diff --git a/base-image.kiwi b/base-image.kiwi new file mode 100644 index 0000000..71ebcae --- /dev/null +++ b/base-image.kiwi @@ -0,0 +1,69 @@ + + + + + + + + + SUSE LLC + https://www.suse.com/ + Basalt Project BCI Base Container Image + + + + + + + + + + + 2023 + zypper + false + true + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/config.sh b/config.sh new file mode 100644 index 0000000..81e8493 --- /dev/null +++ b/config.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# SPDX-License-Identifier: MIT +# SPDX-FileCopyrightText: (c) 2022-2023 SUSE LLC + +set -euo pipefail + +test -f /.kconfig && . /.kconfig +test -f /.profile && . /.profile + +echo "Configure image: [$kiwi_iname]..." + +#============================================ +# Import repositories' keys if rpm is present +#-------------------------------------------- +if command -v rpm > /dev/null; then + suseImportBuildKey +fi + +echo "Configure image: [$kiwi_iname]..." + +# FIXME: stop hardcoding the url, use some external mechanism once available +zypper ar 'https://updates.suse.com/SUSE/Products/ALP-Micro/1.0/$basearch/product/' alp-micro + +#====================================== +# Disable recommends +#-------------------------------------- +sed -i 's/.*solver.onlyRequires.*/solver.onlyRequires = true/g' /etc/zypp/zypp.conf + +#====================================== +# Exclude docs intallation +#-------------------------------------- +sed -i 's/.*rpm.install.excludedocs.*/rpm.install.excludedocs = yes/g' /etc/zypp/zypp.conf + +#====================================== +# Remove locale files +#-------------------------------------- +shopt -s globstar +rm -f /usr/share/locale/**/*.mo + +# Remove zypp uuid (bsc#1098535) +rm -f /var/lib/zypp/AnonymousUniqueId + +# Remove various log files. While it's possible to just rm -rf /var/log/*, that +# would also remove some package owned directories (not %ghost) and some files +# are actually wanted, like lastlog in the !docker case. +# For those wondering about YaST2 here: Kiwi writes /etc/hosts, so the version +# from the netcfg package ends up as /etc/hosts.rpmnew, which zypper writes a +# letter about to /var/log/YaST2/config_diff_2022_03_06.log. Kiwi fixes this, +# but the log file remains. +rm -rf /var/log/{zypper.log,zypp/history,YaST2} + +# Remove the entire zypper cache content (not the dir itself, owned by libzypp) +rm -rf /var/cache/zypp/* + +# Assign a fixed architecture in zypp.conf, to use the container's arch even if +# the host arch differs (e.g. docker with --platform doesn't affect uname) +arch=$(rpm -q --qf %{arch} glibc) +if [ "$arch" = "i586" ] || [ "$arch" = "i686" ]; then + sed -i "s/^# arch =.*\$/arch = i686/" /etc/zypp/zypp.conf + # Verify that it's applied + grep -q '^arch =' /etc/zypp/zypp.conf +fi + + +#======================================= +# Clean up after zypper if it is present +#--------------------------------------- +if command -v zypper > /dev/null; then + zypper -n clean +fi + +rm -rf /var/log/zypp + +exit 0