From 3a1e191642626147671014d5ea8eefe02ad396871faf7086b17e2f6988dfc27f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Date: Mon, 4 Sep 2017 15:53:51 +0000 Subject: [PATCH] Accepting request 520101 from home:sebix can also maintain it Implements feedback from Request#510584 OBS-URL: https://build.opensuse.org/request/show/520101 OBS-URL: https://build.opensuse.org/package/show/Virtualization/mkosi?expand=0&rev=1 --- .gitattributes | 23 +++++++++++++++ .gitignore | 1 + 109.patch | 47 ++++++++++++++++++++++++++++++ mkosi-3.tar.gz | 3 ++ mkosi.changes | 5 ++++ mkosi.spec | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 156 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 109.patch create mode 100644 mkosi-3.tar.gz create mode 100644 mkosi.changes create mode 100644 mkosi.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/109.patch b/109.patch new file mode 100644 index 0000000..8981285 --- /dev/null +++ b/109.patch @@ -0,0 +1,47 @@ +From 74995435564a36e81e7a79b51013f94405786e52 Mon Sep 17 00:00:00 2001 +From: Sebastian Wagner +Date: Thu, 29 Jun 2017 18:45:07 +0200 +Subject: [PATCH 1/2] Fix opensuse repo URL + +It does not work with HTTP, zypper gives an error +--- + mkosi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mkosi b/mkosi +index aa812e0..ad281da 100755 +--- a/mkosi ++++ b/mkosi +@@ -2287,7 +2287,7 @@ def load_args(): + if platform.machine() == "aarch64": + args.mirror = "http://mirror.archlinuxarm.org" + elif args.distribution == Distribution.opensuse: +- args.mirror = "https://download.opensuse.org" ++ args.mirror = "http://download.opensuse.org" + + if args.bootable: + if args.distribution == Distribution.ubuntu: + +From 1510f7eea8847c904900138831e63c89ea5da7b2 Mon Sep 17 00:00:00 2001 +From: Sebastian Wagner +Date: Sun, 2 Jul 2017 16:01:32 +0200 +Subject: [PATCH 2/2] Fix opensuse pattern installation + +It's not a pattern, it's a package and the name is different +--- + mkosi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mkosi b/mkosi +index ad281da..d3fa0c0 100755 +--- a/mkosi ++++ b/mkosi +@@ -1028,7 +1028,7 @@ def install_opensuse(args, workspace, run_build_script): + # + # Install the "minimal" package set. + # +- subprocess.run(cmdline + ["-t", "pattern", "minimal_base"], check=True) ++ subprocess.run(cmdline + ["patterns-base-minimal_base"], check=True) + + # + # Now install the additional packages if necessary. diff --git a/mkosi-3.tar.gz b/mkosi-3.tar.gz new file mode 100644 index 0000000..f862401 --- /dev/null +++ b/mkosi-3.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bb606f16a26e08ce071e673cb935e62cecb3559db6b41c620f240666d7c5734 +size 36054 diff --git a/mkosi.changes b/mkosi.changes new file mode 100644 index 0000000..f8ab820 --- /dev/null +++ b/mkosi.changes @@ -0,0 +1,5 @@ +------------------------------------------------------------------- +Thu Jun 29 16:20:46 UTC 2017 - sebix+novell.com@sebix.at + +- initial package +- Add 109.patch from pull request at upstream repository, workaround for boo#1049997 and missing support for https URLs in mkosi/zypper diff --git a/mkosi.spec b/mkosi.spec new file mode 100644 index 0000000..f7f72e8 --- /dev/null +++ b/mkosi.spec @@ -0,0 +1,77 @@ +# +# spec file for package mkosi +# +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +Name: mkosi +Version: 3 +Release: 0 +Summary: Build Legacy-Free OS Images +License: LGPL-2.1 +Group: System/Management +Url: https://github.com/systemd/mkosi +Source: https://github.com/systemd/mkosi/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +#PATCH-FIX-UPSTREAM 109.patch boo#1049997 sebix+novell.com@sebix.at -- fixes opensuse specific calls +Patch0: https://github.com/systemd/mkosi/pull/109.patch +BuildRequires: python3 >= 3.5 +Requires: python3 >= 3.5 +Requires: squashfs +Recommends: btrfs-progs +Recommends: dosfstools +Recommends: edk2-ovmf +Recommends: gnupg +Recommends: tar +Recommends: veritysetup +Recommends: xz +# To build other distros: +Recommends: debootstrap >= 1.0.83 +Recommends: dnf +BuildRoot: %{_tmppath}/%{name}-%{version}-build +ExclusiveArch: x86_64 + +%description +A fancy wrapper around dnf --installroot, debootstrap, pacstrap and zypper that +may generate disk images with a number of bells and whistles. + +Generated images are "legacy-free". This means only GPT disk labels +(and no MBR disk labels) are supported, and only systemd based images +may be generated. Moreover, for bootable images only EFI systems are +supported (not plain MBR/BIOS). + +%prep +%setup -q +%patch0 -p1 + +%build +# not required + +%install +install -Dpt %{buildroot}%{_bindir}/ mkosi + +%check +%{buildroot}%{_bindir}/mkosi -h + +%files +%defattr(-,root,root) +%doc README +%if 0%{?leap_version} >= 420200 || 0%{?suse_version} > 1320 +%license LICENSE +%else +%doc LICENSE +%endif +%{_bindir}/%{name} + +%changelog