Accepting request 733379 from home:favogt:twjeos

Built successful. Added a .changes entry for clarification.

OBS-URL: https://build.opensuse.org/request/show/733379
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Images:openSUSE-Tumbleweed/kiwi-templates-JeOS?expand=0&rev=1
This commit is contained in:
Fabian Vogt 2019-09-26 09:31:34 +00:00 committed by Git OBS Bridge
commit 8cf0aba46a
10 changed files with 1279 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

385
JeOS.kiwi Normal file
View File

@ -0,0 +1,385 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- OBS-Profiles: @BUILD_FLAVOR@ -->
<image schemaversion="6.1" name="openSUSE-Tumbleweed-JeOS" displayname="openSUSE Tumbleweed JeOS">
<description type="system">
<author>openSUSE Project</author>
<contact>crc@suse.com</contact>
<specification>openSUSE Tumbleweed JeOS</specification>
</description>
<profiles>
<profile name="kvm-and-xen" description="JeOS for KVM and HVM Xen" arch="x86_64"/>
<profile name="XEN" description="JeOS for PV Xen" arch="x86_64"/>
<profile name="VMware" description="JeOS for VMware" arch="x86_64"/>
<profile name="MS-HyperV" description="JeOS for Hyper-V" arch="x86_64"/>
<profile name="OpenStack-Cloud" description="JeOS for OpenStack Cloud" arch="x86_64"/>
<profile name="RaspberryPi" description="JeOS for the Raspberry Pi" arch="aarch64"/>
</profiles>
<preferences profiles="kvm-and-xen">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="vmx"
filesystem="btrfs"
format="qcow2"
bootloader="grub2"
firmware="uefi"
efipartsize="33"
kernelcmdline="quiet plymouth.enable=0 console=ttyS0,115200 console=tty0"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="tmp"/>
<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="XEN">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="vmx"
filesystem="btrfs"
bootprofile="xen"
firmware="uefi"
efipartsize="33"
format="qcow2"
bootloader="grub2"
kernelcmdline="quiet plymouth.enable=0 console=tty0"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="tmp"/>
<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 domain="domU">
<!-- creation of hvmloader Xen config file is not supported -->
<!-- thus just provide mandatory setup indicating there is a disk -->
<vmdisk id="0"/>
</machine>
</type>
</preferences>
<preferences profiles="VMware">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="vmx"
filesystem="btrfs"
format="vmdk"
bootloader="grub2"
firmware="uefi"
efipartsize="33"
kernelcmdline="quiet plymouth.enable=0 console=ttyS0,115200 console=tty0"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="tmp"/>
<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"/>
</type>
</preferences>
<preferences profiles="OpenStack-Cloud">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="vmx"
filesystem="xfs"
format="qcow2"
vga="normal"
boottimeout="1"
bootloader="grub2"
firmware="uefi"
efipartsize="33"
kernelcmdline="quiet plymouth.enable=0 console=ttyS0,115200 console=tty0 net.ifnames=0"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
/>
</preferences>
<preferences profiles="MS-HyperV">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="vmx"
filesystem="btrfs"
format="vhdx"
boottimeout="10"
bootloader="grub2"
firmware="uefi"
efipartsize="33"
kernelcmdline="quiet plymouth.enable=0 rootdelay=300 console=ttyS0,115200 console=tty0 earlyprintk=ttyS0,115200"
bootpartition="false"
bootkernel="custom"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
>
<systemdisk>
<volume name="home"/>
<volume name="root"/>
<volume name="tmp"/>
<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="RaspberryPi">
<version>15.1.0</version>
<packagemanager>zypper</packagemanager>
<bootsplash-theme>openSUSE</bootsplash-theme>
<bootloader-theme>openSUSE</bootloader-theme>
<!-- those settings are applied by suseConfig in config.sh
<locale>en_US</locale>
<keytable>us.map.gz</keytable>
<timezone>Europe/Berlin</timezone>
<hwclock>utc</hwclock>
-->
<rpm-excludedocs>true</rpm-excludedocs>
<type
image="oem"
initrd_system="dracut"
filesystem="btrfs"
fsmountoptions="noatime,compress=lzo"
bootloader="grub2"
firmware="efi"
kernelcmdline="quiet plymouth.enable=0 swiotlb=512 cma=64M console=ttyS0,115200 console=tty"
bootpartition="false"
devicepersistency="by-uuid"
btrfs_quota_groups="true"
btrfs_root_is_snapshot="true"
efipartsize="16"
editbootinstall="editbootinstall_rpi.sh"
>
<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>
<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>
<drivers profiles="kvm-and-xen,XEN">
<file name="drivers/xen/*" arch="x86_64"/>
<file name="drivers/block/xen-blkfront.ko" arch="x86_64"/>
<file name="drivers/net/xen-netfront.ko" arch="x86_64"/>
<file name="drivers/scsi/xen-scsifront.ko" arch="x86_64"/>
<file name="drivers/input/misc/xen-kbdfront.ko" arch="x86_64"/>
<file name="drivers/pci/xen-pcifront.ko" arch="x86_64"/>
</drivers>
<packages type="image">
<package name="patterns-base-minimal_base"/>
<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-->
<package name="group(wheel)"/>
<package name="grub2-branding-openSUSE" bootinclude="true"/>
<package name="iputils"/>
<package name="issue-generator"/> <!-- bsc#1084879 -->
<package name="vim"/>
<package name="shim" arch="x86_64"/>
<package name="grub2"/>
<package name="grub2-x86_64-efi" arch="x86_64"/>
<package name="grub2-arm64-efi" arch="aarch64"/>
<package name="haveged"/>
<package name="less" />
<package name="tar"/>
<package name="parted"/>
<package name="openSUSE-build-key"/>
<package name="systemd"/>
<package name="systemd-sysvinit"/>
<package name="timezone"/>
<package name="wicked"/>
<package name="iproute2"/>
<package name="openssh"/>
<package name="rsync"/>
<package name="salt-minion"/>
<!-- Do we need this for Leap?
<package name="jeos-licenses"/> -->
<package name="live-add-yast-repos"/>
</packages>
<!-- Not needed in OpenStack as it uses XFS and cloud-init -->
<packages type="image" profiles="kvm-and-xen,XEN,VMware,MS-HyperV,RaspberryPi">
<!-- Only for btrfs -->
<package name="btrfsprogs"/>
<package name="btrfsmaintenance"/>
<package name="grub2-snapper-plugin"/> <!-- snapper - grub2 - integration, "small" -->
<package name="snapper-zypp-plugin"/> <!-- this is key snapper/zypp integration, as requested in the PRD -->
<package name="snapper"/>
<!-- Only if not cloud-init -->
<package name="jeos-firstboot"/>
<package name="fbiterm"/> <!-- Optionally used by jeos-firstboot for non-latin fonts -->
<!-- Not useful with OpenStack -->
<package name="firewalld"/>
</packages>
<packages type="image" profiles="kvm-and-xen,XEN">
<!-- XEN specific packages -->
<package name="xen-tools-domU" arch="x86_64"/>
<package name="grub2-x86_64-xen" arch="x86_64"/>
<package name="xen-libs" arch="x86_64"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="VMware">
<package name="open-vm-tools" arch="x86_64"/>
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="OpenStack-Cloud">
<package name="cloud-init" />
<package name="cloud-init-config-suse" />
<package name="xfsprogs" />
<package name="kernel-default-base"/>
</packages>
<packages type="image" profiles="MS-HyperV">
<package name="hyper-v" arch="x86_64"/>
<package name="kernel-default-base"/>
<!--<package name="python-azure-agent"/> disabled until bsc#1061584 is fixed -->
</packages>
<packages type="image" profiles="RaspberryPi">
<package name="raspberrypi-firmware" arch="aarch64"/>
<package name="raspberrypi-firmware-config" arch="aarch64"/>
<package name="raspberrypi-firmware-dt" arch="aarch64"/>
<package name="u-boot-rpi3" arch="aarch64"/>
<package name="dracut-kiwi-oem-repart"/>
<package name="kernel-default"/>
<!-- For WiFi: -->
<package name="jeos-firstboot-rpiwifi"/>
<package name="bcm43xx-firmware"/>
</packages>
<!-- TW does not have those release packages
<packages type="image" profiles="kvm-and-xen,XEN">
<package name="openSUSE-release-appliance-kvm"/>
</packages>
<packages type="image" profiles="OpenStack-Cloud">
<package name="openSUSE-release-appliance-openstack"/>
</packages>
<packages type="image" profiles="MS-HyperV">
<package name="openSUSE-release-appliance-hyperv"/>
</packages>
<packages type="image" profiles="VMware">
<package name="openSUSE-release-appliance-vmware"/>
</packages>
-->
<packages type="bootstrap">
<package name="udev"/>
<package name="filesystem"/>
<package name="glibc-locale-base"/>
<package name="ca-certificates-mozilla"/>
<package name="openSUSE-release"/>
<package name="openSUSE-release-ftp"/>
</packages>
</image>

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.

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>

