diff --git a/NON_FTP_PACKAGES.group b/NON_FTP_PACKAGES.group
new file mode 100644
index 0000000..9e39a12
--- /dev/null
+++ b/NON_FTP_PACKAGES.group
@@ -0,0 +1,407 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/defaults-archsets.include b/defaults-archsets.include
new file mode 100644
index 0000000..33fc252
--- /dev/null
+++ b/defaults-archsets.include
@@ -0,0 +1,65 @@
+
+
+
+ i586
+ i686
+ noarch
+
+
+
+ i686
+ i586
+ i486
+ i386
+ noarch
+
+
+
+ x86_64
+ i686
+ i586
+ i486
+ i386
+ noarch
+
+
+
+ ppc
+ noarch
+
+
+
+ ppc64
+ noarch
+
+
+
+ ppc64le
+ noarch
+
+
+
+ s390x
+ noarch
+
+
+
+ armv6hl
+ armv6l
+ noarch
+
+
+
+ armv7hl
+ armv7l
+ noarch
+
+
+
+ aarch64
+ noarch
+
+
+
+
+
diff --git a/defaults-conditionals.include b/defaults-conditionals.include
new file mode 100644
index 0000000..663cb60
--- /dev/null
+++ b/defaults-conditionals.include
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/defaults-repositories.include b/defaults-repositories.include
new file mode 100644
index 0000000..13eb252
--- /dev/null
+++ b/defaults-repositories.include
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/groups.yml b/groups.yml
new file mode 100644
index 0000000..a660f57
--- /dev/null
+++ b/groups.yml
@@ -0,0 +1,393 @@
+# 'OUTPUT' is not a group, this defines the entry point for the solver.
+# there is an entry for every group file that needs to be written out.
+# the name of it needs to exist as package group as well and the solver
+# will take the instructions in this group and the included ones
+# (that's why sle_minimal is included to get minimal instructions)
+# and solve the packages in it (one by one next to 'silents' and 'locks')
+# and then at the end remove packages in the 'excludes'.
+# excludes are not package groups but solved module groups
+OUTPUT:
+ - dvd:
+ recommends: true
+ - opensuse_kubic:
+ recommends: false
+ includes:
+ - opensuse_microos
+ - opensuse_kubic
+ - opensuse_microos:
+ recommends: false
+ includes:
+ - opensuse_microos
+
+dvd:
+ - kernel-default
+ - dummy-release: [locked]
+ - openSUSE-MicroOS-release: [locked]
+ - patterns-microos-basesystem: [locked]
+ - openSUSE-Tumbleweed-Kubic-release: [locked]
+ - openSUSE-release-appliance: [locked]
+ - openSUSE-release
+ - openSUSE-release-dvd
+ - grub2-x86_64-efi: [x86_64]
+ - grub2-i386-pc: [x86_64]
+ - grub2-arm64-efi: [aarch64]
+ - patterns-gnome-gnome: [suggested]
+ - patterns-gnome-gnome_basis: [suggested]
+ - patterns-gnome-gnome_basis_opt: [suggested]
+ - patterns-gnome-gnome_games: [suggested]
+ - patterns-gnome-gnome_ide: [suggested]
+ - patterns-gnome-gnome_imaging: [suggested]
+ - patterns-gnome-gnome_internet: [suggested]
+ - patterns-gnome-gnome_multimedia: [suggested]
+ - patterns-gnome-gnome_office: [suggested]
+ - patterns-gnome-gnome_utilities: [suggested]
+ - patterns-gnome-gnome_yast: [suggested]
+ - patterns-desktop-imaging: [suggested]
+ - patterns-kde-kde: [suggested]
+ - patterns-kde-kde_edutainment: [suggested]
+ - patterns-kde-kde_games: [suggested]
+ - patterns-kde-kde_ide: [suggested]
+ - patterns-kde-kde_imaging: [suggested]
+ - patterns-kde-kde_internet: [suggested]
+ - patterns-kde-kde_multimedia: [suggested]
+ - patterns-kde-kde_office: [suggested]
+ - patterns-kde-kde_plasma: [suggested]
+ - patterns-kde-kde_utilities: [suggested]
+ - patterns-kde-kde_utilities_opt: [suggested]
+ - patterns-kde-kde_yast: [suggested]
+ - patterns-base-apparmor: [suggested]
+ - patterns-base-base: [suggested]
+ - patterns-base-console: [suggested]
+ - patterns-devel-C-C++-devel_C_C++: [suggested]
+ - patterns-devel-base-devel_basis: [suggested]
+ - patterns-devel-base-devel_kernel: [suggested]
+ - patterns-devel-osc-devel_osc_build: [suggested]
+ - patterns-devel-perl-devel_perl: [suggested]
+ - patterns-devel-base-devel_rpm_build: [suggested]
+ - patterns-devel-ruby-devel_ruby: [suggested]
+ - patterns-devel-base-devel_web: [suggested]
+ - patterns-server-dhcp_dns_server: [suggested]
+ - patterns-server-directory_server: [suggested]
+ - patterns-base-enhanced_base: [suggested]
+ - patterns-server-file_server: [suggested]
+ - patterns-fonts-fonts: [suggested]
+ - patterns-fonts-fonts_opt: [suggested]
+ - patterns-games-games: [suggested]
+ - patterns-server-lamp_server: [suggested]
+ - patterns-desktop-laptop: [suggested]
+ - patterns-lxde-lxde: [suggested]
+ - patterns-lxde-lxde_laptop: [suggested]
+ - patterns-server-mail_server: [suggested]
+ - patterns-desktop-multimedia: [suggested]
+ - patterns-network-network_admin: [suggested]
+ - patterns-office-office: [suggested]
+ - patterns-server-printing: [suggested]
+ - patterns-media-rest_cd_core: [suggested]
+ - patterns-base-sw_management: [suggested]
+ - patterns-gnome-sw_management_gnome: [suggested]
+ - patterns-desktop-technical_writing: [suggested]
+ - patterns-base-basic_desktop: [suggested]
+ - patterns-base-transactional_base: [suggested]
+ - patterns-base-x11: [suggested]
+ - patterns-xfce-xfce: [suggested]
+ - patterns-xfce-xfce_basis: [suggested]
+ - patterns-xfce-xfce_laptop: [suggested]
+ - patterns-xfce-xfce_office: [suggested]
+ - patterns-yast-yast2_basis: [suggested]
+ - patterns-yast-yast2_install_wf: [suggested]
+ - arabic-fonts
+ - arphic-uming-fonts
+ - cracklib-dict-full
+ - indic-fonts
+ - ipa-gothic-fonts
+ - khmeros-fonts
+ - lklug-fonts
+ # for now xen_server
+ - thai-fonts
+ - un-fonts
+ - yast2-trans-af
+ - yast2-trans-ar
+ - yast2-trans-bg
+ - yast2-trans-bn
+ - yast2-trans-bs
+ - yast2-trans-ca
+ - yast2-trans-cs
+ - yast2-trans-cy
+ - yast2-trans-da
+ - yast2-trans-de
+ - yast2-trans-el
+ - yast2-trans-en_GB
+ - yast2-trans-en_US
+ - yast2-trans-es
+ - yast2-trans-et
+ - yast2-trans-fa
+ - yast2-trans-fi
+ - yast2-trans-fr
+ - yast2-trans-gl
+ - yast2-trans-gu
+ - yast2-trans-hi
+ - yast2-trans-hr
+ - yast2-trans-hu
+ - yast2-trans-id
+ - yast2-trans-it
+ - yast2-trans-ja
+ - yast2-trans-jv
+ - yast2-trans-ka
+ - yast2-trans-km
+ - yast2-trans-ko
+ - yast2-trans-lo
+ - yast2-trans-lt
+ - yast2-trans-mk
+ - yast2-trans-mr
+ - yast2-trans-nb
+ - yast2-trans-nl
+ - yast2-trans-pa
+ - yast2-trans-pl
+ - yast2-trans-pt
+ - yast2-trans-pt_BR
+ - yast2-trans-ro
+ - yast2-trans-ru
+ - yast2-trans-si
+ - yast2-trans-sk
+ - yast2-trans-sr
+ - yast2-trans-sv
+ - yast2-trans-ta
+ - yast2-trans-th
+ - yast2-trans-tr
+ - yast2-trans-uk
+ - yast2-trans-vi
+ - yast2-trans-wa
+ - yast2-trans-xh
+ - yast2-trans-zh_CN
+ - yast2-trans-zh_TW
+ - yast2-trans-zu
+ - patterns-desktop-books: [suggested]
+ - patterns-server-kvm_server: [suggested]
+ - patterns-base-minimal_base: [suggested]
+ - patterns-yast-x11_yast: [suggested]
+ - patterns-server-xen_server: [suggested]
+ # bnc#431280 (Japanese fonts)
+ - arphic-uming-fonts
+ - capi4hylafax
+ - cellwriter
+ - clicfs
+ - createrepo
+ - eekboard
+ - git
+ # hylafax as requested by kkeil
+ - hylafax+
+ - hylafax+-client
+ # kdump+tools
+ - kdump
+ # all kernel flavors we want to have
+ - kernel-default
+ - kexec-tools
+ - quota-nfs
+
+ - patterns-media-rest_dvd: [suggested]
+ # all loggers
+ - systemd-logger
+ - rsyslog
+ - syslog-service
+ - dia: [locked]
+ - gnuchess: [locked]
+ - gnumeric: [locked]
+ - marble: [locked]
+ - seamonkey: [locked]
+ - systemd-presets-branding-CAASP: [locked]
+ - texlive: [locked]
+ - gnuchess: [locked]
+ - myspell-german-old: [locked]
+ - apache2-worker: [locked]
+ - gnu-free-fonts: [locked]
+ - frozen-bubble: [locked]
+ - marble: [locked]
+ - digikam: [locked]
+ - digikam-doc: [locked]
+ - gimp-help: [locked]
+ - gimp-help-it: [locked]
+ - gimp-help-pl: [locked]
+ - gimp-help-sv: [locked]
+ - gimp-help-fr: [locked]
+ - gimp-help-da: [locked]
+ - gimp-help-de: [locked]
+ - gimp-help-es: [locked]
+ - gimp-help-ja: [locked]
+ - gimp-help-zh: [locked]
+ - gimp-help-el: [locked]
+ - gimp-help-en_GB: [locked]
+ - gimp-help-pt_BR: [locked]
+ - gimp-help-ru: [locked]
+ - libqt4-devel-doc-data: [locked]
+ - gnucash-docs: [locked]
+ - kernel-debug: [locked]
+ ## highly outdated at the moment
+ - MozillaFirefox-translations-other: [locked]
+ - MozillaThunderbird-translations-other: [locked]
+ - texlive: [locked]
+ - lyx: [locked]
+ - gnumeric: [locked]
+ - gnome-devel-docs: [locked]
+ - timidity: [locked]
+ - scribus: [locked]
+ - dynamic-wallpapers-11x: [locked]
+ - python-doc-pdf: [locked]
+ - wine-gecko: [locked]
+
+ # trying to get a working DVD: [locked]
+ - mono-devel: [locked]
+ - libqt5-qtdoc: [locked]
+ - kde-l10n-fr-doc: [locked]
+ - kde-l10n-pt_BR-doc: [locked]
+ - kde-l10n-pl-doc: [locked]
+ - kde-l10n-ru-doc: [locked]
+ - libqt5-creator: [locked]
+ - seamonkey: [locked]
+ - blender: [locked]
+ - calibre: [locked]
+ - libLLVM7: [locked]
+
+ ## attemt to shrink the DVD - 20151115 by dimstar: [locked]
+ - valgrind-devel: [locked]
+
+ ## Further shrinkg the DVD - 20160330 by dimstar: [locked]
+ - ImageMagick-doc: [locked]
+ - python-doc: [locked]
+ - python3-doc: [locked]
+
+ ## This appeared newly - and makes the DVD explode again - 20160531 - dimstar: [locked]
+ - mathjax: [locked]
+
+ - ocaml-compiler-libs: [locked]
+
+ ## Hunt for space
+ - libqt4-devel: [locked]
+
+ ## More space needed - 2017-02-02
+ - ant: [locked]
+ - java-1_8_0-openjdk-devel: [locked]
+
+ ## wow, we run out of space... drop 40MB of cjk fonts:
+ - noto-sans-cjk-fonts: [locked]
+ ## still run out of space, as kr was dropped, try jp also
+ - noto-sans-jp-fonts: [locked]
+
+ ## more space needed - dimstar - 20180419
+ - amarok-lang: [locked]
+
+ - libqt5-qtdeclarative-devel: [locked]
+
+ # lock to align with package-lists solution
+ - appmenu-qt: [locked]
+ - aspell-ispell: [locked]
+ - clang7-checker: [locked]
+ - fluid-soundfont-gm: [locked]
+ - fluid-soundfont-gs: [locked]
+ - gcin-branding-upstream: [locked]
+ - gimp-help: [locked]
+ - install-initrd-openSUSE: [locked]
+ - install-initrd-Kubic: [locked]
+ - install-initrd-MicroOS: [locked]
+ - laptop-mode-tools: [locked]
+ - libreoffice-branding-upstream: [locked]
+ - poppler-data: [locked]
+ - pulseaudio-module-gconf: [locked]
+ - tomcat: [locked]
+
+ - virtualbox: [locked]
+ - virtualbox-host-kmp-default: [locked]
+
+ - desktop-data-openSUSE-extra: [i586]
+
+ # DVD exploded in size - klettres grew from 17MB to 36 - dimstar, 20190821
+ - klettres: [locked]
+
+ # additional packages not picked
+ - apache-parent
+ - bcm20702a1-firmware
+ - bcm43xx-firmware
+ - elilo
+ - erofs-utils
+ - f2fs-tools
+ - fuse3
+ - icewm-config-upstream
+ - icewm-lite
+ - lifecycle-data-openSUSE
+ - mokutil: [x86_64]
+ - mtd-utils
+ - nut
+ - nut-cgi
+ - openafs-client
+ - pcsc-acr38
+ - pcsc-asedriveiiie-usb
+ - pcsc-asekey
+ - pcsc-cyberjack
+ - pcsc-gempc
+ - pcsc-towitoko
+ - postgresql
+ - postgresql-contrib
+ - postgresql-devel
+ - postgresql-server
+ - postgresql10
+ - postgresql10-contrib
+ - postgresql10-devel
+ - postgresql10-server
+ - qemu-guest-agent
+ - rng-tools
+ - rt2860
+ - salt-master
+ - salt-minion
+ - sendmail
+ - spacenavd
+ - spu-tools
+ - system-user-upsd
+ - technisat-usb2-firmware
+ - virtualbox-guest-tools
+ - virtualbox-guest-x11
+ - xen-tools-domU
+ - xml-commons-apis
+ - xml-commons-resolver
+ # used in staging tests
+ - yast2-nfs-server
+ - bind
+ - Mesa-demo-x
+ - inkscape
+ - autoyast2
+
+opensuse_microos:
+ - dummy-release: [locked]
+ # we need a global flag, not there yet
+ - kernel-vanilla-base: [locked]
+ - kernel-kvmsmall-base: [locked]
+ - kernel-vanilla: [locked]
+ - kernel-kvmsmall: [locked]
+ - openSUSE-MicroOS-release
+ - kernel-default
+ - patterns-microos-base: [aarch64,x86_64]
+ - patterns-microos-defaults: [aarch64,x86_64]
+ - patterns-microos-hardware: [aarch64,x86_64]
+ - patterns-microos-apparmor: [aarch64,x86_64]
+ - patterns-microos-selinux: [aarch64,x86_64]
+ - patterns-microos-sssd_ldap: [aarch64,x86_64]
+ - patterns-microos-ima_evm: [aarch64,x86_64]
+ - patterns-microos-cloud: [aarch64,x86_64]
+ - patterns-microos-onlyDVD: [aarch64,x86_64]
+ - patterns-microos-alt_onlyDVD: [aarch64,x86_64]
+ - patterns-containers-container_runtime: [aarch64,x86_64]
+ - podman-cni-config: [aarch64,x86_64]
+ - kernel-default-base: [aarch64,x86_64]
+ - grub2-x86_64-efi: [x86_64]
+ - grub2-i386-pc: [x86_64]
+ - grub2-arm64-efi: [aarch64]
+
+opensuse_kubic:
+ - patterns-containers-kubeadm: [aarch64,x86_64]
+ - patterns-containers-container_runtime_kubernetes: [aarch64,x86_64]
+ - patterns-containers-container_runtime: [aarch64,x86_64]
+ - patterns-containers-kubic_worker: [aarch64,x86_64]
+ - patterns-containers-kubic_admin: [aarch64,x86_64]
+ - patterns-containers-kubernetes_utilities: [aarch64,x86_64]
+ - patterns-containers-kubic_loadbalancer: [aarch64,x86_64]
+ - grub2-x86_64-efi: [x86_64]
+ - grub2-i386-pc: [x86_64]
+ - grub2-arm64-efi: [aarch64]
diff --git a/openSUSE-Addon-NonOss.product.in b/openSUSE-Addon-NonOss.product.in
new file mode 100644
index 0000000..cfbb6d7
--- /dev/null
+++ b/openSUSE-Addon-NonOss.product.in
@@ -0,0 +1,102 @@
+
+
+
+
+ openSUSE
+ openSUSE-Addon-NonOss
+
+ 0
+ openSUSE NonOSS Addon
+ non oss addon
+
+ non oss repo and cd
+
+
+ af
+ ar
+ be_BY
+ bg
+ br
+ ca
+ cy
+ el
+ et
+ ga
+ gl
+ gu_IN
+ he
+ hi_IN
+ hr
+ ka
+ km
+ ko
+ lt
+ mk
+ nn
+ pa_IN
+ rw
+ sk
+ sl
+ sr_CS
+ ss
+ st
+ tg
+ th
+ tr
+ uk
+ ve
+ vi
+ xh
+ zu
+
+
+
+ openSUSE
+ false
+
+
+
+ suse
+ suse/setup/descr
+
+ openSUSE-Addon-NonOss
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/openSUSE-MicroOS-release.spec.in b/openSUSE-MicroOS-release.spec.in
new file mode 100644
index 0000000..899341b
--- /dev/null
+++ b/openSUSE-MicroOS-release.spec.in
@@ -0,0 +1,122 @@
+#
+# spec file for package openSUSE-MicroOS-release.spec
+#
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
+#
+
+
+Name: openSUSE-MicroOS-release
+Version: ___VERSION___
+Release: 0
+Summary: ___SUMMARY___ ___BETA_VERSION___
+License: GPL-2.0-or-later
+Group: System/Fhs
+BuildRequires: skelcd-openSUSE
+Requires: issue-generator
+# Make sure we are at SLES12 SP2 level
+PreReq: glibc >= 2.19
+# in rare cases, 'ln' is not found...
+Requires(post): coreutils
+Recommends: branding-openSUSE
+Recommends: distribution-logos-openSUSE-MicroOS
+Conflicts: distribution-release
+Conflicts: kernel < 4.4
+Provides: distribution-release
+# MicroOS-release replaces Tumbleweed-Kubic-release
+Provides: openSUSE-Tumbleweed-Kubic-release
+Obsoletes: openSUSE-Tumbleweed-Kubic-release <= 20190324
+# With more than one product in the FTP tree, yast needs to know which products are installable
+# The name is referenced by the control file as well
+Provides: system-installation() = openSUSE-MicroOS
+# this package should only be available for the "basearchs" of a product
+ExclusiveArch: %ix86 x86_64 ppc64le s390x aarch64
+___PRODUCT_PROVIDES___
+___PRODUCT_DEPENDENCIES___
+
+%description
+___DESCRIPTION___
+
+___FLAVOR_PACKAGES___
+
+%prep
+
+%build
+
+%install
+mkdir -p %{buildroot}%{_sysconfdir}
+mkdir -p %{buildroot}%{_libexecdir}/issue.d
+echo -e "\nWelcome to ___SUMMARY___ (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > %{buildroot}%{_libexecdir}/issue.d/10-OS
+echo -e "\n" > %{buildroot}%{_libexecdir}/issue.d/90-OS
+
+touch %{buildroot}%{_sysconfdir}/motd
+
+# Put EULA into correct place
+mkdir -p %{buildroot}/%{_sysconfdir}/YaST2/licenses/base
+cd %{buildroot}/%{_sysconfdir}/YaST2/licenses/base
+if [ -f /CD1/license.tar.gz ]; then
+ tar -xzf /CD1/license.tar.gz
+elif [ -f %{_libexecdir}/skelcd/CD1/license.tar.gz ]; then
+ tar -xzf %{_libexecdir}/skelcd/CD1/license.tar.gz
+fi
+
+VERSION_ID=`echo %{version}|tr '[:upper:]' '[:lower:]'|sed -e 's/ //g;'`
+# note: VERSION is an optional field and has no meaning other than informative on a rolling distro
+# We do thus not add it to the os-release file
+cat > %{buildroot}%{_libexecdir}/os-release <
+
+
+
+ openSUSE
+ openSUSE-MicroOS
+ openSUSE-MicroOS-release
+
+
+
+ 0
+ openSUSE-MicroOS
+
+ openSUSE MicroOS
+ openSUSE MicroOS
+ openSUSE MicroOS combines the benefits of a rolling OS with a read-only root filesystem with transactional updates. It is a modern Linux Operating System, designed for single-service installations, such as container hosts. It is optimized for large, clustered deployments.
+ It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and reliable distribution.
+
+
+
+ en_US
+
+
+
+ http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-notes-openSUSE.rpm
+
+
+
+
+ MicroOS
+ true
+
+
+
+
+ en_US
+ suse
+ suse/setup/descr
+ openSUSE
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/openSUSE-release.spec.in b/openSUSE-release.spec.in
new file mode 100644
index 0000000..7610674
--- /dev/null
+++ b/openSUSE-release.spec.in
@@ -0,0 +1,292 @@
+#
+# spec file for package openSUSE-release.spec
+#
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
+#
+
+
+%define product ___PRODUCT_NAME___
+#define betaversion ___BETA_VERSION___%{nil}
+%define codename Tumbleweed
+Name: ___PACKAGE_NAME___
+Version: ___VERSION___
+Release: 0
+# ___RELEASE___ is the product release, not the build release of this package
+Summary: ___SUMMARY___
+License: BSD-3-Clause
+Group: System/Fhs
+Source100: weakremovers.inc
+BuildRequires: skelcd-control-openSUSE
+BuildRequires: skelcd-openSUSE
+# /etc/issue is no longer a default file, but is auto-generated at bootup
+Requires: issue-generator
+#PreReq: coreutils
+# the post scriptlets uses awk, boo#976913
+Requires(post): awk
+Requires(post): issue-generator
+Recommends: branding-openSUSE
+Recommends: distribution-logos-openSUSE-Tumbleweed
+Suggests: java-11-openjdk
+Suggests: mariadb
+Suggests: mariadb-client
+Conflicts: core-release <= 10
+Conflicts: distribution-release
+Conflicts: sled-release <= 10
+Conflicts: sles-release <= 10
+Provides: aaa_version
+Provides: distribution-release
+Provides: suse-release = %{version}-%{release}
+Provides: suse-release-oss = %{version}-%{release}
+# Give zypp a hint that this product must be kept up-to-date using zypper dup, not up (boo#1061384)
+Provides: product-update() = dup
+# Since we have more than one product in the FTP tree, we need to give yast a hint
+Provides: system-installation() = openSUSE
+Obsoletes: aaa_version
+Obsoletes: openSUSE-Promo-release <= 11.1
+Obsoletes: openSUSE-release-live <= 11.0
+Obsoletes: product_flavor(%{product}) < ___VERSION___
+# bnc#826592
+Provides: weakremover(kernel-default) < 3.11
+Provides: weakremover(kernel-desktop) < 4.2
+Provides: weakremover(kernel-ec2) < 3.11
+Provides: weakremover(kernel-pae) < 3.11
+Provides: weakremover(kernel-vanilla) < 3.11
+Provides: weakremover(kernel-xen) < 3.11
+# migrated from MANUAL_OBSOLETES/packages
+Provides: weakremover(boost-license1_56_0)
+Provides: weakremover(boost-license1_59_0)
+Provides: weakremover(gpg-pubkey-3d25d3d9-36e12d04)
+Provides: weakremover(lib++dfb-1_7-6)
+Provides: weakremover(libastro-qt5-1)
+Provides: weakremover(libboost_atomic1_59_0)
+Provides: weakremover(libboost_atomic1_60_0)
+Provides: weakremover(libboost_atomic1_62_0)
+Provides: weakremover(libboost_atomic1_63_0)
+Provides: weakremover(libboost_chrono1_59_0)
+Provides: weakremover(libboost_chrono1_60_0)
+Provides: weakremover(libboost_chrono1_62_0)
+Provides: weakremover(libboost_chrono1_63_0)
+Provides: weakremover(libboost_container1_59_0)
+Provides: weakremover(libboost_container1_60_0)
+Provides: weakremover(libboost_container1_62_0)
+Provides: weakremover(libboost_container1_63_0)
+Provides: weakremover(libboost_context1_59_0)
+Provides: weakremover(libboost_context1_60_0)
+Provides: weakremover(libboost_context1_62_0)
+Provides: weakremover(libboost_context1_63_0)
+Provides: weakremover(libboost_coroutine1_59_0)
+Provides: weakremover(libboost_coroutine1_60_0)
+Provides: weakremover(libboost_coroutine1_62_0)
+Provides: weakremover(libboost_coroutine1_63_0)
+Provides: weakremover(libboost_date_time1_59_0)
+Provides: weakremover(libboost_date_time1_60_0)
+Provides: weakremover(libboost_date_time1_62_0)
+Provides: weakremover(libboost_date_time1_63_0)
+Provides: weakremover(libboost_filesystem1_59_0)
+Provides: weakremover(libboost_filesystem1_60_0)
+Provides: weakremover(libboost_filesystem1_62_0)
+Provides: weakremover(libboost_filesystem1_63_0)
+Provides: weakremover(libboost_graph1_59_0)
+Provides: weakremover(libboost_graph1_60_0)
+Provides: weakremover(libboost_graph1_62_0)
+Provides: weakremover(libboost_graph1_63_0)
+Provides: weakremover(libboost_iostreams1_59_0)
+Provides: weakremover(libboost_locale1_59_0)
+Provides: weakremover(libboost_log1_59_0)
+Provides: weakremover(libboost_log1_60_0)
+Provides: weakremover(libboost_log1_62_0)
+Provides: weakremover(libboost_log1_63_0)
+Provides: weakremover(libboost_math1_59_0)
+Provides: weakremover(libboost_program_options1_59_0)
+Provides: weakremover(libboost_python1_59_0)
+Provides: weakremover(libboost_random1_59_0)
+Provides: weakremover(libboost_regex1_59_0)
+Provides: weakremover(libboost_regex1_60_0)
+Provides: weakremover(libboost_regex1_62_0)
+Provides: weakremover(libboost_regex1_63_0)
+Provides: weakremover(libboost_serialization1_59_0)
+Provides: weakremover(libboost_signals1_59_0)
+Provides: weakremover(libboost_system1_56_0)
+Provides: weakremover(libboost_system1_59_0)
+Provides: weakremover(libboost_test1_59_0)
+Provides: weakremover(libboost_thread1_56_0)
+Provides: weakremover(libboost_thread1_59_0)
+Provides: weakremover(libboost_timer1_59_0)
+Provides: weakremover(libboost_wave1_59_0)
+Provides: weakremover(libcamel-1_2-54)
+Provides: weakremover(libdialog12)
+Provides: weakremover(libdirectfb-1_7-6)
+Provides: weakremover(libdns146)
+Provides: weakremover(libdns160)
+Provides: weakremover(libdns161)
+Provides: weakremover(libgdict-1_0-9)
+Provides: weakremover(libgit2-23)
+Provides: weakremover(libgpaste4)
+Provides: weakremover(libhdf5-11)
+Provides: weakremover(libhdf5_hl11)
+Provides: weakremover(libicu54_1)
+Provides: weakremover(libicu54_1-ledata)
+Provides: weakremover(libicu55_1)
+Provides: weakremover(libicu55_1-ledata)
+Provides: weakremover(libicu56_1)
+Provides: weakremover(libicu56_1-ledata)
+Provides: weakremover(libimobiledevice5)
+Provides: weakremover(libisc142)
+Provides: weakremover(libisc148)
+Provides: weakremover(libisl13)
+Provides: weakremover(libixion-0_10-0)
+Provides: weakremover(liblmdb-0_9_16)
+Provides: weakremover(libmicrohttpd11)
+Provides: weakremover(libminiupnpc15)
+Provides: weakremover(libnis1)
+Provides: weakremover(libntfs-3g86)
+Provides: weakremover(liborcus-0_10-0)
+Provides: weakremover(libpoppler47)
+Provides: weakremover(libpoppler48)
+Provides: weakremover(libpoppler49)
+Provides: weakremover(libpoppler50)
+Provides: weakremover(libpoppler51)
+Provides: weakremover(libpoppler52)
+Provides: weakremover(libpoppler53)
+Provides: weakremover(libpoppler54)
+Provides: weakremover(libpoppler55)
+Provides: weakremover(libpoppler56)
+Provides: weakremover(libpoppler57)
+Provides: weakremover(libpoppler58)
+Provides: weakremover(libpoppler59)
+Provides: weakremover(libpoppler61)
+Provides: weakremover(libpoppler62)
+Provides: weakremover(libpoppler63)
+Provides: weakremover(libpoppler64)
+Provides: weakremover(libpoppler65)
+Provides: weakremover(libprocps4)
+Provides: weakremover(libprocps5)
+Provides: weakremover(libpsl0)
+Provides: weakremover(libsgutils2-1_40-2)
+Provides: weakremover(libsgutils2-1_41-2)
+Provides: weakremover(libvpx2)
+Provides: weakremover(libxtables11)
+Provides: weakremover(libzip4)
+Provides: weakremover(mt_st)
+Provides: weakremover(openssl-debuginfo)
+%include %{SOURCE100}
+___PRODUCT_PROVIDES___
+
+%description
+___DESCRIPTION___
+
+___FLAVOR_PACKAGES___
+
+%prep
+%setup -qcT
+mkdir license
+if [ -f /CD1/license.tar.gz ]; then
+ tar -C license -xzf /CD1/license.tar.gz
+elif [ -f %{_libexecdir}/skelcd/CD1/license.tar.gz ]; then
+ tar -C license -xzf %{_libexecdir}/skelcd/CD1/license.tar.gz
+fi
+
+%build
+
+%install
+mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_libexecdir}/issue.d %{buildroot}/run
+
+echo -e 'Welcome to %{product} %{codename} %{version}%{?betaversion: %{betaversion}} - Kernel \\r (\\l).\n' > %{buildroot}%{_libexecdir}/issue.d/10-openSUSE.conf
+echo -e "\n" > %{buildroot}%{_libexecdir}/issue.d/90-openSUSE.conf
+echo 'Welcome to %{product} %{codename} %{version}%{?betaversion: %{betaversion}} - Kernel %%r (%%t).' > %{buildroot}%{_sysconfdir}/issue.net
+
+VERSION_ID=`echo %{version}|tr '[:upper:]' '[:lower:]'|sed -e 's/ //g;'`
+# note: VERSION is an optional field and has no meaning other than informative on a rolling distro
+# We do thus not add it to the os-release file
+cat > %{buildroot}%{_libexecdir}/os-release < %{buildroot}%{_sysconfdir}/motd
+# Bug 404141 - /etc/YaST/control.xml should be owned by some package
+mkdir -p %{buildroot}%{_sysconfdir}/YaST2/
+echo %{buildroot}
+if [ -f /CD1/control.xml ]; then
+ install -m 644 /CD1/control.xml %{buildroot}%{_sysconfdir}/YaST2/
+elif [ -f %{_libexecdir}/skelcd/CD1/control.xml ]; then
+ install -m 644 %{_libexecdir}/skelcd/CD1/control.xml %{buildroot}%{_sysconfdir}/YaST2/
+fi
+
+# fate#319341, make openSUSE-release own YaST license files. TODO:
+# get rid of /etc/YaST2/licenses
+install -D -d -m 755 "%{buildroot}%_defaultlicensedir/product/base"
+install -D -d -m 755 "%{buildroot}%_defaultlicensedir"
+cp -a license "%{buildroot}%_defaultlicensedir/%name"
+pushd license
+for i in *; do
+ ln -s "%_defaultlicensedir/%name/$i" %{buildroot}%_defaultlicensedir/product/base/$i
+done
+
+___CREATE_PRODUCT_FILES___
+# this is a base product, create symlink
+ln -s openSUSE.prod %{buildroot}%{_sysconfdir}/products.d/baseproduct
+
+%post
+# Upgrade path - if /etc/default/grub contains any of the DISTRIBUTOR= tags
+# we ever put, replace it with "", which means grub will use /etc/os-release to make something up
+if [ -f %{_sysconfdir}/default/grub ]; then
+ DISTRIBUTOR=$(awk -F= '/^GRUB_DISTRIBUTOR/ {print $2}' %{_sysconfdir}/default/grub | tr -d '"')
+ case "$DISTRIBUTOR" in
+ "openSUSE" | \
+ "openSUSE 13.1" | \
+ "openSUSE 13.2")
+ # replace GRUB_DISTRIBUTOR in %{_sysconfdir}/default/grub with ""
+ sed -i "s/^GRUB_DISTRIBUTOR=.*/GRUB_DISTRIBUTOR=/" %{_sysconfdir}/default/grub
+ ;;
+ esac
+fi
+
+%posttrans
+# Launch the issue-generator: we have a new config file in /usr/lib/issue.d that needs to be represented
+if [ -x %{_sbindir}/issue-generator ]; then
+ if [ -x %{_bindir}/systemd-tmpfiles ]; then
+ %{_bindir}/systemd-tmpfiles --create issue-generator.conf || :
+ fi
+ %{_sbindir}/issue-generator || :
+fi
+
+%files
+%defattr(644,root,root,755)
+%dir %_defaultlicensedir/product
+%_defaultlicensedir/product/base
+%license license/*
+%{_sysconfdir}/os-release
+%{_libexecdir}/os-release
+# Bug 404141 - /etc/YaST/control.xml should be owned by some package
+%dir %{_sysconfdir}/YaST2/
+%config %{_sysconfdir}/YaST2/control.xml
+%config(noreplace) %{_sysconfdir}/motd
+%dir %{_libexecdir}/issue.d/
+%{_libexecdir}/issue.d/10-openSUSE.conf
+%{_libexecdir}/issue.d/90-openSUSE.conf
+%config(noreplace) %{_sysconfdir}/issue.net
+%{_sysconfdir}/products.d
+
+%changelog
diff --git a/openSUSE.product.in b/openSUSE.product.in
new file mode 100644
index 0000000..1572bb0
--- /dev/null
+++ b/openSUSE.product.in
@@ -0,0 +1,244 @@
+
+
+
+
+ openSUSE
+ openSUSE
+
+ 0
+
+ openSUSE
+
+
+
+
+ openSUSE-Tumbleweed-x86_64
+ openSUSE-Tumbleweed-s390x
+ openSUSE-Tumbleweed-ppc64le
+ openSUSE-Tumbleweed-aarch64
+
+
+
+ 000000000
+ openSUSE Tumbleweed
+
+ openSUSE
+
+ openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project.
+
+
+
+
+ cs
+ da
+ de
+ el
+ en
+ en_GB
+ en_US
+ es
+ fr
+ hu
+ it
+ ja
+ pl
+ pt
+ pt_BR
+ ru
+ zh
+ zh_CN
+ zh_TW
+
+
+
+ http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-notes-openSUSE.rpm
+
+ http://download.opensuse.org/tumbleweed/repo/oss/
+
+
+
+
+
+ openSUSE
+ true
+
+
+
+
+ en_US
+
+
+ openSUSE
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+