- Switch away from patterns-base-bootloader for grub-bls, not suitable

- Switch away from kiwi's support for grub-bls, does not match sdbootutil

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Images:openSUSE-Tumbleweed/kiwi-templates-Minimal?expand=0&rev=61
This commit is contained in:
Fabian Vogt 2025-03-06 16:41:38 +00:00 committed by Git OBS Bridge
commit 0e1e23dc0e
12 changed files with 1797 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

17
LICENSE Normal file
View File

@ -0,0 +1,17 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

478
Minimal.kiwi Normal file
View File

@ -0,0 +1,478 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- OBS-Profiles: @BUILD_FLAVOR@ -->
<image schemaversion="7.4" name="openSUSE-Tumbleweed-Minimal" displayname="openSUSE Tumbleweed Minimal">
<description type="system">
<author>openSUSE Project</author>
<contact>crc@suse.com</contact>
<specification>openSUSE Tumbleweed Minimal</specification>
</description>
<profiles>
<profile name="kvm-and-xen-sdboot" description="Minimal Image for KVM and Xen with systemd-boot" arch="aarch64,x86_64"/>
<profile name="kvm-and-xen-grub-bls" description="Minimal Image for KVM and Xen GRUB2 and bootctl" arch="aarch64,x86_64"/>
<profile name="kvm-and-xen" description="Minimal Image for KVM and Xen" arch="aarch64,x86_64"/>
<profile name="VMware" description="Minimal Image for VMware" arch="x86_64"/>
<profile name="MS-HyperV" description="Minimal Image for Hyper-V" arch="aarch64,x86_64"/>
<profile name="Cloud" description="Minimal Image for Cloud" arch="aarch64,x86_64"/>
<profile name="RaspberryPi" description="Minimal Image for the Raspberry Pi" arch="aarch64"/>
</profiles>
<preferences profiles="kvm-and-xen" arch="x86_64">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="qcow2"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/i386-pc"/>
<volume name="boot/grub2/x86_64-efi" mountpoint="boot/grub2/x86_64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="kvm-and-xen-sdboot">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="qcow2"
firmware="uefi"
efipartsize="500"
bootpartition="false"
bootkernel="custom"
initrd_system="none"
editbootinstall="editbootinstall_mbr.sh"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<oemconfig>
<oem-resize>false</oem-resize>
</oemconfig>
<bootloader name="custom"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="kvm-and-xen-grub-bls">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="qcow2"
firmware="uefi"
efipartsize="500"
bootpartition="false"
bootkernel="custom"
initrd_system="none"
editbootinstall="editbootinstall_mbr.sh"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<oemconfig>
<oem-resize>false</oem-resize>
</oemconfig>
<bootloader name="custom"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="kvm-and-xen" arch="aarch64">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="qcow2"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="VMware">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="vmdk"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/i386-pc"/>
<volume name="boot/grub2/x86_64-efi" mountpoint="boot/grub2/x86_64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
<machine memory="1024" HWversion="10" guestOS="sles-64">
<vmdisk id="0" controller="lsilogic"/>
</machine>
</type>
</preferences>
<preferences profiles="Cloud">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="xfs"
format="qcow2"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2" timeout="1"/>
<size unit="G">1</size>
</type>
</preferences>
<preferences profiles="MS-HyperV" arch="x86_64">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="vhdx"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2" timeout="10"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/i386-pc"/>
<volume name="boot/grub2/x86_64-efi" mountpoint="boot/grub2/x86_64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="MS-HyperV" arch="aarch64">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
filesystem="btrfs"
format="vhdx"
firmware="uefi"
efipartsize="33"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
bundle_format="%N-VM.%A-%M.%m.%p-%I"
>
<bootloader name="grub2" timeout="10"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="tmp"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<size unit="G">24</size>
</type>
</preferences>
<preferences profiles="RaspberryPi">
<version>1.0.0</version>
<packagemanager>zypper</packagemanager>
<bootloader-theme>openSUSE</bootloader-theme>
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
initrd_system="dracut"
filesystem="btrfs"
fsmountoptions="noatime,compress=lzo"
firmware="efi"
bootpartition="false"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
efipartsize="64"
editbootinstall="editbootinstall_rpi.sh"
bundle_format="%N-Image.%A-%M.%m.%p-%I"
>
<bootloader name="grub2"/>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="opt"/>
<volume name="srv"/>
<volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/>
<volume name="usr/local"/>
<volume name="var" copy_on_write="false"/>
</systemdisk>
<oemconfig>
<oem-swap>true</oem-swap>
<oem-swapsize>1000</oem-swapsize>
<oem-skip-verify>true</oem-skip-verify>
</oemconfig>
</type>
</preferences>
<repository type="rpm-md" >
<source path='obsrepositories:/'/>
</repository>
<packages type="image">
<package name="patterns-base-base"/>
<package name="patterns-base-selinux"/>
<package name="audit"/> <!-- On SLE it's only recommended by the apparmor pattern -->
<package name="aaa_base-extras"/> <!-- wouldn't be SUSE without that ;-) -->
<package name="acl"/>
<package name="chrony"/>
<package name="curl"/> <!-- needed for openQA, maybe delete -->
<package name="dracut"/>
<package name="fipscheck"/>
<package name="group(mail)"/> <!-- needed by useradd bsc#1061838-->
<!-- Previously pam_cracklib was part of pam, but the replacement is only recommended -->
<package name="pam_pwquality"/>
<package name="cracklib-dict-small"/> <!-- Avoid the big 10MiB one -->
<package name="iputils"/>
<package name="issue-generator"/> <!-- bsc#1084879 -->
<package name="vim-small"/>
<package name="haveged"/>
<package name="less"/>
<package name="tar"/>
<package name="parted"/>
<package name="timezone"/>
<package name="iproute2"/>
<package name="openssh"/>
<package name="rsync"/>
<package name="dosfstools"/> <!-- For fscking /boot/efi -->
<package name="procps"/> <!-- For free/ps and other basic utilities -->
<package name="lsof"/> <!-- For zypper ps (bsc#1167553) -->
<package name="live-add-yast-repos"/>
<!-- <package name="rsyslog"/> for SLE -->
<package name="systemd-logger"/> <!-- for openSUSE -->
<package name="zypper-needs-restarting"/> <!-- Some deployment script use this (bsc#1173548) -->
<package name="combustion &gt;= 1.2"/> <!-- 1.2+ has improved firstboot detection -->
<package name="NetworkManager"/>
<package name="dracut-kiwi-oem-repart"/>
</packages>
<!-- GRUB everywhere except for -grub-bls and -sdboot flavors -->
<packages type="image" profiles="kvm-and-xen,VMware,MS-HyperV,Cloud,RaspberryPi">
<package name="grub2"/>
<package name="grub2-arm64-efi" arch="aarch64"/>
<package name="grub2-branding-openSUSE" bootinclude="true"/>
<package name="grub2-x86_64-efi" arch="x86_64"/>
</packages>
<!-- Not needed in Cloud as it uses XFS and cloud-init -->
<packages type="image" profiles="kvm-and-xen,kvm-and-xen-sdboot,kvm-and-xen-grub-bls,VMware,MS-HyperV,RaspberryPi">
<!-- Only for btrfs -->
<package name="btrfsprogs"/>
<package name="btrfsmaintenance"/>
<package name="snapper-zypp-plugin"/> <!-- this is key snapper/zypp integration, as requested in the PRD -->
<package name="snapper"/>
<!-- Require 1.2.0.0 for proper NM support.
Not sure whether this syntax is intentionally supported but it appears to work. -->
<package name="jeos-firstboot &gt;= 1.2.0.0"/>
<!-- Not useful with Cloud -->
<package name="firewalld"/>
</packages>
<packages type="image" profiles="kvm-and-xen,VMware,MS-HyperV,RaspberryPi">
<package name="grub2-snapper-plugin"/> <!-- snapper - grub2 - integration, "small" -->
</packages>
<packages type="image" profiles="kvm-and-xen,kvm-and-xen-sdboot,kvm-and-xen-grub-bls,VMware,MS-HyperV,Cloud">
<!-- Shim for secure boot everywhere except for RPi -->
<package name="shim" arch="aarch64,x86_64"/>
</packages>
<packages type="image" profiles="kvm-and-xen,kvm-and-xen-sdboot,kvm-and-xen-grub-bls">
<package name="xen-tools-domU"/>
<package name="xen-libs"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="kvm-and-xen,kvm-and-xen-sdboot,kvm-and-xen-grub-bls,Cloud">
<package name="qemu-guest-agent"/>
</packages>
<packages type="image" profiles="kvm-and-xen-sdboot,kvm-and-xen-grub-bls">
<package name="sdbootutil-snapper"/>
<package name="sdbootutil-jeos-firstboot-enroll"/>
<package name="efibootmgr"/>
<package name="uefi_mbr" arch="x86_64"/>
<package name="systemd-experimental"/> <!-- XXX: pulls in python but needed for tpm files -->
<package name="disk-encryption-tool"/>
<package name="systemd-repart-dracut"/>
<package name="dracut-pcr-signature"/>
</packages>
<packages type="image" profiles="kvm-and-xen-sdboot">
<package name="systemd-boot"/>
</packages>
<packages type="image" profiles="kvm-and-xen-grub-bls">
<package name="grub2-x86_64-efi-bls" arch="x86_64"/>
<package name="grub2-arm64-efi-bls" arch="aarch64"/>
</packages>
<packages type="image" profiles="VMware">
<package name="cloud-init"/>
<package name="cloud-init-config-suse"/>
<package name="open-vm-tools" arch="x86_64"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="Cloud">
<package name="cloud-init"/>
<package name="cloud-init-config-suse"/>
<package name="jeos-firstboot"/>
<package name="xfsprogs"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="MS-HyperV">
<package name="hyper-v"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="RaspberryPi">
<package name="raspberrypi-eeprom" arch="aarch64"/>
<package name="raspberrypi-firmware" arch="aarch64"/>
<package name="raspberrypi-firmware-config" arch="aarch64"/>
<package name="raspberrypi-firmware-dt" arch="aarch64"/>
<package name="arm-trusted-firmware-rpi4" arch="aarch64"/>
<package name="kernel-default"/>
<!-- For WiFi: -->
<package name="wireless-regdb"/>
<package name="wireless-tools"/>
<package name="wpa_supplicant"/>
<package name="bcm43xx-firmware"/>
<package name="kernel-firmware-bluetooth"/>
<package name="kernel-firmware-brcm"/>
<package name="u-boot-rpiarm64" arch="aarch64"/>
</packages>
<packages type="bootstrap">
<package name="filesystem"/>
<package name="glibc-locale-base"/>
<package name="ca-certificates-mozilla"/>
<package name="openSUSE-release"/>
<!-- Avoid that zypper picks the busybox-foo variant for those, that would fail later -->
<package name="awk"/>
<package name="coreutils"/>
<package name="gzip"/>
</packages>
<packages type="bootstrap" profiles="kvm-and-xen,kvm-and-xen-sdboot,kvm-and-xen-grub-bls">
<package name="openSUSE-release-appliance-kvm"/>
</packages>
<packages type="bootstrap" profiles="Cloud">
<package name="openSUSE-release-appliance-openstack"/>
</packages>
<packages type="bootstrap" profiles="MS-HyperV">
<package name="openSUSE-release-appliance-hyperv"/>
</packages>
<packages type="bootstrap" profiles="VMware">
<package name="openSUSE-release-appliance-vmware"/>
</packages>
<packages type="bootstrap" profiles="RaspberryPi">
<package name="openSUSE-release-appliance-custom"/>
</packages>
</image>

8
_constraints Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<constraints>
<hardware>
<disk>
<size unit="G">10</size>
</disk>
</hardware>
</constraints>

9
_multibuild Normal file
View File

@ -0,0 +1,9 @@
<multibuild>
<flavor>kvm-and-xen-grub-bls</flavor>
<flavor>kvm-and-xen-sdboot</flavor>
<flavor>kvm-and-xen</flavor>
<flavor>VMware</flavor>
<flavor>MS-HyperV</flavor>
<flavor>Cloud</flavor>
<flavor>RaspberryPi</flavor>
</multibuild>

170
config.sh Normal file
View File

@ -0,0 +1,170 @@
#!/bin/bash
# Copyright (c) 2025 SUSE LLC
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
#======================================
# Functions...
#--------------------------------------
test -f /.kconfig && . /.kconfig
test -f /.profile && . /.profile
set -euxo pipefail
#======================================
# Greeting...
#--------------------------------------
echo "Configure image: [$kiwi_iname]-[$kiwi_profiles]..."
#======================================
# add missing fonts
#--------------------------------------
# Systemd controls the console font now
echo FONT="eurlatgr.psfu" >> /etc/vconsole.conf
#======================================
# prepare for setting root pw, timezone
#--------------------------------------
echo "** reset machine settings"
rm -f /etc/machine-id \
/var/lib/zypp/AnonymousUniqueId \
/var/lib/systemd/random-seed
#======================================
# Specify default systemd target
#--------------------------------------
baseSetRunlevel multi-user.target
#======================================
# Import trusted rpm keys
#--------------------------------------
suseImportBuildKey
#======================================
# Enable sshd
#--------------------------------------
systemctl enable sshd.service
if [ -e /etc/cloud/cloud.cfg ]; then
systemctl enable cloud-init-local
systemctl enable cloud-init
systemctl enable cloud-config
systemctl enable cloud-final
fi
# Enable jeos-firstboot
mkdir -p /var/lib/YaST2
touch /var/lib/YaST2/reconfig_system
systemctl mask systemd-firstboot.service
systemctl enable jeos-firstboot.service
# Enable firewalld if installed except on VMware
if [ -x /usr/sbin/firewalld ] && [ "$kiwi_profiles" != "VMware" ]; then
systemctl enable firewalld.service
fi
# Enable NetworkManager if installed
if rpm -q --whatprovides NetworkManager >/dev/null; then
systemctl enable NetworkManager.service
fi
#======================================
# Add repos from control.xml
#--------------------------------------
if rpm -q live-add-yast-repos; then
add-yast-repos
zypper --non-interactive rm -u live-add-yast-repos
fi
#=====================================
# Configure snapper
#-------------------------------------
if [ -x /usr/bin/snapper ]; then
echo "creating initial snapper config ..."
# we can't call snapper here as the .snapshots subvolume
# already exists and snapper create-config doesn't like
# that.
cp /etc/snapper/config-templates/default /etc/snapper/configs/root \
|| cp /usr/share/snapper/config-templates/default /etc/snapper/configs/root
# Change configuration to match SLES12-SP1 values
sed -i -e '/^TIMELINE_CREATE=/s/yes/no/' /etc/snapper/configs/root
sed -i -e '/^NUMBER_LIMIT=/s/50/10/' /etc/snapper/configs/root
baseUpdateSysConfig /etc/sysconfig/snapper SNAPPER_CONFIGS root
fi
#=====================================
# Enable chrony if installed
#-------------------------------------
if [ -f /etc/chrony.conf ]; then
systemctl enable chronyd
fi
#======================================
# Add default kernel boot options
#--------------------------------------
cmdline=('rw' 'quiet' 'systemd.show_status=1' 'console=ttyS0,115200' 'console=tty0')
case "${kiwi_profiles}" in
*Cloud*) cmdline+=('net.ifnames=0') ;;
*HyperV*) cmdline+=('earlyprintk=ttyS0,115200' 'rootdelay=300') ;;
esac
# Configure SELinux if installed
# Note: Because of https://github.com/OSInside/kiwi/issues/2709, the root filesystem
# isn't fully labelled, but the first system snapshot is created after autorelabel
# so this is never visible.
if [[ -e /etc/selinux/config ]]; then
cmdline+=('security=selinux' 'selinux=1')
sed -i -e 's|^SELINUX=.*|SELINUX=enforcing|g' \
-e 's|^SELINUXTYPE=.*|SELINUXTYPE=targeted|g' \
"/etc/selinux/config"
fi
if rpm -q sdbootutil; then
mkdir -p /etc/kernel
echo "${cmdline[*]}" > /etc/kernel/cmdline
elif [ -e /etc/default/grub ]; then
sed -i "s#^GRUB_CMDLINE_LINUX_DEFAULT=.*\$#GRUB_CMDLINE_LINUX_DEFAULT=\"${cmdline[*]}\"#" /etc/default/grub
else
echo "Unknown bootloader"
exit 1
fi
#======================================
# Disable recommends on virtual images (keep hardware supplements, see bsc#1089498)
#--------------------------------------
sed -i 's/.*solver.onlyRequires.*/solver.onlyRequires = true/g' /etc/zypp/zypp.conf
#======================================
# Disable installing documentation
#--------------------------------------
sed -i 's/.*rpm.install.excludedocs.*/rpm.install.excludedocs = yes/g' /etc/zypp/zypp.conf
#======================================
# Configure FDE/BLS specifics
#--------------------------------------
if rpm -q sdbootutil; then
# FIXME: kiwi needs /boot/efi to exist before syncing the disk image
mkdir -p /boot/efi
[ -e /var/lib/YaST2/reconfig_system ] && systemctl enable sdbootutil-enroll.service
fi