8
_multibuild Normal file
View File

@ -0,0 +1,8 @@
<multibuild>
<flavor>kvm-and-xen</flavor>
<flavor>XEN</flavor>
<flavor>VMware</flavor>
<flavor>MS-HyperV</flavor>
<flavor>OpenStack-Cloud</flavor>
<flavor>RaspberryPi</flavor>
</multibuild>

198
config.sh Normal file
View File

@ -0,0 +1,198 @@
#!/bin/bash
# Copyright (c) 2015 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
mkdir /var/lib/misc/reconfig_system
#======================================
# Greeting...
#--------------------------------------
echo "Configure image: [$kiwi_iname]-[$kiwi_profiles]..."
#======================================
# add missing fonts
#--------------------------------------
CONSOLE_FONT="eurlatgr.psfu"
#======================================
# prepare for setting root pw, timezone
#--------------------------------------
echo ** "reset machine settings"
sed -i 's/^root:[^:]*:/root:*:/' /etc/shadow
rm -f /etc/machine-id \
/var/lib/zypp/AnonymousUniqueId \
/var/lib/systemd/random-seed \
/var/lib/dbus/machine-id
#======================================
# SuSEconfig
#--------------------------------------
echo "** Running suseConfig..."
suseConfig
echo "** Running ldconfig..."
/sbin/ldconfig
#======================================
# Setup baseproduct link
#--------------------------------------
suseSetupProduct
#======================================
# Specify default runlevel
#--------------------------------------
baseSetRunlevel 3
#======================================
# Add missing gpg keys to rpm
#--------------------------------------
suseImportBuildKey
#======================================
# Enable sshd
#--------------------------------------
chkconfig sshd on
if [ -e /etc/cloud/cloud.cfg ]; then
# not useful for cloud
systemctl mask systemd-firstboot.service
suseInsertService cloud-init-local
suseInsertService cloud-init
suseInsertService cloud-config
suseInsertService cloud-final
else
# Enable jeos-firstboot
mkdir -p /var/lib/YaST2
touch /var/lib/YaST2/reconfig_system
systemctl mask systemd-firstboot.service
systemctl enable jeos-firstboot.service
# Only RPi has no HW RTC, so avoid bsc#1146374 for other platforms
if [[ "$kiwi_profiles" == *"RaspberryPi"* ]]; then
# Make sure jeos-firstboot can rely on synced time (bsc#1129730)
systemctl enable chrony-wait.service
fi
fi
# Enable firewalld if installed
if [ -x /usr/sbin/firewalld ]; then
chkconfig firewalld on
fi
# Set GRUB2 to boot graphically (bsc#1097428)
sed -Ei"" "s/#?GRUB_TERMINAL=.+$/GRUB_TERMINAL=gfxterm/g" /etc/default/grub
sed -Ei"" "s/#?GRUB_GFXMODE=.+$/GRUB_GFXMODE=auto/g" /etc/default/grub
# Systemd controls the console font now
echo FONT="$CONSOLE_FONT" >> /etc/vconsole.conf
#======================================
# SSL Certificates Configuration
#--------------------------------------
echo '** Rehashing SSL Certificates...'
update-ca-certificates
if [ ! -s /var/log/zypper.log ]; then
> /var/log/zypper.log
fi
#======================================
# Import trusted rpm keys
#--------------------------------------
for i in /usr/lib/rpm/gnupg/keys/gpg-pubkey*asc; do
# importing can fail if it already exists
rpm --import $i || true
done
#======================================
# Add repos from control.xml
#--------------------------------------
add-yast-repos
zypper --non-interactive rm -u live-add-yast-repos
# only for debugging
#systemctl enable debug-shell.service
#=====================================
# Configure snapper
#-------------------------------------
if [ "${kiwi_btrfs_root_is_snapshot-false}" = 'true' ]; then
echo "creating initial snapper config ..."
# we can't call snapper here as the .snapshots subvolume
# already exists and snapper create-config doens't like
# that.
cp /etc/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
suseInsertService chronyd
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 Raspberry Pi specifics
#--------------------------------------
if [[ "$kiwi_profiles" == *"RaspberryPi"* ]]; then
# Add necessary kernel modules to initrd (will disappear with bsc#1084272)
echo 'add_drivers+=" bcm2835_dma dwc2 "' > /etc/dracut.conf.d/raspberrypi_modules.conf
# Work around network issues
cat > /etc/modprobe.d/50-rpi3.conf <<-EOF
# Prevent too many page allocations (bsc#1012449)
options smsc95xx turbo_mode=N
EOF
cat > /usr/lib/sysctl.d/50-rpi3.conf <<-EOF
# Avoid running out of DMA pages for smsc95xx (bsc#1012449)
vm.min_free_kbytes = 2048
EOF
fi
# Not compatible with set -e
baseCleanMount || true
exit 0

45
editbootinstall_rpi.sh Normal file
View File

@ -0,0 +1,45 @@
#!/bin/bash
set -x
diskname=$1
devname="$2"
loopname="${devname%*p2}"
loopdev=/dev/${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

530
kiwi-templates-JeOS.changes Normal file
View File

@ -0,0 +1,530 @@
-------------------------------------------------------------------
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

64
kiwi-templates-JeOS.spec Normal file
View File

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