Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

kiwi-systemdeps-core-9.23.20-3.40.1 RPM for ppc64le

From OpenSuSE Leap 15.3 for ppc64le

Name: kiwi-systemdeps-core Distribution: SUSE Linux Enterprise 15
Version: 9.23.20 Vendor: SUSE LLC <>
Release: 3.40.1 Build date: Mon May 17 07:24:20 2021
Group: System/Management Build host: mourvedre
Size: 0 Source RPM: python-kiwi-9.23.20-3.40.1.src.rpm
Summary: KIWI - Core host system dependencies
This metapackage installs the necessary system dependencies
to run KIWI.






* Fri Apr 16 2021
  - Fix appx manifest for WSL containers
    This patch is two fold
    * This commit prevents KIWI from setting Identity Name attribute and
      DisplayName and PublisherDisplayName elements.
      Fixes #1780
    * Fix WSL appx filemap relative paths not preserved
      During WSL appx image type creation step the file hierarchy under
      metadata_path is written to a temporary file for eventual use as
      argument to utility appx. The file hierarchy information is dropped
      resulting in all filemap entries appearing to be at the metadata_path
      root. The resulting image will side load and run but without icon and
      other resources. Stricter checks at Windows Store submission will
      fail due to mismatch between image manifest and contents.
      Fix by preserving relative path of filemap entries relative
      to metadata_path. Add log output showing both input absolute path
      and output relative path.
      This is related to jsc#SLE-12986
* Mon Apr 12 2021
  - Recommend kiwi-systemdeps-containers
    This commit recommends kiwi-systemdeps-containers instead of a hard
    requirement in kiwi-systemdeps package for SLE builds. This is needed
    because the containers tool chain is spread in different SLE modules.
* Thu Mar 11 2021
  - Require qemu-img in any filesystem based image
    This commit moves the qemu-img requirement into the
    `kiwi-systemdeps-filesystems` to ensure ISO, OEM and PXE images include
    it in the build service. Also this is required for images that are
    simple root-trees in a filesystem (image=ext4).
    (cherry picked from commit 4e91e028eba763321a0958ff0febee107d944af8)
* Thu Mar 11 2021
  - Add a requirement for kiwi-systemdeps-iso-media on disk images
    This commit adds a requirement for `kiwi-systemdeps-iso-media` in
    `kiwi-systemdeps-disk-images`. This is to ensure that installing
    `kiwi-systemdeps-disk-images` is enough to build OEM images including
    install media.
    (cherry picked from commit 307b7e0234c01846587024c008166310e8d7d8b0)
* Thu Mar 11 2021
  - Turn fb-util-for-appx requirement into a recommendation
    This commit relaxes the requirement for `fb-util-for-appx` since
    the utiliy is not part of all SLE-15 service packs.
* Thu Mar 11 2021
  - Bump version: 9.23.19 → 9.23.20
    This version upgrade includes several fixes:
    * Refactor grub2 installation
      This commit refactors grub2 installation method to split it in two
      parts. Former grub2.install method was meant to run the grub2-install
      tool, however, in addition it was also running the secure boot
      installation shim-install. The install method in KIWI is skipped for
      those architectures and firmware combinations for which bios support
      doesn't exist. This was leading to skip the secure boot installation.
      The current approach strips the secure boot installation logic from the
      grub2.install method, so skipping the install method does not
      automatically result in skipping the secure boot installation.
      Fixes bsc#1182211
    * Fix lsblk flags to get sorted output
      This commit modifies the lsblk command flags to get a sorted output
      according to the disk layout.
      This is related to 176c7eab commita and it fixes bsc#1182264,
      bsc#1182963 and bsc#1183059
    * Avoid using generators in pre-mount hooks
      This commit deletes the generator that was creating the sysroot.mount
      unit for ramdisk deployments. Generators, specially the sysroot.mount is
      expected to be created on very early stages of the boot procedure as
      this has impact on relevant targets such as, which
      does not depend on sysroot.mount if the unit is not there.
      In ramdisk deployments some data is known on pre-mount stage as
      as it is downloaded from the PXE server. At this stage it is not safe to
      generate a sysroot.mount unit that depends on as
      the target is close to finalize or even finalized already and could
      potentially skip sysroot.mount exection.
      Instead we include a mount hook which is only executed on ramdisk
      deployments that simply runs the mount command to mount /sysroot.
      This fixes bsc#1178670
* Tue Jan 12 2021
  - Reference commit for SUSE maintenance
    This commit adds a reference to bsc#1180781
* Tue Dec 08 2020
  - Fixed validation of bool value in dracut module
    The oem-multipath-scan setup results in a bool variable inside
    of the initrd code. The variable kiwi_oemmultipath_scan is
    therefore either set to "true" or "false". A check in code
    of the form [ -n ... ] is stupid since the variable always
    contains text. This commit fixes the validation to make use
    of the bool() method provided for these type of variables
* Thu Dec 03 2020
  - Reference commit for SUSE maintenance
    This commit adds a reference to Issue SUSE-Enceladus/azure-li-services#255
    and the report in bugzilla bsc#1179562
* Thu Dec 03 2020
  - Omit multipath module by default
    The plain installation of the multipath toolkit activates the
    dracut multipath code. The setup if the target image runs in a
    multipath environment or not should however be decided explicitly
    in the image description via <oem-multipath-scan> and not
    implicitly by the presence of tools
* Wed Dec 02 2020
  - Fixed multipath disk device assignment in kiwi lib
    The former lookup of the multipath mapped disk device contained
    a race condition. If the lookup of the device mapper files happened
    before multipathd has finished the initialization, kiwi continues
    with the unix node name and fails when the device mapper keeps
    a busy state on it. This commit changes the code such that in case
    of an explicit request to use multipath the lookup of the mapped
    device becomes a mandatory process that runs until the
    DEVICE_TIMEOUT is reached. Default timeout is set to 60 sec.
    This references Issue SUSE-Enceladus/azure-li-services#255
* Wed Aug 12 2020
  - Bump version up to 9.21.7
    This version upgrade includes several fixes:
    * Skip filesystem check for XFS prior xfs_grow
      running xfs_repair check isn't strictly necessary before resizing,
      and in some cases it may even prevent resizing by giving an error
      that would be cleared through mounting the fs (e.g. when the fs
      wasn't cleanly umounted, and thus letting xfs recover and replay
      its journal). Given that xfs can only grow online (while being mounted),
      this is sufficient to ensure that the fs is in a state where it
      can be resized. This is related to bsc#1174009
    * Fixed grub setup in EFI/BOOT directory
      kiwi copied the same grub.cfg file as it exists in boot/grub2
      to the efi path. This is wrong as the setup in the efi boot
      directory is used to enable normal grub loading and not providing
      the user grub configuration. In addition the changes here makes
      sure that the early grub boot code is placed into the system
      in any EFI case except for secure boot when shim-install is
      present. If shim-install is present it also creates the early
      grub boot setup such that kiwi doesn't have to do it.
      This Fixes #1491 and Fixes bsc#1172908
    * Use rsync in inplace transfer mode
      Using the --inplace option in rsync helps to save space on
      syncing the rootfs data and prevents e.g OBS workers from
      running out of VM space when transfering root filesystem
      data. Also using --inplace allows to keep hardlinks intact.
      This is related to bsc#1096738
    * Don't keep copy of grub2-install in the system
      To prevent shim-install from calling grub2-install in uefi mode
      kiwi temporary replaces the tool by a noop. This acts as a
      workaround for an issue in shim-install. However the workaround
      left a file copy of grub2-install in the system which should
      not happen. This commit Fixes bsc#1173226 and Fixes #1490
    * Fixes live ISOs
      This commit fixes iso images. Due to a change introduced in c7ed1cf
      live ISOs were no longer booting as the rootfs.img filesystem was
      copied to the squashfs container while being still mounted. Because of
      that, at boot time, it refused to mount.
      This commit adds umount method for the filesystem base class, so it
      can be umounted before deleting the instance.
      Fixes #1489 and bsc#1173356
    * Support grub timeout_style parameter
      Grub supports a style setting that influences the display of
      the menu depending on the configured timeout value. With this
      patch kiwi allows to specify the style via a new bootloader
      parameter named timeout_style="hidden|countdown". If not set
      the grub default applies which shows the menu in any case.
      This Fixes bsc#1165730 and Fixes #1404
    * Use auto video mode as default for grub
      An explicit video mode 800x600 was used for grub if no
      video mode setup exists in the XML description. For grub
      this should better result in the auto mode. Related to
* Fri Jul 24 2020
  - Bump version up to 9.21.23
    This version upgrade includes several fixes:
    * Do not exclude filesystem folders in OCI images
      This commit does not exclude filesystem folders during the rsync call
      in OCI images. It has been noted that including an empty /dev folder does
      not hurt and it can eventually help to work around some limitations of
      container related tools such as buildah.
      Fixes bsc#1176129
      (cherry picked from commit 44c0029ce5893bd4c68b21df14bda5bf32a5c869)
    * Fix/Refactor s390 support
      This changes the s390 support on several stages:
      1) On s390 the boot process is based on zipl which boots into an
      initrd from which a userspace grub process is started to support
      the grub capabilities. The implementation of this concept is
      provided via the grub2-s390x-emu package. Once installed the
      setup of the bootloader is done via the grub2-mkconfig and
      grub2-install commands and therefore from a caller perspective
      the same as with any other grub2 setup process. For kiwi this
      means no extra zipl bootloader target code is needed. Therefore
      this commit deletes the zipl setup from kiwi and puts on
      the standard grub2 process. This Fixes bsc#1170863
      2) To support different targettypes the grub2-s390x-emu provided
      zipl template must be adapted. Parts of the former zipl bootloader
      setup therefore now applies to an update of the zipl2grub
      template file
      3) Support for CDL/LDL DASD targets has been disabled in the schema
      When testing 4k devices and a respective zipl2grub template
      setup for CDL/LDL targettype it has turned out that grub2-install
      is not able to run on such a device. My assumption is that
      the device code in grub2-install does not work for 4k devices
      with an fdasd created partition table. As this needs further
      investigations and most probably adaptions on the grub toolchain
      for s390, we disabled the setup of these modes for now.
      emulated DASD (FBA) and SCSI targets stays supported.
      (cherry picked from commit 836633c7b2b9b4aa31c1501c2e9817dc00af290d)
    * Fix compat link for rpmdb location
      This commit fixes the symlink creation for `/var/lib/rpm`. More specific
      for derived container images in which the base root tree already
      included the `/var/lib/rpm` the link, the `ln` command was creating a
      symlink inside the `/var/lib/rpm` folder givent that it was following
      the already existing symlink. Adding the `--no-target-directory` force
      `ln` command to treat `/var/lib/rpm` path as the fully qualified symlink name.
      Fixes bsc#1176977
      (cherry picked from commit a6f56179b7879d160f0aab985ebda20bc49a83be)
    * Fixed s390/sle15 Virtual disk integration test
      The integration test used FBA mode as target. As the target
      is expected to be KVM this is the wrong setting. SCSI should
      be used instead. This Fixes bsc#1170863
      (cherry picked from commit 33c5780d5a8f4e6b41d51bce6bb3e838ac7ded4b)
    * Support dynamic linux/linuxefi in any case
      Instead of restricting the dynamic linux vs. linuxefi setup
      to a specific grub version, support this setup for any version
      of grub. This Fixes bsc#1175729 and bsc#1176134
      (cherry picked from commit 988404ff9f04384c3efb53644e69d520c022c03c)
* Fri Jun 12 2020
  - Fixed check for root device in grub config
    There is a code path that fixes the grub2-mkconfig used root device
    when building in an environment that does not allow to resolve the
    by-X path names, e.g an obs build worker without udev. For images
    that explicitly defines a root=... value in the kernelcmdline
    attribute the root device check was not called because the
    _get_root_cmdline_parameter method returns None. This commit fixes
    the method to return the expected root device in any case such that
    the grub2-mkconfig root device check has a chance to fix what
    grub2-mkconfig has created. This fixes bsc#1172928
    (cherry picked from commit 0ae7bbe74e2d2dddccddda40db6c2f8a04b53543)
* Thu May 14 2020
  - Fixed spec file
    This patch is two fold. First the py2 version of kiwi was
    dropped since py2 is EOL. To indicate that correctly on the
    package level python3-kiwi has to obsolete python2-kiwi.
    The other part of the change is a file conflict of the
    which were provided by the kiwi-man-pages sub-package but
    were moved to be provided by the main python3-kiwi package
    now. On update of the package with an older version of
    kiwi that maintains this files to belong to kiwi-man-pages
    a file conflict at install time appears. To solve this
    python3-kiwi now conflicts with kiwi-man-pages < %{version}
    This Fixes #1413 and Fixes bsc#1168973 and bsc#1156677
    (cherry picked from commit aba2505524850557e03a3f315b05fe58b28bc07d)
* Tue May 12 2020
  - Fix string formatting
    After a flake8 upgrade to v3.8.0 these changes were required to pass
    the `tox -e check` validation.
    (cherry picked from commit 7e43b86cd9e56de48a63943f671cd047dede7521)
* Fri Apr 17 2020
  - Fixed _get_grub2_mkconfig_tool
    Last patch on this method breaks the search for alternative
    mkconfig names. It returns always on the first lookup which
    could be none. This breaks on systems that uses a different
    name than grub2-mkconfig, like on Ubuntu.
* Thu Apr 16 2020
  - Increase spare space on disk repart
    The sizing of the virtual cylinders in parted seems to be unfavorable,
    as with some disks and SD cards here the device size is not a multiple
    of the cylinder size, so the last incomplete cylinder is wasted.
    If this wasted space is more than 5MiB, kiwi tries to resize indefinitely.
    Therefore min_additional_mbytes gets increased to prevent running
    into this situation. This Fixes bsc#1165823
* Thu Apr 16 2020
  - Fixed return value from _get_grub2_mkconfig_tool
    The method returned the basename of the tool if it could
    be found by Path.which(). But the method's scope has been
    changed in a way that the return value of the method must
    be the result from Path.which() to allow working on the
    full path name.
* Wed Apr 15 2020
  - Make CommandCapabilities.check_version take the longest match
    This commit ensures that when trying to parse the version of a tool
    the comparison is done with the longest match for the given regular
    expression. This solves cases such in `grub2` where the tool name
    already provides some digit that could be seen as a version.
* Wed Apr 15 2020
  - Fixed check for grub mkconfig capabilities
    The check for the capabilities of the tool were applied to
    the tool installed on the host but the later call of the
    tool will be done with the tool inside the image root
* Wed Apr 15 2020
  - Validate use of GRUB_USE_LINUXEFI
    On systems that uses GRUB_USE_LINUXEFI with grub2 version
    less than 2.04 there is no support for dynamic EFI
    environment checking. In this condition we extend the grub
    setup to add this support. The change kiwi does is as
    * Apply only on grub < 2.04
      1. Modify 10_linux to set linux/initrd as variables
      2. Write hybrid setup as 01_efihybrid
      This Fixes bsc#1165960 and bsc#1168480
* Mon Mar 30 2020
  - Bump version up to 9.20.5
    This version upgrade includes several fixes:
    * Fixed result map for OEM pxe install
      Fixes bsc#1165578
    * Add SECURE_BOOT parameter for grub2 in efi mode
      This commit adds the SECURE_BOOT parameter on bootloader sysconfig
      for grub2.
      Fixes bsc#1167746
    * Fix order in fstab
      Any mount point directly under / should be just right after the root
      mountpoint and before the custom mountpoints based on user's subvolume
      Fixes #1349 and bsc#1164310
    * Fixed handling of fillup templates
      Systems using a template tool to generate config files
      might not be effective when they see the intermediate
      config files we need from the host to let certain package
      managers work correctly. Therefore the cleanup code in
      kiwi takes care to restore from an optionally existing
      template file if no other custom variant is present.
      This Fixes bsc#1163978
    * Start using tftp system user package
      With this commit we start requiring tftp system user package. This
      user was created and managed by multiple packages before, with the
      risk of having inconsistent criteria on its defaults. Now there there
      a system user package so whatever package that requries this user should
      just require this package and do not create or modify the tftp user.
      Related with bsc#1143454
* Thu Dec 19 2019
  - Bump version: 9.19.7 → 9.19.8
* Thu Dec 19 2019
  - Update libyui-ncurses-pkg10 to libyui-ncurses-pkg11
    In Tumbleweed there is no longer the libyui-ncurses-pkg10 its been
    superseded by libyui-ncurses-pkg11.
    This fixes the test-image-qcow-openstack integration test
* Thu Dec 19 2019
  - Reference commit for SUSE maintenance
    This commit adds a reference to Issue #1301 and the report in bugzilla
    bsc#1159538. The issue was fixed in commit 7d96d19c
* Wed Dec 18 2019
  - Fix grub2 configuration for shim fallback setup
    If shim fallback setup is enabled the grub.cfg is copied to the EFI
    partition. This commit makes sure that the grub.cfg is copied to the EFI
    partition according to the efi mount point.
    Fixes bsc#1159235
* Tue Dec 17 2019
  - Ensure no swap volume is added on btrfs
    When the selected filesystem is btrfs the volume manager is not LVM.
    In that case the swap partition is not volume, it is a completely
    independent partition. So that we cannot add and additional volume
    for swap when swap is specified in the description file.
    This patch fixes #1301 and fulfills #1297
* Thu Dec 12 2019
  - Fixed installation chapter in the documentation
    The chapter still outlines multipython support but we
    dropped support for python2 some time ago
* Sun Dec 08 2019
  - Bump version: 9.19.6 → 9.19.7
* Sun Dec 08 2019
  - Fixed swap setup if btrfs is used
    In case of a volume manager the simplified variant of the
    device name is used in the fstab file to reference the
    swap device. However this is only correct for the lvm
    volume management but not for btrfs. In case of btrfs
    the swap space is not a subvolume but a real partition
    and thus the simplified device spec in fstab puts in the
    loop mapped device which is wrong. This patch fixes it
    and is related to bsc#1156908
* Thu Dec 05 2019
  - Bump version: 9.18.16 → 9.19.6
    This version includes several fixes:
    * Fixed setup of default grub config
      In /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT also contained
      the root= information. If grub2-mkconfig runs with that information
      it places the root device information twice because grub2-mkconfig
      resolves this information itself. This commit prevents the root=
      information to be placed in the default grub config and
      Fixes bsc#1156908
    * Include grub.cfg inside the efi partition
      This commit ensures the grub.cfg file is included within the vfat efi
      This fixes #1271 and bsc#1157354
    * Reference commit for SUSE maintenance
      This commit adds a reference to Issue #1261 and the
      report in bugzilla bsc#1157104
    * Fixed zipl bootloader setup for s390 images
      The preparation to call zipl and the call itself were wrong.
      For whatever reason the kernel image the initrd are moved
      to another location prior to calling zipl. That move broke
      the system because no kernel/initrd existed at the expected
      place anymore. In addition the zipl call itself was issued
      from a the wrong directory. Also no config file was written
      as an after effect of the refactoring in Issue #1194. This
      Fixes #1173 and bsc#1156694
    * Ensure grub.cfg is copied in EFI/BOOT folder
      This commit fixes the live images in efi mode. Grub configuration file
      is copied to the correct location in <boot_dir>/EFI/BOOT.
      Fixes bsc#1155815
    * Fix the sha256 generated file content
      This commit makes sure the generated sha256 file in a 'kiwi result
      bundle' call includes the filename with the correct extension. For
      compressed files it was omiting the suffix that included during the
      Fixes #1223 and related to bsc#1139915
* Wed Oct 02 2019
  - Fixed rpmdb compat link setup
    On older versions of zypper the path /var/lib/rpm was hardcoded
    and not used from the rpm macro definition. For such systems and
    to support them properly on hosts that have the rpm database
    already moved a compat link was created. However if the host has
    the rpm database at /var/lib/rpm the link doesn't make sense.
    This patch fixes this and therefore bsc#1150190
* Fri Sep 06 2019
  - Bump version up to 9.18.16
    This version upgrade includes several fixes:
    * Add --add-bootstrap-packages option (bsc#1149686)
      The prepare and build commands now allows to specify additional packages to
      be installed as part of the early bootstrap phase This Fixes #1151
    * Avoid default installation of dracut kiwi modules
      With this commit dracut modules won't be installed by default in the initrd
      unless they are requested by the commandline calling dracut or by a dracut
      configuration file.
      Fixes bsc#1142899 bsc#1136444 Fixes #1103
    * Add support for custom fstab script extension
      In addition to fstab append and patch features we also allow an
      fstab.script file that is called chrooted. The change is needed to support
      overlay mounting of filesystems as part of the initrd. If system
      filesystems needs to be changed in a way that they can be used in an
      overlay mount, the standard mount entry has to take the x-initrd.mount
      capability which requires a modification of the fstab which is cumbersome
      to handle as a patch file. This concept is currently used as part of the
      MicroOS project in SUSE and is applied in the integration test build
      maintained for this target. This Fixes bsc#1129566
    * Add crypt dependency to kiwi-lib dracut module
      This commit fixes the dependencies of the kiwi-lib dracut module to include
      crypt module required by
      In addition it also updates the check() section to return 255 instead of 0.
      In check section a return code of 0 means install it, 255 install only if
      required by another module, anything else, do not install.
      Related with bsc#1142899
    * 99-kiwi-lib requires rmdir, install it
      Fixes bsc#1143033
    * Do not crash on missing HOME
      Fixes bsc#1149686
    * Extend spare partition setup
      The spare partition could be used to introduce one additional partition
      table entry. With this patch the following new type attributes will be
    * spare_part_fs="fsname"
    * spare_part_mountpoint="/location"
    * spare_part_is_last="true|false"
      Along with the setup of the partition size the filesystem and its
      mountpoint can be specified. If set the contents of the rootfs at the
      specified spare location will be synced to that partition. The
      spare_part_is_last attribute will place the spare partition at the end of
      the disk. Note this attribute is only available for the simple vmx disk
      type. This is related to bsc#1129566
    * Preserve licenses/other txt files by baseStripFirmware (bsc#1132455) (Fixes #1063)
      LICENSES are usually not large and should be kept alongside of the
      binaries. Also some firmware files sideload additional txt files (like for
      example brcmfmac43430 needs the sdio description txt files). We should just
      always include them because they're not listed as needed files.
      Co-Authored-By: Dan Čermák <>
    * Delete check_grub_efi_installed_for_efi_firmware
      The motivation is nice to check if the required grub module package is part
      of the package list if the efi firmware is requested, but as long as there
      is no distribution wide standard for packaging grub this check will cause
      more trouble than it is of help. Currently it failed for the arm
      architecture and the grub2-arm64-efi package. We decided to prevent
      checking against static lists and dropped this runtime check. Missing grub
      modules will be recognized at the grub stage when we search for them.
      Fixes bsc#1149686
    * Support optional fstab.patch file
      In addition to the support for fstab.append, users can now also provide a
      patch file to change the contents of the fstab file as it got written by
      kiwi. The feature is probably rarely used but needed in the area of suse's
      transactional update mechanism. This Fixes bsc#1129566 and Fixes #945
    * Write sha256sum --check compatible shasum format
      Change the output format of the bundler shasum file to be compatible with a
      'sha256sum --check' call. This fixes bsc#1127173
    * Fixed import of signing keys
      In reference to bsc#1112357 it was required to add the compat symlink
      /var/lib/rpm such that zypper can read the signing keys. Unfortunately
      zypper does not use the configured rpmdb from the rpm macro setup.
    * Fix location of grub unicode font
      This is a follow up patch for #f5bac4495d34. The change of the location of
      the font file was not applied if an iso target, live or install image is
      being built. This patch completes the change and Fixes bsc#1124885
    * Handle location of the rpm DB on the macro level
      The location of the rpm database is no longer a standard path one can
      trust. Some distributions put it to /var/lib others to /usr/lib. This
      introduces the problem of dealing with different locations between the
      bootstrapping (host rpm) phase and the image installation (image rpm)
      This commit implements a solution based on an intermediate rpm database
      configuration. KIWI creates the file inside of the image root
      which is read by any call of rpm in the inner and outer system. During
      bootstrap phase the rpm dbpath from the host system is used and later in
      the install phase the dbpath from the rpm package as it was installed by
      the target image distribution is used. In case of a dbpath difference the
      database is automatically moved to the new location by setting the
      _dbpath_rebuild macro to the correct location. At the end the custom KIWI
      macro is deleted.
      As this process allows custom macro defintions during the KIWI run it also
      serves as the base for a solution to Issue #771 which will be done in a
      follow up request to this commit.
      Also the workaround for bsc#1112357 which uses a static dbpath to store an
      optionally given signing key will be addressed with this commit. The macro
      setup happens before the import_trusted_keys method which makes any
      specification for a strict dbpath obsolete.
      Last the implementation deletes the obsolete dump_reload_package_database
      code. rpm is able to automatically do the conversion of different db
      versions such that the code in kiwi is obsolete. In addition that code only
      worked for rather old db versions. The public API has not changed though,
      but the method is marked obsolete and does nothing anymore.
      In addition to the deletion of obsolete code a new API method
      post_process_install_requests_bootstrap has been introduced to handle
      actions required after bootstrap and before installing of packages from
      inside the new image
* Mon Aug 05 2019
  - Bump version: 9.17.15 → 9.17.16
* Mon Aug 05 2019
  - Do not create a new machine-id file
    This commit ensures KIWI is not creating a new machine-id empty file
    in case it was not provided during the system installation.
    Fixes bsc#1141168
    (cherry picked from commit afd9b3019ae37980524554452e113d544e9676aa)
* Mon Aug 05 2019
  - Update documentation references
    The kiwi project has been moved into its own upstream
    organisation named OSInside. Due to the move some doc
    and README references needs to be adapted
    (cherry picked from commit d09ccc520633c03d5393039ccbc4989779f803d0)
* Mon Aug 05 2019
  - Extend the development documentation
    Co-Authored-By: Thomas Schraitle <>
    (cherry picked from commit 5ba515236d817bfe50200abe5fdaa8a3ac8e6dc4)
* Mon Aug 05 2019
  - Add GitLab CI pipeline badge to README.rst
    (cherry picked from commit af773d67b9e9ca18a851893b1604c2fa866e7bee)
* Mon Aug 05 2019
  - Fixed permanent redirect links in documentation
    (cherry picked from commit 921fa17f4fe7415e4e5e21a8636c72e7d76dc1d3)
* Mon Aug 05 2019
  - Add GitLab CI pipeline status to README.rst
    (cherry picked from commit 0681fb4d7335c1b496a62663fae4b56876ffdc8e)
* Mon Aug 05 2019
  - Extend quickstart to be more viable as a stand-alone document
    (cherry picked from commit fe7c7f59bdf6d1970550a28fff479233e95b85d1)
* Mon Aug 05 2019
  - Add pytest-xdist to dev-virtualenv to run the unit tests in parallel
  - fix CLI args not being passed to pytest by tox for unit_py3_4 and unit_py3_6
  - enable parallel run on travis
  - document how to run the unit tests in parallel
    (cherry picked from commit 0fbc2c5ff950cb1857fe7b45e66983272bf1fc4d)
* Wed Jul 10 2019
  - Update documentation
    The kiwi-descriptions repository has been moved into the
    OSInside organisation
    (cherry picked from commit 70bc4fdda17bab4d6760c708ac5b8c2d77139466)
* Fri Apr 05 2019
  - Bump version: 9.17.14 → 9.17.15
* Mon Apr 01 2019
  - Update compression flag for qcow2 format
    In case of a qcow2 format we store the result uncompressed
    Since the format conversion only takes the real bytes into
    account such that the sparseness of the raw disk will not
    result in the output format and can be taken one by one
    This Fixes bsc#1128146
    In addition the commit includes a refactoring for the
    evaluation of the compress flag in the runtime config.
    Instead of the global overwrite, the flag gets evaluated
    individually at the time the result metadata is created
* Wed Feb 27 2019
  - Bump version: 9.17.13 → 9.17.14
* Thu Feb 21 2019
  - Fixed disk detection from root device
    The method lookup_disk_device_from_root assigns the disk device
    matching the root device uuid. However in a multipath environment
    multiple disk devices matches the same root device. The code to
    assign the multipath map in this case was missing in the dracut
    code base. This Fixes #954 and Fixes bsc#1126283 and bsc#1126318
* Thu Jan 31 2019
  - Fixup code issues reported by new flake8 version
    Travis has updated the flake8 version which caused more
    strict issue reports on the code. This commit fixes the
    new issues reported by flake8
* Thu Jan 31 2019
  - Changed default value for bundler compression
    If no compression is configured in the kiwi config file
    the default was set to: False. However this lead to big
    trouble on the obs side for images which has fixed
    storage disk sizes configured, e.g Azure images which
    requests 30G disk size per instance. Thus the default
    for the bundler compression has changed to be: True
* Tue Jan 29 2019
  - Bump version: 9.16.19 → 9.17.13
    This version upgrade contains fixes for:
    * Support alternative EFI and grub modules paths
      In SUSE products EFI binaries are historically located in
      /usr/lib*/efi. In a recent move to package grub2 as noarch
      fate#326960, a collision between x86_64 and aarch64 has been
      identified, as both place platform-specific files in the same
      spot. To rectify this, a new location was devised:
      /usr/share/efi/$(uname -m). At the same time /usr/lib/grub2 will
      move to /usr/share/grub2. This Fixes #924
    * Fixed Xen guest detection
      We only support Xen setup e.g in the Amazon Cloud for the
      x86_64 architecture. This Fixes bsc#1123186 and bsc#1123185
    * Fixed location of grub unicode font file
      grub2 is expecting the unicode font below the fonts
      directory in the /boot/grub*/ depending on how the
      distribution installs grub2. This Fixes bsc#1119416
    * Add Codec utils for bytes literals decoding
      In case of a literal decoding failure it tries to decode
      the result in utf-8. This is handy in python2 environments where
      python and the host might be using different charset configurations.
      In python3 this issue seams to be solved.
      Fixes #829 and bsc#1110871
    * Fixed URI handling with token query option
      So far only the query format ?credentials=... was supported.
      In case of ?random_token_data the returned uri was truncated
      and also the format check on the query caused a python trace.
      This Fixes #830 and Fixes #828 and bsc#1110869 and bsc#1108508
* Tue Dec 18 2018
  - Fix disk size calculation for VMX
    Disk size calculation must take into account the empty volumes that
    are to be mounted in a directory that does not exist in the root tree
    otherwise there is KeyError. The result of
    storate/setup._calculate_volume_mbytes must be a dict including all
    defined volumes.
    Fixes #904
* Tue Dec 18 2018
  - Bump version: 9.16.18 → 9.16.19
* Tue Dec 18 2018
  - rebuild auto generated code with stable generateDS
    For some reason the xml_parse code generated by generateDS v2.29.24
    caused warnings on simple type XSD patterns. Therefore I rebuild
    the code with the stable build version v2.29.14 which fixed that
    Fixes bsc#1119792
* Tue Oct 30 2018
  - Update flake8 call in tox.ini
    This commit ignores some issues in the code style reported by recent
    flake8. A flake8 update on the CI raised new issues also for the
    branches in maintenance mode. In those cases, just to minimize changes
    and backports, new issues are just ignored.
* Mon Oct 08 2018
  - Add Codec utils for bytes literals decoding
    In case of a literal decoding failure it tries to decode
    the result in utf-8. This is handy in python2 environments where
    python and the host might be using different charset configurations.
    In python3 this issue seams to be solved.
    Fixes #829 and bsc#1110871
* Mon Oct 08 2018
  - Make use of the quiet flag of mountpoint command
    This commit sets the use of -q flag of mountpoint. Kiwi only
    checks the return code, thus any stdout is useless in this case.
    Fixes #829
* Mon Oct 08 2018
  - Adding bugfix trace for bsc#1110869
    bsc#1108508 ticket was fixed with request #831
    from SUSE/fix_uri_handler
* Fri Oct 05 2018
  - Fixed URI handling with token query option
    So far only the query format ?credentials=... was supported.
    In case of ?random_token_data the returned uri was truncated
    and also the format check on the query caused a python trace.
    This Fixes #830 and Fixes #828
* Sat Sep 29 2018
  - Fixed broken link to ec2uploadimg tool
* Thu Sep 27 2018
  - Bugzilla reference commit
    This commit references the fix from commit:6b9e321048602945214
    with the bug id bsc#1109882 in bugzilla.
* Thu Sep 27 2018
  - Disable version tagging in maintenance branch
* Thu Sep 27 2018
  - Disable deploy stage in Travis
* Wed Sep 26 2018
  - Bump version: 9.16.17 → 9.16.18
* Wed Sep 26 2018
  - Create parent qgroup when snapper is present
    This commit creates a new parent quota group (1/0) of level 1 when
    btrfs_quota_groups is enabled and snapper present into the image
    root tree.
    Related to bsc#1093518 and #812
* Wed Sep 26 2018
  - Bump version: 9.16.16 → 9.16.17
* Wed Sep 26 2018
  - Fixup make build target
    Don't include auto generated schema docs into the source
    tarball. Also cleanup from files no longer
    present in the repository
* Wed Sep 26 2018
  - Bump version: 9.16.15 → 9.16.16
* Wed Sep 26 2018
  - Disable warnings report from pytest
    By default pytest now generates warnings for all modules
    used in the tox environment. This information is nice
    but taints the test output of the code of this project
    and is therefore unwanted.
* Wed Sep 26 2018
  - Bump version: 9.16.14 → 9.16.15
* Wed Sep 26 2018
  - Customize latex output for look and feel
* Wed Sep 26 2018
  - Update development doc chapter per review by Tom
* Tue Sep 25 2018
  - Make volume id customizable for installation ISOs
    This commit makes volid attribute also available for OEM images.
    The installation media makes use of the volid value. Only posix
    safe names are allowed, up to 32 characters.
    Fixes #811
* Mon Sep 24 2018
  - Include PDF build of documentation to the package
    Bundle a PDF version of the online documentation with the rpm package
    build. Due to the complexity of getting a latex build environment into
    the travis CI which does not take forever to install, the bundling of
    a built PDF into the pypi archive has been skipped. Users installing
    from pypi would need to install a latex env on their machine and
    run make latexpdf from the installed bundle.
    This Fixes #819
* Mon Sep 24 2018
  - Update docs for setting up development environment
    Reference py3.6 when showing example tox call. Also
    delete a py version reference where it was not needed
* Fri Sep 21 2018
  - Update kiwi tools README
    Delete obsolete entries for tools no longer present
* Thu Sep 20 2018
  - Adding bugfix trace for bsc#1108508
    bsc#1108508 ticket was fixed with bf556a96 and 77517cff commits. Just
    adding the ticket reference here.
* Wed Sep 19 2018
  - Fixed disk detection for live iso in loopback grub
    If the live iso is used as a disk on e.g USB sticks and
    is configured to setup a persistent write space via the
    initrd option, it's required
    to find the disk device to create a write partition on
    This detection worked if the live iso is binary dumped
    on the disk and bootet due to the hybrid support each
    iso built by kiwi provides.
    However if the live ISO deployment should not destroy
    existing data on the disk there is an alternative setup
    which uses grub's loopback support and puts the iso as a
    file on some partition of the disk. In this mode the
    kiwi-live dracut module failed to find the disk device
    and could not setup a persistent write partition.
* Fri Sep 14 2018
  - Bump version: 9.16.13 → 9.16.14
* Fri Sep 14 2018
  - Fixed spec template
    Directory delimiter missing in call for install_dracut target
* Fri Sep 14 2018
  - Bump version: 9.16.12 → 9.16.13
* Thu Sep 13 2018
  - Make use of kiwi/utils/sysconfig
    This commit makes use the sysconfig kiwi utility in order to
    read and eventually update the /etc/sysconfig/snapper file.
* Thu Sep 13 2018
  - Snapper configuration for btrfs quota support refactored
    This commit refactors the snapper configuration for btrfs quota support
    when btrfs_root_is_snapshot is enabled. The sysconfig file
    /etc/sysconfig/snapper is now taken into consideration.
    Fixes bsc#1093518
* Wed Sep 12 2018
  - Fixed overlay of intermediate config files
    Some config files e.g etc/hosts needs to be temporary copied
    from the buildsystem host to the image root system. This is
    done by a custom copy with the .kiwi extension and a symlink
    to that file. During the installation process the package
    manager either overwrites the file or creates a .rpmnew variant.
    In case a .rpmnew variant exists there is code in kiwi which
    restores that .rpmnew variant to become the real file. However
    that _restore_intermediate_config_rpmnew_variants() method
    runs after overlay files has been applied to the system because
    it's part of the final cleanup step. In order to preserve
    an eventual overlay version of the file the .rpmnew variant
    gets only restored if the real file does not exist.
    This Fixes #807
* Wed Sep 12 2018
  - Fixed dice documentation
    The chapter: Building in a Self-Contained Environment holds
    a fixed ruby version in the package install which was outdated.
    It also still referenced the container as tar.xz but we have
    changed to uncompressed containers by default a while back
* Tue Sep 11 2018
  - Fixed filesystem builder use of exclude list
    kiwi defines a global Defaults.get_exclude_list_for_root_data_sync
    method but it was not used in the scope of the filesystem builder.
    Thus this builder was missing the exclusion of the .buildenv
    file. This references Issue #422 and Fixes #814
* Wed Sep 05 2018
  - Enhance /etc/snapper/configs/root file parser
* Tue Sep 04 2018
  - Fix quota groups management when snapper is present
    * Fixes the config file path if root is snapshot
    * Uses the correct QGROUP="<group>" syntax
    * Do not overwrite the config file if already present
      Fixes bsc#1093518
* Sat Aug 25 2018
  - Separate dracut module install by Makefile target
    The dracut modules like kiwi provides it should not be part of the
    default install target. If kiwi gets installed from source or via
    pip all dracut code gets installed on that system which is unwanted
    and in the worst case leads to boot trouble next time this system
    rebuilds its initrd via dracut. Therefore an extra Makefile target
    which is used in the spec of an rpm but not in the install target
    of is provided in this commit.
    As a consequence the installation from pip will not install any
    dracut modules on that system which is intentional. Installing from
    source requires to run make install_dracut which if called assumes
    the caller knows what he/she does :)
* Mon Aug 20 2018
  - Bump version: 9.16.11 → 9.16.12
* Mon Aug 20 2018
  - Follow up fix for skip_cleanup use
    make sure doc_travis tox target has created the manual
    pages such that the environment contains this data
* Mon Aug 20 2018
  - Bump version: 9.16.10 → 9.16.11
* Mon Aug 20 2018
  - Use skip_cleanup for deploy stage in travis
    We need the tox build environment to run the deployment
* Mon Aug 20 2018
  - Bump version: 9.16.9 → 9.16.10
* Mon Aug 20 2018
  - Follow up fix for deploy target
    Integration of man pages must be done as part of the sdist
    setup because the travis pypi deployment only uses the
    sdist target to bundle the sources
* Mon Aug 20 2018
  - Bump version: 9.16.8 → 9.16.9
* Mon Aug 20 2018
  - Fixed deploy target
    As part of the deploy process in travis a bundle to pypi is
    uploaded. The bundle is missing the compiled manual pages because
    the doc_travis stage did not create them.
* Wed Aug 08 2018
  - Bump version: 9.16.7 → 9.16.8
* Wed Aug 08 2018
  - Update pxe server setup documentation
    Delete the suggested modifications to /etc/sysconfig/atftpd
    and trust the defaults provided by the package
* Wed Aug 08 2018
  - Added support for system wide config file
    If there is no user specific config file we are also
    looking for a system wide /etc/kiwi.yml file
* Wed Aug 08 2018
  - use more meaningful variable names
* Tue Aug 07 2018
  - Fix baseStripUnusedLibs config method
    This commit arguments handling of the baseStripUnusedLibs
    that was not prepared to handle quoted variable containing a list.
    Fixes #798
* Tue Aug 07 2018
  - Added doc chapter for remote live boot
* Mon Aug 06 2018
  - Added support for pxe live boot via AOE
    The live ISO should support a network reference. We are using
    the Ata Over Ethernet protocol to achieve this. In combination
    with pxe boot of the kernel/initrd a live iso can boot from
    the network using the following parameter example:
    Export of the live iso file via AOE can be achieved using the
    vblade toolkit which needs to be available on the exporting
    system and compatible with the live operating system.
    This Fixes #796
* Mon Aug 06 2018
  - Run schema validation/update per XSL stylesheets
* Mon Aug 06 2018
  - Added XSL stylesheet to auto update schema
    Drop oem-ataraid-scan from oemconfig if specified
* Mon Aug 06 2018
  - Update vagrant doc chapter redirect links
* Mon Aug 06 2018
  - Drop oem-ataraid-scan from schema
    Along with the change we pin generateDS version to 2.29.14
    because the newer version (2.29.19) creates broken python
    syntax for elements with a value list for their content
    like it's the case for the packagemanager element. The
    tool uses the name k.packagemanager.content as class name
    which is invalid for python.
* Mon Aug 06 2018
  - Delete dmraid aka: softraid soft/fakeraid support
    In fate#323743 the decision was made to drop dmraid from
    the distribution. Along with the low business case for those
    controllers and the support for linux softraid via mdadm
    we also drop the support in kiwi for oem-ataraid-scan
* Mon Aug 06 2018
  - Fixed unresolvables in EC2 integration build
    For some reason libyui-ncurses-pkg8 is gone now
* Mon Aug 06 2018
  - Fixed unresolvables in integration builds
    For some reason libyui-ncurses-pkg8 is gone now
* Wed Aug 01 2018
  - Bump version: 9.16.6 → 9.16.7
* Wed Aug 01 2018
  - update vagrant doc chapter per review by Tom
* Wed Aug 01 2018
  - Added vagrant setup chapter in the docs
    Document steps to create a vagrant box for the libvirt
    provider. Also provide information on provider support
    This Fixes #792
* Tue Jul 31 2018
  - Use xattr 0.9.3
    Latest xattr is broken on pip
* Tue Jul 31 2018
  - Fixed make obs_test_status
    The helper script .obs_test_status looks up the build
    results from the integration tests. With the introduction
    of multibuild integration tests the script has to apply
    some modifications to get the correct results
    This is related to Issue #791
* Mon Jul 30 2018
  - Bump version: 9.16.5 → 9.16.6
* Mon Jul 30 2018
  - Fix result bundle command
    This commits fixes a regression introduced in 98c9c77a
* Mon Jul 30 2018
  - Bump version: 9.16.4 → 9.16.5
* Mon Jul 30 2018
  - Fixup validation of boottimeout attribute
    If boottimeout is set to zero it is evaluated as "not set"
    and the default applies. However it's a fairly well approach
    to set a zero second boot timeout. This Fixes #789
* Fri Jul 27 2018
  - Add build tests for CentOS
* Fri Jul 27 2018
  - Do not replace version from the image name
    This commit makes sure that replacing version to version plus the
    build id on resulting files happens only on version suffixes. Before
    that if image name was including the version string it, this part was
    also replaced.
    Fixes #787 (bsc#1102868)
* Fri Jul 27 2018
  - Extending result bundle task tests to better cover corner cases
    This commit adds some tests to better cover a couple of cases:
    * image name contains the version of the image
    * the file in result does not include the version
* Wed Jul 25 2018
  - Cleanup misleading error message
    In root_bind if the cleanup failed to remove a directory
    hierarchy the error message was just displaying the path
    as it would be on the host root and not based on the root
    of the image root tree.
* Tue Jul 24 2018
  - Modify python-yaml dependency for CentOS and RHEL 7
    This commit fixes #785
* Fri Jul 20 2018
  - Do not run Codacy analysis on tests
* Thu Jul 19 2018
  - Fixup DiskFormatOva implementation
    The inheritance and super call concept used in this class
    destroys the OO design concept of loosely coupled code
    and also leads to a broken build because it bypasses the
    post_init constructor called by the base class
* Mon Jul 16 2018
  - Exclude tests in codacy analysis
* Mon Jul 16 2018
  - Bump version: 9.16.3 → 9.16.4
* Mon Jul 16 2018
  - Added grub2 module packages for GCE test build
* Mon Jul 16 2018
  - Fixup timezone and keytable setup for GCE build
* Mon Jul 16 2018
  - Second round of package fixes for GCE test build
* Mon Jul 16 2018
  - Update schema for GCE build test to latest version
* Mon Jul 16 2018
  - Fixup package list for GCE test build
* Mon Jul 16 2018
  - Added Google Compute Engine build test
* Mon Jul 16 2018
  - Deleted obsolete landscape setup
    Code quality is checked via codacy now
* Mon Jul 16 2018
  - Rebuild schema documentation
* Mon Jul 16 2018
  - Fixed building VMware images with pvscsi adapter
    Qemu does not natively support the pvscsi adapter type.
    However there is a VMware suggested procedure which allows
    to change the lsilogic setup to pvscsi inside of the DDB
    of a formerly created lsilogic configured image format.
    This patch implementes that procedure and
    Fixes bsc#1099569
* Mon Jul 16 2018
  - Rebuild schema documentation
* Mon Jul 16 2018
  - Bump version: 9.16.2 → 9.16.3
* Fri Jul 13 2018
  - Fixed name of checksum file for pxe type
    The pxe image build generates among others a checksum
    file with the suffix '.md5' This file is read by the
    legacy netboot code and is expected to have the same
    basename as the image file itself. However if the
    compressed attribute is set the image file name is
    set to 'image.xz' and the checksum is named 'image.xz.md5'
    which is wrong because 'image.md5' is expected. This
    patch makes sure the checksum file is always set
    to 'image.md5' no matter if the compressed flag is
    configured or not
* Fri Jul 13 2018
  - Fixed custom_args argument assignment in BootImage
    custom_args has been deleted from BootImageKiwi class
    but was still passed in the Factory
* Fri Jul 13 2018
  - Added runtime check for label use
    Added check_volume_label_used_with_lvm to check if
    custom volume labels are used in the scope of LVM
* Fri Jul 13 2018
  - Fixed GCE image file name
    In former times Google requires the image name to follow
    their naming conventions. However that seems to have changed
    and it is no longer required to match a certain pattern.
    Thus this patch changes the output name of the GCE tar file
    to use the same naming schema as KIWI applies to its output
* Thu Jul 12 2018
  - Add codacy.yml config file
* Wed Jul 11 2018
  - Move from to
* Wed Jul 11 2018
  - Updated Travis check icon to forked project
* Wed Jul 11 2018
  - Support label attribute in volumes
    The optional label attribute in a volume section allows
    to specify a filesystem label for the selected volume.
    The label setup will have no effect on filesystems
    which implements their own volume management like it's
    the case for btrfs. This Fixes #738
* Wed Jul 11 2018
  - Update schema tron rules for btrfs type attributes
    The btrfs_* attributes only applies for vmx and oem types
* Tue Jul 10 2018
  - Fixed some code smells
    * Use of unused variables, and dangerous defaults
    * Update of design patterns on pylint and landscape
* Fri Jul 06 2018
  - Add support for activation of btrfs quota groups
    If the new type attribute btrfs_quota_groups is set to true
    this will enable the quota group system for btrfs based systems.
    This Fixes #772 and bsc#1093518
* Fri Jul 06 2018
  - Improve coding style, tests and label format validation
* Fri Jul 06 2018
  - Add '--add-container-label' flag
    This commits adds a command line flag to add a label for container image
    types. The flag can be used multiple times.
    Fixes #770
* Wed Jul 04 2018
  - Added system cleanup methods
    Some files in the system gets created by services like
    systemd or zypper and are meant to be created once on the
    target system. However in the image they might be unwanted.
    Thus this commit adds convenience methods to delete files
    which gets automatically re-created by the services on
    startup. Whether or not the methods are used is in the
    responsibility of the author of the image descripion.
    This Fixes bsc#1098535
* Fri Jun 29 2018
  - avoid double quoting of disturl in label (...="'obs://...'").
    avoid always printed warning of missing disturl
    make use of disturl variable
* Wed Jun 20 2018
  - Bump version: 9.16.1 → 9.16.2
* Wed Jun 20 2018
  - Simplify configfile loading
    prefix and root variables are correctly set, thus calling
    the "normal" command has the same effect than the explicit
    call for "configfile"
* Tue Jun 19 2018
  - Prevent building custom efi image
    If the distribution provides a prebuilt efi image kiwi
    should use it instead of building its own image.
* Wed Jun 13 2018
  - Bump version: 9.16.0 → 9.16.1
* Wed Jun 13 2018
  - Avoid module loading in grub config template
    This patch is two fold. First part replaces the import of
    dedicated video modules in the grub image by the all_video
    module. Second part avoids runtime module insertion which
    requires access to the boot filesystem which is not
    guaranteed on sophisticated rootfs structures like btrfs
    plus readonly snapshots and what not. Thus we make sure
    all boot code is embedded into the grub image(s) and no
    extra loading of modules at runtime will be needed.
    This Fixes bsc#1096937
* Tue Jun 12 2018
  - Fix for bsc#1094788
    This is just an empty commit to include the bugfix reference in
    the repository history.
    The bugfix for bsc#1094788 was actually commited in:
    commit 835cebfe5c488515dfbcdf33dab6262613ca5508
    Author: Marcus Schäfer <>
    Date:   Tue May 29 16:42:55 2018 +0200
* Tue Jun 12 2018
  - Complete GUID change from signed to unsigned
    Follow up fix to complete the binary packing of the GUID
    format to use unsigned types. Missed to move short source
    from signed to unsigned. This Fixes bsc#1095267
* Wed Jun 06 2018
  - Bump version: 9.15.4 → 9.16.0
* Wed Jun 06 2018
  - Move fedora integration test build to fc28 distro
* Wed Jun 06 2018
  - Use the versioned Python interpreter path to run build helper scripts
    The kiwi build process mostly does the right thing in terms of executing
    with the correct Python interpreter throughout the build process, with
    the exception of the Makefile not correctly locating the versioned Python
    interpreter executable path, and the bash completion generator being executed
    using '/usr/bin/python' without regard for what the target environment was.
    This is a problem when a build environment complying with PEP 394 as it
    stands today does not have Python 2 installed, such as when kiwi is being
    built as a Python 3-only package in Fedora. Thus, the Makefile has been
    adjusted to not only correctly locate the versioned Python interpreter, but
    to also execute 'completion_helper' with the correct interpreter.
    Additionally, a trivial change to the shebang to 'completion_helper'
    was made to be consistent with other Python-based build helper scripts.
    This is part of the overall effort to eliminate the dependencies on
    Python 2 in Fedora.
* Tue Jun 05 2018
  - Bump version: 9.15.3 → 9.15.4
* Tue Jun 05 2018
  - Fixup move_to_root method
    move_to_root is called to check each element of a given list
    and changes any path specification to a valid path if the given
    root path would be it's root(/). This tranformation implied the
    creation of paths containing double slashes like //foo which
    was considered harmless. However it has turned out that the dnf
    package manager makes a difference here which requires to fix
    the resulting paths. This Fixes #761
* Mon Jun 04 2018
  - Adding license tag under description tag in schema
    This license tag does not effect the resulting image in any way. The tag
    is just included to state the license of the kiwi image sources in case
    they are distributed.
    Fixes #728
* Mon Jun 04 2018
  - Make sure profile env is included in live images
    For all images which boots via dracut the .profile file is included
    except for live iso's because no information is needed from that file
    to boot or customize the boot. However the .profile contains the
    kiwi_revision information which is useful for any image type.
    This Fixes #755
* Mon Jun 04 2018
  - Add config-cdroot to description import list
    During the prepare step the image description and mandatory
    files needed in the create step are copied into the image
    root system below the image/ directory. In case of the
    optional config-cdroot archive this copy action was missing
    which lead to the problem that the archive was not present
    if the kiwi system create command is sequence is used.
    This Fixes #756
* Mon Jun 04 2018
  - Added true module to grub image list
    When kiwi creates a grub image a list of modules are embedded.
    For the purpose of snapshot boot the true module seems to be
    used but was not included at build time when kiwi created
    the grub image. This Fixes bsc#1093917
* Mon Jun 04 2018
  - Changed GUID format from signed to unsigned
    With reference to Microsoft Guid constructors it seems unsigned
    values are allowed which could exceed the value range of the
    binary unpack used in kiwi. This Fixes bsc#1095267
* Fri Jun 01 2018
  - Fix SC2164 complain of shellcheck
* Thu May 31 2018
  - Updating shellcheck call from tox
    Recent shellcheck versions are more strict and complain about
    backslashes "\" used in literals claiming it is preferred to use
    double backslashes "\\". As is just a styling advise and we use
    backslashes in multiple commands (echo, sed, etc) I believe this
    can be ignored.
* Wed May 30 2018
  - Relax runtime check for ISO images using dmsquash
    This commit relaxes the dracut-kiwi-live module requirement if
    dmsquash dracut module is selected in flags attribute.
* Tue May 29 2018
  - omit multipath module in live iso initrd
    The multipath module creates device maps which puts the device
    in a busy state and prevents the creation of a persistent write
    partition. As multipath seems never useful for the root of a live
    iso image we generally omit this module from being included
* Tue May 29 2018
  - Fixup LOADER_LOCATION in sysconfig/bootloader
    By default we always set LOADER_LOCATION=mbr which is wrong
    if EFI is in use. This patch updates the value to be correct.
    It also seems that this variable is only consumed by the
    yast2 bootloader module from past days. Thus we consider
    it obsolete and on the to be droped list in future releases.
    This Fixes #746
* Tue May 29 2018
  - Bump version: 9.15.2 → 9.15.3
* Mon May 28 2018
  - Fix setup of LOADER_TYPE in sysconfig/bootloader
    LOADER_TYPE value for the grub2 bootloader depends on
    the use of EFI. This Fixes bsc#1094883
* Mon May 28 2018
  - Added documentation for config-cdroot archive
* Mon May 28 2018
  - Added support for config-cdroot archive
    The image description now allows an optional file named:
    config-cdroot.tar[.compression_postfix]. The file gets
    unpacked as user data for live and install ISO images.
    This allows users to add e.g license files or reference
    documentation to the ISO image. This Fixes #737
* Mon May 28 2018
  - Verify file does not exist before creating symlink
* Mon May 28 2018
  - Add service dependencies in generators
    Correctly adding the service dependency to
    auto generated sysroot.mount for kiwi-live and kiwi-overlay dracut
    Fixes #741
* Mon May 28 2018
  - Do not create static dev nodes in root init
    For compatibility reasons kiwi created a set of static device
    nodes when initializing a new image root system. With the
    presence of devtmpfs this should no longer be needed. In addition
    the static dev node setup now also causes problems on filesystems
    like btrfs which was the reason to delete this code now.
    This Fixes bsc#1087104
* Thu May 24 2018
  - Do not delete uncompressed base docker images
    Fixes #739
* Wed May 16 2018
  - Bump version: 9.15.1 → 9.15.2
* Wed May 16 2018
  - Fix zypper add lock operations
    This commit fixes the arguments passed to zypper in add lock
* Tue May 15 2018
  - Add correct GPL-3.0-or-later license
    Add the correct license reference in the spec License field
    Fixes #732
* Tue May 15 2018
  - Make container compression a configuration option
    Change the ContainerBuilder class to evaluate on the
    configuration options to decide if the container archive
    should be compressed or not. By default the archive will
    be compressed, thus there is no change to the former behavior
    but can be setup in ~/.config/kiwi/config.yml as follows:
  - compress: none|xz
    This Fixes #725
* Tue May 15 2018
  - Return file name after archive or compression call
    Extend the ArchiveTar and Compress classes such that
    their archiving and compression methods returns the
    result file name after the operation
* Tue May 15 2018
  - Allow docker root import from uncompressed file
    Check the given file name for its compression format and
    only uncompress if a supported format could be detected.
    This Fixes #730
* Mon May 14 2018
  - Add additionaltags containerconfig attribute
    This commit adds `additionaltags` attribute, so multiple tags to
    a container image can be defined in a comma separated value.
    Fixes #713
* Wed May 09 2018
  - Bump version: 9.15.0 → 9.15.1
* Wed May 09 2018
  - Add a chapter for uninstall package requests in docs (#726)
    Add a chapter for uninstall package requests in docs
* Tue May 08 2018
  - Update arm integration test
    Existing panda build was outdated and non functional.
    Move the test to a more popular target and write the
    image description to use technology matching the
    suse arm development effort. Target is now Rpi(64bit)
* Tue May 08 2018
  - Use latest version of sphinx
    Formerly sphinx==1.6.7 was used because travis-sphinx failed
    with latest sphinx. Now travis-sphinx fails with 1.6.7 and
    I hope using latest sphinx will fix that
* Tue May 08 2018
  - Bump version: 9.14.7 → 9.15.0
* Mon May 07 2018
  - Add comment in pinch_system calls
* Mon May 07 2018
  - Refining the uninstall type implementation
* Fri May 04 2018
  - Add uninstall pacakges type
    This commit adds a new `uninstall` type for packages. Packages listed
    with this type will be removed by the package manager cleaning also any
    unneeded dependency. The removal is executed after running ``.
    Also in this commit `delete` type for packages is now executed after
    `uninstall` packages, meaing it also happens after ``.
    Fixes #625
* Fri May 04 2018
  - Bump version: 9.14.6 → 9.14.7
* Fri May 04 2018
  - Some simple code cleaning
* Fri May 04 2018
  - Fixed check for volume group in use
    The former implementation evaluates the output of the vgs
    command and set the volume group as in use if one of the
    listed volume groups on the host contains the group name
    set by the image description. This would also match if the
    group name set in the image description is e.g 'System' and
    the a volume group on the host with name 'SystemVG' exists.
    However a conflict only exists on exact match of the name.
    The proposed fix is to use the --select feature from vgs
    and let it show information on exact match of the vg_name
    field. The code in kiwi then just evaluates if the selection
    by vgs has a value or not. This Fixes #721
* Fri May 04 2018
  - Fix setup of kiwi_lvm profile variable
    kiwi_lvm was always set to true if a volume management system
    is in use. However it should only be set to true if the
    selected volume management system is lvm. The same applies
    to the kiwi_lvmgroup variable which also only makes sense
    if the lvm volume management system is used.
    This Fixes bsc#1090427
* Mon Apr 30 2018
  - Bump version: 9.14.5 → 9.14.6
* Thu Apr 26 2018
  - Extend test-image-azure integration test
    Use xfs as filesystem and set a tag to also test image tags
* Thu Apr 26 2018
  - Use /dev/zero to really write a zero byte
    The cleanup of the 512 byte block for the vhdfixed tag
    was based on reading from /dev/null which does effectively
    nothing. As the block should be filled with zero bytes
    this patch changes the source from /dev/null to /dev/zero
    This was found by tests to reproduce the issue reported
    in bsc#1090953 but is not causing it
* Tue Apr 24 2018
  - Add test for the utils class StringToSize
    This commit adds a couple of unit tests for the StringToSize class.
* Tue Apr 24 2018
  - Bump version: 9.14.4 → 9.14.5
* Tue Apr 24 2018
  - Run doc target in travis test stage
* Tue Apr 24 2018
  - Fixup doc
    Do not load kiwi logging which is unneeded and causes many
    superfluous messages on the console when sphinx build runs
* Tue Apr 24 2018
  - Fixup docstring warning from sphinx build
* Tue Apr 24 2018
  - Fixup travis unit test stages
    Build docs in deployment stage only
* Tue Apr 24 2018
  - Include doc_travis_deploy in travis deploy stage
* Tue Apr 24 2018
  - Fixed syntax errors shown by travis lint
* Tue Apr 24 2018
  - Revert "Fixup travis.yml"
    This reverts commit 79ccbdff394e2aba4f1e8fb6390a9a8e0d1925e2.
* Tue Apr 24 2018
  - Revert "Yet another try to get travis stages correct"
    This reverts commit aca057c3554795b79c651f63a58967138d00f3c8.
* Tue Apr 24 2018
  - Yet another try to get travis stages correct
* Tue Apr 24 2018
  - Fixup travis.yml
    Looks like empty lines are not allowed
* Tue Apr 24 2018
  - Revert "Clearly separate unittest stage from deployment"
    This reverts commit 5fd27924c931b6b60903b0015d0a8cf31cf499f7.
* Tue Apr 24 2018
  - Bump version: 9.14.3 → 9.14.4
* Mon Apr 23 2018
  - Some improvements on size calculation
    This commit simplifies the unpartitioned area size calculation.
    Fixes #709 and it is related to fate#323874
* Mon Apr 23 2018
  - Clearly separate unittest stage from deployment
* Fri Apr 20 2018
  - Use travis stages feature for pypi deployment
    Problem ist that the deploy section is called for every
    item in the former matrix: setup. This means the pypi
    upload was triggered twice for the same archive which
    means one target always fails. In order to deploy only
    once travis provides a stages feature which is used
    in this commit
* Fri Apr 20 2018
  - Bump version: 9.14.2 → 9.14.3
* Fri Apr 20 2018
  - Adding unpartitioned size attribute
    This commit adds the possibility of setting some unpartitioned area
    after the systemdisl partition into the image.
    Fixes #709
* Fri Apr 20 2018
  - Fixed creation of machine settings file
    If no vmnic setup is present a request to iterator over
    a NoneType object is attempted and failed. This Fixes #710
* Thu Apr 19 2018
  - volume_manager API docs cleanup
* Thu Apr 19 2018
  - repository API docs cleanup
* Thu Apr 19 2018
  - system API docs cleanup
* Wed Apr 18 2018
  - package_manager API docs cleanup
* Wed Apr 18 2018
  - build API docs cleanup
* Wed Apr 18 2018
  - Fixed docstring :rtype: values
    In Python the string type name is str not string
* Tue Apr 17 2018
  - Cleanup of the iso_tools API docs
* Tue Apr 17 2018
  - Cleanup of the utils API docs
* Tue Apr 17 2018
  - Cleanup api doc strings
    This cleans up and fixes the api documentation for
    the public interface of the projects boot source code
    files and Fixes #700
* Tue Apr 17 2018
  - Cleanup of the solver API docs
* Tue Apr 17 2018
  - Fixup docstring typos per review
* Tue Apr 17 2018
  - Cleanup api doc strings
    This cleans up and fixes the api documentation for
    the public interface of the projects storage source code
    files and Fixes #698
* Mon Apr 16 2018
  - Fixup download url in
    Better point to installable packages. This Fixes #702
* Wed Apr 11 2018
  - Cleanup api doc strings
    This cleans up and fixes the api documentation for the
    public interface of the projects toplevel source code
    files and Fixes #697
* Tue Apr 10 2018
  - Fixup creation of vmware settings file
    The kiwi schema allows for multiple vmnic sections but kiwi
    only took the primary one into account. This patch uses all
    configured vmnic sections. This Fixes #688
* Tue Apr 10 2018
  - Support lookup for fstab.append on fstab creation
    At the time kiwi creates the fstab with all required fields
    to boot the system it now also looks for an optional fstab.append
    file and appends its contents to the fstab file. This allows
    to setup custom fstab entries for filesystem mounts which are
    established outside of the kiwi image building process by
    e.g a service at first boot
* Tue Apr 10 2018
  - Add auto release to pypi on release tags
    This will automatically release kiwi on pypi if a new tag in
    master is set. This happens when bumpversion is called followed
    by a push and push --tags. Only if the tag is pushed the travis
    deployment gets triggered. This Fixes #678
* Mon Apr 09 2018
  - Change variable quoting for Rm/Rpm shell helpers
    The two methods exists to overlay their call with a logging
    facility. Thus it is ok and expected that the caller can
    pass arguments for the program e.g (Rm -rf foo) which resulted
    in (rm '-rf foo') leading to a runtime error.
* Mon Apr 09 2018
  - Bump version: 9.14.1 → 9.14.2
* Fri Apr 06 2018
  - Fix default initrd_system values
    This commit fixes the default initrd_system value for some image
    types. Since this value is included in profile and potentially
    taken into account for some of the config script functions, it is
    important to have consistent values even when the image type
    has no initrd choice or it doesn't have initrd at all.
    Related to #689
* Fri Apr 06 2018
  - Check partition table after cow part creation
    Proceed with the persistent write partition setup only
    if the cow partition could have been created successfully
* Thu Apr 05 2018
  - Fixed detection of disk node in live iso images
    If the live iso is booted as disk the initrd code needs to
    find the correct disk node pointing to the iso image. This
    was formerly done by checking if the populated disk devices
    contains an iso header with an application id. The information
    was obtained using the isoinfo tool. isoinfo is a tool
    provided by the obsolete and xorriso replaced cdrtools kit.
    In addition the lookup was unsafe because any iso with
    an application id would have been valid. Thus this patch
    changes the detection mechanism to use the volume id as
    it is used in the root assignment on the cmdline. The
    volume id is populated as device label for the assigned
    block device and can therefore be used as a unique id.
    The volume id itself is a configuration option in the image
    XML description. If not set the default is 'CDROM'. The
    information can be obtained via blkid and therefore also
    eliminates the isoinfo requirement
* Wed Apr 04 2018
  - Fixup test-image-docker unresolvable state
    genisoimage seems no longer present in the distro
* Wed Apr 04 2018
  - Update etc/default/grub setup
    kiwi writes optional grub boot parameters to the GRUB_CMDLINE_LINUX
    variable in default/grub. This information is then picked up by
    grub2-mkconfig and written to grub.cfg However there is also another
    variable named GRUB_CMDLINE_LINUX_DEFAULT which according to the
    documentation should be used preferably. While it does not seem to
    matter for grub it matters for yast. Thus this patch changes the
    configuration variable and fixes bsc#1084117
* Tue Apr 03 2018
  - Bump version: 9.14.0 → 9.14.1
* Tue Apr 03 2018
  - Fixed truncation of image when writing vhd tag
    When writing the vhd tag into a vhdfixed formatted image
    the image was opened with the wrong open bits 'wb' and
    thus was truncated at the 64k offset. This patch fixes
    the open bits to allow in-place tag writing. This
    Fixes bsc#1077096
* Tue Apr 03 2018
  - Make use of autoremove in Yum and Dnf to clean dependencies
* Wed Mar 28 2018
  - Enable no forced deletion for dnf, yum and apt package managers
    This commit makes apt, yum and dnf support equivalent to zypper in terms
    of being capable to delete packages using the package manger tools
    (implies dependencies deletion is handled by the package manager)
    or deleting explicitly only listed packages using packager tools
    even if this implies breaking dependencies.
* Tue Mar 27 2018
  - fix vmx fileName parameter, bsc#1084157
* Fri Mar 23 2018
  - Update schema version in free schema doc generator
* Fri Mar 23 2018
  - Update schema version in headline of doc chapter
* Fri Mar 23 2018
  - Bump version: 9.13.9 → 9.14.0
* Fri Mar 23 2018
  - Rebuild online schema documentation
* Fri Mar 23 2018
  - XSL Auto update descriptions due to schema change
* Fri Mar 23 2018
  - Delete obsolete hybrid attribute from type
    Any iso image we create will be a hybrid image. That was
    already the default for any install iso image and was a
    configuration option for live images. The optional selection
    only existed for systems which do not provide tools to
    make an iso hybrid. All distributions kiwi supports provides
    this capabilities and there is no good reason why a live
    or install iso should not be hybrid and bootable as iso
    and as disk. Also the boot in disk mode became the preferred
    boot method for the majority of our users which requires
    to provide a hybrid iso
* Thu Mar 22 2018
  - Add efiparttable type attribute
    This commit allows to choose the partition table type for efi firmwares
    using the efiparttable type attribute.
    Fixes #638
* Thu Mar 22 2018
  - Update spec file to require xorriso
* Thu Mar 22 2018
  - Cleanup hybrid call and use of iso tool options
    The extra isohybrid call is only needed if the mkisofs
    tool category is used. Thus it should be only visible
    at the place where the isofs is created and not as an
    extra step in the builder tasks. Additionally the handling
    of extra options was mkisofs specific and should be
    better done as a common meta_data record. The tool
    specific options should only appear in the tool specific
    class implementations
* Thu Mar 22 2018
  - Allow to configure iso tool category
    Switch to xorriso by default but allow to setup cdrtools
    in the runtime configuration file
* Wed Mar 21 2018
  - Remove shebang in spec
    It removes the shebang from the autogenerated file and also removes
    the exception in rpmlint to ignore non-executable-script warning.
    Fixes #666
* Mon Mar 19 2018
  - Remove unneeded shebangs from dracut modules
    Fixes #668
* Mon Mar 19 2018
  - Added IsoToolsXorrIso class
    As an alternative to mkisofs/genisoimage there is now the
    IsoToolsXorrIso class which implements the IsoTools interface
    by using xorriso. This Fixes #635
* Mon Mar 19 2018
  - Update package
    Include new iso_tools directory
* Fri Mar 16 2018
  - Added iso_tools api documentation
* Fri Mar 16 2018
  - Add list_iso method to iso_tools api
* Fri Mar 16 2018
  - Update FSF address
    The address has been taken from the header example published here
    Fixes #667
* Fri Mar 16 2018
  - Add create_iso method to iso_tools api
* Thu Mar 15 2018
  - Seperate iso tool handling into its own namespace
    The Iso class only provides generic helper methods around the
    creation of ISO filesystems. For the creation of the filesystem
    itself we encapsulate the tool parameter handling into its own
    class. For the option compatible mkisofs/genisoimage tools the
    IsoToolsCdrTools class exists. This allows to create e.g
    IsoToolsXorrIso class as a future implementation
* Thu Mar 15 2018
  - Refactor iso helper tools
    There are several tools available to build iso images.
    genisoimage, mkisofs and also xorriso. The history of
    the tools shows them to be used in the range of available
    Linux distributions. Thus kiwi contains an abstraction
    layer to support them but assumed they are option
    compatible. With the xorriso implementation this is no
    longer correct and therefore a refactoring of the iso
    tools api is required before support for xorriso can
    be added. This references Issue #635
* Wed Mar 14 2018
  - Make build type mandatory in XMLState
* Wed Mar 14 2018
  - kiwi_inode_size value is no longer hardcoded in more than one place
* Wed Mar 14 2018
  - Add warning message for dasd
* Wed Mar 14 2018
  - Rearrange defaults and some comments
* Wed Mar 14 2018
  - Rearrange variable start_sector attribute to be a Partitioner attribute
* Tue Mar 13 2018
  - Add disk_start_sector type attribute
    This commit adds the disk start sector attribute to configure the
    first disk sector for the first partition of the disk.
    Fixes #575
* Tue Mar 13 2018
  - Rebuild online schema documentation
* Tue Mar 13 2018
  - Bump version: 9.13.8 → 9.13.9
* Tue Mar 13 2018
  - Bump version: 9.13.7 → 9.13.8
* Tue Mar 13 2018
  - Fixed base package requires
    kpartx is used by kiwi but was not required in spec
* Tue Mar 13 2018
  - Update gitignore
    Do not manage changes in .pytest_cache
* Tue Mar 13 2018
  - Tell plymouth to quit only if a dialog is called
    In case of a dialog kiwi uses the dialog program which conflicts
    with the plymouth splash system. Thus we tell plymouth to stop
    This patch changes the request to be send to plymouth prior to
    a dialog call and not in general
* Mon Mar 12 2018
  - Bump version: 9.13.6 → 9.13.7
* Mon Mar 12 2018
  - Update bootloader console for oem test image
    Set bootloader_console="serial" for the oem test image to
    allow testing in the Kanku CI
* Mon Mar 12 2018
  - Add profile dependencies
    With this commit the profile can include other profiles as a dependency.
    This way it is possible build an image defined by multiple profiles by just
    calling a single composed profile from the command line.
    Fixes #658
* Mon Mar 12 2018
  - Bump version: 9.13.5 → 9.13.6
* Fri Mar 09 2018
  - Disable multipath from oem build test
* Fri Mar 09 2018
  - Fixup setup of root_filesystem_is_multipath
    The variable is set to a boolean value or None. If set to
    False due to a configuration of oem-multipath-scan this
    will cause the dracut multipath module to be omitted.
    In any other case the presence of the multipath module
    decides whether it will be included into the dracut
    generated initrd or not.
* Fri Mar 09 2018
  - Fixup python-kiwi base package requires
    There is no need for the base package to require multipath.
    Those tools are only needed for dracut modules
* Thu Mar 08 2018
  - Use dracut modules based on feature use
    As the kiwi build dracut initrd is a generic one which
    includes all installed dracut modules we missed a way to
    exclude modules from beeing incorporated even if we know
    it would not be needed. One example is the multipath module
    which would only be useful if the oem multipath scan is
    configured in the image description
* Wed Mar 07 2018
  - Update test-image-oem build
    Create hostonly dracut initrd on first boot and replace
    kiwi's grub config by the result of grub2-mkconfig
* Wed Mar 07 2018
  - Delete invalid motd file from build tests
* Wed Mar 07 2018
  - Prepare test-image-oem build test for Kanku
    Activate unattended mode and preselect the installation target
    Also specify a fixed swapsize value to be independent of the
    host main memory which is used to calculate swap if no size
    is specified
* Tue Mar 06 2018
  - Bump version: 9.13.4 → 9.13.5
* Tue Mar 06 2018
  - Fixed btrfs search path in earlyboot script
    If kiwi generates its own efi image for the boot process
    it does not setup the btrfs relative path setup in the
    earlyboot script embedded into the generated efi image.
    This has a bad impact on the file search because the
    btrfs setup done in kiwi puts root below the @ volume
    which we then need to specify of the relative lookup
    is not activated. Fixes bsc#1082155
* Tue Mar 06 2018
  - Bump version: 9.13.3 → 9.13.4
* Mon Mar 05 2018
  - Use LABEL for the swap partition
    If multipath and device maps are active the fstab entry should use
    the LABEL reference. Systemd calls swapon and it only works properly
    with multipath devices when LABEL reference is used or calling directly
    on the /dev/dm-* device file.
* Sat Mar 03 2018
  - Bump version: 9.13.2 → 9.13.3
* Fri Mar 02 2018
  - The order of the options for mkisofs matters
    Setting -eltorito-platform after -b causes mkisofs to fail
* Fri Mar 02 2018
  - Resize partition table after image resize
    The command 'kiwi image resize' allows to resize the size
    of a disk image. Depending on the partition table type it
    is also required to resize the partition table inside of
    the image to let the file size change become effective
    This Fixes #534
* Fri Mar 02 2018
  - APT: Support patternType in the bootstrap phase
    With patternType="onlyRequired" (the default), run debootstrap with
  --variant=minbase to install only essential packages. With
    patternType="plusRecommended", let debootstrap  also install important
    packages. This is not exactly what the patternType keyword means with
    other targets, but it allows to choose between an absolutely minimal
    image and a small but usable system.
* Fri Mar 02 2018
  - Bump version: 9.13.1 → 9.13.2
* Fri Mar 02 2018
  - Reactivate device mappings after repart. Fixes #645
    This commit recreates removed device maps and triggers again
    systemd generators in order to adapt again device units to the
    new context. Fixes #645
* Fri Mar 02 2018
  - Refactor ovftool check
    The way this was done mask errors from the call
    with the check if the tool exists on the host.
    This patch refactors this and makes clear where
    we check for the tool to be installed and where
    we actually call it
* Fri Mar 02 2018
  - Extend has_option_in_help to also check error data
* Thu Mar 01 2018
  - Check if isotool supports eltorito-platform option
    Along with the change there is a small refactoring to
    populate the iso tool search to the public api of the
    Iso class
* Thu Mar 01 2018
  - Set eltorito-platform for efi
    The default eltorito platform is set to "x86_64 PC", however
    in an alternative bootloader spec for efi this would be the
    wrong platform spec. This patch adds the correct platform
    to the alt-boot setup for efi. References #643
* Wed Feb 28 2018
  - Fixup obs test status helper
    Use osc results output to get better status information
* Wed Feb 28 2018
  - Fixed get_free_disk_bytes in dracut kiwi-lib
    The method used any device from the lsblk output, but it can
    happen that some device nodes with different name point to
    the same physical device. The method would then calculate
    the free space wrong. This patch takes the PARTUUID value
    into account to make sure any partition device size is used
    only once. This Fixes #648
* Tue Feb 27 2018
  - Use pytest instead of py.test
    From pytest 3.0, it is recommended to use "pytest" as the main
    command. The use of "py.test" is deprecated and is potentially removed
    in the future.
* Tue Feb 27 2018
  - Update tox setup
    Add python 3.6 target and activate it for the travis
    and the local make targets
    Use major python version for the check(flake) and doc
    targets where the interpreter minor version is not
    primarily important
    This references #641
* Tue Feb 27 2018
  - Update yast setup documentation
    Incorporate changes per review by Tom
* Mon Feb 26 2018
  - Fixed oem build test
    bind-utils explicitly required for obs to be able
    to resolve the package dependencies
* Mon Feb 26 2018
  - Bump version: 9.13.0 → 9.13.1
* Mon Feb 26 2018
  - Only delete sub path if not empty
* Mon Feb 26 2018
  - Fixed package lists for azure and ec2 build tests
* Mon Feb 26 2018
  - Reference commit for bugzilla
    With regards to the changes done in Issue #637 this commit
    just creates a reference to a related bug bsc#1082163
* Fri Feb 23 2018
  - Cleanup config functions shell coding
* Fri Feb 23 2018
  - Use mkisofs instead of wodim
* Fri Feb 23 2018
  - Delete obsolete/unused methods
* Fri Feb 23 2018
  - Add to shellcheck
* Fri Feb 23 2018
  - Added doc page how to setup yast on firstboot
* Thu Feb 22 2018
  - Allow arch attribute for profiles specification
    A profile could be relevant for only a specific architecture.
    There was no way to express that in the XML description. With
    the change in this commit a specification like the following
    is possible:
    <profile name="A" description="..." arch="aarch64"/>
    <profile name="B" description="..."
    Profile A is only usable on the aarch64 architecture, whereas
    profile B would be usable on all architectures.
    * Selecting an arch specific profile from the commandline via
      the --profile option on a system which is not of that architecture
      will result in an error message.
    * Using the import="true" attribute in the <profile> definition
      for an arch specific profile will cause the import of that
      profile only on that architecture and silently ignore the
      import on any other architecture
      This Fixes #637
* Thu Feb 22 2018
  - Update build-test descriptions for Kanku
    As part of the buildservice there is now also a CI system called Kanku
    which allows for image boot/run tests. The only requirement on the image
    level which is missing in our build test descriptions is the setup of
    the serial console. This patch updates those image descriptions which
    could be tested by kanku to provide a serial console at boot time.
    The plan is that our build-test images automatically gets boot tested
    by the Kanku CI. This should include boot, console-login, reboot,
    console login, shutdown. The required job description to do this
    needs to be worked out together with the Kanku team
* Tue Feb 20 2018
  - Adding publisher attribute for ISOs
    This commit adds the 'publisher' attribute in type only for
    ISO image type. It sets the publisher name of the resulting ISO.
    Fixes #630
* Tue Feb 20 2018
  - Fixed yum vs. yum-deprecated binary lookup
    When using the yum package manager it could be either provided
    as yum or yum-deprecated binary. Because of this the search
    method to find the binary needs to know the context from which
    the call is performed. This could be either the host system
    or the created image root. This Fixes #624
* Tue Feb 20 2018
  - APT: Run debootstrap with --variant=minbase
    This selects only packages with Priority: required, which is more in
    line with what the other package managers are doing. A patch for
    kiwi-descriptions has been submitted to adapt to this new behavior.
* Fri Feb 16 2018
  - Bump version: 9.12.9 → 9.13.0
* Fri Feb 16 2018
  - Do not emit linuxefi/initrdefi on non-x86 platforms
    Grub wants to have linuxefi/initrdefi commands to execute Linux via the UEFI
    calling convention on x86. However, all other platforms simply use the normal
    linux/initrd commands, because there grub assumes that an EFI grub wants to
    run an EFI payload.
    Reflect this architecture difference in the generated grub configuration.
    Signed-off-by: Alexander Graf <>
* Thu Feb 15 2018
  - Fixup grub2 theme setup
    The presence of a background file was mandatory for kiwi to
    use the theme. But the background information is optional
* Wed Feb 14 2018
  - Deleted obsolete boot descriptions
    The custom kiwi boot descriptions has been moved into
    the kiwi-descriptions github repo and builds the compat
    package kiwi-boot-descriptions from there. The build
    of the boot image(initrd) is done by dracut and the
    dracut module packages provided by kiwi. The classic
    custom boot descriptions can still be used as alternative
    method if the above package is installed. Related to
    Issue #576
* Tue Feb 13 2018
  - Create compatible boot options
    The boot option root=install:CDLABEL= is mandatory for install
    images which uses the dracut initrd system. But for the custom
    kiwi oemboot descriptions this is causing a problem when detecting
    the install device. Thus the above boot option is only applied
    for the initrd system which actually makes use of it
* Tue Feb 13 2018
  - Update boot description search path
    With the move of the boot descriptions in its own package
    the kiwi search path needs to be adapted to look for boot
    descriptions in /usr/share/kiwi/custom_boot. In addition
    a runtime check to exit early if the boot description could
    not be found or is not specified will be provided. Related
    to Issue #576
* Tue Feb 13 2018
  - Update the docs to the current example present in kiwi-descriptions
* Mon Feb 12 2018
  - Bump version: 9.12.8 → 9.12.9
* Mon Feb 12 2018
  - Update
    sphinx 1.7.0 is not compatible with travis-sphinx
    thus we stick with 1.6.7 until travis-sphinx followed
    the sphinx changes
* Mon Feb 12 2018
  - Add restrictions to Path.remove_hierarchy
    When an iso file is used as repo, this iso will be loop mounted on
    the host and bind mounted into the image root as long as the image
    builds. When the mount is released a recursive cleanup of the complete
    path happens. This is done by calling Path.remove_hierarchy. However
    if a sub path of the mount path contains a system root directory
    which is mandatory for the Linux root system it is not allowed
    to be deleted even if it is empty at the time of the mount cleanup.
    Thus this patch adds a lookup for protected directory names and
    only runs the recursive deletion as long as no protected member
    is part of the path. This fixes bsc#1080301
* Sat Feb 10 2018
  - Initial support for building Debian/Ubuntu packages in spec
    This adds support for producing the main kiwi package as well as the
    packages for the dracut modules to be used when building Debian-based
    distribution images with KIWI.
    The Debian/Ubuntu package is built using debbuild:
* Fri Feb 09 2018
  - Fixed build_pxe_root_filesystem documentation
    The article still used filename references from v7 code stream
    This patch updates the docs to match the sources it refers to
* Wed Feb 07 2018
  - Update dropped features documentation
    The information on the partition based install method was
    unclear and misleading. This patch clarifies the documentation
    in this regard
* Wed Feb 07 2018
  - Delete obsolete ovf format value
    Support for ova has been added which makes the ovf format
    value obsolete and redundant
* Tue Feb 06 2018
  - OVA: Print a user-friendly message if ovftool is not available
* Tue Feb 06 2018
  - OVA: Require ovftype="vmware"
* Mon Feb 05 2018
  - Expand consistency check for grub efi package to cover debian based
    and RH distros
* Mon Feb 05 2018
  - Bump version: 9.12.7 → 9.12.8
* Mon Feb 05 2018
  - Exclude install source device from target list
* Mon Feb 05 2018
  - Fixed kiwi-dump timing issue
    The install code needs to wait in the pre-udev phase for
    the device containing the installation data to become ready
    before proceeding with the actual installation code.
* Mon Feb 05 2018
  - Fixed dialog size of install confirmation dialog
    The size was too small to show device names which causes a
    line break to be displayed in the next line
* Mon Feb 05 2018
  - Fix style error
* Mon Feb 05 2018
  - Early exit if firmware is efi or uefi but the expected grub module is
    not part of the package list
* Sun Feb 04 2018
  - Cleanup misleading method name
* Sun Feb 04 2018
  - Fixed coverage report setup
    Latest version of the coverage module requires a report setup
* Sun Feb 04 2018
  - Fixed target path name for gce format
    get_target_name_for_format in case of the gce format does
    not return a path spec which leads to an incomplete result
    information for a later bundle command. This patch fixes
    this. In a follow up pull request we will also update
    the method name from the misleading get_target_name_for_format
    function name to get_target_path_name_for_format
* Sat Feb 03 2018
  - Use live-grub-stick
* Fri Feb 02 2018
  - Fix packages file generation
    This commit checks the %_dbpath value of the image rpm tool. This is
    needed since recent rpm versions switched the default database path,
    thus running rpm queries to different roots might lead to errors.
    Fixes #605
* Thu Feb 01 2018
  - Bump version: 9.12.6 → 9.12.7
* Thu Feb 01 2018
  - Update per review by Tom
* Thu Feb 01 2018
  - Update per review by David
* Wed Jan 31 2018
  - Update per review by Tom
* Tue Jan 30 2018
  - Added chapter for live-fat-stick deployment
    With the support for the iso-scan feature in KIWI live
    ISO image, also the ability to deploy file based on
    FAT32 usb sticks via the live-fat-stick tool exists.
    This chapter describes how to do it and Fixes #521
* Tue Jan 30 2018
  - Update pre review by Tom
* Tue Jan 30 2018
  - Update per review by Tom
* Tue Jan 30 2018
  - Update per review by Tom
* Tue Jan 30 2018
  - Remove vmdk metadata update procedure
    This commit removes the method _update_vmdk_descriptor from
    DiskFormatVmdk class. The code part causes vmdk format issues
    in current up to date hipervisors such as VMWarePlayer 14 or
    Virtualbox 5.2. Removing this code does not produce any failure,
    at most can only imply loosing some features provided by open-vm-tools
    Fixes #591
* Tue Jan 30 2018
  - Fixed use of profile variables in kiwi-dump module
    The profile environment was not imported in the
    dracut kiwi-dump module. Thus custom settings like
    oem-unattended did not had an effect
* Tue Jan 30 2018
  - Fixup docstrings in xml_state
* Tue Jan 30 2018
  - Allow only one dracut variable for kiwi debugging
* Mon Jan 29 2018
  - Bump version: 9.12.5 → 9.12.6
* Sat Jan 27 2018
  - Fixed kiwi dracut config for the final system
    Once the image has been deployed on the target and the
    system is up and running some of the kiwi dracut modules
    used for deployment are no longer needed and should not be
    taken into account when another dracut call happens on the
* Fri Jan 26 2018
  - Add support for building OVA images
    Implement support for format="ova" using VMware's ovftool. We use the
    vmdk format as a basis and then just call ovftool to convert *.vmdk +
    * .vmx to an OVA.
* Fri Jan 26 2018
  - Update documentation
    Update the documentation with regards to the move
    from the plain kiwi initrd to the dracut initrd system.
    This is related to Issue #576
* Fri Jan 26 2018
  - flake8: Use a more conservative max-complexity setting
    Set the default threshold to 12 and annotate the outliers with
    "noqa: C901". Most of the cases are due to lack of switch statement in
    python, but there are some worth titying up. Now we can grep for them
* Fri Jan 26 2018
  - Bump version: 9.12.4 → 9.12.5
* Fri Jan 26 2018
  - Make sure there are no busy devices on reboot
    If the dracut kiwi-repart module skips the repartition step
    because the disk was already repartitioned it leaves devices
    in busy state which leads to a rescue shell at the system
    mount stage
* Thu Jan 25 2018
  - uboot-setup-panda.tgz was readded by mistake as boot hooks are no longer needed
* Thu Jan 25 2018
  - Adding opensuse ports repository
* Thu Jan 25 2018
  - Bump version: 9.12.3 → 9.12.4
* Thu Jan 25 2018
  - Don't lookup zImage symlink
    Due to the workaround to lookup the gzip compressed variant
    of a zImage to find its version, it's required to find the
    full name of the zImage in order to rematch the gzip variant.
    Looking at the zImage link will make this to fail because
    there is no vmlinux link
* Thu Jan 25 2018
  - Bump version: 9.12.2 → 9.12.3
* Thu Jan 25 2018
  - Fixed kernel version check for zImage
    kernels build as zImage contains the decompressor code
    as part of the kernel image and could be therefore
    compressed by any possible compression algorithm.
    In this case we assume/hope that there is also a
    standard gz compressed vmlinux version of the kernel
    available and check this one instead of the zImage
    variant. Fixes #587
* Thu Jan 25 2018
  - Bump version: 9.12.1 → 9.12.2
* Wed Jan 24 2018
  - Update the man pages
* Wed Jan 24 2018
  - Fixed installation image builder
    Use get_boot_names from BootImage instance to ask for
    the name of the initrd instead of constructing this
    information from static values. The name of the initrd
    is different per distro and toolkit
* Wed Jan 24 2018
  - Provide a get_boot_names method in boot classes
    The naming schema for an initrd file name depends on the
    boot image type as well as on the underlaying initrd
    creation toolkit. In order to encapsulate that in a clear
    interface the code to know about the correct names has
    been moved into the classes which are responsible for
    it and out of the builder/disk class
* Wed Jan 24 2018
  - Image name generation for GCE images
    + Fix the name generation for GCE images. The implementation assumed that
      GCE images are of a type that use a kiwi generated initrd, looking for
      image name components based on the boot attribute in the type element.
      This assumption is not correct, use the name provided in the XML to
      compose the image name.
* Wed Jan 24 2018
  - Bump version: 9.12.0 → 9.12.1
* Wed Jan 24 2018
  - Fixed dracut-kiwi-oem-dump requires setup
    on rhel/fedora multipath is provided by device-mapper-multipath
* Tue Jan 23 2018
  - Adding package_gpgcheck flag as an option for set-repo and add-repo
    Fixes #565
* Tue Jan 23 2018
  - Adding uboot-setup kiwi hooks
    For some reason the uboot-setup-panda.tgz file did not get into
    master branch, probably was not properly pushed in the former
    include_build_tests_arm branch.
* Tue Jan 23 2018
  - Fix build tests to match new locale setting strategy (#586)
* Mon Jan 22 2018
  - Added timezone package to build tests
    With the latest update on how kiwi handles the locales with
    systemd-firstboot, only locales defined in timezone package can be
    set, thus Europe/Berlin is not possible if timezone is not installed
* Mon Jan 22 2018
  - Fixed build tests for azure and ec2
    Packages yast2-storage and recode no longer provided
* Mon Jan 22 2018
  - Bump version: 9.11.30 → 9.12.0
* Mon Jan 22 2018
  - Update build test image descriptions
    Update to latest schema by auto conversion and delete use
    of oemboot kiwi code by switching to dracut
* Mon Jan 22 2018
  - Fixed reading device node path
    lsblk should be called with -p because it's a mistake
    to assume any device lives below /dev. There could also
    be subtree devices in /dev/mapper or /dev/disk/..
    We leave it up to lsblk to provide us the correct
* Mon Jan 22 2018
  - No need to actively stop the dialog service
* Mon Jan 22 2018
  - Added required packages for dmraid and multipath
* Sat Jan 20 2018
  - Added handling for dmraid and multipath devices
* Fri Jan 19 2018
  - Adding iso-scan feature to kiwi-live dracut module
    This commit adds the iso-scan scripts to kiwi-live module_setup
    if the former files are found in the system inside the dmsquash-live
    dracut module directory.
    Fixes #574 and is related to #521
* Fri Jan 19 2018
  - Fixed Arrays implicitly concatenate by shellcheck
* Thu Jan 18 2018
  - Add support for net install in dracut kiwi-dump
    This implementes one of the tasks from Issue #576
* Wed Jan 17 2018
  - Added runtime check for dracut-kiwi-oem-dump
    The installation of the above mentioned dracut module package
    is required for oem images which uses dracut as initrd system
    and have the creation of an installation image requested.
    This is related to Issue #576
* Wed Jan 17 2018
  - Update schema version in documentation
* Wed Jan 17 2018
  - Auto update all schema descriptions to v6.8
* Wed Jan 17 2018
  - Delete hwclock from profile and system setup
* Wed Jan 17 2018
  - Delete hwclock section from schema
    Deletes hwclock section from schema and provides xslt
    style sheet for schema auto conversion from schema
    version 6.7 to 6.8
* Tue Jan 16 2018
  - Deprecate suseConfig method and remove hardware config method
    This in this commit:
  - the contents of the suseConfig method from kiwi/config/
    are replaced by a deprecated message.
  - the setup_hardware_clock method from SystemSetup is removed as it is
    not used anywere in the code.
* Tue Jan 16 2018
  - Extend CommandCapabilities to also check version
* Tue Jan 16 2018
  - Added dracut-kiwi-oem-dump subpackage to spec
* Tue Jan 16 2018
  - Update locale settings (#579)
    * Use systemd-firstboot in order config basic settings
      This commit updates locale and keyboard settings in order to make
      use of the systemd tools, as this will be the only valid method starting
      from SLE15.
      Fixes #577
    * Added CommandCapabilities utils class
* Mon Jan 08 2018
  - Bump version: 9.11.29 → 9.11.30
* Mon Jan 08 2018
  - Deleted syslinux from ppc/oemboot/suse-SLES15
    syslinux is not provided for ppc. This Fixes bsc#1073310
* Fri Dec 29 2017
  [boot] fix double quote in grub menu which makes kernel updates for CentOS / RHEL / Fedora break grub.cfg
* Tue Dec 19 2017
  - Omit kiwi-repart dracut module in oemboot initrd
    KIWI's oemboot initrd with initrd_system="dracut" together with
    installiso="true" requires to have dracut-kiwi-oem-repart package
    installed in the system, thus it ends up also being included in the
    recreated dracut initrd after booting the oemboot initrd from the
    installation iso. This kiwi-repart module causes a boot failure in that
    case since no .profile file is present, moreover, it has no sense to
    run it at that stage, since the disk is already reparted by the
    oemboot code.
    This commit allows installiso="true" and initrd_system="dracut" to
    play well together.
* Fri Dec 15 2017
  - Improve locale pattern in schema
    Now the locale pattern in the schema also supports POSIX. Note
    that POSIX will be only accepted if listed in the first place of the comma
    separated list.
    This commit fixes #570
* Thu Dec 14 2017
  - Bump version: 9.11.28 → 9.11.29
* Wed Dec 13 2017
  - Allow to choose dracut live module
    There is the standard dracut dmsquash-live module based on
    the device mapper technology and the kiwi-live module based
    on the overlayfs technology. The setup of the live iso structure
    in kiwi is compatible to both modules. Thus it makes sense
    to allow to choose the technology via the flags attribute
    <type image="iso" ... flags="overlay|dmsquash"/>
    Please note both modules supports a different set of live
    features. This Fixes #568
* Tue Dec 12 2017
  - Bump version: 9.11.27 → 9.11.28
* Thu Dec 07 2017
  - Fixed ec2 and azure test builds
    cryptconfig is no longer provided
* Wed Dec 06 2017
  - Bump version: 9.11.26 → 9.11.27
* Wed Dec 06 2017
  - Apply target permissions only if target dir exists
* Wed Dec 06 2017
  - Bump version: 9.11.25 → 9.11.26
* Wed Dec 06 2017
  - Fixed use of stat result in os.chmod
    oct method returns a string representation which was mistakenly
    used in a subsequent os.chmod call. This Fixes #564
* Wed Dec 06 2017
  - Fixed tox doc target
    Correctly include schema pictures after travis-sphinx build
* Wed Dec 06 2017
  - Bump version: 9.11.24 → 9.11.25
* Tue Dec 05 2017
  - Update failsafe kernel option list
    Delete obsolete parameters and make sure a failsafe boot
    does boot into runlevel 3. This Fixes #554
* Tue Dec 05 2017
  - Apply xslt validation on boot images
* Tue Dec 05 2017
  - Do not match comments and PIs in XSLT templates
    I wanted to add a simple vim modeline to my XML description:
    vim: et:sts=2:sw=2
    This made kiwi consume insane amounts of memory during the XSLT
    transform step. While this may be a bug in my version of lxml, we do not
    transform comments on processing instructions in the conversion
    templates, so the easiest solution is not to match them.
    Signed-off-by: Michal Marek <>
* Mon Dec 04 2017
  - Make sure toplevel target dir keeps permissions
    When syncing data via rsync we make sure the toplevel target
    directory the data gets synced to does not change it's origin
    permissions. This Fixes #557
* Mon Dec 04 2017
  - Rebuild schema documentation
* Mon Dec 04 2017
  - Fixed dependencies for dracut-kiwi-lib
    Adapt package names for gdisk/gptfdisk and btrfs-progs/btrfsprogs
    Install and require fdasd only on s390 architecture
    Delete fbiterm requirement since the project seems unmaintained
    and the use of the framebuffer terminal is an option in the code
    but not mandatory. This Fixes #559
* Fri Dec 01 2017
  - add missing deps for docker builds.
    Moving kiwi-image:* provides to -requires package
* Wed Nov 29 2017
  - Update text per review
* Wed Nov 29 2017
  - Fix and cleanup tox setup
    Along with the cleanup of the tox setup also the workaround
    using an older version of the py module has been fixed
* Wed Nov 29 2017
  - Fixed travis-sphinx call syntax
* Wed Nov 29 2017
  - Update dropped feature list
    Legacy kiwi's oem recovery feature will not be ported
    due to technologes like ReaR, snapper, btrfs and due
    to the container, cloud and public cloud orientation of
    OS images
* Thu Nov 23 2017
  - Implementation of dracut kiwi-dump module
    Provide the capabilities of the oem install code as
    dracut module. The implementation covers the result
    of the installiso="true" configuration. Installation
    from remote sources still needs to be done and will
    follow in an extra pull request. This addresses
    Issue #576
* Thu Nov 23 2017
  - Bump version: 9.11.23 → 9.11.24
* Thu Nov 23 2017
  - Fixed URL to in development guide
* Thu Nov 23 2017
  - Bump version: 9.11.22 → 9.11.23
* Thu Nov 23 2017
  - Fixed module setup for dracut-kiwi-lib
    lsblk tool used in code but missing in dependencies
* Thu Nov 23 2017
  - Fixed test-image-azure build test
    azurectl does not resolve because of missing AppScheduler
    but for the integration test image we also don't need azurectl
    Thus it was just deleted from the list
* Thu Nov 23 2017
  - Fixed test-image-azure build test
    pam-modules package doesn't exist anymore
* Wed Nov 22 2017
  - Bump version: 9.11.21 → 9.11.22
* Wed Nov 22 2017
  - Fixed typo in spec file
    The use of the suse_version macro from the last change
    introduced a syntax error which caused the package build
    to fail in obs
* Wed Nov 22 2017
  - Bump version: 9.11.20 → 9.11.21
* Tue Nov 21 2017
  - package: Prepare for Tumbleweed moving to suse_version 1550
* Tue Nov 21 2017
  - Bump version: 9.11.19 → 9.11.20
* Tue Nov 21 2017
  - Only add package manager on image package requests (#550)
    If an image description only contains package requests
    from a bootstrap section but no image packages, it's not
    required to install a package manager package into the
* Tue Nov 21 2017
  - Add device-mapper requirement for dracut-kiwi-live
* Mon Nov 20 2017
  - Post build constraint validation refactored
* Mon Nov 20 2017
  - Bump version: 9.11.18 → 9.11.19
* Mon Nov 20 2017
  - Update gfxboot.cfg for iso images
    Don't move down one menu entry the first time a F-key is used
    This Fixes bsc#1068790
* Fri Nov 17 2017
  - Adding quotes to ensure '%_dbpath' is treated as string
* Fri Nov 17 2017
  - Add max size post build command
    This commit includes a post build constraint validation into the
    Result class. With this commit any file included to the result
    tuple is verified not to exceed the maximum size configured into
    the runtime configuration file config.yml.
    Fixes #468
* Fri Nov 17 2017
  - Fixed ec2 integration test
    requirements for unneeded crash package broken
* Fri Nov 17 2017
  - Fixed ec2 integration test
    nothing provides pam-modules
* Thu Nov 16 2017
  - Removes the hardcoded path of the rpm database
    With this commit the rpmdb path is evaluated from the %_dbpath
    macro instead of being hardcoded.
    Fixes #537
* Thu Nov 16 2017
  - Bump version: 9.11.17 → 9.11.18
* Wed Nov 15 2017
  - Added runtime check for dracut-kiwi-oem-repart
    OEM images if configured to use dracut as initrd system
    requires the KIWI provided dracut-kiwi-oem-repart module
* Wed Nov 15 2017
  - Fixup py vs. pytest-cov version incompatibility
* Wed Nov 08 2017
  - Bump version: 9.11.16 → 9.11.17
* Wed Nov 08 2017
  - Delete atftp from SLE15 boot descriptions
    atftp will not be part of SLE15 per fate#323633.
    This Fixes #543
* Tue Nov 07 2017
  - Fixed blocksize setup in losetup
    The -L option was used to set the blocksize value for losetup
    However there is an option name clash between suse util-linux
    and upstream which now leads to the problem that option -L
    has changed its meaning and actually means --nooverlap which
    completely breaks the call in kiwi. This patch changes the
    call to use the long form --logical-blocksize.
    This Fixes bsc#1066873
* Tue Nov 07 2017
  - Code cleaning and enhancing variables names
* Tue Nov 07 2017
  - Use usr/lib/rpm if present instead of var/lib/rpm
    With this commit OEM recovery tries to backup usr/lib/rpm if present,
    if the directory is not present it tries to backup the old default
    configuration, var/lib/rpm.
* Mon Nov 06 2017
  - Extend checkmedia runtime check
    In addition to the correct architecture the check also includes
    the lookup of the required tagmedia tool to be present on the
    building host. This Fixes #538
* Mon Nov 06 2017
  - Remove hardcoded any /var/lib/rpm path
    This commit changes any /var/lib/rpm reference to the call
    'rpm -E %_dbpath' which returns the path of the rpmdb which
    has been recently updated to a different location in recent rpm
    versions. Now the rpmdb path is determined dynamically.
    Fixes #537
* Fri Nov 03 2017
  - Adding a s390 oem test image
* Fri Nov 03 2017
  - kiwi-hooks should be packed in tar
    Remote OBS source service is no capable of packaing a folder into a tar.
* Fri Nov 03 2017
  - Include arm build test
* Fri Nov 03 2017
  - Adding test image descriptions
    This commit adds the image descriptions used to test KIWI within
    the Open Build Service.
* Thu Nov 02 2017
  - Add support for apt repository priorities
    Apt handles repository priorities in a preferences
    file per repository and calls that pin-priorities.
    The implementation here sets the configured priority
    for all packages of the given repository
* Tue Oct 31 2017
  - Add missing hooks to the other architectures
* Tue Oct 31 2017
  - Add pre/post mount hook for oem
* Tue Oct 31 2017
  - Clarify how strip works
* Mon Oct 30 2017
  - Add more OEM hooks
* Wed Oct 25 2017
  - updated contributing link
* Wed Oct 25 2017
  - s/42.1/42.3/
* Wed Oct 25 2017
  - Bump version: 9.11.15 → 9.11.16
* Wed Oct 25 2017
  - Fixed validation of isohybrid warnings
    The list of warning messages is evaluated line by line
    and those not matching the ignore warnings list are treated
    as errors. However if an empty line exists it did not match
    the ignore warnings list but is also not an error. This
    patch makes sure only non empty warning information has
    an effect
* Wed Oct 25 2017
  - Bump version: 9.11.14 → 9.11.15
* Wed Oct 25 2017
  - Do not require cracklib-dict-full in boot images
* Tue Oct 24 2017
  - Bump version: 9.11.13 → 9.11.14
* Tue Oct 24 2017
  - Cleanup SLE12 boot image descriptions
* Tue Oct 24 2017
  - Bump version: 9.11.12 → 9.11.13
* Tue Oct 24 2017
  - Cleanup SLE boot image descriptions
    Don't use packages which does not exist on SLE, Fixes #523
* Mon Oct 23 2017
  - Improve coding style to make flake8 happy
    This commit includes the exact Exception class that the 'except' statement
    catches. According to the new flake8 3.5.0 version it should be explicit
    rather than implicit.
* Mon Oct 23 2017
  - Add OCI reference in skopeo copy call and umoci config call
    Skopeo, since v1.24, does no longer assume 'latest' as the default
    tag/reference and requires explicit tag or reference in skopeo
    call. In KIWI the default was only used to import the base rootfs,
    with this commit the imported container is tagged as 'base_layer'.
    The current patch works for all skopeo versions.
* Thu Oct 19 2017
  - Update hooks documentation
* Thu Oct 19 2017
  - Bump version: 9.11.11 → 9.11.12
* Thu Oct 19 2017
  - Add more hooks for oemboot
    This follows netboot behavior
* Wed Oct 18 2017
  - Fix vmdk descriptor file
    This commit fixes the descriptor file of the vmdk images. Before this
    commit the descriptior file was appended at the end of the image
    instead of overwritting the current one at the very beginning.
    Fixes bsc#1050665
* Wed Oct 18 2017
  - Bump version: 9.11.10 → 9.11.11
* Wed Oct 18 2017
  - Follow up fix for isohybrid error handling
    Allow to handle multiple messages from isohybrid as warnings.
    Only if the list of messages still contains information after all
    non error conditions had been checked out, an exception is
* Mon Oct 16 2017
  - Bump version: 9.11.9 → 9.11.10
* Mon Oct 16 2017
  - Cleanup boot descriptions
    The still existing kiwi boot descriptions contained wrong
    information about no longer existing packages and many
    other obsolete information.
* Fri Oct 13 2017
  - Bump version: 9.11.8 → 9.11.9
* Fri Oct 13 2017
  - Prefer image packages section for bootincludes
    If a package is marked bootinclude prefer <packages type="image">
    section in the target XML as primary target and only if no such
    section exists put the package in the <packages type="bootstrap">
* Fri Oct 13 2017
  - Keep NVMe drivers in the initrd
    Support systems with the root filesystem on a NVMe device
* Fri Sep 29 2017
  - Bump version: 9.11.7 → 9.11.8
* Fri Sep 29 2017
  - Changed permissions of /srv/tftpboot to be readable (bsc#940608)
* Thu Sep 28 2017
  - Bump version: 9.11.6 → 9.11.7
* Thu Sep 28 2017
  - Also handle multiple error conditions
* Thu Sep 28 2017
  - Allow to ignore certain isohybrid warnings
    kiwi treates warning from isohybrid as fatal errors becuase in
    most cases they are fatal. However some of them are kind of
    historical and should be ignored like the one described here:
* Wed Sep 27 2017
  - Bump version: 9.11.5 → 9.11.6
* Wed Sep 27 2017
  - Make sure xz options are used with pxe tarball
    The tar command used in the pxe builder did not utilize threading
    and/or the xz options provided by an optional kiwi config file.
    This Fixes #507
* Wed Sep 27 2017
  - Move depmod into baseUpdateModuleDependencies
    Kernel module dependencies should be resolved after kiwi has
    called all the stripping functions and not as part of the
    baseCreateCommonKernelFile which runs before.
    This Fixes #508
* Tue Sep 26 2017
  - Fixed order of volume mount list
    re-order mount_list by mountpoint hierarchy. This is needed
    because the handling of the fullsize volume and all other
    volumes is outside of the canonical order. If the fullsize
    volume forms a nested structure together with another
    volume the volume mount list must be re-ordered to avoid
    mounting the volumes in the wrong order
* Mon Sep 25 2017
  - Update issue template
* Fri Sep 22 2017
  - Bump version: 9.11.4 → 9.11.5
* Fri Sep 22 2017
  - Rebuild schema documentation
* Thu Sep 21 2017
  - Show results in a dialog
* Wed Sep 20 2017
  - Improve display of runMediaCheck results
    The splash screen should be switched off in order to let the
    user see the mediacheck results as well as a delay timeout
    before the boot continues or stops is useful
* Wed Sep 20 2017
  - Call plymouth default theme setup in build command
    Make sure plymouth-set-default-theme is called as part
    of the system build command and not only as part of the
    system prepare command
* Tue Sep 19 2017
  - Fixed package requires for dracut-kiwi-live
    On Fedora/RHEL cdrkit is only a source package building other
    packages. The package dracut-kiwi-live really needs is
* Tue Sep 19 2017
  - Added dracut kiwi oem module and library
    A new dracut module kiwi-repart used to be the successor of
    the custom kiwi oemboot code to repartition the disk has
    been added. Along with the module a dracut library kiwi-lib
    will also be delivered.
* Mon Sep 18 2017
  - Fix trailing pipe character in .packages file
    In addition make sure the field layout is consistent across
    the .packages files no matter which package manager was used
    to create the information. This Fixes #501
* Fri Sep 15 2017
  - Bump version: 9.11.3 → 9.11.4
* Fri Sep 15 2017
  - Update documentation
    Link to the obs overview page to show build test results
* Fri Sep 15 2017
  - Added Fedora integration test build to obs status
* Fri Sep 15 2017
  - Limit the characters set for volid attribute
    This commit fixes #493
* Thu Sep 14 2017
  - Revert "Fixed package requires"
    This reverts commit a8d50a593911725965e09b0e8c2f3b9bc742202b.
* Thu Sep 14 2017
  - Fixed package requires
    On Fedora xattr is provided by python[3]-pyxattr
* Thu Sep 14 2017
  - kiwi-boot-requires only required for suse(obs)
* Thu Sep 14 2017
  - Update project intro page
* Thu Sep 14 2017
  - Update project intro layout
* Thu Sep 14 2017
  - Update project intro page
* Wed Sep 13 2017
  - Bump version: 9.11.2 → 9.11.3
* Tue Sep 12 2017
  - Added disk format="vhdx" support
    Support dynamic VHDX (gen2) image format for Hyper-V.
    This Fixes #490
* Tue Sep 12 2017
  - Added additional required attr schematron rule
    The new rule allows to check for required attributes for a specific
    image type and is used for the filesystem attribute which is required
    for the image type oem, vmx and pxe. This Fixes #476
* Mon Sep 11 2017
  - Bump version: 9.11.1 → 9.11.2
* Mon Sep 11 2017
  - Rebuild online schema documentation
* Mon Sep 11 2017
  - Bump version: 9.11.0 → 9.11.1
* Mon Sep 11 2017
  - Fixed kernelList function
    The kernelList function searches for the installed kernels
    and applies the corresponding initrd name. The information the
    method provides is used in case of a custom initrd which should
    be used instead of the result of dracut. When requesting the use
    of the kiwi firsboot initrd also in the system via the
    <oem-kiwi-initrd> element, the information from the list is
    used to correctly link the kiwi initrd named initrd.vmx to the
    expected name of the system as dracut would create it. The
    creation of the list was broken which lead to an empty list
    and the after effect that the system was not able to reboot.
    This Fixes #483
* Mon Sep 11 2017
  - Update oemboot/rhel-07.0 due to isolinux changes
    With the move of the isolinux setup operation into the
    python code and the deletion of the old code from the scripts it's required to keep syslinux in the
    boot image otherwise the builder can't find it when
    explicitly deleted before the isolinux setup
* Mon Sep 11 2017
  - Update device node names for devmapper nodes
    Partition devices created by the device mapper could
    use the _part or the -part naming schema. This patch
    allows for both variants and Fixes #480
* Mon Sep 11 2017
  - Added e2fsprogs to s390/netboot
    During bootup of a diskful netclient when it comes to e2
    filesystem operations the tools were missing. Fixes #479
* Fri Sep 08 2017
  - Rename source label
    This commit renames the source label to a more explicit name. This
    commit also relates to bsc#1055542 and fixes #473
* Fri Sep 08 2017
  - Add mediacheck handler for live iso
    This fixes bsc#1049304
* Thu Sep 07 2017
  - Added live iso integration test build to obs status
* Thu Sep 07 2017
  - Bump version: 9.10.6 → 9.11.0
* Thu Sep 07 2017
  - Delete atftp from boot descriptions
    In SLE15 / Leap15 atftp has been dropped. This Fixes bsc#1056951
* Thu Sep 07 2017
  - Deleted Leap 42.1 JeOS
    Leap 42.3 has been released
* Thu Sep 07 2017
  - Fixed list of gfxboot modules
    Bad bug, missing comma caused the list to be interpreted
    differently by python which screwed up some list items
* Thu Sep 07 2017
  - Delete obsolete suseGFXBoot kiwi boot code
    The code has been moved into the python source at
* Wed Sep 06 2017
  - Delete vmxboot descriptions
    vmx boot is now fully integrated with dracut
* Wed Sep 06 2017
  - Make get_initrd_system a state method
    Make sure the default initrd_system is set to dracut
    for the vmx image type and to kiwi if no initrd_system
    is specified. This allows to simplify other code parts
    as we can trust there is a value set
* Wed Sep 06 2017
  - Update schematron rules for boot and initrd_system
    The boot and initrd_system attributes are no longer used by
    the vmx image type and are therefore not allowed anymore.
* Wed Sep 06 2017
  - Added runtime checks for overlay disk images
    Checking if the dracut-kiwi-overlay package will be installed
    as part of the build and also for the supported EFI setup
    since the EFI secure boot setup would try to perform changes
    on the filesystem which is a readonly squashfs, this is not
* Tue Sep 05 2017
  - Fix isohybrid call
    isohybrid errors printed on stderr were not treated as fatal
    but should be treated as such. In addition isohybrid should
    distinguish for efi setup according to the efi setup of the
    image itself
* Tue Sep 05 2017
  - Refactor _get_source and _get_source_label methods
* Tue Sep 05 2017
  - Support overlay disk images via dracut
    Using the kiwi-overlay module to boot up systems configured
    with the overlayroot="true" attribute in the system image
    XML configuration. Fixes #65
* Tue Sep 05 2017
  - Added kiwi-overlay dracut module and package
    Package dracut-kiwi-overlay providing kiwi-overlay dracut module
* Mon Sep 04 2017
  - update README
    Use normal style dash character
* Mon Sep 04 2017
  - update README
* Sun Sep 03 2017
  - Delete isoboot descriptions
    Live ISO boot is now fully integrated with dracut
* Sun Sep 03 2017
  - Added runtime check for dracut module on live iso
    Live ISO images uses a dracut initrd to boot and requires
    the KIWI provided kiwi-live dracut module to be installed
    at the time dracut is called. Thus this runtime check
    examines if the required package is part of the package
    list in the image description
* Fri Sep 01 2017
  - Include the source label in container images
    This commit fixes bsc#1055542, it includes the DISTURL parameter
    as a label into the container metadata when the build happens inside
    the buildservice. The new label included is named:
    * org.opencontainers.image.source
      in line with the current OCI annotations schema.
* Fri Aug 25 2017
  - Added kiwi-live dracut module and package
    Package dracut-kiwi-live providing kiwi-live dracut module
* Wed Aug 23 2017
  - Update schematron rule for boot attribute
    The boot attribute is no longer used by the iso image type
    and is therefore not allowed anymore
* Wed Aug 23 2017
  - Update allowed values for iso image attribute
    With the move to dracut only the options implemented for
    the kiwi-live dracut module are available
* Tue Aug 22 2017
  - Move to dracut for live ISO images
    Instead of the kiwi isoboot layout the live layout has been
    changed to follow the rules of the live system support offered
    by dracut. The initrd used to boot up the system is now a
    dracut generated initrd and can be customized via the 'flags'
    attribute in the kiwi XML description. In order to meet the
    kiwi live requirements a custom dracut module called kiwi-live
    is provided along with the changes in kiwi. This Fixes #470
* Tue Aug 22 2017
  - Bump version: 9.10.5 → 9.10.6
* Mon Aug 21 2017
  - Added boot descriptions for SLE15 on ppc
* Mon Aug 21 2017
  - Added boot descriptions for SLE15 on s390
* Mon Aug 21 2017
  - Bump version: 9.10.4 → 9.10.5
* Fri Aug 11 2017
  - Added handling of formatoptions attribute
    Custom disk format options passed in the formatoptions
    attribute were not handled. In addition options with a
    value passed to qemu were handled in the wrong way.
    This commit addresses both problems and Fixes #463
* Fri Aug 11 2017
  - s/sles/openSUSE/
* Fri Aug 11 2017
  - copy SLE15 files for Leap 15
* Fri Aug 11 2017
  - add Leap 15 macros
* Fri Aug 11 2017
  - leap_version is deprecated. use sle_version+is_openuse instead
* Thu Aug 10 2017
  - Added azure integration test build to obs status
* Wed Aug 09 2017
  - Bump version: 9.10.3 → 9.10.4
* Wed Aug 09 2017
  - Fixed resize if all free volume in oemboot/repart
* Wed Aug 09 2017
  - Fix space calculation for lvm volumes
    It is required to take the other configured volumes into
    account in order to solve the problem of nested volumes.
    The size of e.g the root volume must be reduced by the size
    other volumes inside of the root volume needs. This is
    especially required if the root volume is not the fullsize
* Tue Aug 08 2017
  - Fixed requirements record
    PyYAML is required by KIWI
* Fri Aug 04 2017
  - Add description of Overlay Files to Terminology
* Thu Aug 03 2017
  - Bump version: 9.10.2 → 9.10.3
* Wed Aug 02 2017
  - Export *.verified also for images based on apt-get
    This commit includes support in system/ to run a package
    verification also for images based in apt-get package-manger
    Related to #457
* Wed Aug 02 2017
  - Include .packages file for apt-get based images
    This commit renames export_rpm_packages_list method to
    export_packages_list and it includes support for listing
    debian packages if apt-get package manager is used.
    Fixes #457
* Wed Aug 02 2017
  - Fix calculation of needed disk space for oem types
    The calculation did not include the minimum volume requirements
    if a volume setup exists
* Tue Aug 01 2017
  - Update expected compatible major version
    every version of umoci/skopeo <= major v1.x.x is expected
    to work with the implementation used in kiwi
* Tue Aug 01 2017
  - Extend scope of check_docker_tool_chain_installed
    The runtime check only checks for the presence of the docker
    tools umoci and skopeo but as we are expecting incompatible
    api changes in the next major version release the check has
    been extended to look at the major versions of the installed
    tools as well. Fixes #454
* Fri Jul 28 2017
  - Fixup schema version in chapter topic
* Fri Jul 28 2017
  - Bump version: 9.10.1 → 9.10.2
* Thu Jul 27 2017
  - Fixup XSL stylesheet v6.7
    Apply templates matching all processing instructions in
    order to match <section>text</section>
* Thu Jul 27 2017
  - Rebuild schema documentation
* Thu Jul 27 2017
  - Remove xml_state.get_build_type_mediacheck method
    The method was not needed since a direct call to
    xml_state.build_type.get_mediacheck was already producing an
    equivalent output (True, False or None), where 'None' can be
    easily treated in the same way as False.
* Thu Jul 27 2017
  - Add runtimecheck for mediacheck attribute on non x86 hosts
    This commit rearranges some method and variable names and includes
    a new runtimecheck to ensure the mediacheck attribute is not set
    when building non x86 images.
    Patch related to bsc#1049304
* Thu Jul 27 2017
  - Auto update image descriptions to schema v6.7
* Thu Jul 27 2017
  - Update schema to version v6.7
    Cleanup of the schema, delete obsolete and unused attributes
    and sections. Details of the change can be found in the
    conversion stylesheet convert66to67.xsl
* Thu Jul 27 2017
  - Add XSL stylesheet to convert from v6.6 to v6.7
    Delete the following obsolete and unhandled attributes and sections
    * <image ... kiwirevision="..."/>
    * <type ... checkprebuilt="..."/>
    * <type ... fsnocheck="..."/>
    * <repository ... status="..."/>
    * <repository ... prefer-license="..."/>
    * <package replaces="..."/>
    * <defaultprebuilt>
    * <defaultdestination>
    * <defaultroot>
    * <partitioner>
    * <rpm-force>
* Wed Jul 26 2017
  - Adding mediacheck menu entry for liveCDs
    This commit adds the checkiso attribute in type tag, only available for
    iso image types. Checkiso is boolean that determines the presence of0
    a Mediacheck menu entry or not in the bootloader.
    This patch is related to bsc#1049304
* Tue Jul 25 2017
  - Fixup encoding handling for profile file
    If an element like displayname or oem-boot-title contains
    characters outside of the ascii table this causes trouble
    when kiwi writes out the profile file and the code is called
    through python2. The reason here is that the default encoding
    on write() (and other methods) is set to ascii in python2
    and when it receives unicode characters outside of the
    ascii spec a UnicodeEncodeError is thrown. Now all of kiwi
    is using Unicode which means this does not produce a problem
    when calling the code through python3 because the default
    encoding is utf-8 there. This patch introduces a method
    which allows to change python's default encoding and calls
    it at the code point where we write the profile because we
    got unicode and we want to write unicode in any case.
    This fixes at least one situation for python2-kiwi to
    allow the use of non ascii characters in the XML setup.
    If other places will be found the same approach should allow
    to fix it for python2
* Tue Jul 25 2017
  - Fix RHEL spec check
* Tue Jul 25 2017
  - Bump version: 9.10.0 → 9.10.1
* Tue Jul 25 2017
  - Add LVM overhead for lvm based images
    LVM itself requires metadata stored in the metadata block
    kiwi did not take a size value for this data into account
* Tue Jul 25 2017
  - Use dmsetup to cleanup device maps
    Instead of the broken kpartx -d we use dmsetup remove
    directly on the maps kiwi has created
* Mon Jul 24 2017
  - Evaluate file strip before kernel strip
    Information from the optional <strip type="delete"> section
    was handled as part of the suseStripInitrd method which is
    called after suseStripKernel. However if a request to delete
    a driver file is part of the above mentioned strip section
    the checks for the driver dependency and also for potential
    superfluous firmware is not applied. Thus the evaluation of
    the <strip type="delete"> section happens earlier in the
    suseStripKernel method. Fixes #442
* Mon Jul 24 2017
  - Added ec2 integration test build to obs status
* Mon Jul 24 2017
  - Added Xen setup runtime validation
    Added check_xen_uniquely_setup_as_server_or_guest runtime
    check to check for a unique dom0 or domU guest setup
    Fixes #429
* Mon Jul 24 2017
  - Rebuild schema documentation
* Mon Jul 24 2017
  - Make vmdisk optional for the machine setup
    The guest machine information might not require information about
    the disk. Issue #429
* Fri Jul 21 2017
  - Fix some spelling
* Fri Jul 21 2017
  - Fix some spelling
* Fri Jul 21 2017
  - Use the same option type (long form) for clarity
* Thu Jul 20 2017
  - Use kernel compatible XZ options for kiwi initrd
    The kernel requires specific XZ options for the initrd
    in order to read the compressed data. This values should
    not be configurable by the user and are set to the same
    options as used by dracut now. Fixes #435
* Thu Jul 20 2017
  - Change default XZ compression options
    Use all cpu cores by default. Fixes #433
* Thu Jul 20 2017
  - Update spec file provides for schema version
* Thu Jul 20 2017
  - Bump version: 9.9.5 → 9.10.0
* Thu Jul 20 2017
  - fixed: fdupes is also available on Fedora
* Thu Jul 20 2017
  - changed: simplify diff to orig spec file template
* Thu Jul 20 2017
  - added: support for Fedora 25 / 26, fixed support for CentOS 7 in the spec file
* Thu Jul 20 2017
  - Include default container name
    This commit includes a default container name for KIWI container
    images. This makes possible to create OCI and Docker containers
    without forcing the user to include a <contaierconfig> section in
    the description file.
* Thu Jul 20 2017
  - Refactor code which deals with Xen
    Provide two methods is_xen_guest and is_xen_server which
    are used instead of the former machine domain and firmware
    processing. Issue #429
* Thu Jul 20 2017
  - Apply schema v6.6 stylesheet to XML descriptions
    Updates all XML descriptions to latest schema version and
    also includes adaptions to the test XML descriptions for
    testing the new Xen guest and server setup
* Wed Jul 19 2017
  - Fixup shell test condition
    Variables used in shell conditions should be quoted
* Wed Jul 19 2017
  - Update schema to version 6.6
    * Deleted domain attribute from machine section
    * Added xen_server attribute to specify a type to be a Xen dom0
    * Added xen_loader attribute in machine section to specify the
      target guest loader this image is expected to become loaded
* Wed Jul 19 2017
  - Added schema 6.5 to 6.6 conversion
    Delete the Xen domain attribute from the machine section and
    introduce a new xen_server attribute which is set to true
    for any machine section with a Xen dom0 configuration
* Tue Jul 18 2017
  - Added Makefile target obs_test_status
    Call make obs_test_status and get an overview about the current
    integration test builds and their status
* Tue Jul 18 2017
  - Bump version: 9.9.4 → 9.9.5
* Tue Jul 18 2017
  - Added s390 tumbleweed boot descriptions
* Mon Jul 17 2017
  - Bump version: 9.9.3 → 9.9.4
* Mon Jul 17 2017
  - This commit fixed root_init when running inside the buildservice
    This commit fixes regression bug introduced in #422
* Mon Jul 17 2017
  - Exclude kiwi files from images
    This commit from one hand includes a
    get_exclude_list_for_root_data_sync method in Defaults which returns
    a list of the files used by KIWI that should not be part of the
    resulting image. From the other hand makes use of the exclusion
    default list in live, archive and container images, it fixes #423.
* Mon Jul 17 2017
  - Bump version: 9.9.2 → 9.9.3
* Mon Jul 17 2017
  - Revert "Include .buildenv file inside the buildroot"
    This reverts commit d30bf4a19ff11f7132c9a31528ddfa103e01b299.
    This also includes the get_buildservice_env_name method in Defaults
    to centralize '.buildenv' occurrences.
* Mon Jul 17 2017
  - Fixup helper/kiwi-boot-packages
    Make sure the code also works in python2
* Mon Jul 17 2017
  - Search for python interpreter in path
    Allow more flexible path spec to find python interpreter
* Fri Jul 14 2017
  - More comfort in calling with compat arguments
    In addition to the 'kiwi --compat -- ...' style we also support calling
    the kiwi compat mode as a service via 'kiwi compat ...' The preferred
    way of calling kiwi with legacy options is via the new compat service.
    Thus the documentation also changed to no longer mention the --compat
    option but it still exists for compatibility reasons. Fixes #407
* Fri Jul 14 2017
  - Allow use of more fine grain ignore repos options
    The meaning of the --ignore-repos option has changed back
    to ignore all configured repositories. A new option
    named --ignore-repos-used-for-build has been added which
    allows to ignore all except imageonly repositories. The
    command manual pages has been changed to document the
    options. This Fixes #410
* Fri Jul 14 2017
  - Cleanup use of python interpreter invocation
    Prevent strict call of a specific version of the python
    interpreter. All code has been written to work with py2
    and py3 thus the venv environment setup should decide
    what version a call of python is. Fixes #424
* Thu Jul 13 2017
  - Make sure the KIWI buildroot has the /.buildenv file
    This commit makes sure the that the KIWI build root will always
    contain the /.buildenv file.
    Fixes #421
* Thu Jul 13 2017
  - Include .buildenv file inside the buildroot
    With this patch if KIWI is running inside the buildservice the
    /.buildenv file is copied from the build environment to the build
    root of KIWI. At installation time some packages test the existance
    of this file in order to know if they are being installed inside the
    buildservice or not.
    Fixes #421
* Tue Jul 11 2017
  - Fix url validation in buildservice (#420)
    This patch changes the remote URL validation strategy when running
    inside the build service. By design, inside the build service build
    environment connections to the outside world are not allowed, thus
    any validation attempting to do that will fail. With this patch, when
    running inside the build service, KIWI will not try to test if any
    download URL is reachable.
    Fixes #418
* Mon Jul 10 2017
  - Bump version: 9.9.1 → 9.9.2
* Mon Jul 10 2017
  - Refactor Uri is_public method
    Don't call a nested is_remote from is_public, instead the method
    was rewritten to explicitly cover the responsibility to check
    under which conditions we treat an uri as publicly available
    or not
* Sun Jul 09 2017
  - Fixed Uri is_remote method
    If called inside of the buildservice the obs uri type is not
    a remote uri because the translation ends in a local path
* Fri Jul 07 2017
  - Bump version: 9.9.0 → 9.9.1
* Fri Jul 07 2017
  - Fixup setup and package requirements
    python requests is needed due to latest changes
* Fri Jul 07 2017
  - Bump version: 9.8.1 → 9.9.0
* Fri Jul 07 2017
  - Update doc string for Uri::translate method
    The method was missing doc info about the check_build_environment
    parameter and the return type of the method
* Fri Jul 07 2017
  - Delete obsolete --obs-repo-internal switch
* Fri Jul 07 2017
  - Create obs project download link like obs does it
    In reference to _download_repository_link.html.erb from, we use the
    same mechanism to create the download link from an obs://
    project definition
* Thu Jul 06 2017
  - Fixup unit test for help command
* Thu Jul 06 2017
  - Follow up fix for man page move
    make sure kiwi calls the man page from the now changed
    section level 8
* Wed Jul 05 2017
  - Move man pages to correct section
    The man pages were incorrectly written to section 2, which is for
    syscalls. Since KIWI is an administrator's tool, it has been moved
    to section 8.
* Wed Jul 05 2017
  - Make sure system image strip sections are applied in boot image
    This commit calls copy_strip_sections from the system image xml to the
    boot image xml. This is needed to make sure strip sections are
    applied into the boot image.
    Fixes #414
* Tue Jul 04 2017
  - Refactor handling of obs repositories
    * Delete kiwi internal ibs: and suse: types
    * Delete handling for --obs-repo-internal and provide a
      compatibility message to the user
    * Buildservice download server url and scope can be configured
      via ~/.config/kiwi/config.yml
    * Translate obs urls to http in import_repositories_marked_as_imageinclude
    * Use new Uri.is_public method in renamed runtime check
* Tue Jul 04 2017
  - Fix a code block in workflow.rst
    Fixes #412
* Tue Jul 04 2017
  - Fix xml_state test
* Mon Jul 03 2017
  - Accept an empty string as a repo priority
    xml_parse code is autogenerated, thus no changes there should be
    considered. When adding a repository from the command line it
    can happen that the repository priority is mapped to an empty instead
    to a None valuei, when the priority is not specifically set. xml_parse
    will only support a parseable string to int or a None value as the
    default option, so, if an empty string is used, it throws an
    exception. With the current patch anything that cannot be casted
    to an int, will be considered as None.
    Fixes #408
* Mon Jul 03 2017
  - Move check_image_include_repos_http_resolvable
    Call the check_image_include_repos_http_resolvable runtime check
    after the check and setup for the obs runtime environment. In
    case of obs uri types and a kiwi build outside of the buildservice
    those source locations could be translated into a public url and
    thus allow for use with the imageinclude attribute. However
    building inside of the buildservice maps those to a local path
    which is private to the used worked instance. In such a case
    the obs uri type is translated into a suse uri type and running
    the check_image_include_repos_http_resolvable after that
    translation will run from the translated and thus correct
    source uri information
* Mon Jul 03 2017
  - Bump version: 9.8.0 → 9.8.1
* Fri Jun 30 2017
  - Add unit tests for compat mode
* Fri Jun 30 2017
  - Do not translate obs scheme to suse scheme for imageonly repos
    Fixes #404
* Fri Jun 30 2017
  - Fixed compat setup for upgrade command
    Value for --root option was added after other options
* Fri Jun 30 2017
  - Translate obs to suse derived from image uris
    This commit performs a translation from obs scheme to suse
    scheme for derived from image uris when kiwi is running in a
    buildservice worker.
    Fixes #399
* Fri Jun 30 2017
  - Bump version: 9.7.4 → 9.8.0
* Fri Jun 30 2017
  - Fix content layout of zypper credentials file
    Missing line break for entries in zypper credentials file
* Thu Jun 29 2017
  - Allow imageinclude repositories inside the build service
    Fixes #397
* Thu Jun 29 2017
  - Fixed doc_travis tox target
    using shell syntax requires calling a shell process
* Thu Jun 29 2017
  - Allow imageinclude in add|set-repo commandline
    The --set-repo and --add-repo commandline options now allows
    additionally to specify a true|false value to indicate if the
    repository should be part of the system image repository
    setup or not. This Fixes #398
* Thu Jun 29 2017
  - Fixed travis whitelist_externals
    test command is used in target
* Thu Jun 29 2017
  - Fixed travis whitelist_externals
    commands cp and/or true are used in target
* Thu Jun 29 2017
  - Fixup travis doc deployment
    Custom diagram images needs to be deployed manually
* Thu Jun 29 2017
  - Update schema documentation
* Thu Jun 29 2017
  - Delete unused data from schema docs processing
* Tue Jun 27 2017
  - Flag --ignore-repos do not ignore imageonly repos
    This commit fixes #395, with it, using --ignore-repos, does not
    delete imageonly repositories from the description file. This way
    imageonly is prepared to be used in the buildservice even when using
    the 'obsrepositories:/' reference style.
* Fri Jun 23 2017
  - Build schema documentation with Oxygen
    Given there is a valid Oxygen license owned by the company
    as described in
    the schema documentation can be created using Oxygen. This
    commit allows building the schema docs with alternative
    doc builders and in case of Oxygen would change the way the
    schema docs are generated in the following way:
    1. Install Oxygen and setup the license to activate the tool
    2. Setup the KIWI development shell environment to export
    the schema_tool variable to point to the
    script provided by the Oxygen installation
    export oxygen_tool=/path/to/Oxygen/
    3. In any case of a schema change manually call:
    tox -e schema
    This step was done before as part of the tox doc target
    but can't be done automatically because it would require
    a correctly licensed Oxygen installation in the travis
    environment. Thus the result data has to be part of the
    pull request
    4. Build the documentation and review the result
    tox -e doc
    5. Create the pull request
* Wed Jun 21 2017
  - Update schema docstring for oem-systemsize
* Tue Jun 20 2017
  - Bump version: 9.7.3 → 9.7.4
* Tue Jun 20 2017
  - Fixed setup_plymouth_splash
    The schema generated get_bootsplash_theme() method returns a list
    because it's section content. The return value of the method was
    used as a string which caused a runtime error
* Tue Jun 20 2017
  - Added creation of zsync control file in bundler
    If a --zsync_source url is provided to the bundler call a
    zsync control file is created for the compressed parts of
    the bundle. This Fixes #364
* Tue Jun 20 2017
  - Add package manager in image info task solving process
    This commit includes the package manager package in the packages
    list to be solved in image info task.
* Tue Jun 20 2017
  - Bump version: 9.7.2 → 9.7.3
* Tue Jun 20 2017
  - Fixed gce disk format
    The order of the files in the tarball is important. The first
    entry must be the manifest.json followed by disk.raw
* Mon Jun 19 2017
  - Make sure CliTask instance reads the config file
    Any instance of a CliTask has to read the runtime config file
    if present
* Mon Jun 19 2017
  - Add generic access for attributes
    The layout of the yaml runtime config is based on an element
    topic containing a list of attributes. For now only the xz
    topic with its options attribute is in use but for the future
    more elements might be supported which can use the same access
* Mon Jun 19 2017
  - Setup plymouth splash in the image prepare process
    In case the plymouth-set-default-theme tool can be found in the
    image root system and a bootsplash theme is configured in the
    XML description, the tool is used to setup the theme configuration
    This Fixes #366
* Mon Jun 19 2017
  - Include patternType information to resolv packages in image info task
    This commit includes ingore_recommended flag in the Sat.solve method.
    This way if the description file states to include only required
    packages (without recommendations) it is respected and taken into
    account to resolv the packages list.
    Fixes #381
* Mon Jun 19 2017
  - Added custom xz option handling for ArchiveTar
    Allow to pass custom xz options for create_xz_compressed
    method. Issue #373
* Mon Jun 19 2017
  - Make sure options are returned as list
* Mon Jun 19 2017
  - Added custom xz option handling for Compress
    Allow to pass custom options for xz method. Issue #373
* Mon Jun 19 2017
  - Activate reading of runtime config in tasks
    Implement reading of runtime configuration file in base
    commandline class. Issue #373
* Mon Jun 19 2017
  - Cleanup doc string of base task class
* Sun Jun 18 2017
  - Add runtime config man page section
    Describe the contents of the KIWI runtime config file
* Wed Jun 14 2017
  - Added RuntimeConfig class
    An instance of RuntimeConfig reads in ~/.config/kiwi/config.yml
    if present and provides access methods to the expected
    information of the config file
* Wed Jun 14 2017
  - Added PyYAML requirement to package and venv
    The KIWI config file is yaml based and thus we need
    support for reading the file in KIWI
* Wed Jun 14 2017
  - Implement custom argument handling for xz_options
    Evaluate and hand over custom_args processing for the
    xz_options argument to all classes which performs
    xz compression tasks. This Fixes #373
* Wed Jun 14 2017
  - Read xz options from runtime config
    Read xz options from the kiwi runtime configuration file
    and pass along the information to the commands which
    performs compression tasks
* Wed Jun 14 2017
  - Fixed alpha order of options in build command
* Wed Jun 14 2017
  - Update custom_args doc for DiskBuilder class
* Wed Jun 14 2017
  - Fixup class docstrings
    The attribute list should provide information about the
    construction of an object of this class. Some fields
    were missing or superfluous
* Wed Jun 14 2017
  - Consider only repositories used for build in image info
    This commit makes sure that the repositories marked with imageonly
    flag are not included in the packages solve procedure.
    This is related to #362
* Wed Jun 14 2017
  - Removing has_repositories_marked_as_imageinclude method
    With the current repository management this method is not required
    anymore, since the setup repositories method does not modify the image
    if no repositories are present.
    It is related to #305 and #191
* Tue Jun 13 2017
  - Fixed typo in isoboot/fedora-25.0
    It does not really matter because the package manager setup
    is inherited from the system image XML configuration to the
    boot image, but for consistency it should be correct in the
    isoboot description too
* Tue Jun 13 2017
  - Added isoboot/fedora-25.0 boot description
* Tue Jun 13 2017
  - Change to more explicit method names
* Mon Jun 12 2017
  - Cleanup use of suseGFXBoot regarding grub
    The shell method suseGFXBoot from the config/functions contains
    code which should be better moved to the python code base dealing
    with the bootloader configuration. In this commit all grub
    parts of it has been moved to the BootLoaderConfigGrub2 class
* Mon Jun 12 2017
  - Cleanup isoboot descriptions
    There is no need to install bootloader packages to the initrd,
    all information regarding the bootloader setup is taken from
    the system root directory
* Mon Jun 12 2017
  - Fixup iso image builder(s) lookup path
    Don't lookup bootloader required files in the boot image root
    directory. Those needs to be looked up in the system image
    root directory
* Mon Jun 12 2017
  - Refactor boot image factory
    Make sure the root directory of the base image is always
    accessible by any boot image type for consistency. In
    addition introduce a post_init method which explicitly
    setup the boot image root directory as needed for the
    selected boot image type and document it as such
* Mon Jun 12 2017
  - Include imageonly attribute for repositories
    This commit adds imageonly attribute support for the repository
    element. imageonly is a boolean attribute that if true indicates
    that the repository is no used for the build but needs to be
    configured for the resulting image.
    Fixes #362
* Fri Jun 09 2017
  - Fixup use of syslinux v6 modules
    There is support for library loading in syslinux modules
    which requires to provide the lib modules when available.
    This Fixes #351
* Fri Jun 09 2017
  - Bump version: 9.7.1 → 9.7.2
* Fri Jun 09 2017
  - Update rpm-check-signatures documentation
* Fri Jun 09 2017
  - Fix default location repository config file for apt
    This commit fixes the apt config file management for default
    locations. The template subsitution always needs to be executed
    providing all the substitution parameters, as it does not make any
    kind of default assumption when parameters are missing.
    Fixes #370
* Fri Jun 09 2017
  - Revert "Refactor detection code for grub directory name"
    The former detection of the grub directory name in boot was
    correct whereas the new code introduced a problem.
    This reverts commit b3e4b871d52da2b5ab579d592ccc7ae39de75339.
    This Fixes #371
* Thu Jun 08 2017
  - Include repository_gpgcheck and package_gpgcheck documentation
* Thu Jun 08 2017
  - Improve package/repository signature checking setup
    This commit adds repository_gpgcheck and package_gpgcheck attributes
    to the repository tag in schema. With this change each repository
    can be configured individualy to enable repository signatures check
    and/or enable signature package check. The configuration is done at
    repository level, thus it is not conflicting with the wide package
    manager configuration flag <rpm-signatures-check>.
    Fixes #358
* Thu Jun 08 2017
  - Update PXE building chapter
    Redesign PXE building chapter to follow style guide.
    Thanks to Thomas Schraitle for review and additional
    contributions to this topic. This Fixes #323
* Thu Jun 08 2017
  - Update chapter due to review
* Thu Jun 08 2017
  - Update OEM building chapter
    Redesign building chapter to follow style guide. Issue #323
* Thu Jun 08 2017
  - Bump version: 9.7.0 → 9.7.1
* Thu Jun 08 2017
  - Refactor detection code for grub directory name
    The method get_grub_boot_directory_name was based on checking
    for the name of the grub2 install tool, but this is not always
    reliable because the name of the grub2 install tool has no
    direct connection to the grub2 path. The method changes in a
    way that it checks for the presence of the grub2 installation
    directory which is /usr/lib/grub or /usr/lib/grub2. Depending
    on the result the location in boot is /boot/grub or /boot/grub2
    which seems to be a more reliable check
* Wed Jun 07 2017
  - Fixup detection of grub directory name
    In order to put grub data to boot/grub2 or boot/grub a check for
    the grub2-tool vs. grub-tool name is performed. This requires
    access to the image root directory on a file basis which is not always
    applicable. When setting up the grub bootloader for e.g EFI boot on
    an iso image the rootfs can't be directly accessed because the iso
    image contains the rootfs in a compressed format. This commit
    refactors the check to be generic for all image types
* Wed Jun 07 2017
  - Fixup EFI setup for iso images
    The embedded efi fat image on the iso filesystem must follow
    the same rules compared to the setup on a disk
* Wed Jun 07 2017
  - Fix docstring and apply ReST markup
    Avoids the the following warning:
    Definition list ends without a blank line; unexpected unindent.
    Docstring contains ReST markup from
* Tue Jun 06 2017
  - Some corrections for Building Docker image docs
* Tue Jun 06 2017
  - Rearrange Docker docs
    This commit rearranges the Docker image builds documentation
    in order to match the criteria exposed in #323
* Fri Jun 02 2017
  - Bump version: 9.6.2 → 9.7.0
* Thu Jun 01 2017
  - Make sure all required yum repo options are set
    enabled and gpgcheck parameters has to be set for any
    configured yum repository
* Thu Jun 01 2017
  - Fixup repository setup for yum
    Yum cannot handle spaces between the key and the value.
    This patch provides a method to tell ConfigParser to use
    no spaces for the '=' delimiter and thus Fixes #357
* Thu Jun 01 2017
  - Reactivate warnings report in pytest
* Thu Jun 01 2017
  - Fixup kernel name lookup
    If multiple abi compatible kernel module packages are installed
    the kernel version of the boot kernel could be different from
    the kernel module versions. In order to find the boot kernel
    all kernel versions found must be checked. Fixes #355
* Thu Jun 01 2017
  - Fix/workaround invalid xsd pattern translation
    The data structures are auto generated by the generateDS
    tool which works nicely except for the arch-name xsd pattern
    used in the RelaxNG schema. For some reason the used regular
    expression is translated by generateDS into a python
    expression not matching the original expression from the
    schema. The result is an invalid python warning message after
    the schema has successfully validated the arch string.
    The problem has been reported to the generateDS developer.
    As long as their is no fix available in generateDS the
    following workaround in kiwi applies: The original xs:token
    pattern validation will be disabled on the generateDS
    level and applies only to the schema. This Fixes #347
* Wed May 31 2017
  - Allow vendor specific grub config file location
    On e.g Fedora systems the EFI grub config file for secure
    boot systems is expected to be located in the vendor
    specific efi boot directory from where the shim loader
    gets loaded by the firmware
* Wed May 31 2017
  - Some fine tune updates
    * Updated the docs for system_create command
    * Reverted dracut image initialization
    * Updated yum comment about repo_gpgcheck option
    * Updated variable name in disk builder
    * Typo correction
* Wed May 31 2017
  - Include signing-key feature for boot images
    This commit extends the behavior of --signing-key options in order
    to import the provided key file into the boot image, in addition to
    the regular image root tree.
    Related to #342
* Tue May 30 2017
  - Fix use of pre requires in spec file
* Tue May 30 2017
  - Fixup working dir for editboot scripts
    editbootconfig and editbootinstall scripts needs to be
    called from within the correct directory to allow access
    to the written bootloader config files. For live images
    the working directory was set to the wrong place. This
    Fixes #353
* Mon May 29 2017
  - remove duplicated code from dhclient setup
    IPADDR is assigned within dhclientImportInfo
    original patch by Dinar Valeev <>
* Mon May 29 2017
  - Fix spelling of 'processor'
* Mon May 29 2017
  - Use glob pattern to match shim modules
* Sun May 28 2017
  - Fixed pre-req for kiwi-pxeboot subpackage
    the binaries groupadd and useradd used in the preinstall
    scriptlet and provided by the shadow package needs a pre
    requirement on shadow to make sure they exist when the
    package gets installed. Fixes (bsc#1040256)
* Fri May 26 2017
  - Fix existing root check, fixes #349
    This commit fixes the validation of an existing root directory
    for the command 'system build'. System build used to create the root
    directory before performing the root existance check, thus the
    check was always failing in any case. The root directory is created
    inside the RootInit class within the 'create' method.
    Fixes #349
* Wed May 24 2017
  - Added fallback setup for grub secure boot
    The current implementation is based on the presence of the
    shim-install tool. This tool does not exist on all distributions.
    In case shim-install is not present a kiwi fallback solution
    applies. Fixes #337
* Wed May 24 2017
  - Extend --signing-key to Apt package manager
    This commit extends support for --siging-key to the Apt package
    manager. However it has only been included for the chrooted
    operations, as current implementation of the bootstrap procedure does
    not provide signature check capabilities.
    Related to #342
* Wed May 24 2017
  - Extend --signing-key option to Yum and Dnf
    This commit extends the --signing-key options support to Yum and Dnf
    package managers. In addition, signature check for repositories
    had to be disabled for Yum and Dnf, as kiwi unrelated issues were
    found while testing. Nevertheless, package signature checks are
    fully functional.
    Related to #342
* Wed May 24 2017
  - Add --signing-key option
    This commit adds --signing-key option which sets a key file to import
    into the package manager trusted keys database. This commit adds this
    flag support only for zypper.
    Fixes #342
* Tue May 23 2017
  - Don't print warning report
    The auto generated uses the python warnings module
    The unit tests uses the coverage module in py.test to create
    a report. The latest py.test update now also creates a warnings
    report which is unwanted because some of the unit tests
    intentionally causes the creation of a warning as the expected
    result but we don't want to see that in a py.test warnings
    report. Therfore this patch switches off the creation of that
    warnings report
* Tue May 23 2017
  - Update manual page of build command
    Add information for --allow-existing-root option
* Tue May 23 2017
  - Fixup default behavior of build command
    The build command automatically used an existing root tree
    from a former build attempt. However this could cause an
    inconsistent image if the former build root was not based on
    the same image type setup. Thus it is better to allow this
    only if the --allow-existing-root option is specified along
    with the build command call
* Tue May 23 2017
  - Fixed alpha sorting of options
* Tue May 23 2017
  - Complete zypper cache cleanup
    also the raw and solv cache needs to be deleted
* Mon May 22 2017
  - Update manual pages
    Add information and use case for --clear-cache option
* Mon May 22 2017
  - Added --clear-cache option
    The system prepare and build commands now provides the
    option --clear-cache which deletes all cache data
    associated with the repositories to build the image.
    This Fixes #341
* Mon May 22 2017
  - Let dracut create a compressed initrd
    dracut was called in a way to create an uncompressed initrd archive
    and kiwi later runs the xz compression on it. That way the default
    compression parameters used by dracut get lost. Fixes #335
* Fri May 19 2017
  - Improve rpm-check-signatures support
    This commit ensures the signatures are checked for both: the
    repository and the rpm package. It applies for zypper, dnf and
    yum package managers.
* Fri May 19 2017
  - Fixup boot-load-size for efi loader in iso
    Pass the real boot-load-size of the used loader as number
    of 512byte blocks to the iso creation call. Related to
* Fri May 19 2017
  - Update documentation to meet review results
* Thu May 18 2017
  - Added GCE image primary setup information
* Thu May 18 2017
  - Added Azure image primary setup information
* Thu May 18 2017
  - Added EC2 image primary setup information
* Thu May 18 2017
  - Map partition ID's from sgdisk to lowercase
* Thu May 18 2017
  - rework building virtual disk image chapter
    Adapt to style as used in the live iso chapter and add
    references to low level topics regarding the setup of
    the image to work in the public cloud. Related to #323
* Wed May 17 2017
  - Get the first two characters of the gdisk partition code output
    According to the gdisk documentation the gdisk maps the partitions IDs
    to the MBR codes, but they are multiplied by 0x0100 in hexa. Meaning
    0x8300 code is equivalent to 0x83 in MBR. This commit only considers
    the first two characters of the sgdisk partition code output. With this
    change the partition types are comparable, regardless of using MBR or
* Wed May 17 2017
  - Fixes OEM deployments on a free partition, bnc#1039469
    This commit updates the boot code for oem images. In case
    oem-partition-install flag was set, the boot code was not capable
    to find an appropriate partition due to not attaching properly the
    raw image as a loopback device. KIWI was calling 'losetup' command
    with wrong arguments.
    Fixes bnc#1039469
* Wed May 17 2017
  - Bump version: 9.6.1 → 9.6.2
* Tue May 16 2017
  - Use 'yum-deprecated' if it exists when using Yum
    On Fedora and Mageia systems, the Yum package manager binary is named
    'yum-deprecated', and 'yum' redirects to DNF. This is a problem for
    being able to build images of Linux systems that use Yum as its package
    manager, like RHEL/CentOS 7.
    So, in order to ensure we use the right package manager, we check for
    the 'yum-deprecated' binary and use it if it exists.
* Tue May 16 2017
  - Restructure low level topic (iso_to_usb)
    The low level topic references information from the base
    topic. In this case the name of the previously built image.
    I think we should provide information on each low level
    topic which references information from a base topic.
* Mon May 15 2017
  - Handle rpm-check-signatures flag for each package manager
    This commit adds support for the rpm-check-signatures flag, which
    sets the package manager to verify or not each package signature.
    By default KIWI assumes no gpg checks are done.
* Mon May 15 2017
  - Separate low-level topics (dumping)
    * Separate the high-level (building) from the low-level part (dumping)
    * Introduce a subsection ("Working with Images"); not sure, if this is
      useful under "Building Images"
    * Enhance with some (general) advise about booting from USB
* Mon May 15 2017
  - Provide missing _hybrid_iso label
* Mon May 15 2017
  - Fixup check_target_directory_not_in_shared_cache
    The runtime check compared the given target path if it starts
    with the cache directory /var/cache/kiwi. This however also
    matches for e.g /var/cache/kiwi-foo which would be a valid
    target directory. This patch changes the matcher in a way to
    really check if the target directory points to the same cache
    directory structure.
* Fri May 12 2017
  - Set default dracut output format to match upstream
* Fri May 12 2017
  - Added dracut output file format detection
    Unfortunately the dracut initrd output file format varies between
    the different Linux distributions. Tools like lsinitrd, and also
    grub2 rely on the initrd output file to be in that format.
    Thus when kiwi uses dracut the same file format should be used
    all over the place in order to stay compatible with what the
    distribution does. Fixes #325
* Fri May 12 2017
  - Revised example for issue #323
    * Add abstract (use `.. sidebar`, not sure if we should use it)
    * Collect all concept oriented text in the beginning
    * Introduce procedure and create steps
    * Remove lonely subsection and combine it with the procedure
    * Review
    * Decide, if `.. sidebar` is ok (or should we better use `.. topic`?)
    * Add additional, related information?
* Thu May 11 2017
  - Bump version: 9.6.0 → 9.6.1
* Thu May 11 2017
  - Update build docker images documentation
    This commit includes steps to install umoci and skopeo, descriptions
    for the configurable metadata in KIWI and some simple style fixes.
* Tue May 09 2017
  - Fixed tox.ini doc target
    location of schema docs has changed, and we better disable
    the spell check as long as not all unknown technical terms
    are added to the wordlist.txt
* Mon May 08 2017
  - Use correct service name variable
* Sun May 07 2017
  - Refactor documentation layout and structure
    The current design of the documentation does not allow for
    continous improvement and development. It's missing a basic
    structure and concept for documenting step-by-step workflows
    and generic explanations.
* Fri May 05 2017
  - Remove erroneous statement in request_package_exclusion() for Yum+DNF
* Fri May 05 2017
  - Fixed markup in contributing chapter
    The headline of a subsection wrongly indicates a toplevel entry
* Fri Apr 28 2017
  - Evaluate UNIONFS_CONFIG filesystem
    This commit makes sure the filesystem is parsed from the
    UNIONFS_CONFIG configuration variable when the PXE image is
    loaded to a block device.
    This commit fixes #316
* Fri Apr 28 2017
  - Fixed GPL license text to match headers and spec
    source headers and spec file is pointing to GPL v3 but the
    license file was still at version 2
* Thu Apr 27 2017
  - Add support for excluding packages when using DNF
* Thu Apr 27 2017
  - Add support for excluding packages when using Yum
* Thu Apr 27 2017
  - Fix comment about Zypper locks to reflect reality
* Wed Apr 26 2017
  - Bump version: 9.5.0 → 9.6.0
* Wed Apr 26 2017
  - Additional container commandline options
    Added --set-container-derived-from and --set-container-tag
    commandline options which allows to overwrite the data set
    in the XML configuration
* Tue Apr 25 2017
  - Implement obsrepositories source on derived_from
    The following reference to a derived container:
    Will be translated into the following buildservice
    local path:
* Tue Apr 25 2017
  - Implement obs source on derived_from
    The following reference to a derived container:
    Will be translated into the following buildservice
    local path:
* Tue Apr 25 2017
  - Use urlparse to detect uri scheme
    The source location postfix can contain several different
    formats e.g :/, or :// or even just :, python's urlparse
    is able to cope with all that which allows to work with
    the url scheme base name and thus makes handling this
    code more robust
* Mon Apr 24 2017
  - Bump version: 9.4.11 → 9.5.0
* Mon Apr 24 2017
  - Include '--delete' in OCI images DataSync
    This commit includes #310 patch for OCI images.
    It also corrects the end of line format for kiwi/container/
    and test/unit/, so flake tests are all
* Thu Apr 20 2017
  - Include --delete flag in DataSync for docker images
    This commit includes the --delete flag in order to synchronize the
    docker images. This is relevant for derived images where the new
    layer might not only add files, but also remove something from the
    base image.
    Fixes #309
* Thu Apr 13 2017
  - Define correct default locations for sources-dir and preferences-dir
    In order to ensure that the defined repositories in the KIWI configuration
    are set to the correct places for installing into the image, the
    sources-dir and preferences-dir need to be redefined to point to the
    in-image location, as it is done for the other package managers.
* Thu Apr 13 2017
  - Do not purge the repositories before inserting them
    There are no good reasons to be purging the repo directories, especially
    when it is common for some distributions (Red Hat/CentOS/Fedora, for example)
    to ship repository configuration as packages. Deleting them puts the package
    manager in the system into a weird state, so we want to avoid this.
* Thu Apr 13 2017
  - Fix default reposdir path for Yum
* Thu Apr 13 2017
  - Add support for OCI images
    This commit adds support for OCI images. Most of the docker related
    code is reused for OCI classes and Docker classes have been refactored
    so now they are a splecialization of the OCI classes. It is done this
    way since KIWI internally only uses OCI format to operate with
    containers, therefore docker images just differ from OCI images by
    the way they are packaged or unpackaged.
* Wed Apr 12 2017
  - Add clear attribute for entrypoint and subcommand sections
    This commit adds the possibility of clearing asny subcommand or
    entrypoint. This is relevant for docker derived images, as they
    inherit the configuration and it might lead to some bad behavior.
* Wed Apr 12 2017
  - Bump version: 9.4.10 → 9.4.11
* Wed Apr 12 2017
  - Add require/recommend installation support for yum
    This commit adds support to install required only or required plus
    recommended packages using yum as the package manager.
* Wed Apr 12 2017
  - Add support for required/recommended packages
    This commit enables support to install only required packages
    or install required plus recommended packages.
* Tue Apr 11 2017
  - Include 'plusRecommended' management for dnf
    Add support to enable/disable installation of recommended packages
    for dnf package manager. With this commit 'plusRecommended'
    patternType triggers on installation of recommended packages, which
    is turned off by default.
* Tue Apr 11 2017
  - Make sure debian repositories database is populated before install
    This commit includes an 'apt-get update' call before any 'apt-get
    install' command. This way the packages database is always ready,
    even if no bootstrap procedure has been executed.
* Mon Apr 10 2017
  - Bump version: 9.4.9 → 9.4.10
* Mon Apr 10 2017
  - Add warning logs for unkown base image URIs
* Mon Apr 10 2017
  - Update spec template for SLE13->SLE15
* Mon Apr 10 2017
  - Rename SLE13 to SLE15
* Mon Apr 10 2017
  - Follow up fix for grub2 setup in live builder
    The live iso builder still used a fixed boot/grub2 path
    but due to the refactoring this path is now distro dependant
    and should be obtained dynamically
* Mon Apr 10 2017
  - Cleanup use of bootloader path in boot code
    Instead of repeating the bootloader path only specify it
    once per setup path
* Mon Apr 10 2017
  - Add method to setup installation of recommended packages
    With this commit package manager are always set to include only
    required packages or set to include required and recommended
    This commit fixes #285
* Thu Apr 06 2017
  - Bump version: 9.4.8 → 9.4.9
* Thu Apr 06 2017
  - Update development and contribution chapter
    Fix some minor inconsistencies due to latest code changes
    with regards to py2 and py3 compatibility and also change
    the style of the chapter to be more straight forward for
    people who would like to contribute from scratch
* Wed Apr 05 2017
  - Bypass bootstrap procedure if no bootstrap packages section
    This commit updates kiwi to bypass bootstrap procedure in case
    there is no bootstrap packages section.
    It also adds extra validation in root_bind.
* Wed Apr 05 2017
  - Bump version: 9.4.7 → 9.4.8
* Wed Apr 05 2017
  - Fixup grub2 template parameters
    The boot_directory_name parameters was missing for live and
    install image builds
* Wed Apr 05 2017
  - Bump version: 9.4.6 → 9.4.7
* Wed Apr 05 2017
  - Fixup grub2 bios module setup
    Only copy grub2 bios modules if the architecture supports it
* Wed Apr 05 2017
  - Bump version: 9.4.5 → 9.4.6
* Tue Apr 04 2017
  - Avoid GRUB_DISTRIBUTOR setup in etc/default/grub
    The GRUB_DISTRIBUTOR information can't be provided in a generic
    way for all distributions. The information should be either placed
    by a package post script (as done by most of the distributions)
    or by a custom kiwi or script. Fixes #286
    Fixes (bsc#1032119)
* Tue Apr 04 2017
  - Added support for unknown uri types for base image references
    This commits bypasses any URI check if the uri schema is unknown in
    RootImport class. This way the URI is bypassed to skopeo if it couldn't
    be translated to any known type. That enables referencing images with
    any URI supported by skopeo, i.e. DockerHub images.
* Tue Apr 04 2017
  - Keep imported image in OCI format instead of docker
    Kiwi always uses OCI format for container manipulations, so it is
    easier to assume the image kept between prepare and create step
    is also in OCI format, this way less format convertions are needed.
* Tue Apr 04 2017
  - Fixup bootloader menu title setup
    If the menu title is setup via the displayname attribute in
    the XML configuration, kiwi should not change this text by
    a prefix or any other style adaptions. Fixes #287
    Fixes (bsc#1032118)
* Tue Apr 04 2017
  - Fixup copy of array in boot code
    The filtered nic interface names are stored in an array
    and copied back into the original array. The copy of the
    array was semantically wrong
* Mon Apr 03 2017
  - Fixup grub2 setup and tool calls
    Depending on the distribution the grub tools are either named
    grub2-tool or grub-tool. Additionally the grub configuration
    data is expected to live in boot/grub2 or boot/grub. This commit
    handles the tool calls and also the grub boot directory setup
    in a generic way
* Thu Mar 30 2017
  - Include SLE13 boot descriptions for x86_64 and arm
    This commit includes boot descriptions for SLE13, the descriptions
    are based on leap 42.3.
* Thu Mar 30 2017
  - Delete obsolete ec2 disk format
    The ec2 value in the format attribute is deprecated and no
    longer supported It remained in the schema for a while and
    has now reached EOL
* Thu Mar 30 2017
  - Bump version: 9.4.4 → 9.4.5
* Tue Mar 28 2017
  - Fixup theme setup in boot
    Make sure grub theme data is populated in the boot directory.
    Checking only for the presence of the theme directory is not
    enough. If the theme directory in boot does not contain the
    requested theme it must be provided including a warning if
    the theme data could not be found in the system
* Tue Mar 28 2017
  - Do not change the API in an incompatible way
* Tue Mar 28 2017
  - Use request_package_exclusion method in prepare
* Mon Mar 27 2017
  - Refactor method name of package manager interface
    The request_package_lock was renamed into request_package_exclusion
    because that is the goal, to actually exclude(skip) a package. From
    an implementation point of view this is done to set a lock in the
    zypper case. However other package managers might do it differently.
    The interface should stay consistent with regards to the user goal
    and not with the package manager specific implementation. This
    Fixes #248
* Mon Mar 27 2017
  - Added <oem-nic-filter> element
    Allow network interface names to be filtered by the given
    regular expression. The expression is handled by the bash
    regexp operator. Interface names matching the rule will be
    filtered out, all others stay. It is also possible to pass
    the variable kiwi_oemnicfilter as kernel command line in a
    PXE deployment. Fixes #245
* Mon Mar 27 2017
  - Bump version: 9.4.3 → 9.4.4
* Mon Mar 27 2017
  - Delete no longer needed btrfs bootpath setup
    The adaption of the bootpath in the grub.cfg file with regards
    to the btrfs toplevel volume named '@' was the wrong solution.
    The fixes in the btrfs filesystem setup and the config files
    etc/default/grub and sysconfig/bootloader caused the grub
    toolchain to work properly. This Fixes (bsc#1030038)
* Fri Mar 24 2017
  - Convert user input to absolute paths
    This commit converts the paths provided by the user with the
    command line to absolute paths. The effected arguments are:
    * --root
    * --target-dir
    * --bundle-dir
      This supersedes and fixes #271
* Fri Mar 24 2017
  - Support editbootconfig also for the iso type
    This Fixes #274
* Thu Mar 23 2017
  - ensure grub.cfg exists in EFI path for iso images
    For live and install iso image boot configurations the
    bootloader configuration must also exist in the EFI boot
* Wed Mar 22 2017
  - Throw a proper msg on missing filesystem reference
    Don't set a filesystem factor if no filesystem reference is set
* Wed Mar 22 2017
  - Throw a proper exception on missing boot reference
* Wed Mar 22 2017
  - Update schema documentation
    Add explanation for attributes with no documentation
    Fixup explanation for hybrid attribute
* Wed Mar 22 2017
  - Recommend jing
    in case of XML validation errors, jing is used to provide
    good error messages. jing as a requirement will pull in all
    of java which is unwanted, but a Recommends seems appropriate
* Wed Mar 22 2017
  - Update flags attribute and its documentation
    Delete the seed and compressed value as it is not implemented
    and won't be supported in the future. Properly document the
    existing overlay methods
* Wed Mar 22 2017
  - Added doc info for kiwinoswapsearch boot parameter
* Tue Mar 21 2017
  - Bump version: 9.4.2 → 9.4.3
* Tue Mar 21 2017
  - Fixed checksum file creation
    If the checksum should be created from a compressed file
    it is expected that the checksum of the uncompressed file
    is added to the checksum file. This is because in a pxe
    deployment the uncompressed version of the file is put
    on disk and compared with the reference information in
    the checksum file
* Tue Mar 21 2017
  - Refactor ip link detection
    There is no reliable way to check if a link is unplugged, thus
    the code has changed into the following workflow
    1. use interfaces which returns success on ip link set up
    2. wait for the UP state on all of these interfaces and return
    if one of them enters the UP state
    3. call a fixed wait state to allow to kernel network drivers
    to settle
    4. run through all remaining interfaces, discover the link
    state and call a DHCP discovery
* Mon Mar 20 2017
  - Bump version: 9.4.1 → 9.4.2
* Mon Mar 20 2017
  - Fixup pxe builder
    filesystem image rootfs was not in toplevel
* Mon Mar 20 2017
  - Bump version: 9.4.0 → 9.4.1
* Mon Mar 20 2017
  - Fixup pxe builder
    Generate a tarball containing all relevant pxe boot result
    files instead of a bunch of extra files. This also turns
    the pxe builder to be compatible again with the legacy
    kiwi pxe bundler
* Fri Mar 17 2017
  - Don't create shasum over an md5 file
* Thu Mar 16 2017
  - Bump version: 9.3.3 → 9.4.0
* Wed Mar 15 2017
  - Allow https location as repository source
* Wed Mar 15 2017
  - Refactor RootImport to keep images with a default name
    RootImport has been refactored so the image is kept with a known
    name that can be obtained with the Defaults class.
* Tue Mar 14 2017
  - Added SLE13 distribution matcher
* Tue Mar 14 2017
  - Update distribution matcher in spec file
* Tue Mar 14 2017
  - Refactor ContainerBuilder
    Use Checksum instance to run a checksum match
    Check for existence of base image at earliest opportunity
    when constructing a ContainerBuilder
* Tue Mar 14 2017
  - Added checksum matcher method to Checksum class
* Tue Mar 14 2017
  - Delete unused code
    Also fixed corresponding unit test
* Mon Mar 13 2017
  - Make sure LICENSE and README got installed
* Mon Mar 13 2017
  - Handle derived image as Uri instance
* Mon Mar 13 2017
  - Add completion for versioned binaries
    when installing kiwi via pip, no alternatives setup done
    when installing via rpm will be performed. In order to
    allow the bash completion to work also the versioned
    binaries needs to be added in the completion script
* Mon Mar 13 2017
  - Bump version: 9.3.2 → 9.3.3
* Fri Mar 10 2017
  - Add documentation hint for multipython package
* Thu Mar 09 2017
  - Setup package for multipython build
    Build package for both python2 and python3
* Thu Mar 09 2017
  - Refactored RootImport and included checksum validation
    First, commit refactors RootImport in order to also copy
    the imported image after sychronizing the import.
    Second, it includes a checksum of the copied image which is
    validated in later steps.
* Wed Mar 08 2017
  - Added Leap42.3 boot descriptions
* Wed Mar 08 2017
  - Deleted  openSUSE 13.2 boot descriptions
* Wed Mar 08 2017
  - Refactor Uri constructor
    Make repo_type an optional parameter, which is only
    required if the specified uri leaves a type choice
* Wed Mar 08 2017
  - Fixup PyPI entry registry
    The wrong project url was referenced
* Wed Mar 08 2017
  - Support for layered docker images
    This commit includes support for building layered docker. A new
    layer is added on top of the base image referenced by `derived_from`
* Tue Mar 07 2017
  - Bump version: 9.3.1 → 9.3.2
* Tue Mar 07 2017
  - Fixed
    kiwi.solver code was not included into source archive
* Tue Mar 07 2017
  - Bump version: 9.3.0 → 9.3.1
* Tue Mar 07 2017
  - Fixed doc api build for renamed source file
* Tue Mar 07 2017
  - Bump version: 9.2.4 → 9.3.0
* Tue Mar 07 2017
  - Flake8 fixes for unit tests
* Tue Mar 07 2017
  - Apply code quality checks for unit tests too
* Tue Mar 07 2017
  - Fixed import of solv module
* Tue Mar 07 2017
  - Import root system from a given image
    This commit includes the root import feature. A `derived_from`
    attribute has been included with the <type> section to make
    reference to the image file to import. The image format to import
    is assumed to be the same as the build type to import.
    The current format supported is docker
* Tue Mar 07 2017
  - Flake cleanup for unit tests
* Mon Mar 06 2017
  - Prevent use of project relative import statements
    For details on the motivation of this change please visit:
* Mon Mar 06 2017
  - Allow activation/deactivation of sysV services
    systemd is still legacy sysV init compatible, thus the kiwi
    helper scripts to activate/deactivate services should not
    only be limited to systemd services. Fixes #256
* Mon Mar 06 2017
  - Support package capabilities in sat solver
    A solver operation can receive a package or pattern name but
    a capability name was considered a package name and failed
    to resolve. This commit fixes the solver operation with
    regards to package capabilities
* Mon Mar 06 2017
  - Add runtime check for kernel match
    If a kiwi initrd is used, the kernel used to build the kiwi
    initrd and the kernel used in the system image must be the
    same in order to avoid an inconsistent boot setup. This is
    related to (bsc#1027610)
* Fri Mar 03 2017
  - Added runtime check for boot image reference
    If an initrd_system different from kiwi is selected for a
    vmx (simple disk) image, it does not make sense to setup a reference
    to a kiwi boot image description, because no kiwi boot image will be
    built. Despite that it does not hurt it's still an inconsistent
    setup. This is related to (bsc#1027610)
* Fri Mar 03 2017
  - Bump version: 9.2.3 → 9.2.4
* Fri Mar 03 2017
  - Update documentation
    the docker build container is now build with the correct
    namespace. Thus no image tagging is required anymore
* Fri Mar 03 2017
  - Bump version: 9.2.2 → 9.2.3
* Thu Mar 02 2017
  - Support container names with slashes (#254)
    Umoci tool doesn't require any other parameter than a tag to
    identify the container. So container_name value is not used in
    This Fixes#253
* Wed Mar 01 2017
  - Use default command only if no entrypoit and subcommand aren't set
    Fixes #251
* Wed Mar 01 2017
  - Fix tagging for OCI images
    This commit fixes the tagging schema for umoci. An OCI image
    name is path[:tag], this commit rearranges some variable names to
    avoid confusions between names and tags.
    Fixes #249
* Tue Feb 28 2017
  - Add support for repository credentials
    The package and solver repository classes did not provide an
    interface to deal with repository credentials. This commit
    add support for the zypper package manager and the generic
    urlopen based download method of the solver class. This
    Fixes #246
* Tue Feb 28 2017
  - Bump version: 9.2.1 → 9.2.2
* Tue Feb 28 2017
  - Update documentation
    Add detailed information how to update the docker Build Container
    on the official dockerhub registry. This is needed to use custom
    or newer versions of the currently published Build Container
* Tue Feb 28 2017
  - Bump version: 9.2.0 → 9.2.1
* Tue Feb 28 2017
  - Update documentation
    The changes in building docker images now allows for using
    the docker load command to import the dice container
* Tue Feb 28 2017
  - Fix default reposdir path for DNF
* Mon Feb 27 2017
  - Bump version: 9.1.0 → 9.2.0
* Mon Feb 27 2017
  - Added support for exclude docs for dnf
* Mon Feb 27 2017
  - Fixup default cache and plugin dir for dnf
* Fri Feb 24 2017
  - Update distribution support status
    Add information that Fedora systems are now supported as well
* Fri Feb 24 2017
  - Make sure bootenv can be initialized
    An existing grub bootenv file should be deleted prior to calling
    grub2-install in order to allow grub2 to create a new correct
    bootenv file
* Thu Feb 23 2017
  - Added DNF package management implementation
    DNF is the package manager used on Fedora systems and will also most
    likely replace yum for the next generation of RHEL. Along with the
    implementation here an example JeOS image description for Fedora can
    be found on:
    This Fixes #36
* Tue Feb 21 2017
  - Follow up fix for network driver delay
    Each network interface will be switched off for a short
    moment when the kernel network driver is loaded. During
    that time the link status information would be misleading.
    Thus we wait a short time before the link status check
    is started
* Mon Feb 20 2017
  - Include compression optimization flags for mksquashfs command
    This commit includes some flags for mksquashfs command in other to
    achieve higher compression rates. Also note that those flags were
    already present in KIWI former versions, thus they have been
    included again for compatibility reasons.
    This commit fixes #242
* Mon Feb 20 2017
  - Allow to convert GPT into MBR
    The type attribute force_mbr allows to convert a system selected
    for use with a GPT to use an MBR (msdos table). The attribute
    only takes effect on image configurations which would select the
    GPT partitioner. This Fixes #236
* Mon Feb 20 2017
  - Wait for network drivers to pass init
    Before we check for the link status a waid period of 3 seconds
    should guarantee that the network drivers have passed the init
* Thu Feb 16 2017
  - Refactor waitForLinkUp
    Put code which does not belong into the loop outside of
    the loop. Also maintain sleep timeout and retry count
    in variables
* Thu Feb 16 2017
  - Fixed waitForLinkUp and setIPLinkUp
    The setIPLinkUp method did not handle the return value of the
    waitForLinkUp call and always returned success even if
    waitForLinkUp ran into a timeout
    The waitForLinkUp method was improved in a way that it does
    not wait if the link detection discovered the interface is
    unplugged. The detection if a cable is connected or not only
    works if the ifplugstatus tool was found in the initrd
* Fri Feb 10 2017
  - Bump version: 9.0.2 → 9.1.0
* Thu Feb 09 2017
  - Implement handling for efipartsize
* Thu Feb 09 2017
  - Decrease default EFI partition size to 20MB
    The former default of 200MB was way too large and is a
    waste of space. Related to Issue #237
* Thu Feb 09 2017
  - Added efipartsize attribute in type setup
    The attribute allows to specify a custom size for the
    EFI partition. Fixes #237
* Thu Feb 09 2017
  - Allow bootloader="custom" for bootloader attribute
    If specified as such the bootloader configuration and
    installation will be skipped. However the editbootinstall
    and editbootconfig scripts will still be called. This
    Fixes #235
* Thu Feb 09 2017
  - Fixed create_repository_solvable
    If the solvable already exists, the method should return it
* Wed Feb 08 2017
  - Added handling for spare_part attribute
    Add a spare partition right before the root partition of
    the configured size. Fixes #234
* Wed Feb 08 2017
  - Added new type attribute spare_part
    spare_part receives a size value with an optional unit (M|G)
    and is used for disk images to allow the creaton of a spare
    partition of the configured size. Issue #234
* Wed Feb 08 2017
  - Delete all traces of vboot firmware
    The vboot firmware setup was a workaround on arm for the
    chromebook platform several years ago. From a todays
    perspective the setup and the way to boot would be different
    and obsoletes the special case implementation. Thus this
    is gone now. Related to Issue #234
* Wed Feb 08 2017
  - Prevent quoted domain name in dhclientImportInfo
    We're getting domain name by parsion a lease file. Unfortunately in
    lease file domain name is quoted, which breaks linux resolver.
    This commit gets domainname unquoted
* Tue Feb 07 2017
  - Add manual page for image info command
* Mon Feb 06 2017
  - Added kiwi image info command
    Allow to list information about the image description.
    In a first implementation one can show the image name
    as well as run a dependency resolution for the packages
    listed in the XML description
* Fri Feb 03 2017
  - Bump version: 9.0.1 → 9.0.2
* Fri Feb 03 2017
  - Added uri translation for SUSE factory
    The obs uri 'obs://openSUSE:Factory/standard' does not follow
    the standard http url translation schema and needed a special
    handling in order to resolve correctly
* Thu Feb 02 2017
  - Eliminate instsource element and requirements
    The schema defintions for kiwi v8 still contained the
    product schema definitions aka instsource which is no
    longer supported by this version of kiwi. Building
    SUSE products is done with the kiwi v7 code base and
    will most probably be handled by an extra product
    builder tool in the future maintained and developed
    by the buildservice team. We would be proud if the api
    of the kiwi v8 code base can be helpful for the product
    builder in the future
* Wed Feb 01 2017
  - Bump version: 9.0.0 → 9.0.1
* Wed Feb 01 2017
  - Added arch attribute for ignore section
    The packages subsection <ignore> only accepted a package
    name to become ignored. However a <package> subsection
    to install a package allows for an arch selection. The
    same should apply to ignore a package. In addition the
    allowed content for the arch attribute has been changed
    from simple text to a regular expression. Allowed is a
    comma seperated list of reserved architecture words like
    they are displayed by uname -m
* Wed Feb 01 2017
  - User format method to form the message
* Wed Feb 01 2017
  - Added support for package locking for zypper
    Zypper supports the al (add lock) command which allows to ignore
    a package in the dependecny resolution process. This is useful
    to prevent installation of a package which was pulled in by e.g
    a recommendation flag from the spec file. Packages marked to be
    ignored are not handled for apt and yum right now. Using this
    feature together with an unsupported package manager backend
    results in a warning to the user
* Wed Feb 01 2017
  - Included some file naming convetions
* Mon Jan 30 2017
  - Components of an Image Description section
    This commit extends the doc/sources/workflow.rst documentation
    by including details about and files.
* Fri Jan 27 2017
  - Bump version: 8.29.6 → 9.0.0
* Thu Jan 26 2017
  - Update documentation
    Add information about new hook: handleMachineID
* Thu Jan 26 2017
  - Bump version: 8.29.5 → 8.29.6
* Thu Jan 26 2017
  - Fixup isolinux timeout configuration
    isolinux counts the timeout in units of 1/10 seconds.
    Thus the value provided in the image description needs
    to be adapted correctly. This Fixes #228
* Thu Jan 26 2017
  - Bump version: 8.29.4 → 8.29.5
* Thu Jan 26 2017
  - Fixup setupMachineID
    Cleaning up existing machine id files by deleting them
    causes an interactive session to be started by systemd
    This is something we don't want. As the consequences
    of touching the machine id files seems to be too critical
    the method has been turned into a hook caller. This
    allows the user to make use of it on their own purpose
    and by default doesn't mess with the machine id files
* Tue Jan 24 2017
  - Bump version: 8.29.3 → 8.29.4
* Tue Jan 24 2017
  - Change processing of setupMachineID
    Instead of creating new machine ids for systemd and dbus
    the method now cleans up all existing machine ids and
    leave it up to systemd to initialize and create new ids.
    This allows to make use of the native way how systemd
    retrieves and handles machine ids
* Tue Jan 24 2017
  - Fixup typo in ReST style
* Tue Jan 24 2017
  - Bump version: 8.29.2 → 8.29.3
* Mon Jan 23 2017
  - Add utils.sysconfig to api documentation
* Mon Jan 23 2017
  - Completion for grub bootloader configuration
    The configuration files /etc/sysconfig/bootloader and
    /etc/default/grub needs to be created/updated with the
    relevant values regarding the bootloader setup done by
    kiwi. This Fixes #226
* Fri Jan 20 2017
  - Apply volume attributes for btrfs and lvm
    The chattr utility is used to apply file attributes
    So far only the no-copy-on-write attribute can be
    specified in a volume setup. If further attributes
    are needed they will be added on demand
* Fri Jan 20 2017
  - Added attributes element in volume type
* Thu Jan 19 2017
  - Added volume attribute copy_on_write
    The copy_on_write attribute allows to activate or deactivate
    the copy on write functionality for the desired volume.
    This Fixes #218
* Thu Jan 19 2017
  - Make sure there is a storage default setup on s390
    Storage disks on s390 requires an information about the
    type and the blocksize. In case these information is not
    provided in the kiwi XML configuration, None was set as
    value in the zipl configuration which lead to an error.
    This commit provides default values for those parameters
* Wed Jan 18 2017
  - Bump version: 8.29.1 → 8.29.2
* Tue Jan 17 2017
  - Allow unix device names in oem-unattended-id setup
    In order to allow a raw device name in oem-unattended-id
    the /dev tree has been added to search list. This is useful
    if e.g a ramdisk device which is not part of any /dev/disk/...
    or /dev/mapper device map should be used as target disk for
    the deployment. Thus a setup to stick the deployment to
    e.g /dev/ram1 would look like this
    This Fixes #221
* Tue Jan 17 2017
  - Don't delete ip tools from oemboot
    network tools are needed for oem disk deployment via pxe
* Tue Jan 17 2017
  - Added .coveragerc
    Clearly indicate which source files are excluded from the
    coverage report
* Tue Jan 17 2017
  - Make sure setupMachineID also cares for dbus
    Systemd and dbus should use the same machine-id. Therefore
    a symlink /var/lib/dbus/machine-id pointing to /etc/machine-id
    is created right after systemd-machine-id-setup. Fixes #219
* Mon Jan 16 2017
  - Fixup duplication of btrfs toplevel volume
    If using root btrfs snapshot, the default toplevel subvolume is set to
    /@/.snapshots/1/snapshot, thus all defined subvolumes are mounted
    under that cusomized default subvolume. For the first time
    subvolumes are mounted it is fine to include /@/.snapshots/1/snapshot
    prefix as root is not yet set to that specific path, however in any
    future mount this path prefix is not needed any more, as the root
    get mounted in /@/.snapshots/1/snapshot by default. Fixes (bsc#1015549)
* Fri Jan 13 2017
  - Add check_docker_tool_chain_installed
    Runtime check to check for required docker tools umoci and
    skopeo. As long as tools tools are not available in the
    core distro of all distributions we avoid spec file requirements
    and check at runtime if they can be found
* Tue Jan 10 2017
  - Bump version: 8.29.0 → 8.29.1
* Tue Jan 10 2017
  - Rebuild schema documentation
* Tue Jan 10 2017
  - Bump version: 8.28.3 → 8.29.0
* Mon Jan 09 2017
  - Running after including the image repositories
    This commit rearranges some code lines in order to run the
    script after the repositories of the image have been included, this
    way repositories can be trusted and refreshed in script.
* Mon Jan 09 2017
  - Refactor docker container creation
    Instead of creating a simple tarball the tools umoci and skopeo
    from the docker tool chain are used to create official docker
    images. Along with those tools more information to describe a
    container has been added to the schema. A complete container
    setup now consists of the following elements
    <type image="docker">
    <containerconfig name="..." maintainer="..." user="..." workingdir="...">
    <entrypoint execute="command">
    <argument name="option"/>
    <subcommand execute="command">
    <argument name="option"/>
    <port number="..."/>
    <volume name="..."/>
    <env name="variable" value="value"/>
    <label name="..." value="..."/>
* Mon Jan 09 2017
  - Update container builder code to new schema layout
* Mon Jan 09 2017
  - Auto update image descriptions to schema v6.5
* Mon Jan 09 2017
  - Update schema for container setup
    In preparation to support creation of native docker containers the
    way docker likes it, the kiwi schema has to be adapted. So far there
    was no way to specify additional metadata information for containers.
    With this commit a new section called <containerconfig> is provided.
    containerconfig is a subsection of the type and only allowed for
    the docker image type. This constraint is checked via a schematron
    rule. In addition an xslt stylesheet moves the currently existing
    container attribute, which was used to set a name for the container,
    into the new containerconfig section as name attribute
* Tue Dec 20 2016
  - Bump version: 8.28.2 → 8.28.3
* Tue Dec 20 2016
  - Fixed quadruple_token tokenizer
    Information not provided should end up as a None type in the
    list in any case. If an empty string was provided via e.g
  --add-repo source,type,, the tokenizer puts in an empty string.
    If the information was provided as --add-repo source,type a
    None type was used. The code handling the information expected
    a None type for not provided information, with an empty string
    we end up in validation code which e,g complains that an empty
    string can't be converted into an integer base repo priority
* Sun Dec 18 2016
  - Bump version: 8.28.1 → 8.28.2
* Sun Dec 18 2016
  - Update documentation
    Default provider must be set in the caller environment if
    different from the default docker provider
* Fri Dec 16 2016
  - Bump version: 8.28.0 → 8.28.1
* Fri Dec 16 2016
  - Update container builder documentation
    Add information about the now available kiwi build box
    and the use of it as part of libvirt provider setup for
* Thu Dec 15 2016
  - Bump version: 8.27.5 → 8.28.0
* Tue Dec 13 2016
  - Bump version: 8.27.4 → 8.27.5
* Tue Dec 13 2016
  - Fixup spec file build requires
    shadow tools are needed for %pre tasks using
    groupadd/useradd tools
* Tue Dec 13 2016
  - Bump version: 8.27.3 → 8.27.4
* Mon Dec 12 2016
  - Fixup spec file tftp group/user setup
    Let %pre fail if groupadd/useradd failed and show the error
    to the user
* Thu Dec 08 2016
  - Added DiskFormatVagrantLibVirt class
    Allow to build vagrant boxes for the libvirt provider
    This Fixes #15
* Thu Dec 08 2016
  - Update vagrantconfig schema setup
    Delete the virtualbox provider, As long as there is no
    opensource variant for the ovf creation available we won't
    support that provider
* Wed Dec 07 2016
  - Bump version: 8.27.2 → 8.27.3
* Tue Dec 06 2016
  - Adapt documentation to rtd schema
    replace topic node used for abstract by a hint. This results
    in a color box for the abstract which looks better than what
    rtd does with simple topics
* Tue Dec 06 2016
  - Adapt schema generator to rtd doc schema
* Tue Dec 06 2016
  - Move to rtd sphinx schema
    The read-the-docs schema fits better into the mainstream
    of online documentation
* Mon Dec 05 2016
  - Bump version: 8.27.1 → 8.27.2
* Mon Dec 05 2016
  - Added check_volume_setup_has_no_root_definition
    The root volume in a systemdisk setup is handled in a special
    way. It is not allowed to setup a custom name or mountpoint for
    the root volume. Therefore the size of the root volume can be
    setup via the @root volume name. This check looks up the volume
    setup and searches if there is a configuration for the '/'
    mountpoint which would cause the image build to fail
* Mon Dec 05 2016
  - Prevent warning about unknown opt in workflow doc
* Mon Dec 05 2016
  - Bump version: 8.27.0 → 8.27.1
* Mon Dec 05 2016
  - Rebuild schema documentation
* Mon Dec 05 2016
  - Add a docstring for the extension section
    Short description what the extension section is good for
* Mon Dec 05 2016
  - Prevent any type from attribute recursion
    The schema parser to create the documentation run into
    an endless recursion for the new k.any type. As any could
    be anything there is not much do document for this type.
    Thus it is now skipped from the traversal
* Mon Dec 05 2016
  - Bump version: 8.26.1 → 8.27.0
* Fri Dec 02 2016
  - Update documentation per review
* Thu Dec 01 2016
  - Including minimum volume size offset in disk size calculation
    This commit adds Defaults:get_min_volume_mbytes() to the disk size
    calculation algorithm. This should be sufficient to hold fdisk
    default offset when creating the first partition and also to hold
    the LVM metadata.
* Thu Dec 01 2016
  - Added extension documentation
* Thu Dec 01 2016
  - Make sure to catch exceptions from xsltproc
* Wed Nov 30 2016
  - Add extension validation and data access
    If an extension section exists the xml data in this section
    is validated against the RelaxNG schema which must be part
    of the xmlcatalog for the used extension namespace. If the
    data validates the method get_extension_xml_data can be used
    to access the etree parse result for each of the extension
* Wed Nov 30 2016
  - LVM volumes management during grub2 install
    During the grub2 install process volumes were not mounted properly,
    a proper mount order was not taken into consideration and LV device
    information was not given by the method get_volumes in VolumeManger.
    This commit forces the mount (and umount) operations to be done in
    coherent order and also modifies the get_volumes method in order
    to return the device associated to each volume.
* Mon Nov 28 2016
  - Allow <extension> section for custom plugins
    For the use case to add additional image description information
    an extension section exists which allows to add custom section
    and attributes. Custom XML information must be connected to a
    namespace in order to avoid conflicts with the existing
    structure. The following example shows how to place additional
    XML information:
    <extension xmlns:my_plugin="">
    <my_plugin:title name="cool stuff"/>
* Fri Nov 25 2016
  - Fixed expansion of msdos disks
    If the target disk size is beyond 2TB it can't be expanded to
    the full size if the msdos partition table layout is in use.
    Because of this the disk expansion will be limited to the
    allowed maximum for the msdos partition table type which is
    at 2TB. This fixes bnc#1010966
* Thu Nov 24 2016
  - Bump version: 8.26.0 → 8.26.1
* Thu Nov 24 2016
  - Fixup of string + operator vs. join use
* Thu Nov 24 2016
  - Fixed setup_disk_image_config in bootloader setup
    The parameter for the uuid is not enough to handle all
    supported disk geometries. If the disk has an extra boot
    partition the bootloader setup must read the boot data
    from the boot partition but must set the root for the
    kernel cmdline to the root partition. Therefore the
    interface needs to change and must provide both the
    boot_uuid and the root_uuid in oder to allow the method
    to setup the correct values
* Thu Nov 24 2016
  - Parse arch attribute as a comma separated list
    This commit ensure that the arch attribute of each package section
    is parsed as a comma separated list. This way, as in previous kiwi
    versions, each package might be suitable for one or more specified
* Thu Nov 24 2016
  - Fixup kernel name setup in disk builder
    The Kernel instance is the only correct place to ask
    for the kernel name. This class has the responsibility
    to know information about the selected kernel. The
    additional arch based assumption on the kernel name
    in the disk builder were wrong. This fixes bnc#1011936
* Tue Nov 22 2016
  - Fixed typo in solver api documentation
* Tue Nov 22 2016
  - Bump version: 8.25.5 → 8.26.0
* Mon Nov 21 2016
  - No more hard links in result bundle
    This commit changes the copy command of the result bundle task. Now
    instead of creating hardlinks a relugar copy is performed. This way
    we ensure that the bundled files will not be modified by
    overwritting a linked file.
* Mon Nov 21 2016
  - Documentation workflow review
* Mon Nov 21 2016
  - The Sat solver class - an example
    The Sat solver class can be used to run a solver operation
    over a list of packages and/or patterns in order to receive
    a dependency solved list of all required packages according
    to the request. In order to do that a set of repositories
    is required which provides the package metadata and their
    requirements. The following is an example how to use the
    Sat class in your application:
    from kiwi.solver.sat import Sat
    from kiwi.system.uri import Uri
    from kiwi.solver.repository import SolverRepository
    solver = Sat()
    SolverRepository(Uri('obs://leap/42.2/repo/oss', 'yast2'))
* Mon Nov 21 2016
  - Fixup code smell for kernel name list
    Iterating over only one list item doesn't need a loop
* Mon Nov 21 2016
  - Fixup style to be more pythonic
* Fri Nov 18 2016
  - Fixed release network using ip tool
    Apply the cidr fix from setupNic and introduce a new method
    called deleteNic which replaces the wrong ip call from the
    releaseNetwork method. Fixes bnc#1003091
* Fri Nov 18 2016
  - KIWI workflow documentation
    This commit ports the workflow documentation from previous KIWI
    version and also adds a sections for listing the boot parameters
    configurable in the Kernel command line.
* Fri Nov 18 2016
  - Fixed kernel name lookup
    Complete the list of kernel names for the lookup. Normally
    the kernel package provides a symlink to the actual kernel
    image file. However if the link does not exist we extend the
    search to a collection of names for possible kernel images.
    The new list now also covers kernel names as used for arm
    Along with the change this patch also provides an option to
    raise an exception if the kernel lookup did not find any
    kernel, which is used for the get_kernel() request in the
    dracut initrd system setup where it is mandatory to find
    a kernel image.
    This fixes bnc#1010874
* Thu Nov 17 2016
  - Added Sat solver class
    Added implementation for Solver class based on the SUSE
    libsolv C library and the solv python binding
* Thu Nov 17 2016
  - Bump version: 8.25.4 → 8.25.5
* Thu Nov 17 2016
  - Fixup lease time in setupNetworkWicked
    The default lease time with 300s used by wicked is relatively
    short and different from the default lease time of the former
    dhcpcd. This change causes wicked to use a lease time of 3600s
    This is related to bnc#1003091
* Thu Nov 17 2016
  - Fixup default behavior of releaseNetwork
    If no tool was found to communicate with the dhcp server
    in order to free the lease the method did nothing. However
    it should at least bring down the network. This is
    related to bnc#1003091
* Wed Nov 16 2016
  - Bump version: 8.25.3 → 8.25.4
* Wed Nov 16 2016
  - Fixup get_volumes for lvm manager
    The method also returned the root volume in the list of
    volumes but it should only return a list of volumes
    excluding root volume
* Wed Nov 16 2016
  - Fixup setupNic for address information in cidr
    Ignore netmask if address is already in cidr format
* Wed Nov 16 2016
  - Bump version: 8.25.2 → 8.25.3
* Tue Nov 15 2016
  - Fixup btrfs property setup
    The readonly property is set on the filesystem toplevel.
    kiwi has set the toplevel before any property is set.
* Tue Nov 15 2016
  - vhdfixed images result compression
    This commit adds compression to the Result instance of the vhdfixed
    disk. This concrete format is not compressed or dynamic, so that,
    it makes sense compress them. Also this was the behavior in previous
    kiwi versions.
* Tue Nov 15 2016
  - Replace tabs with spaces
* Tue Nov 15 2016
  - Fixup handling for root_is_readonly_snapshot
    The information was not passed to the VolumeManager instance
* Tue Nov 15 2016
  - Fixup mount_volumes in VolumeManagerBtrfs
    It is required to mount the toplevel btrfs filesystem if
    not already mounted, prior to mounting the subvolumes
* Tue Nov 15 2016
  - Fixed busy mount state
    Make sure subvolumes are umounted first. This prevents a
    busy state in a partition setup with an extra boot
* Mon Nov 14 2016
  - Bump version: 8.25.1 → 8.25.2
* Mon Nov 14 2016
  - Fixup creation of etc/default/grub config file
    Only create the file if the base directory structure
    in etc/default exists.
* Sun Nov 13 2016
  - Remove empty line too much
* Sun Nov 13 2016
  - Implement loading of snapshots and fix snapshot menu layout.
    If you want to boot an old snapshot, but not to do a rollback,
    we need to tell the kernel which snapshot to use. This patch
    also fixes the broken layout of the grub snapshot menu.
* Sat Nov 12 2016
  - Move source of grub-snapshot.cfg to the right position
    grub-snapshot.cfg should not be sourced at the begining, but
    at the end of grub.cfg. Else with creating the first snapshot
    this entry is getting the default boot target and the system
    does not boot automatically anymore.
* Fri Nov 11 2016
  - Fixup netboot code for multipath boot device
    If the root disk in a netboot deployment is a multipath device
    we have to make sure the multipathd is started and the boot
    device is mapped to the wwn
* Thu Nov 10 2016
  - Bump version: 8.25.0 → 8.25.1
* Thu Nov 10 2016
  - Update doc string for download_from_repository
    The doc string for this method contained a mime string
    which is spuriously validated by the sphinx url checker.
    This commit rewords the text in a way that the checker
    is happy again
* Thu Nov 10 2016
  - Bump version: 8.24.10 → 8.25.0
* Thu Nov 10 2016
  - Do not delete all repositories if there aren't repositories to import (#191)
    This commit adds a tester method to check if there is any
    repository marked as imageinclude. The method is used to
    execute import_repositories_marked_as_imageinclude
    method only when it is actually needed.
* Wed Nov 09 2016
  - grub.cfg: Fixes for btrfs as rootfs
    This addresses the following issues
    * An image based on btrfs using the entire boot as a subvolume
      causes grub to be unable to find its config file. Thus kiwi
      now raises an exception in this situation
    * Don't prefix the bootpath with the snapshot path if the
      btrfs root is placed in a snapshot. Instead the file
      etc/default/grub must be written/updated with the
      SUSE_BTRFS_SNAPSHOT_BOOTING variable set to true. Once
      this is done the bootpath is consistently set to /boot
      no matter which snapshot is active
* Wed Nov 09 2016
  - grub.cfg: Source grub-snapshot.cfg if present
    Add a lookup for /.snapshots/grub-snapshot.cfg to the generated
    grub.cfg. The file is shell sourced if it exists
* Wed Nov 09 2016
  - No need to mock Path.which
    There is no need to mock Path.which as isoinfo binary from the
    platform is needed to run the test, so better let the system look
    for it, note that the binray can be located in the alternate
    location (/usr/lib/genisoimage/) which is not part of the PATH.
    In that particular case the iso_test would fail if we mock
* Tue Nov 08 2016
  - Updated system size calculations test
* Tue Nov 08 2016
  - Updated test for vhd-fixed subformat type
* Tue Nov 08 2016
  - Increase the default image size for XFS filesystems
    When no size is specified in type section the resulting image size
    is calculated using the size of the whole build-root increased by
    an empiric factor. Some tests revealed that this factor was not
    enough for XFS filesystems. The empiric factor has been increased.
    This commit fixes #186
* Tue Nov 08 2016
  - vhd-fixed name corrected in subformat init class
    This commit reverts the previous one and it applies the name change
    to the subformat class initializer. This way the schema is not
    altered and we keep compatibility with previous description files.
* Tue Nov 08 2016
  - vhdfixed format naming inconsistency
    vhdfixed storage format name was not updated according its real
    name in the kiwi schema, making it impossible to build any vhdfixed
    image. The schema used to expect 'vhd-fixed', however, internally,
    the code was expecting 'vhdfixed'. The schema has been updated.
    This commit fixes #184
* Tue Nov 08 2016
  - Implemented SolverRepositoryRpmDir
    Add support for local rpm-dir repositories
* Tue Nov 08 2016
  - ActivateImage links correction
    Loading the iso image into a read-only ramdisk caused some issues
    due to the activatImage method cp commands. With this commit the
    symlinks are consistent during the preinit phase and also before
    running the cp command it is tested we are not in a read-only
    This commit is a port form openSUSE/kiwi#613 PR
* Tue Nov 08 2016
  - Implemented SolverRepositoryRpmMd
    Add support for rpm-md repository types
* Mon Nov 07 2016
  - Fixup ip setup in setupNic
    The invocation of ip in setupNic was invalid. The way this
    was done causes the netmask to be set as broadcast address
    Related to bnc#1003091
* Mon Nov 07 2016
  - Implemented SolverRepositorySUSE
    Add support for SUSE online and media repository types
* Mon Nov 07 2016
  - Add repo_type info to Uri class
    This allows to eliminate the repo_type from the paramter list
    of the SolverRepository class, which then only needs an instance
    of Uri
* Sun Nov 06 2016
  - Implement SolverRepositoryBase
    Base class and interface for building a SAT solvable from
    a given repository
* Fri Nov 04 2016
  - Added API doc hook for solver path
* Fri Nov 04 2016
  - Bump version: 8.24.9 → 8.24.10
* Fri Nov 04 2016
  - Delete sphinxcontrib-programoutput setup
    Deleted it from virtualenv development requirements and
    from the sphinx configuration file
* Fri Nov 04 2016
  - Delete use of sphinxcontrib-programoutput
    The developers of this sphinx extension decided to delete the
    module on pip and also the source from git... it's dead. Thus
    I replaced the dynamic usage output in the manual pages with
    the static version
* Fri Nov 04 2016
  - Initial structure to support SAT solvables
    A SAT solvable can be used together with python-solv to implement
    performant package solving tasks. This is the initial structure
    to allow the creation of such solvable files from specified
    repositories. We will support the repo types yast2, rpm-md and
    rpm-dir in the first place.
* Thu Nov 03 2016
  - updateOtherDeviceFstab did not get the fstab location parameter
    This is port from the kiwi v7 code base openSUSE/kiwi#610
* Wed Nov 02 2016
  - Load the default unicode font in grub2
    This commit fixes #179. The default font was never loaded,
    the loadfont call for the default was missing.
* Wed Nov 02 2016
  - Bump version: 8.24.8 → 8.24.9
* Wed Nov 02 2016
  - Fixed waitForStorageDevice
    Value for storage_size was not really used
* Wed Nov 02 2016
  - Bump version: 8.24.7 → 8.24.8
* Wed Nov 02 2016
  - Make sure kiwiserver/kiwiservertype is used
    If kiwiserver and/or kiwiservertype is specified on the
    kernel commandline they should take over precedence for
    up- and download of image files compared to the host
    setup in the IMAGE variable.
* Wed Nov 02 2016
  - Don't mix python module requirements
    The tox setup mixes the deps modules depending on the
    tox target with either
    or fixed deps lists in tox.ini. This change clean up
    the module dependencies for development targets to
    be taken from exclusively
* Tue Nov 01 2016
  - Update travis runtime requirements
    Installing python modules from source via pip requires git
* Tue Nov 01 2016
  - Bump version: 8.24.6 → 8.24.7
* Tue Nov 01 2016
  - sphinxcontrib-programoutput no longer on pypi
    Use the version from git directly to build the documentation
    In the long we should find an alternative for this sphinx
* Mon Oct 31 2016
  - Fixup root init with existing host cache
    Creating a new root init with a shared location which already
    provides directories of the system failed on init of those
    directories. Only create the not yet existing directories
* Mon Oct 31 2016
  - Fixup the wicked thing again
* Mon Oct 31 2016
  - Put setupNetworkWicked in line with former dhcpcd
    The way setupNetworkWicked implements the dhcp discovery was
    incomplete. This Fixes bnc#1003091
* Fri Oct 28 2016
  - Fixup assembling of mdraid array
    when udev discovers an mdraid array it partially starts the array.
    That is interfering with the mdadm --assemble call by kiwi which
    leads to a busy state and an array in inactive state. Therefore
    the method should wait until the raid array really exists no
    matter if the assembling is started by udev or kiwi's mdadm call.
    In addition if the array got assembled but is incomplete because
    devices are missing or the timout is fired, an additional call to
    start any array that has been partially assembled is required.
    pxeRaidAssemble will throw an exception if after this call no
    md device with a size > 0 will show up after a timeout. This
    Fixes bnc#1000742
* Fri Oct 28 2016
  - Fixup waitForStorageDevice
    The function will return success if the size of the storage
    device can be obtained and is greater than zero. The pure
    success on reading from the block layer is not enough. In
    order to actually work with the device it must provide a
    size > 0. Related to bnc#1000742
* Thu Oct 27 2016
  - Bump version: 8.24.5 → 8.24.6
* Thu Oct 27 2016
  - Fixup initial directory creation for new root
    During testing of alternative cache locations an init
    problem with the var/ directory was observed
* Thu Oct 27 2016
  - Do not allow imageinclude for images build in obs
    Fixes #178
* Wed Oct 26 2016
  - SystemPrepare instance delete before runnig SystemSetup
    This commit fixes#175, now multiple profiles in OBS are possible using
    kiwi boot initrd.
* Tue Oct 25 2016
  - Use docopt's default value feature for cache dir
* Tue Oct 25 2016
  - Cleanup unit tests using sys.argv
    The tests should restore to the default argv option set
    as provided by the test_helper
* Tue Oct 25 2016
  - Update manual page
    Include information for new --shared-cache-dir option
* Tue Oct 25 2016
  - Added global option --shared-cache-dir
    The option allows to specify an alternative shared host_to_image
    cache directory. The default location is /var/cache/kiwi.
    Fixes #92
* Tue Oct 25 2016
  - Fixed a couple of constraints
* Tue Oct 25 2016
  - Redo of with updated generateDS
* Tue Oct 25 2016
  - Initialize the systemd machine ID on first boot
    The systemd machine id is considered to be a unique information
    Thus it is required to initialize it on first boot of the image.
    If the image uses the kiwi boot code (initrd) this action is
    performed and and Fixes #169
* Mon Oct 24 2016
  - Bump version: 8.24.4 → 8.24.5
* Mon Oct 24 2016
  - Some tests slightly modified in order to improve coverage
    This commit improves some example kiwi files and tests in order
    to achieve a 100% code coverage.
* Mon Oct 24 2016
  - Corrections on test kiwi description files
    Some attributes needed to be changed in the test xmls. With this
    commit all the description files are consistent with the new co-
    occurrence constraints.
* Fri Oct 21 2016
  - Co-occurrence constraints included in the schema
    Constraints for pxe, iso, vmx, oem and docker image types have
    been included.
* Fri Oct 21 2016
  - config.partids only required for kiwi initrd
    If dracut is used as initrd system an unused config.partids
    file is generated. The partition id information is only used
    by kiwi boot code not by dracut boot code. Related to
* Thu Oct 20 2016
  - Bump version: 8.24.3 → 8.24.4
* Thu Oct 20 2016
  - Make sure dracut initrd is copied correctly
* Thu Oct 20 2016
  - Fixed a rounding error in partedMBToCylinder method
    bc truncates number of cylinders to zero decimal places, which results
    in a partition that is slightly smaller than the requested size. Add one
    cylinder to compensate.
* Thu Oct 20 2016
  - Integrating Schematron syntax in schema
    Using Schematron syntax in schema co-occurrence constraints can
    be easily defined. This commit provides the schematron integration.
* Wed Oct 19 2016
  - Bump version: 8.24.2 → 8.24.3
* Wed Oct 19 2016
  - Write fstab to kiwi boot image only
    For the dracut initrd system the call happens in the system
    root tree which already provides the fstab data
* Wed Oct 19 2016
  - Bump version: 8.24.1 → 8.24.2
* Wed Oct 19 2016
  - Dereference boot arch symlinks
* Wed Oct 19 2016
  - Bump version: 8.24.0 → 8.24.1
* Wed Oct 19 2016
  - Fixed typo in build Makefile target
* Wed Oct 19 2016
  - Bump version: 8.23.0 → 8.24.0
* Wed Oct 19 2016
  - Use format method for messages in image_resize
    There are more places where this cleanup from %x format
    attributes to the format() method is required. Here it is
    done in the scope of the image resize task
* Wed Oct 19 2016
  - Bump version: 8.22.0 → 8.23.0
* Wed Oct 19 2016
  - Fixed custom install target
    Make install method aware of --single-version-externally-managed
    This option is passed to the call by pip if not installed as
* Wed Oct 19 2016
  - Added setuptools to development requirements
* Tue Oct 18 2016
  - Delete travis pypi deployment
    After weeks of try and error, this simply does not work for me
    Manual deployment via make pypi and a local account works fine
    Maybe this can be solved in the future but for now I can live
    with a manual step
* Tue Oct 18 2016
  - Package kiwi/boot/arch into sub archive
    The sdist target runs into an infinite loop if installed via
    pip. It seems the symlink files below boot/arch confuses
* Tue Oct 18 2016
  - Bump version: 8.21.1 → 8.22.0
* Tue Oct 18 2016
  - Revert "pycparser 2.15 does not play well with xattr"
    This reverts commit 428436988d1db1017adfb6e92dbc3235d54e06b3.
* Tue Oct 18 2016
  - Only resize disk format if required
    Only resize the disk format if the raw disk has been changed
    If the size of the raw disk is the same as the requested size
    just print a message to the user
* Tue Oct 18 2016
  - Simplify help call
* Tue Oct 18 2016
  - Smarter way to calculate bytes from a size unit
* Tue Oct 18 2016
  - Explicitly bool check for the service name option
    From docopt we expect a True/False value for the selected
    service name positional parameter. Thus the code should
    also make it clear what we expect
* Tue Oct 18 2016
  - Use format method instead of printf like style
* Tue Oct 18 2016
  - Update resize_raw_disk method
    Do not resize the disk if an attempt to resize to the same
    size was made. Do not fail in this situation but indicate
    via a bool return value if an action has happened(True)
    or not(False)
* Tue Oct 18 2016
  - Use latest version of pip for tox setup
* Tue Oct 18 2016
  - Revert "Fixup travis setup"
    This reverts commit ee9e633d78833d02a535e6f4d2ce775425082872.
* Tue Oct 18 2016
  - Revert "Fixup travis.yml"
    This reverts commit 1c80841e8c264ba1957e2ae6b53d2af2929479b0.
* Tue Oct 18 2016
  - Fixup travis.yml
    Make sure python-tox gets installed
* Tue Oct 18 2016
  - Fixup travis setup
    No need to install requirements, this is all done by tox
* Tue Oct 18 2016
  - pycparser 2.15 does not play well with xattr
    Use pycparser 2.14 in and virtual env requirements
* Tue Oct 18 2016
  - Fixed install target
    pip calls the install target but not the build target.
    For kiwi's tools this means they need to run the tools
    compilation if not already done prior to the installation
    of the tools
* Tue Oct 18 2016
  - Call dracut in system root tree
    Change BootImageDracut class to call dracut in the specified
    system root directory and not in a self prepared new root environment.
    dracut reads scripts and dracut module configurations from the
    installed system components, e.g kdump. Therefore calling it
    from an isolated runtime environment creates an initrd which is
    not matching the system components. Fixes bnc#1005246
* Mon Oct 17 2016
  - Added kiwi image resize command
    The image resize command allows to resize a disk image
    and its optional disk format to a new disk geometry
* Mon Oct 17 2016
  - Added manual page for image resize command
* Mon Oct 17 2016
  - Add raw format to subformat factory
* Mon Oct 17 2016
  - Allow ftp:// uri style for package repositories
* Mon Oct 17 2016
  - Add grub2-efi-modules in rhel boot descriptions
    This package provides the efi modules which are needed if
    a custom efi module is build by kiwi via grub2-mkimage
* Mon Oct 17 2016
  - Fixup doc string for target_removable attribute
    The default behaviour was not explained clear enough
* Sat Oct 15 2016
  - Added resize_raw_disk method in DiskFormatBase
    Allow to increase the disk geometry of a disk image file
    in order to create free space on this disk
* Thu Oct 13 2016
  - Handle target_removable in kiwi disk builder
* Thu Oct 13 2016
  - Handle target_removable in kiwi boot code
* Thu Oct 13 2016
  - Store kiwi_target_removable in profile env
* Thu Oct 13 2016
  - Added target_removable attribute
    Indicate if the target disk for oem images is deployed to a
    removable device e.g a USB stick or not. This only affects
    the EFI setup if requested and in the end avoids the creation
    of a custom boot menu entry in the firmware of the target
    machine on first boot. This is related to bnc#993130
* Thu Oct 13 2016
  - Use XML parser to test XML output for info.xml
* Thu Oct 13 2016
  - parenthesis in imports only for multi-line imports
* Thu Oct 13 2016
  - Delete unused textwrap import
* Thu Oct 13 2016
  - Move info.xml test data into its own file
* Thu Oct 13 2016
  - Fixup code smells per review
    Only import what is needed, concat strings by a join
* Thu Oct 13 2016
  - Create info.xml file for btrfs snapshot
    If the system is installed into a btrfs snapshot a metadata
    file called info.xml is created which is used by tools like
    snapper. Fixes bnc#1000117
* Wed Oct 12 2016
  - Cleanup use of cache location
* Tue Oct 11 2016
  - Updated hideSplash method
    hideSplash method now hides the splash image regardless of an active
    console is detected or not.
    This commit is port from openSUSE/kiwi#601
* Tue Oct 11 2016
  - Fixing wrong spaces
* Tue Oct 11 2016
  - Updated fetchFile method
    Now it makes sure the splash is hidden before showing any progress
    This commit is port from openSUSE/kiwi#601
* Tue Oct 11 2016
  - Bump version: 8.21.0 → 8.21.1
* Mon Oct 10 2016
  - Fixup wicked DNS data validation
    wicked provides DNS info in DNSSERVERS with a space as
    separator and not with a ',' as it was the case in dhcpcd
* Mon Oct 10 2016
  - Do not bundle the raw disk if a format is setup
    Only bundle the compressed version of the .raw disk image
    if no disk format like qcow2, vmdk, etc... is specified.
    Fixes #159
* Mon Oct 10 2016
  - Do not compress disk formats
    Stay compatible with the former version of kiwi and do not
    compress disk formats like qcow2, vmdk, etc... It also does
    not make much sense since the disk formats itself are using
    a compression algorithm. Fixes #159
* Mon Oct 10 2016
  - Support yum repository priorities
    yum normally installs the latest version of a package, regardless of
    which repository provides it. The yum-plugin-priorities provides a
    method to prefer a package from a repository with a higher priority.
    Fixes #153
* Fri Oct 07 2016
  - Bump version: 8.20.22 → 8.21.0
* Fri Oct 07 2016
  - Fix attributes_not_used helper script
    The script is used to check which parts of the XML schema
    are not used by the new (kiwi v8) version. The information
    is helpful to find missing or obsolete attribute handling
    in v8 vs. v7
* Thu Oct 06 2016
  - Modified few code lines to match landscape's quality standards
* Thu Oct 06 2016
  - Use tmpfs for write overlay in netboot via nbd/aoe
* Wed Oct 05 2016
  - Added support for multiple `--add-profile` options
* Wed Oct 05 2016
  - Added '--add-profile' option in compat mode
    This commit fixes #154. With this, the compatiblity mode accepts
    the `--add-profile` option which was present in previous kiwi
    versions and that is translated to `--profile` in the current
* Wed Oct 05 2016
  - Add set_property_readonly_root for volume manager
    The custom option root_is_readonly_snapshot is evaluated
    for the method set_property_readonly_root(). If set and
    the root filesystem has been installed into a btrfs snapshot
    the filesystem is turned into read-only mode
* Wed Oct 05 2016
  - Evaluate root_is_readonly_snapshot in disk builder
* Wed Oct 05 2016
  - Added btrfs_root_is_readonly_snapshot attribute
    The attribute allows to specify if the root filesystem should
    be set to read-only if it is created as a btrfs snapshot.
    The option only has an effect if a btrfs snapshot is used as
    root filesystem. Fixes bnc#1000080
* Sat Oct 01 2016
  - Bump version: 8.20.21 → 8.20.22
* Fri Sep 30 2016
  - Added test for -udf flag for genisoimage/mkisofs
* Fri Sep 30 2016
  - Added forcing UDF filesystem for large images
    Included -udf flag to force UDF filesystem usage
* Fri Sep 30 2016
  - Fixed secure boot setup for iso media
    Provide the shim loader and the shim signed grub loader in the
    required boot path. Normally this task is done by the shim-install
    tool. However, shim-install does not exist on all distributions
    and the script does not operate well in CD environments from which
    we generate live and/or install media. Thus shim-install is used
    if possible at install time of the bootloader because it requires
    access to the target block device. In any other case the kiwi
    fallback code applies
* Fri Sep 30 2016
  - Added support for mkisofs
    genisoimage and mkisofs tools are slightly different so this commit
    makes sure all flags are supported in both tools.
* Fri Sep 30 2016
  - Fixed hybrid setup for large ISO images
    The isohybrid tool uses fseek() to locate the bootloader files.
    That's unfortunately not 64-bit safe. In case of an ISO image
    bigger than 4G this leads to 32-bit offset issues. kiwi can
    workaround this problem by putting the bootloader files near
    the top of the iso image, which is done by a change in the
    sortfile of this commit
* Thu Sep 29 2016
  - Added rpm_excludedocs handling for yum
    rpm supports the --excludepath option. However, yum can not be
    configured to pass along options to rpm or the python interface
    it uses. Thus only a warning about excludedocs not being
    supported by kiwi for yum is issued. Fixes #133
* Thu Sep 29 2016
  - Added rpm_excludedocs handling for apt
    Setup the appropriate dpkg options to avoid the installation
    of manual pages and package documentation if rpm_excludedocs
    is set in the kiwi XML description. Related to #133
* Tue Sep 27 2016
  - Make sure netboot code populates kiwi_RootPart
    For disk based images the file config.partids is written and
    imported. However, for netboot stations a disk is optional
    and no partids information exists. In order to provide at
    least the partition number for the root partition on netboot
    stations with a disk, the kiwi_RootPart is exported from
    the provided client configuration file. Fixes bnc#1000194
* Tue Sep 27 2016
  - Bump version: 8.20.20 → 8.20.21
* Tue Sep 27 2016
  - Call grub2-install as chroot operation
    In addition to the chrooted call make sure all volumes from
    the volume manager (if used) are mounted at call time
* Tue Sep 27 2016
  - Fixup grub default module list
    The test module is a required module in any case
* Tue Sep 27 2016
  - Make sure fstab exists in initrd creation system
* Tue Sep 27 2016
  - Umount volumes prior to bootloader installation
* Mon Sep 26 2016
  - Bump version: 8.20.19 → 8.20.20
* Mon Sep 26 2016
  - Respect setup of devicepersistency for swap part
    If a swap boot partition is requested it should be added
    to the fstab file according to the device persistency
    setup or its uuid default
* Mon Sep 26 2016
  - Update schema documentation
* Mon Sep 26 2016
  - Bump version: 8.20.18 → 8.20.19
* Mon Sep 26 2016
  - Respect setup of devicepersistency for boot part
    If an extra boot partition is requested it should be added
    to the fstab file according to the device persistency setup
    or the default uuid persistency type
* Mon Sep 26 2016
  - Only sync .mod grub2 module files
    When syncing the grub2 modules to the boot directory only the
    .mod version of the module needs to be present
* Mon Sep 26 2016
  - Mount boot volumes on grub install
    If there are volumes below /boot they need to be mounted before
    grub2-install / shim-install is called in order to make sure all
    data is available in the volume
* Fri Sep 23 2016
  - Bump version: 8.20.17 → 8.20.18
* Fri Sep 23 2016
  - Make sure boot image dump is cleaned up
* Fri Sep 23 2016
  - Refactor DiskBuilder class
    The DiskBuilder class is able to build a disk its corresponding
    format and the installation image to install this disk by using
    the InstallImageBuilder. However all three tasks were handled
    in a row which lead to the problem that resources like active
    mount processes were still open when e.g the disk format is
    created. The race conditions produced here lead to an undefined
    state of the resulting disk format and/or install image. In
    order to avoid this the DiskBuilder class has been refactored
    in a way that each tasks is an atomic operation which is
    freeing its resources after success
* Thu Sep 22 2016
  - Delete root, boot, efi fstab setup from kiwi boot
    The kiwi boot code was responsible for setting up the contents
    of the fstab file on first boot. However the build process now
    provides an fstab with the generic label or uuid based fstab
    entries which allows to remove that part from the kiwi boot
* Thu Sep 22 2016
  - Add root, boot and efi partitions to fstab
    Make sure the above partitions are added to the generic fstab
    with their label or uuid at build time
* Thu Sep 22 2016
  - Added BlockID class
    Class to provide support for retrieving block device metadata
* Thu Sep 22 2016
  - Use BlockID class for block operations
* Thu Sep 22 2016
  - Fixed fstab entries for btrfs subvolumes
    mount options must be part of the subvol information which
    itself is also a mount option
* Thu Sep 22 2016
  - Corrected DEVICE_TIMEOUT variable validation
    Now it uses regex in order to validate the variable is an integer
* Wed Sep 21 2016
  - Bump version: 8.20.16 → 8.20.17
* Wed Sep 21 2016
  - Normalize mount path in get_fstab for lvm volumes
* Wed Sep 21 2016
  - Fixed get_fstab parameter order for lvm
* Wed Sep 21 2016
  - Bump version: 8.20.15 → 8.20.16
* Wed Sep 21 2016
  - Delete fstab setup for volumes from kiwi boot code
    For persistent devices like LVM volumes or btrfs sub volumes
    the fstab setup can be done at build time. Fixes #142
* Wed Sep 21 2016
  - Custom device timeout variable added
    This commit patches the issue bnc#992992. Now DEVICE_TIMEOUT
    variable can be used in order to set the device waiting timeout
    in watForStorageDevice function. Must be a numeric value expressed
    in seconds.
* Wed Sep 21 2016
  - Implement get_fstab for btrfs volume management
* Wed Sep 21 2016
  - Fixed btrfs mount_volumes if root is snapshot
    The provided subvolume name contained the snapshot path which
    is invalid. In addition nested volumes e.g /var/cache were
    reduced to /cache which is wrong
* Wed Sep 21 2016
  - Cleanup unit test
    Use only one instance of context manager for all tests
* Tue Sep 20 2016
  - Create fstab entries for persistent devices
    Instead of creating the fstab at boot time, those entries which
    are generic and not depending on an unknown device name can be
    created as part of the image building process.
* Tue Sep 20 2016
  - Implement get_fstab for LVM volume management
* Tue Sep 20 2016
  - Added get_fstab to volume manager interface
    The volume manager interface should allow to provide
    fstab entries for the volumes it manages
* Tue Sep 20 2016
  - Bump version: 8.20.14 → 8.20.15
* Tue Sep 20 2016
  - Fixed evaluation of Dialog return value
    The return code from the Dialog boot code was evaluated after
    other shell code was executed. Thus the return code from the
    call in question was lost and misinterpreted
* Tue Sep 20 2016
  - Make sure volumes are mounted prior to install
* Tue Sep 20 2016
  - Fixup invalid character in bash source
* Tue Sep 20 2016
  - Bump version: 8.20.13 → 8.20.14
* Mon Sep 19 2016
  - Fixup chroot adaption for caller environment
    The ZYPP_CONF path is provided as part of the caller environment
    and not as a zypper caller parameter. However the path adaptions
    when calls happens chrooted was only done for the commandline
    arguments but not for the command environment. This patch also
    adapts the environment, related to Issue #133
* Mon Sep 19 2016
  - Make ifplugstatus available in boot images
    Added ifplugd to kiwi oem|netboot images for leap and tumbleweed
* Mon Sep 19 2016
  - Prefer ifplugstatus for link up check
    Use ifplugstatus if present to check if the network link
    is up. Fallback is the old ip based method
* Fri Sep 16 2016
  - Fixup theme setup in grub2 config template
    Only set the theme if the .txt file describing it exists
* Thu Sep 15 2016
  - Fixup yum group install
    yum groups can contain spaces, thus quoting is required
    Fixes #138
* Thu Sep 15 2016
  - Bump version: 8.20.12 → 8.20.13
* Thu Sep 15 2016
  - Follow up fix for setupNetworkWicked
    IP address information from wicked is imported twice.
    However the plain IPv4 address validation happened only
    on the first import. Fixes bnc#992989
* Tue Sep 13 2016
  - Fixed pxe install archive md5 file
    The md5 sum must be created from the uncompressed version
    of the disk image
* Tue Sep 13 2016
  - Added missing trigger file for oem pxe install
    The config.vmxsystem trigger file was missing in the oem
    install initrd used when deploying a disk image over pxe
* Mon Sep 12 2016
  - Bump version: 8.20.11 → 8.20.12
* Mon Sep 12 2016
  - Integrate schema documentation into doc process
    The schema documentation is auto generated via the schema_parser
    helper tool. The tox doc target now also generates schema docs
    Fixes #53
* Mon Sep 12 2016
  - Schema docs generation helper
    A simple script to parse the RelaxNG schema that grabs relevant
    information in order to produce autogenerated documentation from
    the schema inline comments.
* Mon Sep 12 2016
  - Added handling for rpm-excludedocs for zypper
    In zypper zypp.conf can be setup to prevent the installation
    of %doc marked items from rpm packages. The <rpm-excludedocs>
    section in the kiwi XML description is used to provide this
    functionality. So far this feature is only implemented for
    zypper. References #133
* Sun Sep 11 2016
  - Make sure EFI modules are provided in uefi mode
    For EFI secure boot (uefi) the grub2 efi modules were not
    copied to the target directory. shim-install normally does
    that by invoking grub2-install. However shim-install does
    not allow to call grub2-install with the required parameters
    as needed for loop (image) based targets. Thus kiwi calls
    shim-install but skips grub2-install and takes care to
    provide the needed EFI modules.
* Sun Sep 11 2016
  - Revert WaitForStorageDevice patch
    The logic to setup a wait timeout by asking a device property
    from a device which does not yet exist raises a chicken and egg
* Sun Sep 11 2016
  - Fixed message typo (bnc#996255)
* Wed Sep 07 2016
  - travis: Update pypi password
    Next try to get the automatic deployment on pypi fixed.
* Thu Aug 25 2016
  - Move to tar.gz as sdist target
    PyPI is planning to support only .tar.gz in the near future.
    See This Fixes #132
* Thu Aug 25 2016
  - Activate partition using parted instead of sfdisk
    sfdisk changes their caller semantics incompatible. Therefore
    we move to a tool which is still stable in the caller options
    Fixes #129
* Thu Aug 25 2016
  - Update baseStripRPM
    Method is a noop and only exists for compatibility
    kiwi handles the deletion of packages in the core
    builder code
* Thu Aug 25 2016
  - Bump version: 8.20.10 → 8.20.11
* Thu Aug 25 2016
  - Revert "Update doc string for"
    docopt strings are not allowed to be interrupted by a newline
    This reverts commit b1b92ed830820530bfd7bdc5256525f3dfc01a4a.
* Thu Aug 25 2016
  - Bump version: 8.20.9 → 8.20.10
* Thu Aug 25 2016
  - Use os.linesep
    Python's os module provides a portable version for the line
    separator which should be used whenever possible. Fixes #130
* Thu Aug 25 2016
  - Bump version: 8.20.8 → 8.20.9
* Thu Aug 25 2016
  - Fixed custom entries in vmdk machine config
    Each custom entry must be written in a separate line
* Wed Aug 24 2016
  - Update API documentation
    Recall sphinx-apidoc and update the generated result markup
* Wed Aug 24 2016
  - Update doc string for
    Make sphinx happy
* Wed Aug 24 2016
  - travis: Update pypi password
    Next try to get the automatic deployment on pypi fixed.
* Wed Aug 24 2016
  - Bump version: 8.20.7 → 8.20.8
* Tue Aug 23 2016
  - Fixup get_build_type_vmconfig_entries
    Make sure we can rely on a list return even if no
    machine section exists at all.
* Tue Aug 23 2016
  - Add evaluation of machine's vmconfig_entry
    As part of the machine section it is possible to setup a custom
    entry which is stored in the machine configuration file. The
    evaluation of such an entry for the vmdk (.vmx) config file
    was still missing. This Fixes #122
* Tue Aug 23 2016
  - travis: Next try to fix automatic pypi deployment
    Also the travis command which added the pypi deployment part formatted
    the yaml file.
* Mon Aug 22 2016
  - Fixed bootloader configuration
    custom kernel parameters should be added to
    Fixes bnc#994910
* Fri Aug 19 2016
  - Use str.format for int to string convertion
* Fri Aug 19 2016
  - Setup tests corrected #124
* Fri Aug 19 2016
  - Fixes #124
* Fri Aug 19 2016
  - Rearranged waitForStorageDevice code comments
* Fri Aug 19 2016
  - Added a case statement for transport types
* Fri Aug 19 2016
  - Removed some backquotes in favour of $()
* Thu Aug 18 2016
  - Bump version: 8.20.6 → 8.20.7
* Thu Aug 18 2016
  - Make repository an optional element
    So far one repository was mandatory in the XML description.
    However, this is not required because all repositories can
    be specified on the commandline
* Thu Aug 18 2016
  - Added quotes to protect against spaces
* Thu Aug 18 2016
  - Added getDeviceTransportType method
    The method gets the transport type of the given device.
    WaitForStorageDevice reacts according to the transport type
    by having a shorter timeout in case the device is a usb.
* Thu Aug 18 2016
  - WaitForStorageDevice patch
    The function has been modified in order to distinguish a shorter
    timeout if the device is a usb.
* Wed Aug 17 2016
  - Bump version: 8.20.5 → 8.20.6
* Wed Aug 17 2016
  - Update compat options for create step
    The --ignore-repos, --set-repo and --add-repo options are allowed to
    be specified for compatibility reasons if --create is specified in
    the compat commandline. However, they are not used in the next
    generation kiwi create step because the repo information is persistently
    stored after the prepare step has finished, which is not the case for
    the legacy kiwi version
* Wed Aug 17 2016
  - Support --ignore-repos in compat mode
* Wed Aug 17 2016
  - Added --ignore-repos for build and prepare tasks
    The option allows to ignore all repos configured in the
    XML description. This allows to specify a complete set
    of repositories via the commandline
* Tue Aug 16 2016
  - Bump version: 8.20.4 → 8.20.5
* Tue Aug 16 2016
  - Preserve timestamp on grub2-install copy
    In order to workaround the bug in shim-install which
    unnecessarily calls grub2-install we replace the binary
    by a noop before calling shim-install. However all file
    attributes of the grub2-install binary, timestamp, modes,
    etc should stay untouched (bnc#993825)
* Mon Aug 15 2016
  - Update documentation
    Move information about legacy kiwi in its own chapter
* Fri Aug 12 2016
  - Bump version: 8.20.3 → 8.20.4
* Fri Aug 12 2016
  - Update documentation
    Prevent to use non public url references
* Fri Aug 12 2016
  - Bump version: 8.20.2 → 8.20.3
* Fri Aug 12 2016
  - Fixup vmdk header update
    due to the wrong file open mode the result image was
    truncated on update of the vm tools version
* Fri Aug 12 2016
  - Bump version: 8.20.1 → 8.20.2
* Fri Aug 12 2016
  - Update documentation
    delete broken links to online ssh key blogs
* Fri Aug 12 2016
  - Bump version: 8.20.0 → 8.20.1
* Fri Aug 12 2016
  - Binary opened file should receive bytes
    Avoids TypeError: 'str' does not support the buffer interface
    for the vmdk header update
* Thu Aug 11 2016
  - Fixed setupNetworkWicked
    IP address information from wicked dhcp reply consists out of
    two parts but we are only interested in the plain IPv4 address
    information at this point. Fixes bnc#992989
* Thu Aug 11 2016
  - Make sure DHCPCHADDR is upercase
    Fixes bnc#992988
* Thu Aug 11 2016
  - Delete obsolete <except> section
    The <except> section was formerly used as part of the <split>
    section. kiwi no longer supports static split images in favour
    of overlay systems based on e.g overlayfs. Fixes #120
* Thu Aug 11 2016
  - Better logging if Path.which doesn't find the file
* Wed Aug 10 2016
  - Added docstring for KiwiDescriptionConflict
* Wed Aug 10 2016
  - Fixup if called with raise_on_error set to False
* Wed Aug 10 2016
  - indentation fix
* Wed Aug 10 2016
  - Updated logging message
    Updated logging formating in a way that landscape does not complain
* Wed Aug 10 2016
  - Updated Command to use Path.which and now make use of Path.which in order
    to test if the command is available or not. Also Path.which has
    been extended in order to support custom environments and to be
    able to test file permissions (read. write, execute)
* Tue Aug 09 2016
  - protect systemd-detect-virt
    Protect systemd-detect-virt from being deleted in the kiwi initrd
* Fri Aug 05 2016
  - Command validation
    This commit includes a validation in and
    in order to verify the existance of the command before running it.
    It case it is not found in the specified environment it raises a
    KiwiCommandNotFound Exception.
* Fri Aug 05 2016
  - Detailed schema validation report
    This commit adds the execution of a jing process if the validation
    fails, that way the user has more information about what is
    actually failing during the validation process. If jing command
    is not found, it just produces an info message to warn the user
    and kiwi finalizes as expected.
* Thu Aug 04 2016
  - Workaround Fix for pypi travis deployment
    Use all_branches: true, as we do only tag with bumpversion for
    a release this workaround works for us. For reference see
* Wed Aug 03 2016
  - Bump version: 8.19.6 → 8.20.0
* Wed Aug 03 2016
  - Fixed suseSetupProduct
    Avoid shell complaining about binary operator
* Wed Aug 03 2016
  - Fixed baseUpdateSysConfig
    Check if referenced config file exists
* Wed Aug 03 2016
  - Delete obsolete use of SuSEconfig
    SuSEconfig was a tool long time ago and does not exist anymore
* Wed Aug 03 2016
  - Delete obsolete sysV init boot code
    Traces of chkconfig, inittab, etc/init.d are gone now
* Wed Aug 03 2016
  - Fixed suseSetupProduct
    Fixed shell variable evaluation syntax
* Wed Aug 03 2016
  - Less complex user, group traversal
* Wed Aug 03 2016
  - Simplified example config file
* Wed Aug 03 2016
  - Updated get_users and get_user_groups methods
    Get_users method has been updated in order to be able to append the
    groups attribute when a user is defined in multiple <users> sections in
    the description file. Appart from groups, all other user attributes
    are ignored if the user was already processed when parsing the description
    Get_users_groups method has been also updated so it returns a list of
    groups with unique values, keeping the description file order.
* Tue Aug 02 2016
  - Updated xml_state
    The changes here modify the method get_users in xml_state in order
    to provide a simple list of users instead of nested lists. Also a new
    method to get the groups for a given user has been included in
    xml_state. This is done in order to slim down and facilitate the
    code in kiwi/system/ This way users and groups can be handled
    in more natural way.
* Mon Aug 01 2016
  - Rebuild RNG schema and parser for 6.4
* Mon Aug 01 2016
  - Auto validate XML descriptions for schema 6.4
* Mon Aug 01 2016
  - Added schema conversion convert63to64.xsl
* Mon Aug 01 2016
  - Bump kiwi schema version 6.3 -> 6.4
* Mon Aug 01 2016
  - Fixed 6.2 to 6.3 XSL conversion
    Deletion of attributes of the same section must be
    handled in one iteration
* Wed Jul 27 2016
  - Updated the user schema layout
    Now each user item may or may not have a groups attribute. The
    groups attribute is a comma separated list of group names. If
    present the first group name will be the login or primary group,
    if not present, the underlying toolchain will assign the default
    login group for that user.
* Tue Jul 26 2016
  - New generated schema and parser
* Tue Jul 26 2016
  - Some corrections needed after rebuilding schema and parser
* Tue Jul 26 2016
  - Update true/false handling of text nodes
    The latest version of generateDS handles <section>true|false</section>
    text values in a way that it returns a boolean python type instead
    of the text string. With this change the kiwi code has to be adapted
    at the level of writing the shell profile which needs the string
    value of boolean information
* Tue Jul 26 2016
  - Regenerate data structures
    Regenerate xml_parse with latest version of generateDS.
    The call works in the python2.7 tox virtual environment
    as part of the following make target:
    $ make kiwi/schema/kiwi.rng
* Tue Jul 26 2016
  - Switch to latest version of generateDS
    Data Structures are auto generated from the XML schema.
    So far the development environment has requested an older
    version of generateDS which will go out of service soon
* Tue Jul 26 2016
  - fixing user schema layout
* Tue Jul 26 2016
  - Fixed typo in boot headers OpenSuSE vs. openSUSE
* Tue Jul 26 2016
  - Fixed typo in translation OpenSUSE vs. openSUSE
* Mon Jul 25 2016
  - Make sure awk is available in oemboot
* Mon Jul 25 2016
  - Explain why bytes type is redefined
    In python2 bytes is string which is different from the bytes
    type in python3. The bytes type from the builtins generalizes
    this type to be bytes always. However the redefinition of the
    bytes type is marked as Smell in landscape. Thus the code
    should at least inform why this is done
* Mon Jul 25 2016
  - Use six.Iterator instead of global object builtin
    The use of six.Iterator as base class for the CommandIterator
    seems more clear and explicit compared to the global object
    type overwritten by the builtins import. Fixes Smell reported
    by landscape
* Fri Jul 22 2016
  - Added kiwi/archive/tar class description
* Fri Jul 22 2016
  - extending kiwi/archive/tar
* Thu Jul 21 2016
  - Fixing gce format build
    The patch is two fold, first it fixes the name of the raw disk
    when it is copied as disk.raw. Second it fixes the content list
    of the tarball to be dynamicly build instead of a static allocation.
    Reason for this change is that the list of files depends on the
    XML description whether or not a gce disk tag is configured.
    Fixes #113
* Wed Jul 20 2016
  - Fixes #111: Included support for vdi format
* Mon Jul 18 2016
  - Bump version: 8.19.5 → 8.19.6
* Mon Jul 18 2016
  - Fixed changelog generator
* Mon Jul 18 2016
  - Don't ask to start recovery in unattended mode
    If oem-recovery is setup in the XML description along with
    oem-unattended set to true as well we don't ask for confirmation
    to run the recovery when the recovery menu entry is selected
    at boot time
* Mon Jul 18 2016
  - Release automatically on pypi (2nd try)
    Last try from 142ca22d8e was not working. Update the secure hash
    and also set explcitly the master branch when looking for tags.
* Wed Jul 13 2016
  - Added integration build test link to doc index
* Tue Jul 12 2016
  - Bump version: 8.19.4 → 8.19.5
* Tue Jul 12 2016
  - Don't require an iso creation toolkit
* Tue Jul 12 2016
  - Bump version: 8.19.3 → 8.19.4
* Mon Jul 11 2016
  - prefer newer overlayfs mount method
    mount succeeds in compat mode but this mode should only
    be used on older overlayfs implementations
* Fri Jul 08 2016
  - Bump version: 8.19.2 → 8.19.3
* Fri Jul 08 2016
  - Message commit for bug reference
    Fixup of VMware disk tag references (bnc#988086)
* Fri Jul 08 2016
  - Prevent duplication of context manager in test
* Thu Jul 07 2016
  - Bump version: 8.19.1 → 8.19.2
* Thu Jul 07 2016
  - Complete doc string for Path.which method
* Thu Jul 07 2016
  - Implement Path.which
    Python provides methods to do this but we can't rely on them
    to be available in all python versions
* Thu Jul 07 2016
  - Conditionally prefix encoding to vmware disk tag
    Prior code was always adding the encoding statement to vmware disk tag;
    in the event it is already present there's no need to add it a second time.
    See also
* Thu Jul 07 2016
  - Remove null padding on the vmware disk tag
    The block of data read via dd is null padded; adding the tools data after
    the padding breaks detection of the data. We need to remove the nulls (0x0)
    so appends can occur adjacent to the block of strings.
    See also
* Thu Jul 07 2016
  - Update documentation
    Cleanup structure of contribution guide
* Thu Jul 07 2016
  - Update documentation
    Complete documentation about required C libraries which
    needs to be installed prior to setting up the python
    virtual development environment
* Wed Jul 06 2016
  - Fixup dependency on genisoimage
    Only for SLE12 the package requires genisoimage for
    any other distribution mkisofs is required. The community
    variant with genisoimage seems to be quite outdated.
    However, on SLE12 only genisoimage exists. Fixes #106
* Wed Jul 06 2016
  - Lookup tool name by path lookup
* Wed Jul 06 2016
  - Update import statement
    parenthesis only needed for multi-line multi-import
* Wed Jul 06 2016
  - Refactor block depth on get_volumes
    return early if the condition makes it clear that there
    is nothing more to do in this method
* Wed Jul 06 2016
  - Lookup iso creation tool
    Instead of strictly using genisoimage allow for using
    either the community variant or mkisofs as provided by
* Tue Jul 05 2016
  - Refactor reading of volume variables in boot code
    Use new style profile variables without name limitations
    Related to #39
* Tue Jul 05 2016
  - Refactor profile for volume setup
    Don't use volume names in bash variables. In addition that
    removes the name limitations we had for volume names
    Related to #39
* Tue Jul 05 2016
  - Delete obsolete volume condition checks
    No need to check for LVSwap or LVComp in volume setup.
    If at all those volumes are created at boot time.
    Related to #39
* Tue Jul 05 2016
  - Refactor use of kiwi_allFreeVolume_
    Do not expect the value to come from an exported variable
    Instead a method to provide the information is implemented
    Related to #39
* Mon Jul 04 2016
  - Bump version: 8.19.0 → 8.19.1
* Fri Jul 01 2016
  - Fixup cleanup of intermediate config files
    kiwi uses e.g etc/hosts from the host system for proper name
    resolution during the build. The temporary variant of that
    file will be deleted by kiwi at the end of the installation
    process. However depending on the package manager and the
    distribution it could happen that the intermediate config
    file added by kiwi is treated as existing config variant.
    In case of rpm a .rpmnew file variant of the config file
    is created and that needs to be handled by kiwi. Therefore
    this patch adds a private restore method for the .rpmnew
    case. It might be needed to add other restore methods to
    deal with this issue depending on how other (non rpm) based
    package managers handles the situation. Fixes #104
* Thu Jun 30 2016
  - Bump version: 8.18.9 → 8.19.0
* Thu Jun 30 2016
  - Make sure mtab link exists in kiwi initrd
    On Debian systems the filesystem tools requires the
    presence of the mtab file, thus we make sure this file
    exists and links to proc/self/mounts
* Wed Jun 29 2016
  - Refactor use of dialog program in boot code
    Cleanup the mess, provide only one method to run a dialog
    Prevent use of subshells for running the dialog program
* Wed Jun 29 2016
  - Fixed use of shutil.copytree
    The target dir must not exist. However in order to force copy
    a potentially existing target is deleted before
* Wed Jun 29 2016
  - udev console init requires kbd_mode on Ubuntu
    keep kbd_mode in initrd
* Wed Jun 29 2016
  - Added oemboot description for ubuntu-xenial
    Also add kiwi linuxrc/preinit links for vmxboot
* Wed Jun 29 2016
  - Allow alternative location for udev console init
    yet another name and location for the console init utility
* Wed Jun 29 2016
  - Remove lxc configuration from docker images
    Docker does not use LXC execdriver anymore.
    Fixes #40
* Mon Jun 27 2016
  - Bump version: 8.18.8 → 8.18.9
* Mon Jun 27 2016
  - Fix linkcheck in container_builder.rst
* Mon Jun 27 2016
  - Fix linkcheck in container_builder.rst
* Mon Jun 27 2016
  - Bump version: 8.18.7 → 8.18.8
* Mon Jun 27 2016
  - Update Documentation
    Update state of supported distributions
* Mon Jun 27 2016
  - Apply editorial review changes
* Mon Jun 27 2016
  - Apply editorial review changes
* Mon Jun 27 2016
  - Apply editorial review changes
* Mon Jun 27 2016
  - Delete traces of obsolete code
* Mon Jun 27 2016
  - Prevent unconditional deletion of toplevel data
    The kiwi initrd descriptions calls suseStripInitrd() as part
    of the script. This function unconditionally removes
    toplevel directories like /home. Instead of deleting the data
    it is better to exclude them when the cpio archive is created
* Fri Jun 24 2016
  - Bump version: 8.18.6 → 8.18.7
* Fri Jun 24 2016
  - Added serial console support for isolinux loader
    Generate a serial line setup for the isolinux.cfg file
    according to the bootloader_console attribute from the
    XML description. In addition delete the use of the obsolete
    vga kernel parameter and work with the MENU RESOLUTION
    ui configuration parameter instead
* Fri Jun 24 2016
  - Bump version: 8.18.5 → 8.18.6
* Fri Jun 24 2016
  - Fixed setup of default install menu entry
    The attribute installboot allows to specify the default boot
    menu entry in an install image. It can be set to harddisk,
    install or failsafe install. The setup of that information
    in the bootloader configuration was not properly processed
* Thu Jun 23 2016
  - Fix landscape Smells
* Thu Jun 23 2016
  - Update location of build container
* Thu Jun 23 2016
  - Update dice source link
* Thu Jun 23 2016
  - Update Dice project location
* Thu Jun 23 2016
  - Apply editorial review changes
* Wed Jun 22 2016
  - Bump version: 8.18.4 → 8.18.5
* Wed Jun 22 2016
  - Fixed building of install image
    If dracut is requested as initrd_system in combination with
    building an installiso we have to overrule the initrd_system
    setup for building the install image. The code to install
    an image is kiwi's oem install code and unknown to dracut.
    The process will end up using dracut as initrd in the system
    image but kiwi's initrd on the install image
* Wed Jun 22 2016
  - Delete kiwi-tools from rhel boot descriptions
    kiwi-tools is no longer a requirement but an optional package
    It contains tools like utimer or dcounter which provides
    nice boot timer or progress dialogs for showing data transfer
    progress. In the Virtualization:Appliances:CommonBoot repo
    we provide mandatory and optional packages used by kiwi if
    they don't exist for the target distribution
* Wed Jun 22 2016
  - Better warning message for root cmdline setup
    Under certain circumstance the root=UUID=<uuid> parameter must be
    setup in the cmdline of the image. If the required uuid value
    is not provided a warning message is shown to the user. This
    commit makes the warning message more meaningful
* Wed Jun 22 2016
  - Extend unit tests for boot image setup
    Expect kiwi_initrdname to be set in the profile of
    the boot image root system
* Wed Jun 22 2016
  - Call plymouth only when installed
* Wed Jun 22 2016
  - Add delete method for profile variables
* Tue Jun 21 2016
  - Added article about self contained building
    The article describes how to make use of the dice
    project to control and maintain image build processes
    in a contained environment
* Tue Jun 21 2016
  - Fix grub bootloader template
    Keep gfxpayload
* Tue Jun 21 2016
  - Update bootloader console setup in boot code
    Use the variable kiwi_bootloader_console which represents the
    setup of the bootloader console from the XML description and
    setup the GRUB_TERMINAL configuration option to allow
    grub2-mkconfig to pick up the value. If no console setup
    exists in the XML description, gfxterm is used by default
* Tue Jun 21 2016
  - Make bootloader_console availabe in profile
    The variable kiwi_bootloader_console is exposed into the
    profile environment
* Tue Jun 21 2016
  - Delete obsolete code
    All traces of lilo and elilo are gone now
* Tue Jun 21 2016
  - Fixed grub2 bootloader config template
    Load fonts only when they exist, do not duplicate font
    setup in template
* Tue Jun 21 2016
  - Fixed bootloader theme check
    The check for the theme was not always called, but this
    is required since the theme check will reset the bootloader
    console if no graphics theme could be found
* Mon Jun 20 2016
  - Bump version: 8.18.3 → 8.18.4
* Mon Jun 20 2016
  - Apply back openSUSE 13.2 support
    Until Leap42.2 is not yet released we should keep the
    support for 13.2
* Mon Jun 20 2016
  - Added support for setting the bootloader console
    Some bootloader e.g grub supports graphics, text and also
    serial consoles to hand over the output of the bootloader
    menu. With this patch we allow to customize the console
    used by the bootloader. So far only grub makes use of the
    new attribute
    <type ... bootloader_console="serial|console|gfxterm"/>
    This references Trello:
* Mon Jun 20 2016
  - Bump version: 8.18.2 → 8.18.3
* Mon Jun 20 2016
  - Fixed typo in message text
* Mon Jun 20 2016
  - Fixed vmxboot/ubuntu-xenial boot description
    dracut should be installed to support initrd_system="dracut"
* Mon Jun 20 2016
  - Update iso|vmxboot debian boot descriptions
* Mon Jun 20 2016
  - Fixup ldd check for unused libraries
* Sun Jun 19 2016
  - Update vmxboot/ubuntu-xenial boot description
    Complete description to be usable with kiwi initrd boot code too
* Sun Jun 19 2016
  - Added baseCreateCommonKernelFile
    The stripKernel functions return early if the dracut initrd
    system is requested. However it is required in any case to
    lookup the kernel and provide a common name kiwi expects
    to be present
* Sun Jun 19 2016
  - Set logger mode to append
* Sat Jun 18 2016
  - Bump version: 8.18.1 → 8.18.2
* Sat Jun 18 2016
  - Add distro flag match for Leap42.2
* Sat Jun 18 2016
  - Bump version: 8.18.0 → 8.18.1
* Sat Jun 18 2016
  - Preserve zypper package cache
    zypper deletes the package cache if a repo is removed.
    For the purpose of image building this should not happen
* Sat Jun 18 2016
  - Pass initrd_system to profile
    The common functions baseStripInitrd and baseStripKernel need
    to be skipped if the initrd system is set to dracut. They
    read that information from the exported kiwi_initrd_system
    profile environment variable
* Sat Jun 18 2016
  - Don't delete dracut from boot image environment
    If the dracut initrd system is requested we need dracut
    to stay in the environment from which it is called
* Fri Jun 17 2016
  - Fixup copy_boot_delete_packages
    if no <packages type="delete"/> section exists in the target
    the code does not add the packages to become deleted. This
    patch changes the behavior in a way that a new section is
* Thu Jun 16 2016
  - Add isoboot support for Ubuntu system
    Next step to allow creation of Debian based live systems
    Related to Issue #37
* Thu Jun 16 2016
  - Added suse-leap42.2 descriptions
    Obsolete suse-13.2
* Thu Jun 16 2016
  - Update hyper links in project README
* Thu Jun 16 2016
  - Rename kiwi boot code files
    Maintain them as common code base for all distributions
    During the years of development it has turned out that
    differences in the boot process between the distros
    can be handled in one code base. There is no need to
    maintain a basically identical copy for the different
* Thu Jun 16 2016
  - Style fixes: E275 missing whitespace after keyword
* Thu Jun 16 2016
  - Delete obsolete C tools
* Thu Jun 16 2016
  - Prevent use of setctsid
    setctsid is a suse extension to start a program on a new
    controlling terminal. While it is very useful it does not
    exist on other distributions which causes a problem in
    kiwi's common initrd code. This patch replaces the use of
    setctsid with setsid and sulogin
* Thu Jun 16 2016
  - Open log file in mode 'w' and in utf-8 locale
* Thu Jun 16 2016
  - Delete obsolete mkinitrd code
    This version of kiwi supports only distros using dracut
* Thu Jun 16 2016
  - Delete obsolete sysV init console setup code
* Thu Jun 16 2016
  - Make use of utimer in kiwi initrd optional
* Wed Jun 15 2016
  - Bump version: 8.17.0 → 8.18.0
* Wed Jun 15 2016
  - Adapt to common python style
    Private methods should start with _f() not __f()
* Wed Jun 15 2016
  - Prevent temporary files to be synced to image
    The package manager instances created temporary package
    manager configuration files. The instance destructor and
    thus the cleanup of the instance should be called prior
    to the sync of the root filesystem data in order to
    prevent temporary configuration files to be present in
    the image
* Wed Jun 15 2016
  - Grammar fixes for doc strings
* Wed Jun 15 2016
  - Syntax change for Importing one module
* Wed Jun 15 2016
  - Update test_load_schema_from_xml_content test
    Read schemaversion from RelaxNG instead of using
    a fixed value
* Wed Jun 15 2016
  - debootstrap errors deserve their own exception
* Tue Jun 14 2016
  - Avoid glob imports
    This could start a series of further changes in the
    unit test as we have allowed for glob imports there.
    So treat this one as a start
* Tue Jun 14 2016
  - Add documentation for Exceptions
* Tue Jun 14 2016
  - Support Tox with interactively positional arguments
    Use posargs for py.test, see
* Tue Jun 14 2016
  - Format message with named format parameters
* Tue Jun 14 2016
  - Avoid re-assigning variable
* Tue Jun 14 2016
  - Fixed unit test for profile variables
* Tue Jun 14 2016
  - Handle XML per content or file more explicit
* Tue Jun 14 2016
  - Differentiate between Python 2.7 and 3 in doc
* Tue Jun 14 2016
  - State Python 2.7 in Trove category of
* Mon Jun 13 2016
  - Refactor RootInit class
    Instead of calling multiple subprocesses make use of
    the os capabilities for directories, symlinks and
    device nodes
* Fri Jun 10 2016
  - Fixed use of shutil.copytree
* Fri Jun 10 2016
  - Update ubuntu xenial vmxboot description
    Make sure all drivers exists when dracut is called to allow
    inclusion of potentially all needed driver modules
* Thu Jun 09 2016
  - Fix Lithuanian translation
* Thu Jun 09 2016
  - Fix Ukrainian translation
* Thu Jun 09 2016
  - Update grub2 config tempplate
    Load font collection
* Thu Jun 09 2016
  - Refactor use of os.walk result
* Thu Jun 09 2016
  - Integrate python improvement suggestions
* Thu Jun 09 2016
  - Integrate python improvement suggestions
* Thu Jun 09 2016
  - don't intermingle suse namespace with debian
* Thu Jun 09 2016
  - Deleted libxslt-tools from spec template
* Thu Jun 09 2016
  - Fixup indentation of travis setup
* Thu Jun 09 2016
  - Fixed license setup in spec file
* Thu Jun 09 2016
  - Remove unused import (F401) and an extra line (W391)
* Thu Jun 09 2016
  - Fix tests for Python3
* Thu Jun 09 2016
  - Fix tests for the XPath processing
* Thu Jun 09 2016
  - Allow XMLDescription to be loaded also from the XML string
* Thu Jun 09 2016
  - Release automatically on pypi for new tags
    When a new tag gets created, automatically release it on pypi so
    we don't have todo it manually.
* Thu Jun 09 2016
  - Reimplement XSLT processing using LXML instead of calling 3rd party tools
* Thu Jun 09 2016
  - Added tox 2.7 target for travis
* Thu Jun 09 2016
  - Fixed creation of password hashes
    kiwi uses the openssl command for this purpose but did
    not strip the newline at the end of the hash output
* Wed Jun 08 2016
  - Apply python 2.x compatibility decorators
* Wed Jun 08 2016
  - Added tox target for python 2.7
* Wed Jun 08 2016
  - python 2.x compatibility added new requirements
    six and future modules are needed for the compat layer
* Wed Jun 08 2016
  - Fixup grub2 theme setup
    We can't expect that specific fonts to exist for all theme packages
    in all distributions. The code here should rely only on theme.txt
    In addition we check if any theme or font related data is found
    in the legacy grub location boot/grub which imho should not be
    used for grub2
* Wed Jun 08 2016
  - Update ubuntu-xenial boot description
    No need for a drivers setup here, vmxboot is only the container
    to run dracut
* Wed Jun 08 2016
  - Bring byte strings to Py2 compatibility in ISO
* Tue Jun 07 2016
  - Make iterators Py2 comptible
* Tue Jun 07 2016
  - Added boot image description vmxboot/ubuntu-xenial
* Tue Jun 07 2016
  - Replace '' with patch_open decorator
* Tue Jun 07 2016
  - Add mock_open and patch_open helpers
* Tue Jun 07 2016
  - Remove double requirement
* Tue Jun 07 2016
  - Use ConfigParser from six
* Tue Jun 07 2016
  - Move urlparse to the Six package
* Tue Jun 07 2016
  - Remove duplicate key
* Tue Jun 07 2016
  - Add print function for Python 2
* Tue Jun 07 2016
  - Add missing init file
* Tue Jun 07 2016
  - Add Python2 compatibilitiy requirements
* Mon Jun 06 2016
  - debootstrap installs apt-get
    Don't add the specified package manager to the list of
    bootstrap packages for apt-get, because that is covered by
* Mon Jun 06 2016
  - Allow additional bootstrap packages for apt-get
* Sun Jun 05 2016
  - Don't run apt-get with mounted /dev
* Sun Jun 05 2016
  - Fixed force-yes option for apt-get
* Sat Jun 04 2016
  - Allow unattended installation of debian packages
* Fri Jun 03 2016
  - Added PackageManagerApt class
    Support installation/removal of deb packages
    Related to #37
* Fri Jun 03 2016
  - Support for apt-get package manager
    Starting to support Debian based distributions also means to support
    the deb repository types. This commit adds the RepositoryApt class
    to handle deb repositories for image building. Related to #37
* Wed Jun 01 2016
  - Bump version: 8.16.5 → 8.17.0
* Wed Jun 01 2016
  - Added pypi make target for upload
    Please note an appropirate ~/.pypirc file and registered
    user is required to upload
* Wed Jun 01 2016
  - switch_root / pivot_root quiet call
* Wed Jun 01 2016
  - Increase default boot partition size to be 300M
* Wed Jun 01 2016
  - Delete obsolete isFSTypeReadOnly from boot code
    The check was used to detect if a read-only root filesystem
    is in use, which can be done by checking if kiwi_ROPart
    is defined
* Wed Jun 01 2016
  - Refactor use of global FSTYPE variable
    The kiwi boot code populates a global FSTYPE variable which was
    used at several places. However there was no clarity for which
    storage device this filesystem value was detected for. Thus
    the entire handling has been refactored and there is no global
    FSTYPE variable anymore
* Tue May 31 2016
  - Add attribute <type ... overlayroot=true|false/>
    Allow to activate the overlay root setup for disk images
* Tue May 31 2016
  - Bump version: 8.16.4 → 8.16.5
* Tue May 31 2016
  - Update development status
    Status :: 5 - Production/Stable
* Tue May 31 2016
  - Don't search for kiwicompat in fixed absolute path
    Allow alternative locations from search PATH
* Tue May 31 2016
  - Integrate git attribute setup to sdist command
* Tue May 31 2016
  - Add C tools binaries to git ignore list
* Tue May 31 2016
  - Fixed command class name for distutils
    The overwritten build and install commands should not change
    their name in order to stay consistent on e.g --help
* Tue May 31 2016
  - Fixed kiwicompat binary lookup
    The test for os.path.exists on just the binary name
    without a path specification always fails if not
    present in current directory. Let execvp do the job
    for us
* Tue May 31 2016
  - Fixed entry point for kiwicompat
* Tue May 31 2016
  - Use path lookup for kiwi-ng in kiwi_compat
    Instead of a fixed path use the PATH lookup. This would
    allow to install kiwi at alternative places as long as
    the path is part of the shell search PATH
* Tue May 31 2016
  - Create completion data at build time
* Mon May 30 2016
  - Move all build and install tasks to
    In an effort to distribute kiwi on pypi it should not be
    required to call make targets for a complete installation.
    Therefore the compilation of the C tools as well as the
    installation of the man pages and the bash completion
    has been added to The spec file to build an rpm
    package has been changed to use exclusively
* Fri May 27 2016
  - Delete obsolete .releasetags from
    This avoids a warning on build
* Fri May 27 2016
  - Fixed warnings in C written tools
* Fri May 27 2016
  - Bump version: 8.16.3 → 8.16.4
* Fri May 27 2016
  - Fixed spec file
    update-alternatives is used, thus needs to be required
* Fri May 27 2016
  - Support for overlay disk images
    overlay disk images uses a readonly root partition and are
    overlayed using overlayfs to hook in a cow based read-write
    space. This commit implements the basic disk setup.
    Implementation to boot such a disk in the kiwi boot code
    is still missing, as well as the investigation if dracut
    is able to boot such a disk too. References #65
* Thu May 26 2016
  - Bump version: 8.16.2 → 8.16.3
* Thu May 26 2016
  - Fixed completion generator
    In addition cleanup the main docopt definition
* Wed May 25 2016
  - Fixed completion conflict with legacy kiwi
* Tue May 24 2016
  - Bump version: 8.16.1 → 8.16.2
* Tue May 24 2016
  - Fixed spec file
    rpmlintrc file must be mentioned as source
* Tue May 24 2016
  - Bump version: 8.16.0 → 8.16.1
* Tue May 24 2016
  - Update quickstart documentation
    kiwi can also be used as a module in other python3 projects.
    An example how to do that has been added to the quickstart
* Mon May 23 2016
  - Bump version: 8.15.5 → 8.16.0
* Mon May 23 2016
  - Added support for grub2 console switch entry
    An additional hidden entry allows the user to switch between the
    graphics and the serial console by pressing the 't' key. The kiwi
    grub2 template adds this switch if the terminal mode is set to
    graphics. The additional entries are only effective of the
    grub_platform is set to efi. Fixes #80
* Mon May 23 2016
  - Fixed add_repo for zypper repositories
    Always run zypper addrepo in order to make any change in the
    repository definition to become effective
* Mon May 23 2016
  - Fixed add_repo for yum repositories
    Always create the repo file from scratch in order to make
    any change in the repository definition to become effective
* Sat May 21 2016
  - Bump version: 8.15.4 → 8.15.5
* Sat May 21 2016
  - Split quickstart into two parts
    Split the quickstart information into a development and
    a user part
* Sat May 14 2016
  - Bump version: 8.15.3 → 8.15.4
* Fri May 13 2016
  - Added readonly check for persistent data
    When creating a partition for persistent data, check
    if the device class has the readonly flag set before
    trying to write anything there. Fixes #74
* Fri May 13 2016
  - Bump version: 8.15.2 → 8.15.3
* Fri May 13 2016
  - Fixed removal of a package in XMLState
    If a <package> was unwanted in a <packages> section the former
    code sets the name of the package to a python None type. This
    causes the rest of the code to operate on potential None types
    which causes unexpected TypeError's under certain conditions.
    Instead of leaving an inconsistent package section the entire
    package section reference should be deleted from the packages
    instance holding it. Fixes #76
* Thu May 12 2016
  - Exit code for --version call should be zero
* Thu May 12 2016
  - Bump version: 8.15.1 → 8.15.2
* Thu May 12 2016
  - Set and scripts as optional
* Thu May 12 2016
  - Bump version: 8.15.0 → 8.15.1
* Wed May 11 2016
  - Fixed landscape smell
    Unused variable 'key'
* Wed May 11 2016
  - Fixed landscape smell
    Redefining built-in 'help'
* Wed May 11 2016
  - Fixed landscape error
    Dangerous default value [] as argument
* Wed May 11 2016
  - Refactor import_description
    split code into more readable parts
* Wed May 11 2016
  - Make sure mandatory vmdk settings exists
    Even without a machine section configuration the minimum
    required information must be presented to the settings
* Wed May 11 2016
  - Added store_to_result for vmdk format
    The vmdk format provides more than the standard result
    store. for vmdk we need to store the vmdk and the
    settings file
* Wed May 11 2016
  - Reduce amount of mountpoint check calls
* Wed May 11 2016
  - Refactor subformat classes
    Add a generic store_to_result method which allows to store
    the format result files into an instance of Result. This
    allows to customize result handling per format when needed
* Wed May 11 2016
  - Create VMware settings file for vmdk subformat
    In order to run or convert the vmdk with VMware products a
    settings file is required.
* Tue May 10 2016
  - Added dropped features information for lxc
* Tue May 10 2016
  - Bump version: 8.14.2 → 8.15.0
* Tue May 10 2016
  - Fixed script/archive lookup
    If a script or archive is specified with an absolute path
    in the image description, kiwi should not assume this path
    to exist below the image description directory but just take
    the absolute path as it is. Fixes #70
* Sun May 08 2016
  - Load logging at runtime for MountManager
* Sun May 08 2016
  - Runtime checker message fixes
    Start with an empty line to improve readability
* Sun May 08 2016
  - Integrate runtime checks for tasks
    Call appropriate runtime checks for prepare, create
    and build tasks. Fixes #20
* Sun May 08 2016
  - Create instance of runtime_checker for any CliTask
* Fri May 06 2016
  - Fixed building documentation
* Thu May 05 2016
  - Reuse env in tox.ini
    Reuse virtualenv directory with envdir. Should speed up things
    a bit.
    Taken from
* Thu May 05 2016
  - Use more compact config for tox.ini
    Rewrite basepython to make it more compact
    Taken from
* Thu May 05 2016
  - Add requirements section in Quick Start
    * Describe what KIWI needs to run, further requirements, and for development
    * Introduce 'ghkiwi' as prefix in "extlinks" to shorten external links and
      to make linking to KIWI's GitHub repository more intuitive and consistent.
      For example, the string :ghkiwi:`tox.ini` is replaced with
* Wed May 04 2016
  - Added check_target_directory_not_in_shared_cache
    Runtime checker method to check if the target directory
    was set to - or below the shared cache directory
* Wed May 04 2016
  - Bump version: 8.14.1 → 8.14.2
* Wed May 04 2016
  - Move creation of mountpoint dir to setup method
    The volume management classes should create the temporary
    mountpoint directory when it is needed and not when an
    instance of the class is created
* Wed May 04 2016
  - Cleanup use of temporary directories
    All mkdtemp created directories are created with the 'kiwi_'
    prefix. In addition all code parts which leaves tmpdirs in
    the system after kiwi is done were fixed
* Mon May 02 2016
  - Bump version: 8.14.0 → 8.14.1
* Mon May 02 2016
  - Added python3-xattr dependency
* Mon May 02 2016
  - Added xattr checker for DataSync class
    The method target_supports_extended_attributes() checks if the
    sync target directory supports extended filesystem attributes.
    The method is called on sync_data() and will remove the -X / -A
    options if provided. A warning message is issued to the caller
    if the rsync option list has changed because of the underlaying
    filesystem limitations
* Mon May 02 2016
  - Fixed subformat creation
    The option -c makes only sense for the qcow2 subformat, whereas
    on all other format it cause qemu-img convert to fail
* Sun May 01 2016
  - Use iterator protocol instead of StopIteration
    CommandIterator contains already the __iter__ magic method. We don't
    need to manually use while and next() in order to advance to the next
    => Code refactored to "for line in self.command" which does exactly the
    same job, but is better readable. Plus we avoid the nasty try...except
* Sat Apr 30 2016
  - Remove kiwi.logger.init() function
    The init function is mostly unneccessary and can be directly created
    in the kiwi.logger module.
* Sat Apr 30 2016
  - Remove useless
* Fri Apr 29 2016
  - Fixup usage messages
* Fri Apr 29 2016
  - Bump version: 8.13.4 → 8.14.0
* Fri Apr 29 2016
  - Added support for custom rootfs label
    A new attribute <type ... rootfs_label="name"/> has been added
    This Fixes #66
* Fri Apr 29 2016
  - Update grub2 bootloader template menuentries
    Mark all menuentries as --unrestricted. Fixes #64
* Fri Apr 29 2016
  - Bump version: 8.13.3 → 8.13.4
* Fri Apr 29 2016
  - Fixed shared local repository mounts
* Thu Apr 28 2016
  - Bump version: 8.13.2 → 8.13.3
* Thu Apr 28 2016
  - Added evaluation of imageincluded repositories
    repositories marked as imageinclude needs to be added
    permanently to the image. Fixes #56
* Thu Apr 28 2016
  - Make xz the default compressor for squashfs
    When creating squashfs compressed files use xz as compressor
    if not other compressor is specified. Fixes #63
* Thu Apr 28 2016
  - Added --add|delete package for prepare command
    Allow additional packages to be installed/deleted when
    calling system prepare. Fixes #62
* Thu Apr 28 2016
  - Alpha sort option documentation
    Alpha sort options in usage and man pages
* Thu Apr 28 2016
  - Added --add|delete package for build command
    Allow additional packages to be installed/deleted when
    calling system build. Related to Issue #62
* Thu Apr 28 2016
  - Fixed completion generator
    complete for kiwi and kiwi-ng
* Thu Apr 28 2016
  - Prevent double render on usage
* Wed Apr 27 2016
  - Add check_image_include_repos_http_resolvable
    Runtime checker method to check if repositories marked
    with the imageinclude attribute are using a publicly
    available protocol
* Wed Apr 27 2016
  - Add shared cache location to Defaults
* Wed Apr 27 2016
  - Bump version: 8.13.1 → 8.13.2
* Wed Apr 27 2016
  - Allow alternative if isolinux-config failed
    If the setup of the base directory failed because
    isolinux-config was not able to identify the isolinux.bin
    signature, we create a compat /isolinux directory and
    hardlink all loader files
* Wed Apr 27 2016
  - Fixed typo in message
    Fix condition to show the grub module info message
* Wed Apr 27 2016
  - Use program output for synopsis in documentation
* Tue Apr 26 2016
  - Provide custom usage message
    Instead of the docopt way to show the usage information we
    provide a kiwi specific usage information. The usage
    data now always consists of:
    1. the generic call
    kiwi [global options] service <command> [<args>]
    2. the command specific usage defined by the docopt string
    short form by default, long form with -h | --help
    3. the global options
* Tue Apr 26 2016
  - Fixed loadSELinuxPolicy
    enforce policy is located in /sys/fs/selinux
* Tue Apr 26 2016
  - No authconfig on RHEL >= 7
* Tue Apr 26 2016
  - Activate SELinux for RHEL systems
    Added new boot method loadSELinuxPolicy and call it as part
    of the rhel-preinit phase. This put SELinux in enforcing
    mode also from the kiwi initrd
* Tue Apr 26 2016
  - Handle fsmountoptions attribute in all builders
* Tue Apr 26 2016
  - Refactor custom_args handling for VolumeManager class
    Allow for two elements fs_create_options and fs_mount_options
    in a VolumeManager instance and pass along the information
    to the FileSystem and MountManager instances
* Tue Apr 26 2016
  - Refactor custom_args handling for FileSystem class
    Any FileSystem class can receive a custom_args dictionary
    which by defaults ensures the presence of an empty list
    for create_options and mount_options. The create_options
    are used in the subclasses when the filesystem is being
    created and the mount_options are passed to the MountManager
    when the filesystem is mounted for e.g data_sync
* Tue Apr 26 2016
  - Make kiwicompat understand --version | -v option
* Tue Apr 26 2016
  - Small spelling corrections
    Apply title style:
    * package -> Package
    * module -> Module
    * Use backticks for kiwi.* modules to avoid spelling problems
* Tue Apr 26 2016
  - Update spell-checking wordlist
    GitHub, JeOS, KIWI, LXC, squashfs, stderr, stdin, stdout, Submodules,
    Subpackages, zypper
* Tue Apr 26 2016
  - Add "spell" rule in Makefile
    Also included in the help target
* Tue Apr 26 2016
  - Enable Acronyms, importable modules, and builtins
* Mon Apr 25 2016
  - First draft to "beautify" HTML appearance
    * Add GitHub button and "Fork me" widgets
    * Add Travis button
    * Remove obsolete code
* Mon Apr 25 2016
  - Bump version: 8.13.0 → 8.13.1
* Mon Apr 25 2016
  - Added support for SELinux file security contexts
    Systems using SELinux require the filesystem data to be labeled
    according to a security context configuration. kiwi now checks
    for the presence of /etc/selinux/targeted/contexts/files/file_contexts
    and labels accordingly if it exists. This Fixes #52
* Mon Apr 25 2016
  - Make grub2 installation path lookup dynamic
    Not all linux systems installs grub2 below /usr/lib/grub2
    For example RHEL7 packages it below /usr/lib/grub. Therefore
    kiwi needs to be flexible with this path
* Fri Apr 22 2016
  - Used :returncode: for sphinxcontrib-programoutput
    Fix a warning when calling "kiwi-ng". As the script returns 1,
    it is considered to have failed by the program-output directive.
    The returncode line fixes that.
    See more info here:
* Fri Apr 22 2016
  - Integrate version string from placeholder
    Use |version| placeholder, no bumpversion etc. is needed.
    Actually, it's taken from
* Fri Apr 22 2016
  - Added RuntimeChecker class
    An instance of RuntimeChecker allows to semantically check for
    error conditions according to the provided image description
    and build options. Related to #20
* Fri Apr 22 2016
  - Spell checking doc and extended word list
* Thu Apr 21 2016
  - Add filesystem requires in kiwi-boot-requires
    In order to have all filesystem creation tools available
    when building in the buildservice we need to require them
    in kiwi-boot-requires
* Thu Apr 21 2016
  - Bump version: 8.12.0 → 8.13.0
* Thu Apr 21 2016
  - Set ident export-subst git attribute on
* Thu Apr 21 2016
  - Bump version: 8.11.0 → 8.12.0
* Thu Apr 21 2016
  - Fixed documentation link references
    Use redirected target and fix broken targets according to
    link check on make build
* Thu Apr 21 2016
  - Fixed typo in documentation
    Missing question mark at end of sentence
* Thu Apr 21 2016
  - Bump version: 8.10.1 → 8.11.0
* Thu Apr 21 2016
  - Fixed typo
* Thu Apr 21 2016
  - Added Legacy KIWI vs. Next Generation chapter
* Thu Apr 21 2016
  - md -> rst, radically shortend README
* Wed Apr 20 2016
  - More substantial changes of the doc
    * Overall: try to be more consistent
    * index.rst
    * Move "Supported Distributions" and "Dropped Features" sections
    * Quick Start:
    * Add abstract
    * Add note about automatic link creation
    * Move "example appliance description" sections and subsections
      further down
    * Streamlined "Contributing" section
    * Corrected titles and distinguish more between descriptive and
* Wed Apr 20 2016
  - Remove useless substitutions (placeholders)
* Wed Apr 20 2016
  - Add KIWI logo
* Wed Apr 20 2016
  - Move Motivation section from quickstart to index
* Wed Apr 20 2016
  - Correct heading and remove build status
* Wed Apr 20 2016
  - Add QuickStart Guide and improve documentation
    * Added Quick Start Guide, taken from
    * Improve index/main file:
    * Shortend main entry page
    * Make more headings
    * Add feature highlights to draw attention
    * Add sidebar with important KIWI links
    * Use ordered list of KIWI concept (prep and creation step)
* Wed Apr 20 2016
  - Add package manager requirements in spec file
* Tue Apr 19 2016
  - Update README
* Tue Apr 19 2016
  - Update README
* Tue Apr 19 2016
  - Update README
* Tue Apr 19 2016
  - Move program name from kiwi-py3 to kiwi-ng
* Tue Apr 19 2016
  - Added genisoimage requirement to kiwi spec file
    On SLE12 we only have genisoimage, on Leap and Tumbleweed we
    have both genisoimage and mkisofs. For the moment both toolkits
    produces working iso images with kiwi, thus I chose the save
    default with genisoimage
* Tue Apr 19 2016
  - Be more flexible for isoinfo lookup
    isoinfo can either be provided by the community package in
    /usr/lib/genisoimage/isoinfo or by the mkisofs package from
    J. Schilling in /usr/bin/isoinfo. kiwi should be smart enough
    to lookup which tool is installed. /usr/bin/isoinfo will be
* Tue Apr 19 2016
  - Update README
    Added link to documentation
* Mon Apr 18 2016
  - Try with latest version of travis-sphinx
* Mon Apr 18 2016
  - ghp-import required for travis-sphinx deploy
* Mon Apr 18 2016
  - Make sure enchant library is present for travis
* Mon Apr 18 2016
  - Update tox setup
    Update TOXENV targets
* Mon Apr 18 2016
  - Move travis-sphinx build tox target to script section
* Mon Apr 18 2016
  - Use tox target for travis-sphinx
* Mon Apr 18 2016
  - Put travis-sphinx build into script section
* Mon Apr 18 2016
  - Make travis-sphinx deploy work
    It's required to call travis-sphinx build in order to be able
    to run the deploy command
* Mon Apr 18 2016
  - Fixed documentation linkcheck results
* Mon Apr 18 2016
  - Make sure shared mount directories exists
    Create shared directory path on the host _and_ in the
    new root directory to make sure the bind mount works
* Mon Apr 18 2016
  - Update documentation entry page
* Mon Apr 18 2016
  - Use travis-sphinx to deploy doc to github
* Mon Apr 18 2016
  - Fixed package requirements
    libxslt-tools provides required xsltproc
* Mon Apr 18 2016
  - Update README for style and markup
* Mon Apr 18 2016
  - Fixed README, wrong markup
* Mon Apr 18 2016
  - Update README
    Add information how to build with dice
* Mon Apr 18 2016
  - Add part_msdos module for self build EFI image
* Fri Apr 15 2016
  - Update tox.ini
    Documentation building requires sphinx_rtd_theme and
* Fri Apr 15 2016
  - Update volume_manager inline API documentation
    References #49
* Fri Apr 15 2016
  - Update utils inline API documentation
    References #49
* Fri Apr 15 2016
  - Update tasks inline API documentation
    References #49
* Fri Apr 15 2016
  - Complete system inline API documentation
    References #49
* Fri Apr 15 2016
  - Use Path.wipe instead of directly calling rm
* Fri Apr 15 2016
  - Update system inline API documentation
    References #49
* Fri Apr 15 2016
  - Update storage inline API documentation
    References #49
* Thu Apr 14 2016
  - Fixed typo
* Thu Apr 14 2016
  - Cleanup use of partition id maps
    For the partition setup the Disk class uses dictionaries
    to map the partition name to the partition number. However
    there are public partition names such as 'kiwi_BootPart'
    and kiwi internal partition names such as 'boot'. The code
    should make it more clear which mapping table is used
* Thu Apr 14 2016
  - Update repository inline API documentation
    References #49
* Thu Apr 14 2016
  - Update partitioner inline API documentation
    References #49
* Thu Apr 14 2016
  - Complete bootloader inline API documentation
    References #49
* Thu Apr 14 2016
  - Update README
    Add chapter about signing commits
* Thu Apr 14 2016
  - Update README
* Thu Apr 14 2016
  - Update README
* Wed Apr 13 2016
  - Update package_manager inline API documentation
    References #49
* Wed Apr 13 2016
  - Update filesystem inline API documentation
    References #49
* Wed Apr 13 2016
  - Update container inline API documentation
    References #49
* Wed Apr 13 2016
  - Update builder inline API documentation
    References #49
* Wed Apr 13 2016
  - Update bootloader/template inline API documentation
    References #49
* Wed Apr 13 2016
  - Complete bootloader install interface
* Wed Apr 13 2016
  - Update bootloader/install inline API documentation
    References #49
* Wed Apr 13 2016
  - Move get_failsafe_kernel_options to Defaults
* Wed Apr 13 2016
  - Update bootloader/config inline API documentation
    References #49
* Tue Apr 12 2016
  - Update boot/image inline API documentation
    References #49
* Tue Apr 12 2016
  - Update archive inline API documentation
    References #49
* Tue Apr 12 2016
  - Delete traces of zfs support
* Tue Apr 12 2016
  - Update inline API documentation
    References #49
* Mon Apr 11 2016
  - Update inline API documentation
* Mon Apr 11 2016
  - Update inline API documentation
* Mon Apr 11 2016
  - Update inline API documentation
* Mon Apr 11 2016
  - Update inline API documentation
* Sun Apr 10 2016
  - Ignore auto generated code for API docs
* Sun Apr 10 2016
  - Update inline API documentation
* Fri Apr 08 2016
  - Update api documentation setup
* Fri Apr 08 2016
  - package kiwi-pxeboot must not be noarch
    We want to specify for which arch we provide it. Thus
    it's not allowed to specify it as noarch even though
    it provides only noarch data
* Thu Apr 07 2016
  - Create Initial autodoc structure
    Called 'sphinx-apidoc -o source/api ../kiwi'
* Thu Apr 07 2016
  - Fixup docstring for kiwi/
* Thu Apr 07 2016
  - Move manual page documentation in subdirectory
    Separate api documentation from manual pages
* Thu Apr 07 2016
  - Update virtualenv development setup
    make sure we can build the docu in the development
* Wed Apr 06 2016
  - Add docstrings for Cli class
    References Issue #49
* Wed Apr 06 2016
  - Fixed ppc setup of etc/default/grub_installdevice
    On power grub must be installed into the Prep partition into
    the master boot record of the disk
* Mon Apr 04 2016
  - Add Python 3.5 to be consistent with Travis
* Sat Apr 02 2016
  - Fixed logger unit test
* Fri Apr 01 2016
  - Make color output an option
    By default no color output is used
* Wed Mar 30 2016
  - Added missing kiwi-packagemanager provides
    The buildservice looks up for a package manager capability
* Wed Mar 30 2016
  - Fixed spec file
    syslinux is not a requirement for the base package
* Thu Mar 24 2016
  - Check for derived description path in prepare too
* Thu Mar 24 2016
  - Refactor SystemSetup class
    the information about the description_dir is part of the
    provided xml_state instance. There is no need to pass that
    information along twice
* Thu Mar 24 2016
  - Fixed use of derived_description_dir
    Only in import_description we need to check for both locations
* Thu Mar 24 2016
  - Make sure import_description preserves archives
* Thu Mar 24 2016
  - Refactor InstallBootLoaderGrub2 constructor
    architecture dependant device setup belongs to the install
    method where it is actually needed. That prevents the
    construction of the instance to be architecture specific
* Wed Mar 23 2016
  - Make list of efi grub modules arch dependant
* Wed Mar 23 2016
  - Revert "Delete efi_uga module from list"
    This reverts commit 191d423eb571d3cc08f34b5e4ef15eb6296a6563.
* Wed Mar 23 2016
  - Delete efi_uga module from list
* Wed Mar 23 2016
  - add multiboot grub module only on demand
    multiboot is only needed for self build grub images in Xen
    guest mode
* Wed Mar 23 2016
  - Don't raise if kversion exits with error
    In this case a default value applies
* Wed Mar 23 2016
  - Activate partitioner support for arm
* Wed Mar 23 2016
  - Add optional derived_from param to XMLDescription
    An instance of XMLDescription can now optionally become
    constructed with a path to an image description this
    instance was derived from. This is currently used for
    building the kiwi boot image to tell the boot image
    XML description instance from which system image instance
    it was derived from
* Wed Mar 23 2016
  - Evaluate default video mode for iso images
* Wed Mar 23 2016
  - Added custom profile for arm/oemboot/suse-tumbleweed
* Wed Mar 23 2016
  - Update firmware types for arm architectures
    Add efi and uefi as allowed types, complete architecture name list
    set efi as default firmware for arm
* Wed Mar 23 2016
  - Added pre/post hooks for bootloader setup/install
    preInstallBootLoader, postInstallBootLoader
    preSetupBootLoader, postSetupBootLoader
* Wed Mar 23 2016
  - Fixed architecture dependant tests
* Tue Mar 22 2016
  - Added support for virtual boot partition on arm
    Triggered by the firmware="vboot" setup an EFI setup plus a
    raw partition without filesystem is created as first partition.
    The size of the partition can be controlled by the vbootsize
    attribute. The vboot feature is used by the arm architecture
    to provide a space in the partition table for custom code as
    required by e.g the chromebook. The final customization of the
    vboot space is board specific and can't be implemented in a
    generic way in kiwi. For finalizing the vboot space the script
    hooks editbootconfig and editbootinstall can be used
    This is related to Issue #17
* Tue Mar 22 2016
  - Rename partition id kiwi_JumpPart to kiwi_EfiPart
    This makes it explicit for what purpose the partition
    is really used. EFI is not configured the same for all
    architectures but what is consistent is that on this
    partition an efi image is located to become loaded by
    some firmware
* Tue Mar 22 2016
  - Activate boot partition only for msdos tables
* Tue Mar 22 2016
  - have tar preserve all xattrs
    By default tar will only preserve a subset of the capabilities
    with --xattrs. Adding --xattrs-include=* should preserve all
    capabilities (e.g. user.*, security.capability etc.).
* Tue Mar 22 2016
  - Preserve hybrid GPT status on boot
    Added createHybridGPT method and setup the hybrid GPT/MBR
    table if requested by the XML configuration. In addition
    move the partition activation call also into the partition
    table finalize method. This is related to Issue #17
* Mon Mar 21 2016
  - Refactor partition table setup code
    Added two methods preparePartitionTable and finalizePartitionTable
    which are used to prepare the partition table to allow resizing
    and to finalize for partition flags after resizing. This replaces
    the updatePartitionTable method
* Mon Mar 21 2016
  - Delete obsolete GPT fixup code
    Related to bnc#825221 code was added to recreate the disk with
    a new GPT label. The reason was that parted created a gpt_sync_mbr
    partition table when kiwi repartitioned the disk to use the full
    geometry. This was an unwanted behavior by parted and causes the
    additional code in kiwi. The current parted version behaves
    correctly and thus makes this additional code obsolete
* Fri Mar 18 2016
  - Added support for hybrid GPT
    Embedding an MBR into a GPT is required for a collection of
    boards, e.g arm rapberry PI. The kiwi configuration provides
    a new attribute called
    <type ... gpt_hybrid_mbr="true|false"
    which allows to control if the GPT should be hybrid or not.
    On build procedures which do not create a GPT the attribute
    has no effect. This references Issue #17
* Fri Mar 18 2016
  - Update all XML descriptions to schema v6.3
* Fri Mar 18 2016
  - Added make valid target to Makefile
    make valid applies the latest XSLT processing to the boot
    and test image descriptions
* Fri Mar 18 2016
  - Added XSL stylesheet convert62to63.xsl
    auto convert from schema v6.2 to v6.3
* Fri Mar 18 2016
  - Update schema to version 6.3
  - Deleted obsolete split section
  - Deleted zfsoptions, fsreadwrite and fsreadonly attributes
  - Updated allowed values for bootloader and filesystems
* Fri Mar 18 2016
  - Delete obsolete support for syslinux(extlinux)
    grub2 or the architecture specific loader requirement is
    supported but the alternative x86 loaders syslinux/extlinux
    were not really used
* Fri Mar 18 2016
  - Delete obsolete support for uboot
    arm boot is using grub2 efi images loaded by a firmware. The
    firmware could be uboot but due to the non generic way to
    setup the board that it loads the firmware all of these tasks
    are handled by custom scripts called via the kiwi
    editbootconfig / editbootinstall script hooks. Therefore kiwi
    itself does not have to setup or install uboot
* Fri Mar 18 2016
  - Delete obsolete support for yaboot
    grub2 is used for ppc64 platforms, so far no older ppc
    platform is supported
* Fri Mar 18 2016
  - Delete obsolete kernelCheck method
* Fri Mar 18 2016
  - Delete obsolete support for legacy grub
* Fri Mar 18 2016
  - Delete obsolete support for split(combined) image
* Fri Mar 18 2016
  - Delete obsolete support for reiserfs
* Fri Mar 18 2016
  - Delete support for ZFS filesystem
    btrfs is the way to go these days and zfs still has some
    proprietary bits in it
* Fri Mar 18 2016
  - Avoid the copy of the kiwi initrd to /run
    the kiwi initrd copies itself to /run/initramfs in order
    to have a way to jump into the initrd system from the later
    system. However the kiwi initrd is unpacked pretty big
    and exists also only for the very first boot.
* Fri Mar 18 2016
  - Execute haveged in udevStart if fips is enabled
    This ensure there is at least a source of entropy for /dev/random
    when the fips mode is enabled. Without it, VMware virtual machines
    hang at boot (bnc#964204)
* Thu Mar 17 2016
  - Fixed use of dracut initrd system for arm platform
* Thu Mar 17 2016
  - Added EFI images name for 32bit arm architectures
* Thu Mar 17 2016
  - Refactor data subpackage
    Move from data to utils, data is generally considered
    as text data and not code
* Wed Mar 16 2016
  - Fixed 32bit x86 builds
    Put it all under the ix86 namespace
* Wed Mar 16 2016
  - Refactor grub2 EFI support
    EFI support was target specific to the x86_64 architecture
    This commit changes the structure to allow more architectures
    supporting EFI. Thus the arm64 EFI support has been added
    as a plus
* Mon Mar 14 2016
  - Add {toxinidir} variable for check target
* Mon Mar 14 2016
  - Delete nose reference from virtualenv setup
* Mon Mar 14 2016
  - Prevent file duplicate badness in spec file
* Mon Mar 14 2016
  - Revert "Added pv kernel profile"
    There is no kernel-pv
    This reverts commit f0c37709e941e18a1f9b963811a85bd772ee96ac.
* Mon Mar 14 2016
  - Move from nose to pytest
    nose is no longer maintained, thus we have to move to another
    testing system. This commit updates the tox setup and all tests
    to use pytest instead of nose.
* Fri Mar 11 2016
  - Fixed boot mount path at grub2 install
* Fri Mar 11 2016
  - Revert "Revert "Call shim-install with --removable""
    Try again using --removable for shim-install
    This reverts commit e3d7d0239d58e901e7d61e215317b93cf0ee1bfb.
* Fri Mar 11 2016
  - Fixed normalizing paths between host and image
* Fri Mar 11 2016
  - Revert "Call shim-install with --removable"
    With --removable shim-install does not work for image building
    This reverts commit d03baa9ee1d0ff44c76afadfc388791b1c5d29fa.
* Fri Mar 11 2016
  - Added pv kernel profile
* Thu Mar 10 2016
  - Add handling for OPAL firmware setup on ppc64
    This adds a capability of creating an image for Bare metal POWER
    platform, where firmware parses grub2.cfg and simply kexecs into
    an image kernel
* Thu Mar 10 2016
  - Refactor FirmWare class
    provide a default firmware for each supported architecture
    Avoid special sauce in the FirmWare constructor
* Thu Mar 10 2016
  - Adding opal firmware type for ppc64 architectures
* Thu Mar 10 2016
  - First draft of issue#43
    Add templates for contributing, issue, and pull requests
* Thu Mar 10 2016
  - Call shim-install with --removable
    The --removable is to prevent shim-install from writing host's
    uefi boot entry by pretending itself as removable disk
* Wed Mar 09 2016
  - Delete obsolete shim setup code from kiwi
    Due to the use of shim-install the code in kiwi to setup
    for secure boot is no longer needed
* Wed Mar 09 2016
  - Use shim-install to setup EFI secure boot
* Wed Mar 09 2016
  - Fixed completion generator
    Some global options were missing
* Wed Mar 09 2016
  - Update README
    Fixed pyvenv call to use python3
* Wed Mar 09 2016
  - Update README
    style fixes
* Wed Mar 09 2016
  - Update README
    Fixed url to packages on the buildservice
* Wed Mar 09 2016
  - Update README
    Be more clear about semantic versioning as documented here:
* Wed Mar 09 2016
  - Continue Refactor into subpackage
    Move container_setup from toplevel into container.setup
* Tue Mar 08 2016
  - Fixed completion generator
    The generated completion code was confused by the -py3 in the
    program name if used with kiwi-py3
* Tue Mar 08 2016
  - Continue Refactor into subpackage
    Move task classes into tasks namespace
* Tue Mar 08 2016
  - Move storage and subformat tests to match namespace
* Tue Mar 08 2016
  - Move builder test cases to match namespace
* Tue Mar 08 2016
  - Continue Refactor into subpackage
    Move DataSync, Checksum and Compress into the data namespace
* Tue Mar 08 2016
  - Continue Refactor into subpackage
    Move Kernel class to system namespace
* Mon Mar 07 2016
  - Package new system namespace
* Mon Mar 07 2016
  - Continue Refactor into subpackage
    system install, update, size, users, result should have their own namespace
* Mon Mar 07 2016
  - Consolidate all rsync calls into DataSync class
* Sun Mar 06 2016
  - Release mount after data sync for volume managers
* Fri Mar 04 2016
  - Fixed LVM volume setup for oem image type
    For the oem image type the requested volume sizes are applied
    on first boot of the appliance. Therefore inside of the image
    the volumes only needs to be created with their minimum required
* Fri Mar 04 2016
  - Refactor use of kiwi_LVM_ profile variables
    Reduce code duplication and encapsulate the reading of the
    data from the profile into a readVolumeSetup function.
    This is related to Issue #39
* Fri Mar 04 2016
  - Preserve extended attributes in tar archives
    tar doesn't preserve extended attributes by default, causing Docker
    images to not have any correct set-capabilities bits set on binaries
    such as ping. This is fixed by adding the --xattrs flag to the tar
* Thu Mar 03 2016
  - Sort output from helper/kiwi-boot-packages
* Thu Mar 03 2016
  - Fixed gce disk format
    The order of the files in the tarball is important. The first
    entry must be the manifest.json followed by disk.raw. In addition
    the style of the manifest.json has been adapted too. A space after
    colon seems to be required for gce to accept the data
* Wed Mar 02 2016
  - Fixed kernel names for dracut initrd system
    If dracut is used as initrd system we should not use the
    kiwi one shot names linux.vmx, initrd.vmx but stick with
    the official naming convention for kernel and initrd which
    is kernel-<version>, initrd-<version>
* Wed Mar 02 2016
  - Skip local repos if they don't exist
    Instead of raising an exception if a local repository does
    not exist, we will continue with a warning message. This is
    needed for a flawless integration with the buildservice.
    Inside of a buildservice environment only those repos are
    setup from which packages were taken. Thus it can happen that
    a configured repository does not exist in the buildservice
    build environment if the resolver would not take any package
    from this repository. kiwi should not fail to build such an
* Tue Mar 01 2016
  - Avoid lvcreate to ask for wiping swap signature
    When kiwi creates the logical volume for the swap space
    and there is already a swap signature at the place on
    disk, lvm stops and asks what to do with it. This should
    be generally avoided at that stage in the boot process
    Fixes (bnc#968601)
* Tue Mar 01 2016
  - Calculate checksum in chunks
* Mon Feb 29 2016
  - Don't prevent an oem image from a custom disk size
    An oem disk ist a self expandable disk and thus it normally
    doesn't make sense to specify a disk size for it. However there
    are filesystems like btrfs which are very hard to precalculate
    a minimum required disk space for X bytes of data. In this
    situation a user should have the opportunity to specify a
* Mon Feb 29 2016
  - Don't call dracut in background from kiwi initrd
    This was useful to speedup the boot but opens a potential
    race condition if a reboot happens while dracut is still
    processing. With the last extension to use dracut as initrd
    system people now have the choice what fits their needs
    better and this allows us to revert the background call
* Mon Feb 29 2016
  - Added support for using dracut initrd
    As of today only the kiwi initrd could be used with an image
    build. This commit adds a new initrd_system attribute and
    allows to select between kiwi and dracut as initrd system.
    Please note the dracut initrd does not support all features
    of the kiwi initrd. This fixes #25
* Mon Feb 29 2016
  - Add a feature drop list to the README
* Mon Feb 29 2016
  - update due to structure changes
* Mon Feb 29 2016
  - Update README
    Use the real executable name for the documentation
* Mon Feb 29 2016
  - Continue Refactor into subpackage
    storage operations should have their own namespace
* Mon Feb 29 2016
  - Continue Refactor into subpackage
    container and container_setup should have their own namespace
* Mon Feb 29 2016
  - Continue Refactor into subpackage
    disk namespace init is not a factory, thus the Disk class should
    have its own namespace. We choose
* Mon Feb 29 2016
  - Continue Refactor into subpackage
    rename dformat to subformat
* Mon Feb 29 2016
  - Continue Refactor into subpackage
    The builder classes should have their own namespace
* Mon Feb 29 2016
  - Fixed update alternative setup for kiwi completion
    kiwi itself is provided as update alternative for kiwi-py3
    Thus the completion should be based on kiwi-py3
* Fri Feb 26 2016
  - Refactor into subpackage to fix #23
    Codecoverage are 100% and tests are green
    * Refactor archive_*.py -> archive subpackage
    * Refactor partitioner_*.py -> partitioner subpackage
    * Refactor package_manager_*.py -> package_manager/ subpackage
    * Refactor bootloader_config*.py -> bootloader/config/ subpackage
    * Refactor bootloader_template*.py -> bootloader/template/ subpackage
    * Refactor bootloader_install*.py -> bootloader/install/ subpackage
    * Refactor repository*.py -> repository/ subpackage
    * Refactor filesystem*.py -> filesystem/ subpackage
    * Refactor dist_*.py -> dist/dformat subpackage
      The name `dformat` as package name is needed to avoid any name
      conflicts with the built-in function `format`.
    * Refactor volume_manager*.py -> volume_manager/ subpackage
    * Refactor boot_image*.py -> boot/image/ subpackage
* Fri Feb 26 2016
  - Remove unecessary Travis requirements
* Fri Feb 26 2016
  - Fix check target
    Didn't have a basepython line, fixed strange tox error
* Fri Feb 26 2016
  - Enhanced Contributing, add new Developing section
    * Create a procedure in section Contributing
    * Add new Developing section to describe how to use tox
* Fri Feb 26 2016
  - Fixed device map for VolumeManagerBtrfs
    The return value from get_device must be a map containing
    an instance of a DeviceProvider, not only the DeviceProvider
* Fri Feb 26 2016
  - Refactor use of mount/umount calls
    Provide a MountManager class and handle all mount/umount
    calls in instances of MountManager
* Fri Feb 26 2016
  - Don't write grub.cfg to EFI directory
    Originally the file was written there as reference, but nothing
    will ever update that file if the real grub configuration changes.
    Thus it doesn't make sense to provide this information (bnc#968270)
* Fri Feb 26 2016
  - Add support for POWER architecture
    Implements requirements for the partition and bootloader setup
    in order to build images for ppc64 architectures. Fixes #18
* Thu Feb 25 2016
  - Refactor grub2 bootloader installation
    Make use of grub2-install to install the bootloader
* Thu Feb 25 2016
  - Changed debug log in case of failed command
    Also log the stdout data from a failed command. So far we
    expected error data on stderr but there are also commands
    which print error messages on stdout. It should us at least
    worth a debug message with this information
* Wed Feb 24 2016
  - Use tox in .travis.yml, remove .travis.script
* Wed Feb 24 2016
  - Fixed helper/kiwi-boot-packages
    Take care for packages marked for a specific architecture
* Wed Feb 24 2016
  - Delete unused helper/run-pep8
* Wed Feb 24 2016
  - Adapt make flake target to changed tox target
* Wed Feb 24 2016
  - Add --cover-min-percentage=100 and helper script
* Wed Feb 24 2016
  - Fixed spec file for kiwi-boot-requires
    The meta package for the buildservice has to require
    the new python3-kiwi package
* Wed Feb 24 2016
  - Use --cover-min-percentage=100 instead of coverage
* Wed Feb 24 2016
  - Replace helper/coverage-check with coverage
    Use --fail-under=99 option which fails for tests under 100%
* Wed Feb 24 2016
  - keep packages in yum cache
* Wed Feb 24 2016
  - Rename flake -> check, move spell
    * Move spell target/step to doc.spell
    * Call doc.spell in the doc target/step
    * Rename flake to check (to make it independant of any tool)
* Wed Feb 24 2016
  - Spelling fixes
* Wed Feb 24 2016
  - Tox setup updates
    Integrate with Makefile, delete pep8 target from Makefile,
    use flake8, update travis script, delete coverage reference,
    we want 100% anywhere
* Wed Feb 24 2016
  - Fixed raid_device_test
    The test did not mock os.path.exists and thus could fail
    on systems which uses a raid system
* Wed Feb 24 2016
  - Update word list
* Tue Feb 23 2016
  - Remove empty line to avoid error message
    Avoid following error message:
    CRITICAL **: enchant_is_title_case: assertion `word && *word' failed
* Tue Feb 23 2016
  - Activate personal spellchecking dictionary
* Tue Feb 23 2016
  - Open travis check for all branches
* Tue Feb 23 2016
  - Added kiwi-filesystem provides to spec template
    The main python3-kiwi package provides support for these
    filesystem image types
* Tue Feb 23 2016
  - Integrated Tox
    * First incarnation of tox.ini
    * Extend
    * Add doc/requirements.txt
    * Extend with 'sphinxcontrib.spelling' extension
    * Add wordlist to doc/source/spelling_wordlist.txt
    * Add flake8 section in setup.cfg
* Tue Feb 23 2016
  - Fixed cmdline lookup
    Only check contents of cmdline if it is not None
* Tue Feb 23 2016
  - No fdupes checking required anymore
* Tue Feb 23 2016
  - Don't track root/usr/share/locale in boot images
    The data there is now generated by the make po target
* Tue Feb 23 2016
  - Fixed fuzzy i18n for en_US/LC_MESSAGES/kiwi.po
* Tue Feb 23 2016
  - Added kiwi-image provides to spec template
    The main python3-kiwi package provides support for these
    image types.
* Tue Feb 23 2016
  - Prevent any output if quiet is set
    If exec >/dev/null is run before setterm clears the screen,
    then "Failed to find cpu0 device node" is displayed even if
    quiet is set.
* Tue Feb 23 2016
  - Fixed shell syntax in grub2 template
    Fixes (bnc#961334)
* Mon Feb 22 2016
  - Refactor suseStripKernel
    The way the method downsizes the kernel tree is wrong in
    several places and very hard to read. Therefore the code
    has been refactored and splitted into task methods which
    can run independently from each other. As one result the
    kernel tree is not missing any metadata and/or update
    weak-updates paths anymore. Fixes (bnc#965830)
* Mon Feb 22 2016
  - Remove flush before resize filesystem
    According to the manpage, -F is flushing the fileystem buffer
    caches. which is only really useful for doing resize2fs time
    trials. With current Tumbleweed installed on MMC, -F triggers
    a Inappropriate ioctl for device while trying to flush error,
    and then fails to resize.
* Mon Feb 22 2016
  - Update arm boot image descriptions
    Grub2 adds 35MB to the initrd for no reason on armv6/v7, as
    those images use u-boot scripts for booting.
* Mon Feb 22 2016
  - Fixed checkFileSystem call
    In the refactoring fc363cc, the parameters of checkFileSystem got
    changed to expect the device name, but one of the invocations didn't
    pass down the device name due to a typo.
* Mon Feb 22 2016
  - Ignore fdasd errors
    Like fdisk, fdasd also reports an error when re-reading the
    partition table. But the table was written correctly so we
    continue for the moment and add a debug message
* Sun Feb 21 2016
  - Fixed boot image result filename
    Has to follow the naming convention
* Sun Feb 21 2016
  - Fixed pxe builder kernel/hypervisor target path
* Sun Feb 21 2016
  - Use bytes type with hashlib
* Sun Feb 21 2016
  - Refactor result bundler
    instead of being clever in the result bundler we should be
    more explicit when adding a result to the result instance.
    Therefore the result.add method now also allows to specify
    if this result should be part of a result bundle and whether
    it should be placed compressed or uncompressed in this bundle
* Sun Feb 21 2016
  - Added metadata rpm files to all builders
    rpm packages and verification information is now added to
    all builder results. Fixes #13
* Sun Feb 21 2016
  - Fixing code smells from
    Fixed issues:
    * Unused imports
    * Unused variables
    * Specify string format arguments as logging function parameters
      (log.warning("%s bla" % x) -> log.warning("%s bla", x)
* Sun Feb 21 2016
  - Ignore backup files
* Sun Feb 21 2016
  - Added the following system setup methods
    export_rpm_package_list and export_rpm_package_verification
    Used to provide rpm package metadata and verification information
    for rpm based image builds
* Fri Feb 19 2016
  - Improve doc
    * Consistently use KIWI
    * Fixed punctuation
    * Added zypper ar for adding KIWI's OBS repo
* Fri Feb 19 2016
  - Fixed unit test read return result
    Unit test mocking read should return a bytes array and not
    a string because that's what python3 would do in reality
* Fri Feb 19 2016
  - Fixed path location in disk_format_image result
* Fri Feb 19 2016
  - Fixed disk format builder
    This one was missing the output image name adaptions
* Fri Feb 19 2016
  - Regenerate xml_parse data structures for python3
* Fri Feb 19 2016
  - Better error response in debug output
    If a fails with an error code != 0 but not data was
    produced on the stderr channel, we provide this as information
    to the caller
* Fri Feb 19 2016
  - Port kiwicompat to python 3
* Thu Feb 18 2016
  - Port helper tools to python3
    Also fixes completion to correctly parse the toplevel --compat option
* Thu Feb 18 2016
  - Do not activate dmraid paritions
    Only activate the device itself, not the partitions,
    that may also exist. If partitions exist, the UDEV rules
    will create the corresponding "_partX" symlinks for each
    partition within "/dev/mapper, which is totally sufficient.
* Thu Feb 18 2016
  - Fixed cut and paste error in spec template
    correct the project Url
* Thu Feb 18 2016
  - Update README
    add install information for python3-devel
* Thu Feb 18 2016
  - Fixed README
    wrong reference to env2 where it should be env3
* Thu Feb 18 2016
  - Update README
* Wed Feb 17 2016
  - Update travis env to python 3.4
* Wed Feb 17 2016
  - Port application from python 2.7 to 3.4
    For new applications like this kiwi version and its use cases
    it is better to base it on a more recent python version
* Wed Feb 17 2016
  - Fixed bundling container results
    Container images are already compressed, there is no need
    for the bundler to do that again
* Wed Feb 17 2016
  - Use pinch_system with force in any case
    Deletion of packages should be done with the force flag set.
    Otherwise the package manager computes a resolved list for
    the deletion targets which causes other packages to be
    deleted which is unwanted
* Wed Feb 17 2016
  - Fixed host to image root data setup
    On bind mounts check if the origin path exists on the host.
    On copy check if the origin file exists on the host
* Wed Feb 17 2016
  - Fixed deactivate_systemd_service
    Check if the service file exists, if not there is no need
    to deactivate an non existing service.
* Tue Feb 16 2016
  - Use alternatives mechanism for completion file
    This avoids the package conflict with the legacs kiwi version
* Tue Feb 16 2016
  - Weaken kiwi-tools requirement
* Mon Feb 15 2016
  - Handle 32bit Intel arch as ix86 in boot code
* Mon Feb 15 2016
  - Allow building 32bit bios images
* Mon Feb 15 2016
  - Delete %post from kiwi-pxeboot
    We do not provide a default config file for the pxe setup anymore.
    There is no good default file we can provide here because we don't
    know how the user has configured a pxe image. The documentation
    should explain how to setup the pxe config and infrastructure with
    the help of the static data provided by the kiwi-pxeboot package
* Mon Feb 15 2016
  - Don't require python-Sphinx at build time
    Sphinx is not available on all platforms and required only to
    build the manual pages. Thus the make build target can build
    the man pages and pack the result into the source tarball
* Mon Feb 15 2016
  - Don't strip ctc_configure from initrd
    ctc_configure is used on s390 images
* Mon Feb 15 2016
  - Added man page for result bundle command
* Mon Feb 15 2016
  - Added result bundler
* Fri Feb 12 2016
  - Added kiwi-boot-requires buildservice meta package
* Thu Feb 11 2016
  - Delete unused .releasetags helper
    Fixes #9
* Thu Feb 11 2016
  - Update README
* Thu Feb 11 2016
  - Update README
* Thu Feb 11 2016
  - Added system update manual page
* Thu Feb 11 2016
  - Create manual pages
    Create man pages for result list, system build, prepare and create
* Thu Feb 11 2016
  - Added pv xen drivers to boot descriptions
    Beginning with SLE12 SP2 the default kernel is a pvops
    capable kernel. This means it can be used in a Xen HVM full
    virtual machine as well as in a PV - paravirtual machine.
    However it's required to keep the paravirtual net, block
    modules in the initrd. As their location also has move
    an update of the boot image descriptions was necessary
* Thu Feb 11 2016
  - Fixed wait message in waitFor boot functions
    Better indicate for what we are waiting
* Thu Feb 11 2016
  - Load xen modules by alias only
* Thu Feb 11 2016
  - Fixed validation of custom root cmdline variable
    A variable of the format root=LABEL=x was not correctly validated
* Thu Feb 11 2016
  - Change default ec2 root_cmdline_parameter
    For ec2 based firmware the value root=UUID=x is provided
    instead of a static device node
* Thu Feb 11 2016
  - Refactor internal boot image task
    Make a factory out of the task and allow to have e.g
    a dracut boot image task at a later point in time.
    The BootImageBase class creates an interface for this
    implementation. So far only BootImageKiwi is implemented
* Wed Feb 10 2016
  - Added export_modprobe_setup method to SystemSetup
    export_modprobe_setup copies the contents of etc/modprobe.d
    to a specified target root directory. The method is used to
    transfer the modprobe configuration from the system image
    to the boot image
* Wed Feb 10 2016
  - Fixed archive_builder_test
    Mock platform value
* Wed Feb 10 2016
  - Added compatibility information to main man page
* Wed Feb 10 2016
  - Put arch and version to output image file name
* Wed Feb 10 2016
  - Added quick start example to main kiwi manual page
* Tue Feb 09 2016
  - Fill master manual page with content
* Tue Feb 09 2016
  - Added git like command completion
    Provide a 'Did you mean' log message for unclear task names
* Tue Feb 09 2016
  - Update README
* Tue Feb 09 2016
  - Fixed non-executable-script rpmlint warning
* Tue Feb 09 2016
  - Man pages are below level 2
* Tue Feb 09 2016
  - Fixed rpm-buildroot-usage rpmlint warning
* Tue Feb 09 2016
  - Fixed non-executable-script rpmlint warning
* Tue Feb 09 2016
  - Delete unused .md5 script
* Tue Feb 09 2016
  - Fixed rpm package build
* Tue Feb 09 2016
  - Fixed dracut call
    Always create a generic initrd, don't pass -H
* Tue Feb 09 2016
  - Fixed custom args setup for vmdk format
    custom args is a hash with option/value pairs. For vmdk the option
    could be e.g adapter_type=value and the value is None. This is by
    intention because qemu which receives those type of options allows
    only the syntax "-o option=value". The kiwi code setting up the
    options did not check correctly if there really is a value for
    e.g adapter_type
* Tue Feb 09 2016
  - Allow alternative locations for grub installation
    Different distributions install grub2 to different places.
    Therefore kiwi should not use a fixed location but allow
    to lookup grub data at several places
* Tue Feb 09 2016
  - Fixed unit test for fix_boot_catalog on big endian
* Tue Feb 09 2016
  - Fixed unit test for fix_boot_catalog on big endian
* Sun Feb 07 2016
  - Make sure to cleanup yum requests after processing
* Sun Feb 07 2016
  - Fixed CommandIterator
    check for output before sending an iteration stop
* Sun Feb 07 2016
  - Fixed stateful copy of repository section
    Profiles are not copied because they might not exist in
    the target description
* Sun Feb 07 2016
  - Fixed host to root path patcher
    Don't be confused by multiple /'es
* Sun Feb 07 2016
  - Added support for yum package manager
* Sun Feb 07 2016
  - Fixed use of iso mounted repositories
    When using an iso as repo, kiwi mounts it to a temporary
    location. The location is different for each build and
    therefore the zypper repo file needs to be recreated for
    any new build in this situation
* Sun Feb 07 2016
  - Check if config file exists
    Before updating a config file, check if it exists. If
    it is not present skip the configuration and print a
    warning message
* Sat Feb 06 2016
  - Added yum repository support
* Sat Feb 06 2016
  - Make man install target more stable
* Sat Feb 06 2016
  - Update source manifest
    include only doc Makefile and source, the pages are
    build at build time
* Sat Feb 06 2016
  - Include installation of man pages to spec file
* Sat Feb 06 2016
  - Added man page templates for all commands
* Fri Feb 05 2016
  - Added man page templates
    Added template for master page and result_list
* Fri Feb 05 2016
  - Added initial sphinx documentation structure
    The documentation will cover kiwi manual pages. more detailed
    documentation will be written and maintained in colaboration
    with the documentation department
* Fri Feb 05 2016
  - Fixed use of noglob shell option
* Thu Feb 04 2016
  - Added support for kiwi --compat
    The --compat call will trigger the call of the kiwicompat
    tool written to support legacy kiwi commandlines. An example
    could look like the following call:
    sudo kiwi --compat -- --build /my/description --type vmx -d /my/dest
    Please be aware the -- is required to tell docopt to treat all
    options as parameters
* Wed Feb 03 2016
  - Prevent duplicate error logging
* Wed Feb 03 2016
  - Refactor CommandProcess class
    Use an iterator class to run through the process. implement
    poll variants explicit and clear structured
* Wed Feb 03 2016
  - Fixed updateRootDeviceFstab
    Support by-label mount entries for btrfs subvolumes
    This fixes bnc#964474
* Wed Feb 03 2016
  - Add kiwicompat to Makefile build and install target
* Wed Feb 03 2016
  - Update README
* Wed Feb 03 2016
  - Update README
* Wed Feb 03 2016
  - Bump version: 8.10.0 → 8.10.1
* Tue Feb 02 2016
  - Prepare for package building
* Tue Feb 02 2016
  - Follow up fix for fstab setup
    Use the system installed fstab as default if present
* Tue Feb 02 2016
  - Support building in buildservice worker
    The repo setup inside of a buildservice worker uses a static
    path below /usr/src/packages/SOURCES/repos/. We need to adapt
    the provided obs uri type to match this criteria
* Tue Feb 02 2016
  - Don't add kernel filesystems to fstab
    Systems with systemd which this kiwi version aims for, doesn't
    need proc, sysfs, debugfs and friends to be part of the fstab
    This fixes bnc#964472
* Fri Jan 29 2016
  - Fixed btrfs build with snapshots
* Fri Jan 29 2016
  - Allow system to be installed on btrfs snapshot
    This fixes (bnc#946648)
* Fri Jan 29 2016
  - Put kiwi_btrfs_root_is_snapshot to boot profile
* Fri Jan 29 2016
  - Recompile schema and data structures
    New attribute btrfs_root_is_snapshot and methods
* Wed Jan 27 2016
  - Evaluate kiwi_btrfs_root_is_snapshot in boot code
    If set it's required to mount the subvolumes like it is
    done with lvm volumes. In addition this patch fixes the
    update of the fstab file which has to contain an entry
    for each subvolume excluding snapshots and the toplevel
    This is related to (bnc#946648)
* Wed Jan 27 2016
  - Added btrfs_root_is_snapshot attribute
    This is related to (bnc#946648)
* Wed Jan 27 2016
  - Added fix_boot_catalog and relocate_boot_catalog
* Tue Jan 26 2016
  - Prevent duplicate validation of cmdline
* Tue Jan 26 2016
  - Fixed grub2 xen guest bootloader config
* Mon Jan 25 2016
  - More modules not present for grub2/x86_64-xen
* Mon Jan 25 2016
  - There is no multiboot module for grub2/x86_64-xen
* Mon Jan 25 2016
  - Make sure get_partition_table_type returns a value
* Mon Jan 25 2016
  - Use bash to call config scripts
* Mon Jan 25 2016
  - Fixed regular expression pattern
    use re.escape to make sure the search string has special regular
    expression characters quoted correctly
* Mon Jan 25 2016
  - Added support for using internal build service
    An option --obs-repo-internal was added
* Mon Jan 25 2016
  - Add support for alternative config file *.kiwi
* Mon Jan 25 2016
  - Allow to build directly from buildservice checkout
* Mon Jan 25 2016
  - Fix misleading variable name
* Mon Jan 25 2016
  - Move default boot timeout to Defaults class
* Mon Jan 25 2016
  - Fixed boot exclude for zipl case
* Mon Jan 25 2016
  - Fixed zipl bootloader setup and install
    quote special characters in title for menu. refactor the
    zipl bootloader install class to know about the boot partition
    device node
* Mon Jan 25 2016
  - Added title quoting method for older loaders
* Mon Jan 25 2016
  - Move VTOC creation into Disk class
* Mon Jan 25 2016
  - Fixed missing setup_disk_boot_images for zipl
    The interface class implements this with a raise condition
    by default. For zipl no bootloader images needs to be created
    Thus implement the method and pass
* Mon Jan 25 2016
  - Fixed typo in list assignment
* Mon Jan 25 2016
  - Fixed LoopDevice class
    custom blocksize value must be passed as string to the
    command level not as integer
* Mon Jan 25 2016
  - Platform fixes for XML tests
* Mon Jan 25 2016
  - Platform endian fix for vhd tag test
* Mon Jan 25 2016
  - Platform fixes for unit tests
* Mon Jan 25 2016
  - Platform mock for grub2 bootloader tests
* Mon Jan 25 2016
  - Platform mock for grub2 bootloader tests
* Sun Jan 24 2016
  - Added BootLoaderInstallZipl class
* Sun Jan 24 2016
  - Activate zipl bootloader config in factory class
* Fri Jan 22 2016
  - Finished BootLoaderConfigZipl class and tests
* Fri Jan 22 2016
  - Delete unused patch statement from test
* Thu Jan 21 2016
  - Added BootLoaderConfigZipl class
    The implementation is still unfinished
* Thu Jan 21 2016
  - Pass the disk device to the bootloader config
    As a custom option the BootLoaderConfig instance now
    receives the target disk device node. So far this is only
    used in the zipl case where it is needed which is the
    reason why it is kept as a custom argument
* Thu Jan 21 2016
  - Allow custom options for bootloader config classes
* Thu Jan 21 2016
  - Added zipl bootloader template
* Wed Jan 20 2016
  - Added partitioner_dasd for s390
* Wed Jan 20 2016
  - Refactor Firmware class
    more information from the XML description is needed in order
    to make e.g decisions about the partition table type to use
    according to the firmware setup in combination with e.g the
    target loader type on s390. Thus the class now receives an
    instance of the XML state and not only the firmware attribute
* Wed Jan 20 2016
  - Disable setup of hwclock
    hwclock seems not exist on all supported architectures. In addition
    the build process should not fiddle with the build host hardware
* Wed Jan 20 2016
  - No need for a condition if there is no alternative
* Wed Jan 20 2016
  - No need for a condition if there is no alternative
* Wed Jan 20 2016
  - Use 800x600 default for grub2 gfxmode
* Wed Jan 20 2016
  - Close progress line with CR when finished
* Wed Jan 20 2016
  - Added ImageBuilder factory
* Tue Jan 19 2016
  - Added system build command
    Allows to combine prepare and create into one big task
* Tue Jan 19 2016
  - Better error message for pickle exceptions
    There is no meaningfull error message for pickle.load
    exceptions. Thus only provide the exception type and our
    own message
* Tue Jan 19 2016
  - Use pickle instead of marshal
* Tue Jan 19 2016
  - Fixes for the container builder
    in the setup if the files to update do not exist the process
    failed. This patch adds a check prior to changing the file
* Tue Jan 19 2016
  - Make sure the create task creates the target dir
* Tue Jan 19 2016
  - Fixed result object dump
    marshal.dump requires an open file object not a filename
* Tue Jan 19 2016
  - Added ContainerBuilder
    currently supports building of docker containers
* Tue Jan 19 2016
  - Added ContainerImage class
    Factory plus implementation for docker
* Tue Jan 19 2016
  - Refactor variable name for root directory
    If it is clear the source directory is the root directory of
    the image the variable should be named root_dir not source_dir
* Mon Jan 18 2016
  - Fixing landscape issues
* Mon Jan 18 2016
  - Added ContainerSetup classes
    Base and Factory plus implementation for docker
* Fri Jan 15 2016
  - Refactor user/groups setup
    Provide an easier to travers data type in xml_state for the
    user and groups. The get_users() method returns a list of
    tuples which assigns each user list the group name and id
    it belongs to
* Fri Jan 15 2016
  - Use normpath to avoid double slash in output
* Fri Jan 15 2016
  - Added kiwi result task
    Implementing 'kiwi result list' which marshal loads the
    serialized result instance from a previous build and shows
    the build results
* Fri Jan 15 2016
  - Dump the result instance as a marshal dump
* Thu Jan 14 2016
  - Add clic as supported live media build target
* Thu Jan 14 2016
  - Added FileSystemClicFs class
* Wed Jan 13 2016
  - Fixed contents of header_end block
    off by one bug
* Wed Jan 13 2016
  - Finished LiveImageBuilder for overlay iso type
* Wed Jan 13 2016
  - Added check if UDF extension is needed or not
* Wed Jan 13 2016
  - Put supported live image iso types into defaults
* Wed Jan 13 2016
  - Added live ISO grub2 efi template and setup
* Wed Jan 13 2016
  - pep8 fixes
* Tue Jan 12 2016
  - Rebuild schema and data structures
* Tue Jan 12 2016
  - Allow xfs as hybrid RW file system
* Tue Jan 12 2016
  - Continue with LiveImageBuilder class
    Added isolinux bootloader setup, finished live build procedure
    Live metadata injection still missing. grub2 efi boot for live
    image still missing
* Tue Jan 12 2016
  - Don't use filesystem specific mount option
    When mounting the read write filesystem, prevent using
    filesystem specific options like barrier
* Tue Jan 12 2016
  - Use HYBRID_EXT4_OPTS in fat container filesystem
* Tue Jan 12 2016
  - Check read write filesystem prior to mounting
    If a filesystem type could be identified on the read write
    partition check it before mounting to eliminate a potential
    dirty state
* Tue Jan 12 2016
  - Cascade exfat mount
    try normal mount first, if this does not work try fuse mount
    Normally this is done automatically by the mount program but
    if not we will give the direct fuse mount a chance
* Tue Jan 12 2016
  - Fixed Makefile target to build data structures
    A change in kiwi/schema/kiwi.rnc triggers the build of the
    schema rng version as well as an auto update of the data
    structures via python's generateDS. The intermediate xsd
    schema format is only relevant for the data structure
    creation process
* Mon Jan 11 2016
  - Make createFileSystem more robust
    When passing in a loop file instead of a device name, the method
    should be smart enough to handle the name without shell evaluation
* Mon Jan 11 2016
  - Added support for exfat as hybrid filesystem
    In addition to fat also exfat is now supported as persistent
    write filesystem. Because of the limitations of a fat filesystem
    fat and exfat are only used as a container filesystem providing
    an ext4 linux filesystem as a cowfile. The algorithm to create
    the size of the cow file has also been changed to use half of
    the size of the write partition or on fat a max size of 4G.
    The size of the cowfile is also prepared to become overwritten.
    However the XML definition and implementation to do this
    is still missing
* Mon Jan 11 2016
  - Reread partition table after hybrid setup
    The hybrid write partition is created via fdisk. Some version
    of fdisk does not send the ioctl to let the kernel reread the
    table or fdisk itself holds it busy. Thus we actively initiate
    a reread via blockdev
* Mon Jan 11 2016
  - Optimize ext4 hybrid write filesystem options
    Optimized for 512kB erase block size
* Mon Jan 11 2016
  - Use mount options to increase overlay performace
    For overlay filesystems not writing into a tmpfs performance is
    more important than safety. We use this combination of options
    for now, if you encounter stability problems please let us know
* Mon Jan 11 2016
  - Use -f force option for extX filesystem checker
* Mon Jan 11 2016
  - Refactor and cleanup setupReadWrite
    Fix misleading error message and refactor the code to be less
    complex and more clear in the processing of tasks
* Mon Jan 11 2016
  - Allow custom cowfile name for persistent data
    Instead of a fixed name 'cowfile' we allow a custom name which is
    predefined in HYBRID_PERSISTENT_FILENAME and prepared to become
    overwritten by an XML defintion whose implementation will follow
    later. Reason for the change is that a cowfile is visible as
    plain data file to the operating system if e.g used on a live
    stick. It should be more clear to the user what this file is
    good for
* Mon Jan 11 2016
  - Protect mkfs.exfat from being deleted
    Added to the strip tools section in order to keep it in the initrd
* Mon Jan 11 2016
  - Added support for exfat creation and probing
    In preparation to use exfat instead of vfat in a loop container
    for persistent data it's required to provide support for mkfs.exfat
* Mon Jan 11 2016
  - Make loop_setup and loop_delete more robust
    The methods did not cope well with filenames containing bash
    characters with special meaning e.g spaces. For use with a
    iso hybrid cowfile whose name is visible in the OS the methods
    should be able to work with any given filename
* Sun Jan 10 2016
  - Started with LiveImageBuilder class
    Added interface and required steps. tests and implementation
    are missing and will follow
* Sun Jan 10 2016
  - Added archive builder
* Sat Jan 09 2016
  - Added repo handling to compat caller
    Also added process execution with translated arguments
* Fri Jan 08 2016
  - Add compat translation for prepare/create/upgrade
* Tue Jan 05 2016
  - Added kiwicompat to support legacy commandline
* Tue Jan 05 2016
  - Added install pxe archive support
* Tue Jan 05 2016
  - Added warning message if pxedeploy section is used
    At the moment there is no class to build the pxe client config
    file from information provided with the optional pxedeploy
    section. However this is not fatal to the build because the file
    could be created manually too. Thus a warning message is shown
    which will go away when the pxe client config file creation
    has been ported
* Tue Jan 05 2016
  - cleanup test data to be consistent
* Tue Jan 05 2016
  - Added recovery setup
* Mon Jan 04 2016
  - Added DiskFormatGce class implementation
* Mon Jan 04 2016
  - Fixed suffix name for compressed archives
* Sat Jan 02 2016
  - Added creation of gnu and xz archives to tar class
* Sat Jan 02 2016
  - Refactor result collection
    Put the creation of a result object into the builder classes
    and return them from there. The builder instances knows about
    the results not the task instances
* Fri Jan 01 2016
  - Fixed option handling for vmdk format
* Fri Jan 01 2016
  - Activate disk format building in disk builder
    If disk format and install media is configured together only
    the install media will be built and a warning message for
    skipping the disk format is shown
* Fri Jan 01 2016
  - Added custom argument handling for disk formats
* Fri Jan 01 2016
  - Added DiskFormat factory
* Fri Jan 01 2016
  - Added DiskFormatVmdk class implementation
* Tue Dec 29 2015
  - pep8 fixes
* Tue Dec 29 2015
  - Added DiskFormatVhdFixed class implementation
* Tue Dec 29 2015
  - Delete unused test data symlinks
* Wed Dec 23 2015
  - Added DiskFormatVhd class implementation
* Wed Dec 23 2015
  - Added DiskFormat base class
    Also added implementation for DiskFormatQcow2.
    More format classes will follow next
* Wed Dec 23 2015
  - Fixed import of kernel parameters including spaces
    Kernel parameters like PRODUCT_TYPE=“PRODUCT BANANA” breaks
    the code in includeKernelParameters. This patch allows spaces
    for values in a way that it replaces the embedded whitespace
    with \030 before parsing and then reverting after parsing.
    Thanks to Jay Nitikman for providing the patch
* Tue Dec 22 2015
  - Fixed LUKS setup for dracut
    The system image has to provide /etc/crypttab to allow dracut
    to create a working initrd for reboot. In addition the name
    of the luks map must be 'luks' to make dracut happy.
* Tue Dec 22 2015
  - luks setup triggers boot partition by default
* Tue Dec 22 2015
  - Add LuksDevice class and implementation
    Also implemented luks support in DiskBuilder
* Tue Dec 22 2015
  - Handle /boot/vc files for Raspberry Pi
    openSUSE Tumbleweed raspberrypi-firmware[-branding-openSUSE] packages
    have been updated to install files to /boot/vc rather than /boot.
    Ensure that all files in /boot/vc are provided in image/loader for
    further reference
* Tue Dec 22 2015
  - Refactor file system check in boot code
* Mon Dec 21 2015
  - Make sure VolumeManager instance updates root map
    An instance of volume manager could cause the creation of a new
    device e.g in case of LVM. The master device map in the disk
    builder has to be updated with this device
* Mon Dec 21 2015
  - Fixed unconditional lookup of boot partition id
* Mon Dec 21 2015
  - Package check for packages marked for deletion
    If none of the packages to become deleted are installed we
    will raise an error, basically to force people to fixup the
    image description
* Mon Dec 21 2015
  - Better error message for call with unknown command
    If kiwi is called with an unknown command an error message
    showing which commands actually exists should be shown
* Mon Dec 21 2015
  - Fixed user group creation
    The command name is groupadd not addgroup
* Mon Dec 21 2015
  - Fixed label and UUID support for XFS creation
* Mon Dec 21 2015
  - Traverse dictionary in ordered mode
* Mon Dec 21 2015
  - Return sorted lists for packages/archives
* Mon Dec 21 2015
  - Traverse dictionary in ordered mode
* Mon Dec 21 2015
  - Traverse dictionary in ordered mode
* Mon Dec 21 2015
  - Traverse dictionary in ordered mode
* Fri Dec 18 2015
  - Added __githash__ to
    Any time the is changed and committed the git ident
    will be reset by git. After a checkout of the ident
    will be updated in to the git commit id of
    Whenever we relase a new kiwi version the process is as follows:
    1. run bumpversion to set the version for the release
    2. run tox to create the source tarball for the release
    We have to make sure tox calls a git checkout of
* Thu Dec 17 2015
  - Consolidate use of Makefiles for schema conversion
    As we are going to switch to tox the Makefile setup should be
    cleaned up. The make targets to build xsd and rng schemas has
    been moved to the master Makefile
* Thu Dec 17 2015
  - Consolidate use of Makefiles for locale setup
    As we are going to switch to tox the Makefile setup should be
    cleaned up. The make targets to handle po files and their
    installation has now been moved to the master Makefile
* Thu Dec 17 2015
  - Update translation po files with template
* Thu Dec 17 2015
  - Consolidate use of Makefiles for compiling tools
    As we are going to switch to tox the Makefile setup should be
    cleaned up. I'm going to move the various places and its tasks
    into one master Makefile to make it easier to move the targets
    one after the other into a tox setup.
* Thu Dec 17 2015
  - Refactor source code structure
    All files referenced by kiwi should live below the kiwi
    namespace and should be referenced by the resource_filename()
    method from the pkg_resources
* Wed Dec 16 2015
  - Update exclude list for boot image runtime data
    There are some directories needed during boot image creation
    time, e.g grub2 modules to create grub images. But at boot
    time this data is no longer required and would just waste
    space in the initrd
* Wed Dec 16 2015
  - Delete dracut from boot images
    dracut is needed in the system and also called from there
    by the kiwi boot image, but inside of the boot image it is
    not needed and just wastes space
* Wed Dec 16 2015
  - Add some paths not needed in the boot image
* Wed Dec 16 2015
  - Added boot messages translations
* Wed Dec 16 2015
  - Exclude /image from boot images
* Wed Dec 16 2015
  - Change default boot image description path
    Let the default boot image description path point to boot/arch
* Wed Dec 16 2015
  - Make sure the boot image profile provides its name
    The variable kiwi_initrdname was added to the .profile
    environment for boot image builds
* Wed Dec 16 2015
  - Update boot image functions
    Delete a lot of legacy code from the bash boot code
* Wed Dec 16 2015
  - Added boot image descriptions
    Provide boot(initrd) image descriptions for supported
    architectures and distributions
* Tue Dec 15 2015
  - Fixed unit tests, mock NamedTemporaryFile
* Tue Dec 15 2015
  - Added coverage to developer requirements
* Tue Dec 15 2015
  - Use "next generation" string
    To distinguish it between old and new KIWI
* Tue Dec 15 2015
  - Review and add corrections
    * Consistent spelling: kiwi -> KIWI, python -> Python
    * Add punctuation
    * Use backticks for scripts and dirs
* Tue Dec 15 2015
  - Update development status to be inline with
* Tue Dec 15 2015
  - Deleted no longer needed bin/kiwi script
* Tue Dec 15 2015
  - Update README
    Added developer information how to contribute
* Tue Dec 15 2015
  - Minor changes in virtualenv setup file names
    Moved the requirements.txt setup files into a namespace
    called .virtualenv in order to stay compatible with the
    .travis requirement files
* Tue Dec 15 2015
  - Update development status in
* Mon Dec 14 2015
  - Fix #5: Improve
  - use setuptools always, no need to check for distutils
  - include keywords 'include_package_data', 'zip_safe', and 'classifiers'
    * setup.cfg:
  - add bdist_wheel and sdist section
    * Add missing (needed for dist)
    * Remove executable bit for LICENSE and
* Mon Dec 14 2015
  - Fix #3:  Requirement for Virtual Envs
    * Add requirements.txt and dev-requirements.txt
      The dev-requirements.txt installs requirements.txt automatically
    * Ignore .env, .env2, and .env3 virtual env directories
* Mon Dec 14 2015
  - Fix #4: support bumpversion with .bumpversion.cfg
* Mon Dec 14 2015
  - Added RaidDevice class
    implementation in disk_builder
* Fri Dec 11 2015
  - Fixed hybrid call
    offset number should be passed as string to Command
* Fri Dec 11 2015
  __VERSION__ -> __version__
* Fri Dec 11 2015
  - Rename __VERSION__ -> __version__
* Thu Dec 10 2015
  - Added hybrid ISO setup
* Thu Dec 10 2015
  - Refactor creation of a PackageManager factory
* Thu Dec 10 2015
  - Refactor creation of a Repository factory
* Thu Dec 10 2015
  - Refactor creation of a BootLoaderInstall factory
* Thu Dec 10 2015
  - Refactor creation of a VolumeManager factory
* Thu Dec 10 2015
  - Refactor creation of a BootLoaderConfig factory
* Thu Dec 10 2015
  - Refactor creation of a Partitioner factory
* Thu Dec 10 2015
  - Refactor creation of a FileSystem factory
* Thu Dec 10 2015
  - Fixed travis setup
* Thu Dec 10 2015
  - Refactor InstallImageBuilder
    no need to provide the name of the disk image, this
    information can be created from the xml state
* Thu Dec 10 2015
  - Fixed missing md5 file on install media
* Wed Dec 09 2015
  - Travis testing needs cdrtools for isoinfo
* Wed Dec 09 2015
  - Added two pass ISO creation system
    The kiwi ISO's are prepared to be hybrid by adding an
    end header block so that isohybrid can place its gpt
    header at the correct offset address
* Wed Dec 09 2015
  - Added user log messages for install media builder
* Wed Dec 09 2015
  - Fixed grub bootloader template for install case
    Template was missing the cdinst option
* Wed Dec 09 2015
  - Added create_header_end_block method in Iso class
* Wed Dec 09 2015
  - Added isols method in Iso class
* Wed Dec 09 2015
  - Fixed ui theme setup in isolinux.cfg
* Wed Dec 09 2015
  - Added isolinux bootloader support
* Mon Dec 07 2015
  - Prevent zypper failing on outdated system solvable
* Sun Dec 06 2015
  - landscape: fix unused imports
* Sun Dec 06 2015
  - Refactor boot data extraction from boot image
    Allow data extraction multiple times, don't move files
    away from their original location
* Sat Dec 05 2015
  - landscape: fix unused imports
* Sat Dec 05 2015
  - landscape: fix unused variables
* Sat Dec 05 2015
  - Add debug message for repo cleanup
* Sat Dec 05 2015
  - landscape: fix unused variables
* Sat Dec 05 2015
  - landscape: fix unused imports
* Sat Dec 05 2015
  - landscape: fix dangerous defaults
* Sat Dec 05 2015
  - landscape: fix dangerous defaults
* Sat Dec 05 2015
  - Added landscap config file
    skip checking auto generated code
* Sat Dec 05 2015
  - Update README
* Sat Dec 05 2015
  - Set naster branch for travis setup
* Sat Dec 05 2015
  - Update README
* Sat Dec 05 2015
  - Update README
    Travis and Landscape status
* Sat Dec 05 2015
  - Update README
* Sat Dec 05 2015
  - Update README


No Filelist in the Package !

Generated by rpm2html 1.8.1

Fabrice Bellet, Tue Aug 9 15:55:55 2022