Sync with Tumblewed #2
@@ -1,3 +1,4 @@
|
||||
<multibuild>
|
||||
<flavor>docker</flavor>
|
||||
<flavor>lxc</flavor>
|
||||
</multibuild>
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
<label name="org.opencontainers.image.vendor" value="openSUSE Project"/>
|
||||
<label name="org.opencontainers.image.url" value="https://www.opensuse.org/"/>
|
||||
<label name="org.opencontainers.image.source" value="%SOURCEURL%"/>
|
||||
<label name="org.opensuse.lifecycle-url" value="https://en.opensuse.org/Lifetime"/>
|
||||
<label name="org.opensuse.reference" value="registry.opensuse.org/opensuse/leap:%OS_VERSION_ID%.%RELEASE%"/>
|
||||
<label name="org.openbuildservice.disturl" value="%DISTURL%"/>
|
||||
</suse_label_helper:add_prefix>
|
||||
@@ -37,33 +38,68 @@
|
||||
</type>
|
||||
<version>16.0.0</version>
|
||||
<packagemanager>zypper</packagemanager>
|
||||
<rpm-excludedocs>true</rpm-excludedocs>
|
||||
</preferences>
|
||||
<preferences profiles="lxc">
|
||||
<type image="tbz"/>
|
||||
<version>1.0.0</version>
|
||||
<packagemanager>zypper</packagemanager>
|
||||
<rpm-check-signatures>false</rpm-check-signatures>
|
||||
<rpm-excludedocs>true</rpm-excludedocs>
|
||||
</preferences>
|
||||
<preferences profiles="networkd">
|
||||
<type image="tbz"/>
|
||||
<version>1.0.0</version>
|
||||
<packagemanager>zypper</packagemanager>
|
||||
<rpm-check-signatures>false</rpm-check-signatures>
|
||||
<rpm-excludedocs>true</rpm-excludedocs>
|
||||
</preferences>
|
||||
<repository>
|
||||
<source path="obsrepositories:/"/>
|
||||
</repository>
|
||||
<packages type="image">
|
||||
<package name="ca-certificates"/>
|
||||
<package name="ca-certificates-mozilla"/>
|
||||
<package name="coreutils"/>
|
||||
<package name="curl"/>
|
||||
<package name="openSUSE-build-key"/>
|
||||
<packages type="image" profiles="networkd">
|
||||
<package name="systemd"/>
|
||||
<package name="systemd-networkd"/>
|
||||
<package name="systemd-resolved"/>
|
||||
<package name="systemd-sysvinit"/>
|
||||
<package name="iproute2"/>
|
||||
<package name="openSUSE-repos"/>
|
||||
</packages>
|
||||
<packages type="image" profiles="lxc">
|
||||
<package name="systemd"/>
|
||||
<package name="systemd-sysvinit"/>
|
||||
<package name="wicked"/>
|
||||
<package name="iproute2"/>
|
||||
<package name="openSUSE-repos"/>
|
||||
<package name="timezone"/>
|
||||
<package name="netcfg"/>
|
||||
<package name="procps"/>
|
||||
</packages>
|
||||
<packages type="bootstrap">
|
||||
<package name="aaa_base"/>
|
||||
<package name="bash"/>
|
||||
<package name="ca-certificates"/>
|
||||
<package name="ca-certificates-mozilla"/>
|
||||
<package name="coreutils"/>
|
||||
<package name="cracklib-dict-small"/>
|
||||
<package name="libcurl-mini4"/>
|
||||
<package name="curl"/>
|
||||
<package name="filesystem"/>
|
||||
<package name="kubic-locale-archive"/>
|
||||
<package name="glibc-locale-base"/>
|
||||
<package name="gzip"/>
|
||||
<package name="lsb-release"/>
|
||||
<package name="netcfg"/>
|
||||
<package name="openssl"/>
|
||||
<package name="patterns-base-fips"/>
|
||||
<package name="rpm-ndb" replaces="rpm"/>
|
||||
<package name="openSUSE-build-key"/>
|
||||
<package name="openSUSE-release"/>
|
||||
<!-- <package name="openSUSE-release-appliance-docker"/> -->
|
||||
<package name="patterns-base-minimal_base"/>
|
||||
<package name="patterns-base-fips"/>
|
||||
<package name="procps"/>
|
||||
<package name="shadow"/>
|
||||
<package name="tar"/>
|
||||
<package name="timezone"/>
|
||||
<package name="user(nobody)"/> <!-- Needed for Podman, see bsc#1212118 -->
|
||||
<package name="zypper"/>
|
||||
<!-- Only used in config.sh and then removed again -->
|
||||
<package name="jdupes"/>
|
||||
</packages>
|
||||
</image>
|
||||
|
||||
@@ -1,36 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
test -f /.kconfig && . /.kconfig
|
||||
test -f /.profile && . /.profile
|
||||
|
||||
set -euo pipefail
|
||||
set -euxo pipefail
|
||||
|
||||
echo "Configure image: [$kiwi_iname]..."
|
||||
|
||||
#======================================
|
||||
# Setup baseproduct link
|
||||
#--------------------------------------
|
||||
suseSetupProduct
|
||||
|
||||
#======================================
|
||||
# Import repositories' keys
|
||||
#--------------------------------------
|
||||
suseImportBuildKey
|
||||
|
||||
# don't have multiple licenses of the same type
|
||||
jdupes -1 -L -r /usr/share/licenses
|
||||
|
||||
#======================================
|
||||
# openSUSE-repos-* now provide repos
|
||||
#--------------------------------------
|
||||
zypper --non-interactive rm -u jdupes
|
||||
# Not needed, but neither rpm nor libzypp handle rpmlib(X-CheckUnifiedSystemdir) yet
|
||||
# which would avoid it being installed by the filesystem package
|
||||
rpm -e compat-usrmerge-tools
|
||||
|
||||
#======================================
|
||||
# Disable recommends
|
||||
@@ -38,23 +28,19 @@ suseImportBuildKey
|
||||
sed -i 's/.*solver.onlyRequires.*/solver.onlyRequires = true/g' /etc/zypp/zypp.conf
|
||||
|
||||
#======================================
|
||||
# Exclude docs intallation
|
||||
# Exclude docs installation
|
||||
#--------------------------------------
|
||||
sed -i 's/.*rpm.install.excludedocs.*/# rpm.install.excludedocs = yes/g' /etc/zypp/zypp.conf
|
||||
sed -i 's/.*rpm.install.excludedocs.*/rpm.install.excludedocs = yes/g' /etc/zypp/zypp.conf
|
||||
|
||||
#======================================
|
||||
# Remove locale files
|
||||
#--------------------------------------
|
||||
find /usr/share/locale -name '*.mo' -delete
|
||||
shopt -s globstar
|
||||
rm -f /usr/share/locale/**/*.mo
|
||||
|
||||
#======================================
|
||||
# Remove zypp uuid (bsc#1098535)
|
||||
#--------------------------------------
|
||||
rm -f /var/lib/zypp/AnonymousUniqueId
|
||||
|
||||
#==========================================
|
||||
# Clean up log files
|
||||
#------------------------------------------
|
||||
# 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.
|
||||
@@ -67,22 +53,28 @@ 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/*
|
||||
|
||||
#==========================================
|
||||
# Hack! The go container management tools can't handle sparse files:
|
||||
# https://github.com/golang/go/issues/13548
|
||||
# If lastlog doesn't exist, useradd doesn't attempt to reserve space,
|
||||
# also in derived containers.
|
||||
#------------------------------------------
|
||||
# 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
|
||||
|
||||
if [[ "$kiwi_profiles" == *"docker"* ]]; then
|
||||
# Hack! The go container management tools can't handle sparse files:
|
||||
# https://github.com/golang/go/issues/13548
|
||||
# When lastlog doesn't exist, useradd doesn't attempt to reserve space.
|
||||
rm /var/log/lastlog
|
||||
rm -f /var/log/lastlog
|
||||
fi
|
||||
|
||||
#======================================
|
||||
# Remove locale files
|
||||
#--------------------------------------
|
||||
find /usr/share/locale -name '*.mo' -delete
|
||||
if [[ "$kiwi_profiles" == *"networkd"* ]]; then
|
||||
systemctl enable systemd-networkd
|
||||
systemctl enable systemd-resolved
|
||||
# FIXME: kiwi deletes /etc/resolv.conf so we have to use tmpfiles here.
|
||||
# Should come via some preset package anyways I guess.
|
||||
echo "L /etc/resolv.conf - - - - /run/systemd/resolve/stub-resolv.conf" > /etc/tmpfiles.d/stub-resolv.conf
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -1,3 +1,13 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 18 12:28:57 UTC 2025 - Lubos Kocman <lubos.kocman@suse.com>
|
||||
|
||||
- Sync config.sh and package list with Tumbleweed
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 18 12:22:11 UTC 2025 - Lubos Kocman <lubos.kocman@suse.com>
|
||||
|
||||
- Use glibc-locale-base instead of kubic-locale-archive
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 18 12:09:34 UTC 2025 - Lubos Kocman <lubos.kocman@suse.com>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user