[master/rhel7] createrepo is needed by driver disks (#1016004)
by Brian C. Lane
deltarpm is needed by createrepo.
Resolves: rhbz#1016004
---
share/runtime-cleanup.tmpl | 3 ---
1 file changed, 3 deletions(-)
diff --git a/share/runtime-cleanup.tmpl b/share/runtime-cleanup.tmpl
index 6e0305c..90a5477 100644
--- a/share/runtime-cleanup.tmpl
+++ b/share/runtime-cleanup.tmpl
@@ -38,8 +38,6 @@ removepkg gnupg2 pinentry
removepkg cups-libs iscan-firmware
## no storage device monitoring
removepkg device-mapper-event dmraid-events sgpio
-## we don't (currently) support deltarpms in anaconda
-removepkg deltarpm
## no notifications in anaconda
removepkg notification-daemon
## logrotate isn't useful in anaconda
@@ -161,7 +159,6 @@ removefrom coreutils /usr/bin/who /usr/bin/whoami /usr/bin/yes /usr/share/*
removefrom cpio /usr/share/*
removefrom cracklib /usr/sbin/*
removefrom cracklib-dicts /usr/${libdir}/* /usr/sbin/*
-removefrom createrepo /usr/bin/* /usr/share/*
removefrom cryptsetup-luks /usr/share/*
removefrom cyrus-sasl-lib /usr/sbin/*
removefrom db4 /usr/*
--
1.8.5.3
10 years, 2 months
[PATCH] Fix text-mode issue with begin installation. (#975793)
by Samantha N. Bueno
This is a revert of 180545b0, which completely prevents users from
beginning installation.
Related: rhbz#975793
---
pyanaconda/ui/tui/hubs/__init__.py | 7 +------
pyanaconda/ui/tui/hubs/summary.py | 5 +----
2 files changed, 2 insertions(+), 10 deletions(-)
diff --git a/pyanaconda/ui/tui/hubs/__init__.py b/pyanaconda/ui/tui/hubs/__init__.py
index e4d5627..9269a0c 100644
--- a/pyanaconda/ui/tui/hubs/__init__.py
+++ b/pyanaconda/ui/tui/hubs/__init__.py
@@ -108,15 +108,10 @@ class TUIHub(TUIObject, common.Hub):
except (ValueError, KeyError):
# If we get a continue, check for unfinished spokes. If unfinished
# don't continue
- # TRANSLATORS: 'b' to begin installation
- if key.lower() == _('b'):
+ if key == _('c'):
for spoke in self._spokes.values():
if not spoke.completed and spoke.mandatory:
print(_("Please complete all spokes before continuing"))
return False
- # Kind of a hack, but we want to ignore if anyone presses 'c'
- # which is the global TUI key to close the current screen
- elif key.lower() == _('c'):
- return False
log.debug("returning True")
return True
diff --git a/pyanaconda/ui/tui/hubs/summary.py b/pyanaconda/ui/tui/hubs/summary.py
index b8479af..0080031 100644
--- a/pyanaconda/ui/tui/hubs/summary.py
+++ b/pyanaconda/ui/tui/hubs/summary.py
@@ -73,7 +73,4 @@ class SummaryHub(TUIHub):
# does not automatically proceed once all spokes are complete, and a
# user must confirm they want to begin installation
flags.automatedInstall = False
-
- # override the default prompt since we want to offer the 'b' to begin
- # installation option here
- return _(u" Please make your choice from above ['q' to quit | 'b' to begin installation |\n 'r' to refresh]: ")
+ return TUIHub.prompt(self, args)
--
1.8.3.1
10 years, 2 months
[rhel7-branch][PATCH] Don't ignore the directory of the driver disk iso file
by Vratislav Podzimek
DD iso file may be somewhere deep in the filesystem, we need to take that into
account.
Related: rhbz#1036765
Signed-off-by: Vratislav Podzimek <vpodzime(a)redhat.com>
---
dracut/driver-updates | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/dracut/driver-updates b/dracut/driver-updates
index ea73981..d89ba42 100755
--- a/dracut/driver-updates
+++ b/dracut/driver-updates
@@ -669,8 +669,9 @@ def select_iso():
return select_iso()
isos = list()
- for _path, _dirs, files in os.walk(mnt):
- isos += (iso_file for iso_file in files if iso_file.endswith(".iso"))
+ for dir_path, _dirs, files in os.walk(mnt):
+ isos += (os.path.join(dir_path, iso_file)
+ for iso_file in files if iso_file.endswith(".iso"))
if not isos:
print("===No ISO files found on %s!===\n" % iso_dev.device)
@@ -688,7 +689,7 @@ def select_iso():
if not dd_iso:
return (None, None)
- return ("/media/DD-search/" + dd_iso, "/media/DD-search")
+ return (dd_iso, "/media/DD-search")
def dd_scan(skip_dds=None, scan_dd_args=True):
""" Scan the system for OEMDRV devices and and specified by dd=/dev/<device>
--
1.8.5.3
10 years, 2 months
[anaconda/blivet][master/rhel7-branch] DASD storage re-write, take II
by Samantha N. Bueno
This includes fixes suggested from the first review. The flow of this
is also a bit different from when I first posted as well, thanks to
discussions with dlehman and mizmo (read: simpler and less clunky).
The text install is basically the same, but for an updated screencast
of the graphical version here's a link:
http://sbueno.fedorapeople.org/1001070-graphical-25feb.webm
jstodola mentioned the "zerombr" kickstart command last time; support
for that is here; if "zerombr" is in a ks file and unformatted DASDs are
specified, they automatically have dasdfmt run against them.
A few points that are sort of minor but which bug me, all graphical:
* The link on the dialog box back to the summary hub doesn't work, so I
sort of force it myself in what's probably a less correct way. I'm not
sure what format the URI should be, so if anyone knows, let me know.
* Again following a return to the summary hub, while letting dasdfmt run
in the background, the UI sort of freezes up; I'm guessing I need some
sort of decorator somewhere, maybe?
* I think my thread handling is jumbled and awkward in places (GUI
storage), then again trying to cleanly work in the "zerombr" command
was no picnic. I'd be greatly in favor of only allowing "zerombr" as
valid if in text mode; the graphical code is hideous IMO.
10 years, 2 months
[PATCH 0/4] Set rpm macros in all the right places
by David Shea
Haha, guess what we didn't notice stopped working a few years back.
And while I was all up in anaconda-yum, moved the Exception handler so that
errors are processed by anaconda as a real error and we don't get a ENOENT
while trying to run authconfig instead.
David Shea (4):
Move the anaconda-yum exception handler (#1057120)
Set rpm macro information in anaconda-yum.
Implement %packages --instLangs (#156477)
Set rpm macros in DNFPayload
pyanaconda/packaging/__init__.py | 41 ++++++++++++++++++++++++++++++++++++++
pyanaconda/packaging/dnfpayload.py | 5 +++++
pyanaconda/packaging/yumpayload.py | 26 +++---------------------
scripts/anaconda-yum | 32 +++++++++++++++++++----------
4 files changed, 70 insertions(+), 34 deletions(-)
--
1.8.5.3
10 years, 2 months
[master/rhel7] Add createrepo Requires (#1016004)
by Brian C. Lane
Network drivers need createrepo.
Related: rhbz#1016004
---
anaconda.spec.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/anaconda.spec.in b/anaconda.spec.in
index b788ce4..fae680e 100644
--- a/anaconda.spec.in
+++ b/anaconda.spec.in
@@ -120,6 +120,7 @@ Requires: openssh
%endif
Requires: isomd5sum >= %{isomd5sum}
Requires: yum-utils >= %{yumutilsver}
+Requires: createrepo
Requires: NetworkManager >= %{nmver}
Requires: nm-connection-editor
Requires: dhclient
--
1.8.5.3
10 years, 2 months
[PATCH] Fix a traceback gathering free space info for a container. (#1069854)
by David Lehman
---
pyanaconda/ui/gui/spokes/custom.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyanaconda/ui/gui/spokes/custom.py b/pyanaconda/ui/gui/spokes/custom.py
index 6ca4a20..e788046 100644
--- a/pyanaconda/ui/gui/spokes/custom.py
+++ b/pyanaconda/ui/gui/spokes/custom.py
@@ -2498,7 +2498,7 @@ class CustomPartitioningSpoke(NormalSpoke, StorageChecker):
# we're looking for the original vg name
if data[0] == container_name:
c = self.__storage.devicetree.getDeviceByName(self._device_container_name)
- freeSpace = self._device_container_name.getattr(c, "freeSpace", None)
+ freeSpace = getattr(c, "freeSpace", None)
self._containerStore.insert(idx, self._container_store_row(freeSpace))
self._containerCombo.set_active(idx)
--
1.8.5.3
10 years, 2 months
[blivet:rhel7/master 0/3] Fix problems with what accordion displays (v7)
by Anne Mulhern
Find more used...same as before.
Make DeviceTree.hide() ... mostly the same, but remembers to get rid of existing devices, too.
Log action cancelation...same as before.
David Lehman (1):
Find more used devices when calculating unused devices (#1043763)
mulhern (2):
Make DeviceTree.hide() remove a larger set (#1043763)
Log action cancelation (#1043763)
blivet/__init__.py | 6 ++++--
blivet/devicetree.py | 52 +++++++++++++++++++++++++++++++++-------------------
2 files changed, 37 insertions(+), 21 deletions(-)
--
1.8.3.1
10 years, 2 months
[blivet:rhel7/master 0/3] Fix problems with what accordion displays (v6)
by Anne Mulhern
Find more used...same as before.
Make DeviceTree.hide()...takes a much more conservative approach to action
removal than previous patches. Conservative means removes a whole lot more
actions and is rendered thereby simpler and probably less dangerous.
Log action...trivial, but desirable, and shouldn't be dangerous.
IMHO we need to extend all the logging functions with some clever
meta-programming so that they _never_ cause a crash even if their
arguments can not be evaluated. Has anybody heard of a library for this,
specifically?
David Lehman (1):
Find more used devices when calculating unused devices (#1043763)
mulhern (2):
Make DeviceTree.hide() remove a larger set (#1043763)
Log action cancelation (#1043763)
blivet/__init__.py | 6 ++++--
blivet/devicetree.py | 29 +++++++----------------------
2 files changed, 11 insertions(+), 24 deletions(-)
--
1.8.3.1
10 years, 2 months
[PATCH] Move the sidebar to the right for RTL languages
by David Shea
---
widgets/src/HubWindow.c | 36 +++++++++++++++++++++++++++++++-----
widgets/src/StandaloneWindow.c | 40 +++++++++++++++++++++++++++++++++++-----
2 files changed, 66 insertions(+), 10 deletions(-)
diff --git a/widgets/src/HubWindow.c b/widgets/src/HubWindow.c
index 6756a31..b776016 100644
--- a/widgets/src/HubWindow.c
+++ b/widgets/src/HubWindow.c
@@ -100,18 +100,36 @@ static int get_sidebar_height(GtkWidget *window) {
/* function to override default drawing to insert sidebar image */
static gboolean anaconda_hub_window_on_draw(GtkWidget *win, cairo_t *cr) {
+ GtkStyleContext *context;
+ gdouble sidebar_x;
+ gdouble sidebar_width;
+
/* calls parent class' draw handler */
GTK_WIDGET_CLASS(anaconda_hub_window_parent_class)->draw(win,cr);
- GtkStyleContext * context = gtk_widget_get_style_context(win);
+ sidebar_width = get_sidebar_width(win);
+
+ /* For RTL languages, move the sidebar to the right edge */
+ if (gtk_get_locale_direction() == GTK_TEXT_DIR_LTR)
+ {
+ sidebar_x = 0;
+ }
+ else
+ {
+ GtkAllocation allocation;
+ gtk_widget_get_allocation(win, &allocation);
+ sidebar_x = allocation.width - sidebar_width;
+ }
+
+ context = gtk_widget_get_style_context(win);
gtk_style_context_save (context);
gtk_style_context_add_class(context, "logo-sidebar");
- gtk_render_background(context, cr, 0, 0, get_sidebar_width(win), get_sidebar_height(win));
+ gtk_render_background(context, cr, sidebar_x, 0, sidebar_width, get_sidebar_height(win));
gtk_style_context_remove_class(context, "logo-sidebar");
gtk_style_context_add_class(context, "logo");
- gtk_render_background(context, cr, 0, 0, get_sidebar_width(win), get_sidebar_height(win));
+ gtk_render_background(context, cr, sidebar_x, 0, sidebar_width, get_sidebar_height(win));
gtk_style_context_remove_class(context, "logo");
gtk_style_context_restore (context);
@@ -119,7 +137,7 @@ static gboolean anaconda_hub_window_on_draw(GtkWidget *win, cairo_t *cr) {
return TRUE; /* TRUE to avoid default draw handler */
}
-/* Move base window content appropriate amount of space to the right to make room for sidebar */
+/* Move base window content appropriate amount of space to make room for sidebar */
static void anaconda_hub_window_size_allocate (GtkWidget *window, GtkAllocation *allocation) {
GtkAllocation child_allocation;
GtkWidget *child;
@@ -127,11 +145,19 @@ static void anaconda_hub_window_size_allocate (GtkWidget *window, GtkAllocation
gtk_widget_set_allocation(window, allocation);
sidebar_width = get_sidebar_width(window);
- child_allocation.x = allocation->x+sidebar_width;
child_allocation.y = allocation->y;
child_allocation.width = allocation->width-sidebar_width;
child_allocation.height = allocation->height;
+ if (gtk_get_locale_direction() == GTK_TEXT_DIR_LTR)
+ {
+ child_allocation.x = allocation->x+sidebar_width;
+ }
+ else
+ {
+ child_allocation.x = allocation->x;
+ }
+
child = gtk_bin_get_child (GTK_BIN (window));
if (child && gtk_widget_get_visible (child))
gtk_widget_size_allocate (child, &child_allocation);
diff --git a/widgets/src/StandaloneWindow.c b/widgets/src/StandaloneWindow.c
index 0ccf56e..53a4b49 100644
--- a/widgets/src/StandaloneWindow.c
+++ b/widgets/src/StandaloneWindow.c
@@ -88,18 +88,36 @@ static int get_sidebar_height(GtkWidget *window) {
/* function to override default drawing to insert sidebar image */
static gboolean anaconda_standalone_window_on_draw(GtkWidget *win, cairo_t *cr) {
+ GtkStyleContext *context;
+ gdouble sidebar_x;
+ gdouble sidebar_width;
+
/* calls parent class' draw handler */
GTK_WIDGET_CLASS(anaconda_standalone_window_parent_class)->draw(win,cr);
- GtkStyleContext * context = gtk_widget_get_style_context(win);
+ sidebar_width = get_sidebar_width(win);
+
+ /* For RTL languages, move the sidebar to the right edge */
+ if (gtk_get_locale_direction() == GTK_TEXT_DIR_LTR)
+ {
+ sidebar_x = 0;
+ }
+ else
+ {
+ GtkAllocation allocation;
+ gtk_widget_get_allocation(win, &allocation);
+ sidebar_x = allocation.width - sidebar_width;
+ }
+
+ context = gtk_widget_get_style_context(win);
gtk_style_context_save (context);
gtk_style_context_add_class(context, "logo-sidebar");
- gtk_render_background(context, cr, 0, 0, get_sidebar_width(win), get_sidebar_height(win));
+ gtk_render_background(context, cr, sidebar_x, 0, sidebar_width, get_sidebar_height(win));
gtk_style_context_remove_class(context, "logo-sidebar");
gtk_style_context_add_class(context, "logo");
- gtk_render_background(context, cr, 0, 0, get_sidebar_width(win), get_sidebar_height(win));
+ gtk_render_background(context, cr, sidebar_x, 0, sidebar_width, get_sidebar_height(win));
gtk_style_context_remove_class(context, "logo");
gtk_style_context_restore (context);
@@ -107,19 +125,31 @@ static gboolean anaconda_standalone_window_on_draw(GtkWidget *win, cairo_t *cr)
return TRUE; /* TRUE to avoid default draw handler */
}
-/* Move base window content appropriate amount of space to the right to make room for sidebar */
+/* Move base window content appropriate amount of space to make room for sidebar */
static void anaconda_standalone_window_size_allocate (GtkWidget *window, GtkAllocation *allocation) {
GtkAllocation child_allocation;
GtkWidget *child;
int sidebar_width;
+ /*
+ * For RTL languages, the width is reduced by the same amount, but the
+ * start of the window does not need to move.
+ */
gtk_widget_set_allocation(window, allocation);
sidebar_width = get_sidebar_width(window);
- child_allocation.x = allocation->x+sidebar_width;
child_allocation.y = allocation->y;
child_allocation.width = allocation->width-sidebar_width;
child_allocation.height = allocation->height;
+ if (gtk_get_locale_direction() == GTK_TEXT_DIR_LTR)
+ {
+ child_allocation.x = allocation->x+sidebar_width;
+ }
+ else
+ {
+ child_allocation.x = allocation->x;
+ }
+
child = gtk_bin_get_child (GTK_BIN (window));
if (child && gtk_widget_get_visible (child))
gtk_widget_size_allocate (child, &child_allocation);
--
1.8.5.3
10 years, 2 months