36
disk.sh Normal file
View File

@ -0,0 +1,36 @@
#!/bin/bash
set -euxo pipefail
echo "####### BOOTLOADER INSTALL (disk.sh)"
if [ -x /usr/bin/sdbootutil ]; then
arch="$(uname -m)"
case "$arch" in
aarch64) arch=aa64 ;;
x86_64) arch=x64 ;;
*) echo "Unknown arch $arch"; exit 1 ;;
esac
echo "install boot loader"
loader_type="grub2-bls"
rpm -q systemd-boot && loader_type="systemd-boot"
if [ -f /etc/sysconfig/bootloader ]; then
sed -i "s/^LOADER_TYPE=.*$/LOADER_TYPE=\"$loader_type\"/g" /etc/sysconfig/bootloader
else
echo "LOADER_TYPE=\"${loader_type}\"" > /etc/sysconfig/bootloader
fi
sdbootutil -v --no-random-seed --arch "$arch" --esp-path /boot/efi --entry-token=auto --no-variables install
echo "add kernels"
export hostonly_l=no # for dracut
sdbootutil -v --arch "$arch" --esp-path /boot/efi --entry-token=auto add-all-kernels
# Set a 5s timeout, the "hold a key down" method doesn't work effectively.
echo "timeout 5" >> /boot/efi/loader/loader.conf
rm -f /boot/mbrid
find /boot
fi
echo "####### END BOOTLOADER INSTALL (disk.sh)"

