Initial DNF 3 compatibility via downstream patches
This commit is contained in:
parent
b3b63c2695
commit
3c1afff274
@ -0,0 +1,37 @@
|
|||||||
|
From 73e1d130538ea4cdca2dfd6a273cb3f9ac092934 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
|
Date: Tue, 26 Jun 2018 11:53:22 -0700
|
||||||
|
Subject: [PATCH 1/3] DNF 3: config substitutions moved from dnf to libdnf
|
||||||
|
|
||||||
|
This just moved from dnf.conf to libdnf.conf, no big problem.
|
||||||
|
|
||||||
|
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||||
|
---
|
||||||
|
pyanaconda/payload/dnfpayload.py | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pyanaconda/payload/dnfpayload.py b/pyanaconda/payload/dnfpayload.py
|
||||||
|
index dee3903eb..8b8be68c9 100644
|
||||||
|
--- a/pyanaconda/payload/dnfpayload.py
|
||||||
|
+++ b/pyanaconda/payload/dnfpayload.py
|
||||||
|
@@ -54,7 +54,7 @@ import dnf.logging
|
||||||
|
import dnf.exceptions
|
||||||
|
import dnf.repo
|
||||||
|
import dnf.callback
|
||||||
|
-import dnf.conf.parser
|
||||||
|
+import libdnf.conf
|
||||||
|
import dnf.conf.substitutions
|
||||||
|
import rpm
|
||||||
|
import librepo
|
||||||
|
@@ -325,7 +325,7 @@ class DNFPayload(payload.PackagePayload):
|
||||||
|
Currently supports $releasever and $basearch.
|
||||||
|
"""
|
||||||
|
if url:
|
||||||
|
- return dnf.conf.parser.substitute(url, self._base.conf.substitutions)
|
||||||
|
+ return libdnf.conf.ConfigParser.substitute(url, self._base.conf.substitutions)
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
--
|
||||||
|
2.18.0.rc2
|
||||||
|
|
@ -0,0 +1,43 @@
|
|||||||
|
From f8ad90a0d76741b14767e1e94c9fbe6d760e301d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
|
Date: Tue, 26 Jun 2018 12:14:56 -0700
|
||||||
|
Subject: [PATCH 2/3] DNF 3: Update size calculations for transaction item
|
||||||
|
changes
|
||||||
|
|
||||||
|
Seems we can basically get sizes for the package that backs a
|
||||||
|
transaction item now, rather than for the 'set of files it
|
||||||
|
installs'.
|
||||||
|
|
||||||
|
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||||
|
---
|
||||||
|
pyanaconda/payload/dnfpayload.py | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pyanaconda/payload/dnfpayload.py b/pyanaconda/payload/dnfpayload.py
|
||||||
|
index 8b8be68c9..27bc6d7d3 100644
|
||||||
|
--- a/pyanaconda/payload/dnfpayload.py
|
||||||
|
+++ b/pyanaconda/payload/dnfpayload.py
|
||||||
|
@@ -602,7 +602,7 @@ class DNFPayload(payload.PackagePayload):
|
||||||
|
if transaction is None:
|
||||||
|
return Size(0)
|
||||||
|
|
||||||
|
- size = sum(tsi.installed.downloadsize for tsi in transaction)
|
||||||
|
+ size = sum(tsi.pkg.downloadsize for tsi in transaction)
|
||||||
|
# reserve extra
|
||||||
|
return Size(size) + Size("150 MB")
|
||||||
|
|
||||||
|
@@ -782,9 +782,9 @@ class DNFPayload(payload.PackagePayload):
|
||||||
|
files_nm = 0
|
||||||
|
for tsi in transaction:
|
||||||
|
# space taken by all files installed by the packages
|
||||||
|
- size += tsi.installed.installsize
|
||||||
|
+ size += tsi.pkg.installsize
|
||||||
|
# number of files installed on the system
|
||||||
|
- files_nm += len(tsi.installed.files)
|
||||||
|
+ files_nm += len(tsi.pkg.files)
|
||||||
|
|
||||||
|
# append bonus size depending on number of files
|
||||||
|
bonus_size = files_nm * BONUS_SIZE_ON_FILE
|
||||||
|
--
|
||||||
|
2.18.0.rc2
|
||||||
|
|
@ -0,0 +1,62 @@
|
|||||||
|
From 83ca305baf8aa1b08ab7e2b64845d94c820bfa1a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
|
Date: Tue, 26 Jun 2018 12:43:15 -0700
|
||||||
|
Subject: [PATCH 3/3] DNF 3: progress callback constants moved to
|
||||||
|
dnf.transaction
|
||||||
|
|
||||||
|
Another fairly trivial DNF 3 fix.
|
||||||
|
|
||||||
|
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||||
|
---
|
||||||
|
pyanaconda/payload/dnfpayload.py | 9 +++++----
|
||||||
|
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pyanaconda/payload/dnfpayload.py b/pyanaconda/payload/dnfpayload.py
|
||||||
|
index 27bc6d7d3..46a327f5a 100644
|
||||||
|
--- a/pyanaconda/payload/dnfpayload.py
|
||||||
|
+++ b/pyanaconda/payload/dnfpayload.py
|
||||||
|
@@ -54,6 +54,7 @@ import dnf.logging
|
||||||
|
import dnf.exceptions
|
||||||
|
import dnf.repo
|
||||||
|
import dnf.callback
|
||||||
|
+import dnf.transaction
|
||||||
|
import libdnf.conf
|
||||||
|
import dnf.conf.substitutions
|
||||||
|
import rpm
|
||||||
|
@@ -176,7 +177,7 @@ class PayloadRPMDisplay(dnf.callback.TransactionProgress):
|
||||||
|
# Process DNF actions, communicating with anaconda via the queue
|
||||||
|
# A normal installation consists of 'install' messages followed by
|
||||||
|
# the 'post' message.
|
||||||
|
- if action == self.PKG_INSTALL and ti_done == 0:
|
||||||
|
+ if action == dnf.transaction.PKG_INSTALL and ti_done == 0:
|
||||||
|
# do not report same package twice
|
||||||
|
if self._last_ts == ts_done:
|
||||||
|
return
|
||||||
|
@@ -192,13 +193,13 @@ class PayloadRPMDisplay(dnf.callback.TransactionProgress):
|
||||||
|
log_msg = "Installed: %s %s %s" % (nevra, package.buildtime, package.returnIdSum()[1])
|
||||||
|
self._queue.put(('log', log_msg))
|
||||||
|
|
||||||
|
- elif action == self.TRANS_POST:
|
||||||
|
+ elif action == dnf.transaction.TRANS_POST:
|
||||||
|
self._queue.put(('post', None))
|
||||||
|
log_msg = "Post installation setup phase started."
|
||||||
|
self._queue.put(('log', log_msg))
|
||||||
|
self._postinst_phase = True
|
||||||
|
|
||||||
|
- elif action == self.PKG_SCRIPTLET:
|
||||||
|
+ elif action == dnf.transaction.PKG_SCRIPTLET:
|
||||||
|
# Log the exact package nevra, build time and checksum
|
||||||
|
nevra = "%s-%s.%s" % (package.name, package.evr, package.arch)
|
||||||
|
log_msg = "Configuring (running scriptlet for): %s %s %s" % (nevra, package.buildtime, package.returnIdSum()[1])
|
||||||
|
@@ -210,7 +211,7 @@ class PayloadRPMDisplay(dnf.callback.TransactionProgress):
|
||||||
|
#self.cnt += 1
|
||||||
|
self._queue.put(('configure', msg))
|
||||||
|
|
||||||
|
- elif action == self.PKG_VERIFY:
|
||||||
|
+ elif action == dnf.transaction.PKG_VERIFY:
|
||||||
|
msg = '%s.%s (%d/%d)' % (package.name, package.arch, ts_done, ts_total)
|
||||||
|
self._queue.put(('verify', msg))
|
||||||
|
|
||||||
|
--
|
||||||
|
2.18.0.rc2
|
||||||
|
|
@ -7,7 +7,7 @@
|
|||||||
Summary: Graphical system installer
|
Summary: Graphical system installer
|
||||||
Name: anaconda
|
Name: anaconda
|
||||||
Version: 29.18
|
Version: 29.18
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}.1
|
||||||
License: GPLv2+ and MIT
|
License: GPLv2+ and MIT
|
||||||
Group: Applications/System
|
Group: Applications/System
|
||||||
URL: http://fedoraproject.org/wiki/Anaconda
|
URL: http://fedoraproject.org/wiki/Anaconda
|
||||||
@ -19,6 +19,13 @@ URL: http://fedoraproject.org/wiki/Anaconda
|
|||||||
# make dist
|
# make dist
|
||||||
Source0: %{name}-%{version}.tar.bz2
|
Source0: %{name}-%{version}.tar.bz2
|
||||||
|
|
||||||
|
# Initial DNF 3 compat fixes, submitted upstream:
|
||||||
|
# https://github.com/rhinstaller/anaconda/pull/1515
|
||||||
|
# These (or improved versions) should be in 29.19
|
||||||
|
Patch0: 0001-DNF-3-config-substitutions-moved-from-dnf-to-libdnf.patch
|
||||||
|
Patch1: 0002-DNF-3-Update-size-calculations-for-transaction-item-.patch
|
||||||
|
Patch2: 0003-DNF-3-progress-callback-constants-moved-to-dnf.trans.patch
|
||||||
|
|
||||||
# Versions of required components (done so we make sure the buildrequires
|
# Versions of required components (done so we make sure the buildrequires
|
||||||
# match the requires versions of things).
|
# match the requires versions of things).
|
||||||
|
|
||||||
@ -249,7 +256,7 @@ options. This includes driver disks, kickstarts, and finding the anaconda
|
|||||||
runtime on NFS/HTTP/FTP servers or local disks.
|
runtime on NFS/HTTP/FTP servers or local disks.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%autosetup -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# use actual build-time release number, not tarball creation time release number
|
# use actual build-time release number, not tarball creation time release number
|
||||||
@ -347,6 +354,9 @@ update-desktop-database &> /dev/null || :
|
|||||||
%{_prefix}/libexec/anaconda/dd_*
|
%{_prefix}/libexec/anaconda/dd_*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jun 26 2018 Adam Williamson <awilliam@redhat.com> - 29.18-1.fc29.1
|
||||||
|
- Initial DNF 3 compatibility via downstream patches
|
||||||
|
|
||||||
* Mon Jun 25 2018 Martin Kolman <mkolman@redhat.com> - 29.18-1
|
* Mon Jun 25 2018 Martin Kolman <mkolman@redhat.com> - 29.18-1
|
||||||
- Add tests for the DASD module (vponcova)
|
- Add tests for the DASD module (vponcova)
|
||||||
- Run the DASD formatting task in UI (vponcova)
|
- Run the DASD formatting task in UI (vponcova)
|
||||||
|
Loading…
Reference in New Issue
Block a user