10
editbootinstall_mbr.sh Normal file
View File

@ -0,0 +1,10 @@
#!/bin/bash
set -euxo pipefail
[ "$(uname -m)" = 'x86_64' ] || exit 0
diskname="$1"
devname="$2"
loopdev="${devname%*p?}"
dd if=./usr/lib/uefi_mbr/uefi_mbr.bin of="$loopdev" conv=notrunc

44
editbootinstall_rpi.sh Normal file
View File

@ -0,0 +1,44 @@
#!/bin/bash
set -euxo pipefail
diskname=$1
devname="$2"
loopname="${devname%*p?}"
loopdev=${loopname#/dev/mapper/*}
#==========================================
# copy Raspberry Pi firmware to EFI partition
#------------------------------------------
echo "RPi EFI system, installing firmware on ESP"
mkdir -p ./mnt-pi
mount ${loopname}p1 ./mnt-pi
( cd boot/vc; tar c . ) | ( cd ./mnt-pi/; tar x )
umount ./mnt-pi
rmdir ./mnt-pi
#==========================================
# Change partition label type to MBR
#------------------------------------------
#
# The target system doesn't support GPT, so let's move it to
# MBR partition layout instead.
#
# Also make sure to set the ESP partition to type 0xc so that
# broken firmware (Rpi) detects it as FAT.
#
# Use tabs, "<<-" strips tabs, but no other whitespace!
cat > gdisk.tmp <<-'EOF'
x
r
g
t
1
c
w
y
EOF
dd if=$loopdev of=mbrid.bin bs=1 skip=440 count=4
gdisk $loopdev < gdisk.tmp
dd of=$loopdev if=mbrid.bin bs=1 seek=440 count=4
rm -f mbrid.bin
rm -f gdisk.tmp

View File

@ -0,0 +1,935 @@
-------------------------------------------------------------------
Thu Mar 6 13:56:29 UTC 2025 - Fabian Vogt <fvogt@suse.com>
- Switch away from patterns-base-bootloader for grub-bls, not suitable
- Switch away from kiwi's support for grub-bls, does not match sdbootutil
-------------------------------------------------------------------
Fri Feb 21 10:30:41 UTC 2025 - Fabian Vogt <fvogt@suse.com>
- Clean up config.sh and disk.sh
- Move kernelcmdline from .kiwi to config.sh
- Fix snapper config adjustment (boo#1237466)
-------------------------------------------------------------------
Thu Jan 16 09:37:46 UTC 2025 - Fabian Vogt <fvogt@suse.com>
- Switch to SELinux
-------------------------------------------------------------------
Tue Dec 17 12:52:06 UTC 2024 - Fabian Vogt <fvogt@suse.com>
- Add some missing packages to kvm-and-xen-{grub-bls,sdboot} profiles
(boo#1234610)
- Remove outdated comment about kernel-default-base lacking dm-crypt
- Avoid duplicate uefi_mbr inclusion
-------------------------------------------------------------------
Tue Nov 12 12:25:21 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Use the enrollment packages from sdbootutil
-------------------------------------------------------------------
Wed Oct 9 09:12:20 UTC 2024 - Stefan Schubert <schubi@suse.com>
- Added package systemd-repart-dracut to kvm-and-xen-sdboot and
kvm-and-xen-grub-bls
-------------------------------------------------------------------
Thu Oct 3 09:42:47 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Move /etc/sysconfig/bootloader creation to disk.sh, as KIWI can
replace the one generated in config.sh (bsc#1231271)
-------------------------------------------------------------------
Tue Oct 1 16:07:08 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Requires systemd-boot in the sdboot flavor
-------------------------------------------------------------------
Thu Sep 5 13:55:46 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Remove root from /etc/kernel/cmdline during image creation
-------------------------------------------------------------------
Tue Aug 27 09:27:20 UTC 2024 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Fix grub package name for aarch64 (grub2-arm64-efi)
-------------------------------------------------------------------
Tue Aug 13 13:53:32 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Use the new grub2-bls subpackage
-------------------------------------------------------------------
Fri Aug 9 08:45:16 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Enable disk-encryption-tool-enroll.service
-------------------------------------------------------------------
Wed Jul 31 13:38:18 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Fix LOADER_TYPE population
- Rename *-grub image to *-grub-bls
-------------------------------------------------------------------
Tue Jul 16 08:14:08 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Add /etc/sysconfig/bootloader LOADER_TYPE for grub2-bls and sd-boot
- Remove some dead code
-------------------------------------------------------------------
Thu Jun 20 12:06:15 UTC 2024 - Alberto Planas Dominguez <aplanas@suse.com>
- Add grub2 FDE image
-------------------------------------------------------------------
Tue May 14 07:53:59 UTC 2024 - Dirk Müller <dmueller@suse.com>
- add procps into the image (previously pulled in by zypper,
and the openQA tests rely on it)
-------------------------------------------------------------------
Fri May 10 11:56:22 UTC 2024 - Fabian Vogt <fvogt@suse.com>
- Drop fbiterm (jsc#PED-3655)
-------------------------------------------------------------------
Mon Apr 15 13:52:26 UTC 2024 - Fabian Vogt <fvogt@suse.com>
- Add kernel-firmware-bluetooth (bsc#1219216)
-------------------------------------------------------------------
Fri Apr 12 15:13:32 UTC 2024 - Bernhard Wiedemann <bwiedemann@suse.com>
- Update kiwi schema to 7.4 to be compatible with kiwi v10 (boo#1222243)
-------------------------------------------------------------------
Thu Feb 15 15:07:56 UTC 2024 - Ludwig Nussel <lnussel@suse.com>
- call sdbootutil --no-random-seed to avoid shipping random seed in the ESP
-------------------------------------------------------------------
Mon Jan 22 08:01:11 UTC 2024 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Do not use the big kernel-firmware for RPi, but only the required
kernel-firmware-brcm - boo#1218307
-------------------------------------------------------------------
Tue Jan 9 08:38:11 UTC 2024 - Fabian Vogt <fvogt@suse.com>
- Drop systemd-sysvinit, the main systemd package itself contains
/sbin/reboot etc. now
-------------------------------------------------------------------
Tue Jan 2 08:39:37 UTC 2024 - Ludwig Nussel <lnussel@suse.com>
- Use kernel-default-base instead of kvmsmall
-------------------------------------------------------------------
Thu Dec 28 08:43:34 UTC 2023 - Ludwig Nussel <lnussel@suse.com>
- Handle new sources in spec file too
-------------------------------------------------------------------
Tue Dec 19 07:37:37 UTC 2023 - Fabian Vogt <fvogt@suse.com>
- cloud-init no longer requires wicked, so install NetworkManager
everywhere (boo#1218129)
- Switch all images from vmx to oem to use kiwi's resize
(boo#1206238)
-------------------------------------------------------------------
Thu Dec 14 09:52:18 UTC 2023 - Ludwig Nussel <lnussel@suse.com>
- Add systemd-boot flavor with disk encryption
-------------------------------------------------------------------
Thu Aug 17 12:49:28 UTC 2023 - Fabian Vogt <fvogt@suse.com>
- Add combustion (jsc#PED-5843)
-------------------------------------------------------------------
Wed May 3 08:58:03 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Enable Cloud image for aarch64
-------------------------------------------------------------------
Tue Mar 7 14:55:58 UTC 2023 - Fabian Vogt <fvogt@suse.com>
- Add wireless-regdb (bsc#1215134)
-------------------------------------------------------------------
Thu Dec 29 08:56:59 UTC 2022 - Dominique Leuenberger <dleuenberger@suse.com>
- editbootinstall_rpi.sh: fix loopdev name to work with new kiwi.
-------------------------------------------------------------------
Thu Nov 10 15:52:38 UTC 2022 - Guilherme Moro <gmoro@suse.com>
- Rename OpenStack-Cloud to Cloud (jsc#PED-1849)
- Enable jeos-firstboot on Cloud image
-------------------------------------------------------------------
Thu Aug 25 13:59:00 UTC 2022 - Guilherme Moro <gmoro@suse.com>
- Add cloud-init to VMware image (jsc#SLE-7254)
- Change VMware to use lsilogic SCSI controller
- Disable firewalld on VMware image
- Do not enable jeos-firstboot on OpenStack-Cloud
-------------------------------------------------------------------
Thu Apr 14 12:32:44 UTC 2022 - Fabian Vogt <fvogt@suse.com>
- Switch to NetworkManager except for OpenStack-Cloud
-------------------------------------------------------------------
Tue Mar 29 10:43:40 UTC 2022 - Guilherme Moro <gmoro@suse.com>
- Rename JeOS to "Minimal Image" (jsc#SLE-20354)
- Set version in the kiwi file to 1.0.0
- Use new bundle_format from kiwi for naming images
-------------------------------------------------------------------
Fri Jan 28 15:27:59 UTC 2022 - Ivan Ivanov <ivan.ivanov@suse.com>
- Add Trusted Firmware-A (TF-A) package in RaspberryPi images
which mitigate few CVE issues found in RPi4 Cortex A72 CPU.
See bsc#1173489.
-------------------------------------------------------------------
Tue Jan 18 15:23:14 UTC 2022 - Fabian Vogt <fvogt@suse.com>
- Delete /etc/machine-id, necessary for ConditionFirstBoot
- Add rw to the default boot options to fix /etc/machine-id setup
(bsc#1194484, see also gh#OSInside/kiwi#1650)
-------------------------------------------------------------------
Tue Nov 16 13:07:23 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Install AppArmor pattern and audit (jsc#SLE-22705)
-------------------------------------------------------------------
Fri Nov 12 08:29:40 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Support new location of the snapper config templates
-------------------------------------------------------------------
Mon Oct 18 11:20:51 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Don't delete /etc/machine-id (see gh#OSInside/kiwi#1650)
- Also don't delete the dbus machine-id, it's a symlink
-------------------------------------------------------------------
Wed Apr 7 13:19:01 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Install shim everywhere except on RPi (bsc#1182211)
-------------------------------------------------------------------
Tue Mar 9 15:44:50 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Add systemd.show_status=1 to the kernel cmdline (bsc#1183186)
- Drop plymouth.enable=0, as suggested some time ago
- Tumbleweed has openSUSE-release-appliance-* packages meanwhile
- Add several packages to bootstrap to force zypper to pick the
right alternative
- Drop udev from bootstrap, not needed
-------------------------------------------------------------------
Tue Feb 9 14:48:46 UTC 2021 - Nicolas Patricio Saenz Julienne <nsaenzjulienne@suse.com>
- Install 'raspberrypi-eeprom' package on Raspberry Pi image (jsc#SLE-13566)
-------------------------------------------------------------------
Wed Jan 27 08:33:04 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Simplify multi-arch profiles using a new kiwi feature
-------------------------------------------------------------------
Tue Jan 19 13:05:39 UTC 2021 - Fabian Vogt <fvogt@suse.com>
- Drop /etc/shadow modification in config.sh, fixed in system-user-root
meanwhile
- Fix bare *** in config.sh
-------------------------------------------------------------------
Wed Dec 2 14:28:44 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Include xen and qemu-guest packages for aarch64 too
-------------------------------------------------------------------
Wed Dec 2 13:58:56 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Add aarch64 support for kvm-and-xen image
-------------------------------------------------------------------
Wed Dec 2 13:36:23 UTC 2020 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Add aarch64 support for MS-HyperV
-------------------------------------------------------------------
Fri Sep 11 07:34:51 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Add pam_pwquality
-------------------------------------------------------------------
Wed Sep 2 10:00:36 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop call of baseCleanMount, not necessary
- Replace suseInsertService with direct systemctl enable
-------------------------------------------------------------------
Fri Aug 28 07:27:05 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop the tmp subvolume (boo#1173461, jsc#PM-1898)
-------------------------------------------------------------------
Thu Aug 27 11:19:26 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- issue-generator got fixed, so drop the workaround for RPi
-------------------------------------------------------------------
Thu Aug 27 10:28:32 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Add zypper-needs-restarting (bsc#1173548)
-------------------------------------------------------------------
Mon Jul 13 07:04:18 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Force disk size of OpenStack-Cloud to 1GiB to avoid ENOSPC
(bsc#1096738)
-------------------------------------------------------------------
Tue Jun 30 13:37:54 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop bootsplash-theme, not used
- Don't touch /etc/default/grub in config.sh, kiwi overwrites it
anyway
- RPi workarounds are part of the raspberrypi-firmware package now
-------------------------------------------------------------------
Mon May 18 08:16:29 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop some now redundant entries from the package list
- Switch to vim-small, saves ~50MiB
- Drop group(wheel), bug in cloud-init got fixed (boo#1080595)
-------------------------------------------------------------------
Mon Apr 27 08:07:31 UTC 2020 - Ludwig Nussel <lnussel@suse.de>
- switch to base instead of minimal_base pattern, minimal_base is too minimal
for JeOS now.
-------------------------------------------------------------------
Tue Apr 14 14:17:39 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Also show WLAN interfaces in /etc/issue (bsc#1169070)
-------------------------------------------------------------------
Thu Apr 9 13:59:02 UTC 2020 - Guilherme Moro <gmoro@suse.com>
- Add qemu-guest-agent (bsc#1162932)
-------------------------------------------------------------------
Tue Mar 24 11:00:45 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Make the choice of systemd-logger for openSUSE explicit (bsc#1160657)
-------------------------------------------------------------------
Tue Mar 24 10:49:38 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Add lsof for zypper ps (bsc#1167553)
-------------------------------------------------------------------
Thu Mar 12 14:14:03 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop XEN flavor, identical to kvm-and-xen meanwhile (boo#1166474)
- Remove obsolete and redundant parts from config.sh
- Remove indefinitely commented out sections in JeOS.kiwi
- Remove invalid vga="normal"
- Add condition to make config.sh suitable for both openSUSE and SLE
-------------------------------------------------------------------
Wed Mar 4 14:09:17 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Drop drivers section, obsolete with dracut
-------------------------------------------------------------------
Wed Feb 26 11:25:53 UTC 2020 - Nicolas Patricio Saenz Julienne <nsaenzjulienne@suse.com>
- Make RPi's EFI partition 64MB big (bsc#1164817)
-------------------------------------------------------------------
Tue Feb 4 08:55:36 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Use systemctl instead of chkconfig
-------------------------------------------------------------------
Thu Jan 9 14:16:16 UTC 2020 - Fabian Vogt <fvogt@suse.com>
- Remove explicit swiotlb and cma assignments from RPi cmdline
as the defaults are better meanwhile (bsc#1160308)
-------------------------------------------------------------------
Tue Dec 3 15:31:37 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Fix editbootinstall_rpi.sh with newer kiwi
-------------------------------------------------------------------
Tue Nov 26 13:11:12 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Don't enable chrony-wait even on RPi, it might delay booting
unacceptably long
-------------------------------------------------------------------
Wed Nov 20 14:36:54 UTC 2019 - Matthias Brugger <mbrugger@suse.com>
- Enable one image for RPi3/4
* delete obsolete RPi4 target
-------------------------------------------------------------------
Wed Nov 20 12:59:31 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Add systemd-logger and dosfstools
- Drop salt-minion
-------------------------------------------------------------------
Fri Oct 25 09:16:36 UTC 2019 - Matthias Brugger <mbrugger@suse.com>
- Add support for RPi4
-------------------------------------------------------------------
Mon Sep 30 07:56:11 UTC 2019 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Add kernel-firmware for RPi
-------------------------------------------------------------------
Mon Sep 23 08:20:56 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Don't install a custom chrony config, the default is enough
- Only enable chrony-wait.serivce on RPi (bsc#1146374)
-------------------------------------------------------------------
Tue Sep 3 09:38:14 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Rename to kiwi-templates-JeOS
- Add a .spec file which installs the JeOS sources as template
-------------------------------------------------------------------
Thu Aug 15 11:44:40 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Mount by-uuid instead of by-label (jsc#SLE-7327)
-------------------------------------------------------------------
Wed Jul 24 14:10:18 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Don't set DHCLIENT_SET_HOSTNAME here, jeos-firstboot does that now
- Enable chrony-wait.service explicitly (bsc#1129730)
-------------------------------------------------------------------
Thu May 23 09:36:26 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Install now split jeos-firstboot-rpiwifi package
-------------------------------------------------------------------
Mon Apr 29 13:10:06 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Merge images.sh into config.sh, make it more generic
- Run config.sh with -euxo pipefail, make it compatible
-------------------------------------------------------------------
Thu Apr 25 09:49:17 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Also enable excludedocs for RPi
-------------------------------------------------------------------
Wed Apr 24 14:10:57 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Enable btrfs_quota_groups here, jeos-firstboot can skip this now
-------------------------------------------------------------------
Tue Apr 16 14:28:41 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Drop unnecessary USE_BY_UUID_DEVICE_NAMES, kiwi does that properly now
- Add console=ttyS0,115200 to RPi cmdline
- Add quiet to cmdline
-------------------------------------------------------------------
Mon Apr 8 15:06:30 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Switch to glibc-locale-base for smaller footprint
-------------------------------------------------------------------
Wed Mar 13 10:04:44 UTC 2019 - Nicolas Patricio Saenz Julienne <nsaenzjulienne@suse.com>
- Remove modprobe DRM rule as HDMI detection is working fine (bsc#1127537)
-------------------------------------------------------------------
Tue Feb 12 15:57:02 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Add wpa_supplicant for RPi WiFi support
-------------------------------------------------------------------
Thu Jan 24 08:31:56 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Don't install firewall on OpenStack (fate#326778)
- Remove obsolete baseStripRPM call
-------------------------------------------------------------------
Thu Jan 17 10:08:13 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- Install chrony on all flavors (bsc#1119424)
-------------------------------------------------------------------
Thu Jan 10 10:11:45 UTC 2019 - Fabian Vogt <fvogt@suse.com>
- cron is not needed for btrfsmaintenance anymore (bsc#1121419)
-------------------------------------------------------------------
Fri Dec 14 12:48:20 UTC 2018 - Guilherme Moro <gmoro@suse.com>
- include wireless-tools for RaspberryPi image, bsc#1119400
-------------------------------------------------------------------
Tue Dec 4 14:12:15 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Unify two packages sections for OBS WebUI friendliness
-------------------------------------------------------------------
Tue Nov 13 15:38:06 UTC 2018 - Guilherme Moro <gmoro@suse.com>
- Do not create ifcfg file for eth0
-------------------------------------------------------------------
Tue Nov 6 15:35:44 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Readd lost "Add repos from control.xml" section
-------------------------------------------------------------------
Thu Oct 25 08:13:17 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Change to Tumbleweed
-------------------------------------------------------------------
Fri Oct 12 11:01:40 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Change version to 15.1.0 to workaround bug in kiwi
-------------------------------------------------------------------
Mon Oct 8 14:55:45 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Adjust for openSUSE Leap 15.1
-------------------------------------------------------------------
Fri Oct 5 11:41:06 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Use glibc-locale-base (fate#326551)
-------------------------------------------------------------------
Thu Oct 4 15:29:50 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Add ca-certificates-mozilla to the bootstrap section as it is necessary
to download packages over HTTPS
-------------------------------------------------------------------
Wed Oct 3 13:44:24 UTC 2018 - Tomas Hehejik <thehejik@suse.com>
- Fix RaspberryPi profile name in kiwi file (bsc#1110593)
-------------------------------------------------------------------
Mon Sep 17 09:19:18 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Create flag file for new jeos-firstboot
-------------------------------------------------------------------
Tue Sep 11 11:01:56 UTC 2018 - Fabian Vogt <fvogt@suse.com>
- Bump version to 15 SP1
- Make RaspberryPi a JeOS flavor:
* Remove rpi3-y2firstboot.tar.gz
* Remove special package list
* Enable jeos-firstboot
-------------------------------------------------------------------
Mon Aug 6 15:15:03 UTC 2018 - fvogt@suse.com
- Don't remove /etc/localtime, jeos-firstboot does it already
-------------------------------------------------------------------
Thu Aug 2 09:10:10 UTC 2018 - fvogt@suse.com
- Require fbiterm
- Don't require dialog, jeos-firstboot requires it
-------------------------------------------------------------------
Tue Jul 31 14:43:52 UTC 2018 - fvogt@suse.com
- Re-enable raspberrypi-firmware-dt, it's available now
-------------------------------------------------------------------
Thu Jul 19 13:24:17 UTC 2018 - fvogt@suse.com
- Enable jeos-licenses for aarch64 as well
-------------------------------------------------------------------
Thu Jul 19 09:26:14 UTC 2018 - fvogt@suse.com
- Add patterns-sles-Minimal to resolve have choice
-------------------------------------------------------------------
Thu Jun 28 09:16:40 UTC 2018 - fvogt@suse.com
- Also remove /var/lib/dbus/machine-id (bsc#1099180)
-------------------------------------------------------------------
Tue Jun 19 11:38:19 UTC 2018 - fvogt@suse.com
- Do not call baseStripDocs, it's handled by excludedocs (bsc#1093914)
- Add command-not-found (bsc#1097667)
- Add kexec-tools (bsc#1097670)
-------------------------------------------------------------------
Wed Jun 13 11:13:22 UTC 2018 - fvogt@suse.com
- Set GRUB_GFXMODE and GRUB_TERMINAL in config.sh (bsc#1097428)
-------------------------------------------------------------------
Tue Jun 12 13:56:33 UTC 2018 - afaerber@suse.com
- Enlarge swapsize from 500 to 1000 to align with SLE12-SP3
(bsc#1097027)
-------------------------------------------------------------------
Tue Jun 12 09:45:34 UTC 2018 - fvogt@suse.com
- Remove manual changes for RPi X11-related settings, handled by
update-alternatives automatically (bsc#1096917)
-------------------------------------------------------------------
Thu Jun 7 08:30:00 UTC 2018 - fvogt@suse.com
- Also handle excludedocs in config.sh for RPi (bsc#1093915)
-------------------------------------------------------------------
Tue Jun 5 15:58:07 UTC 2018 - afaerber@suse.com
- RaspberryPi: Set rpm-excludedocs to false (bsc#1093915)
- RaspberryPi: Add firewall-config, needed by yast2-firewall (bsc#1093912)
-------------------------------------------------------------------
Tue Jun 5 13:44:29 UTC 2018 - fvogt@suse.com
- Remove btrfs-related packages from OpenStack (bsc#1095820)
- Remove jeos-firstboot from OpenStack and RPi (bsc#1095820)
-------------------------------------------------------------------
Mon Jun 4 17:09:00 UTC 2018 - afaerber@suse.com
- RaspberryPi: Add man, man-pages (bsc#1093914)
- RaspberryPi: Add lklug-fonts for YaST Firstboot (bsc#1093919)
- RaspberryPi: Add mutt, mutt-lang (bsc#1093913)
- RaspberryPi: Add libyui-qt-pkg8 (bsc#1095870), yast2-control-center-qt
- RaspberryPi: Add yast2-trans-mr; xscreensaver-lang; bash-lang,
icewm-lang, parted-lang, shared-mime-info-lang; findutils-lang (cf. bsc#1072188)
-------------------------------------------------------------------
Mon Jun 4 16:05:33 UTC 2018 - afaerber@suse.com
- RaspberryPi: Drop emacs-x11 (bsc#1093905)
-------------------------------------------------------------------
Mon Jun 4 14:49:04 UTC 2018 - afaerber@suse.com
- RaspberryPi: Drop SuSEfirewall2 package (bsc#1094907)
* Add firewalld-lang package
-------------------------------------------------------------------
Mon Jun 4 14:48:07 UTC 2018 - fvogt@suse.com
- Add _constraints to get at least 10GiB disk space
-------------------------------------------------------------------
Tue May 29 12:16:50 UTC 2018 - gmoro@suse.com
- Remove useless name attribute for systemdisk element
-------------------------------------------------------------------
Wed May 23 18:16:03 UTC 2018 - afaerber@suse.com
- Add indic-fonts, thai-fonts, khmeros-fonts, arabic-kacst-fonts
for YaST Firstboot on Raspberry Pi (bsc#1093919)
-------------------------------------------------------------------
Fri May 11 12:09:36 UTC 2018 - agraf@suse.com
- Remove explicit console= setting on Raspberry Pi
- Use chrony instead of ntpd
-------------------------------------------------------------------
Thu May 10 11:58:22 UTC 2018 - gmoro@suse.com
- Change EFI partition size to 33MB, bsc#1087406
- Decrease HyperV image to 24G, aligned with the other images, bsc#1087406
-------------------------------------------------------------------
Wed May 9 14:50:39 UTC 2018 - agraf@suse.com
- Use YaST2-firstboot on Raspberry Pi target
-------------------------------------------------------------------
Thu May 3 08:52:22 UTC 2018 - gmoro@suse.com
- Disable serial console in PV Xen image, fixes bsc#1089676
-------------------------------------------------------------------
Tue Apr 17 12:06:51 UTC 2018 - fvogt@suse.com
- Disable installation of recommended packages on non-RPi3 (bsc#1089498)
- Enable excludedocs in zypp.conf
- Remove systemd.show_status=0 from the kernel cmdline (bsc#1089826)
-------------------------------------------------------------------
Mon Apr 9 09:56:09 UTC 2018 - fvogt@suse.com
- Fix inclusion of PV XEN drivers
-------------------------------------------------------------------
Fri Apr 6 09:44:52 UTC 2018 - gmoro@suse.com
- Improve VMware vmx settings, bsc#1084157
-------------------------------------------------------------------
Tue Mar 27 08:46:36 UTC 2018 - fvogt@suse.com
- Also add a /root subvolume (boo#1085266)
-------------------------------------------------------------------
Tue Mar 27 08:11:11 UTC 2018 - gmoro@suse.com
- change VMware vmx settings, bsc#1084157
-------------------------------------------------------------------
Mon Mar 26 13:01:12 UTC 2018 - fvogt@suse.com
- Use the SLE 15 btrfs subvolume layout (bsc#1086852)
-------------------------------------------------------------------
Thu Mar 15 18:42:12 UTC 2018 - gmoro@suse.com
- include issue-generator that is not a requirement of
sles-release anymore, fix bsc#1084879
-------------------------------------------------------------------
Thu Mar 8 10:55:08 UTC 2018 - agraf@suse.com
- Prepare image for X11 target
- Temporarily create X11 Raspberry Pi image; this will be sorted
out correctly using profile groups later once kiwi supports them.
-------------------------------------------------------------------
Thu Mar 8 08:05:40 UTC 2018 - fvogt@suse.com
- Also remove the comments for allpkgs and fix typo to get the kernel
back for MS-HyperV
- Add suse-build-key back (bsc#1084166)
-------------------------------------------------------------------
Wed Mar 7 13:54:28 UTC 2018 - agraf@suse.com
- Remove allpkgs target, it's no longer needed
-------------------------------------------------------------------
Mon Mar 5 15:08:42 UTC 2018 - agraf@suse.com
- Convert to new OBS profile logic
- remove _service file
-------------------------------------------------------------------
Fri Mar 2 12:33:18 UTC 2018 - fvogt@suse.com
- Add back xfsprogs for OpenStack-Cloud (bsc#1083696)
-------------------------------------------------------------------
Wed Feb 28 09:01:53 UTC 2018 - fvogt@suse.com
- Use kernel-default-base (bsc#1082357)
-------------------------------------------------------------------
Tue Feb 27 14:07:05 UTC 2018 - fvogt@suse.com
- Fixup a bugref
- Remove python-base
- Remove manually added dependencies, OBS needs to solve them
- Fix detection of btrfs after kiwi profile introduction
-------------------------------------------------------------------
Thu Feb 22 08:08:51 UTC 2018 - agraf@suse.com
- Add grub2-arm64-efi on aarch64 to package list (bsc#1082224)
- Remove xen dependencies on aarch64 from package list (bsc#1082224)
- Add Raspberry Pi target (FATE#323912, bsc#989513)
-------------------------------------------------------------------
Mon Feb 19 14:55:02 UTC 2018 - fvogt@suse.com
- Replace multiple .kiwi files with a single one and use profiles instead, fixes bsc#1081792
- Needs obs-service-apply_kiwi_profile to work without prjconf changes
-------------------------------------------------------------------
Fri Feb 9 11:07:59 UTC 2018 - fvogt@suse.com
- Add jeos-licenses
-------------------------------------------------------------------
Wed Feb 7 02:38:52 UTC 2018 - gmoro@suse.com
- Drop SUSEfirewall2 and enable firewalld, fixes bsc#1078743
-------------------------------------------------------------------
Thu Feb 1 11:40:59 UTC 2018 - gmoro@suse.com
- switch to new default console font eurlatgr, fixes bsc#1078735
-------------------------------------------------------------------
Tue Jan 30 14:18:17 UTC 2018 - gmoro@suse.com
- Add group(wheel) to all the images
-------------------------------------------------------------------
Thu Jan 11 11:24:30 UTC 2018 - gmoro@suse.com
- Change console font configuration to work with new systemd, fixes bsc#1073467
-------------------------------------------------------------------
Wed Nov 29 12:07:45 UTC 2017 - gmoro@suse.com
- Change console settings for images, fixes bsc#1066136
-------------------------------------------------------------------
Mon Nov 27 17:53:18 UTC 2017 - gmoro@suse.com
- require group(mail) for all images, fixes bsc#1061838
-------------------------------------------------------------------
Mon Nov 13 12:36:12 UTC 2017 - gmoro@suse.com
- Configure snapper as part of the image build process, related to bsc#1064819
- Use kiwi functionality for disabling CoW on subvolumes, related to bsc#1064819
- Drop cracklib-dict-small from the bootstrap, requirements changed in kiwi
-------------------------------------------------------------------
Tue Oct 24 10:59:39 UTC 2017 - gmoro@suse.com
- Remove net.ifnames=0 for HyperV images, fixes bsc#1062013
- Change HyperV image to VHDX format, fixes bsc#1062744
-------------------------------------------------------------------
Wed Oct 11 09:17:39 UTC 2017 - gmoro@suse.com
- Disable all deletes from kiwi config fixes bsc#1061854
- Move to kernel-default over kernel-default-base, fix bsc#1062056
- enable hyper-v and drop azure agent for now, tracked on bsc#1061584
- removed the following files from the old diff mechanism, no benefits:
* SLES15-JeOS-for-kvm-and-xen.diff
* SLES15-JeOS-for-MS-HyperV.diff
* SLES15-JeOS-for-OpenStack-Cloud.diff
* SLES15-JeOS-for-VMware.diff
* SLES15-JeOS-for-XEN.diff
* applydiff
* gendiff
* SLES15-JeOS.template
-------------------------------------------------------------------
Wed Oct 4 11:07:25 UTC 2017 - coolo@suse.com
- remove stub and add the template to _multibuild
-------------------------------------------------------------------
Wed Oct 4 08:57:17 UTC 2017 - aherzig@suse.com
- patterns renamed
- multibuild file added
-------------------------------------------------------------------
Tue Aug 15 13:12:18 UTC 2017 - gmoro@suse.com
- Initial package
-------------------------------------------------------------------
Thu Apr 6 18:27:55 UTC 2017 - gmoro@suse.com
- mask systemd-firstboot from Openstack images (bsc#1032518)
-------------------------------------------------------------------
Mon Mar 27 14:58:32 UTC 2017 - fvogt@suse.com
- Add btrfsmaintenance + cron
- Use firmware="ec" + bootkernel="custom" to allow kernel-default-base
for Xen PV (bsc#1031483)
- Add driverlist for Xen HVM and PV to fix booting with bootkernel="custom"
(bsc#1029742)
- Add zypper-lifecycle-plugin (bsc#1030278)
-------------------------------------------------------------------
Thu Mar 16 14:36:32 UTC 2017 - fvogt@suse.com
- Add some more packages to the deletion list
-------------------------------------------------------------------
Thu Mar 9 13:06:34 UTC 2017 - fvogt@suse.com
- Add ifcfg-eth0 to enable DHCP on eth0 by default
- Change packagelist:
* Fix typo: libcxb-dri2-0
* Remove libxcb-dri3-0 and libyui-ncurses-pkg7
* Remove libLLVM-3.8.0
- Use kernel-default for XEN
-------------------------------------------------------------------
Tue Mar 7 10:15:42 UTC 2017 - fvogt@suse.com
- Enable jeos-firstboot.service explicitly in images.sh instead of
relying on the package to enable itself
-------------------------------------------------------------------
Thu Mar 2 14:43:54 UTC 2017 - fvogt@suse.com
- Add stub.spec to workaround multibuild bug
-------------------------------------------------------------------
Wed Mar 1 15:42:40 UTC 2017 - fvogt@suse.com
- Bump version to SP3
- Update btrfs subvolume layout
- Remove references to xen-kmp-default and kernel-xen, now part of kernel-default
-------------------------------------------------------------------
Fri Feb 19 12:14:07 UTC 2016 - lnussel@suse.de
- add replaces="kernel-default" to tell OBS to ignore kernel-default
when using kernel-default-base
(https://github.com/openSUSE/open-build-service/issues/1528)
-------------------------------------------------------------------
Tue Feb 2 13:37:47 UTC 2016 - lnussel@suse.de
- mount by label
- use kernel-default-base
- don't include /var/lib/systemd/random-seed
-------------------------------------------------------------------
Wed Nov 18 12:20:31 UTC 2015 - lnussel@suse.de
- version 1.1.0 for SLE12 SP1
* remove root.tar.gz and use jeos-firstboot instead
-------------------------------------------------------------------
Wed Oct 14 12:14:12 UTC 2015 - lnussel@suse.de
- version number is 1.0.0
-------------------------------------------------------------------
Thu Oct 8 15:19:56 UTC 2015 - lnussel@suse.de
- initial package

View File

@ -0,0 +1,66 @@
#
# spec file for package kiwi-templates-Minimal
#
# Copyright (c) 2025 SUSE LLC
#
# 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.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define dest %_datadir/kiwi/image/openSUSE-Tumbleweed-Minimal
Name: kiwi-templates-Minimal
Version: 84.87.1
Release: 0
Summary: KIWI - openSUSE Tumbleweed Minimal image templates
License: MIT
Group: System/Management
URL: https://www.opensuse.org/
Source01: config.sh
Source02: Minimal.kiwi
Source03: editbootinstall_rpi.sh
Source04: editbootinstall_mbr.sh
Source05: disk.sh
#
Source99: LICENSE
Requires: python3-kiwi
Supplements: kiwi-templates
BuildArch: noarch
Provides: kiwi-templates-JeOS = %{version}
Obsoletes: kiwi-templates-JeOS < %{version}
%if "@BUILD_FLAVOR@" != ""
ExclusiveArch: do_not_build
%endif
%description
This package contains system image templates to easily build
a openSUSE Tumbleweed based operating system image with
kiwi.
%prep
%setup -q -cT
cp "%SOURCE99" .
%build
%install
dst="%buildroot%dest"
mkdir -p $dst
for i in %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5}; do
install -m 644 $i "$dst"
done
%files
%license LICENSE
%dest
%_datadir/kiwi/
%changelog