[PATCH 1/3] Default to using the iscsi discovery credentials for login, if provided.
by Chris Lumens
---
pyanaconda/ui/gui/spokes/advstorage/iscsi.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/pyanaconda/ui/gui/spokes/advstorage/iscsi.py b/pyanaconda/ui/gui/spokes/advstorage/iscsi.py
index abc51c0..542d7a4 100644
--- a/pyanaconda/ui/gui/spokes/advstorage/iscsi.py
+++ b/pyanaconda/ui/gui/spokes/advstorage/iscsi.py
@@ -230,6 +230,11 @@ class ISCSIDialog(GUIObject):
self._iscsiNotebook.set_current_page(1)
self._okButton.set_sensitive(True)
+ # If some form of login credentials were used for discovery,
+ # default to using the same for login.
+ if self._authTypeCombo.get_active() != 0:
+ self._loginAuthTypeCombo.set_active(3)
+
# We always want to enable this button, in case the user's had enough.
self._cancelButton.set_sensitive(True)
return False
--
1.8.1.2
11 years
[lorax] keep /etc/os-release in the install image
by Dan Horák
systemd requires /etc/os-release to be present to switch root fs from initrd
to the real root.
fixes rhbz#956241
---
share/runtime-cleanup.tmpl | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/share/runtime-cleanup.tmpl b/share/runtime-cleanup.tmpl
index 9f2ed1c..006050b 100644
--- a/share/runtime-cleanup.tmpl
+++ b/share/runtime-cleanup.tmpl
@@ -27,7 +27,8 @@ removefrom dracut --allbut /usr/lib/dracut/modules.d/30convertfs/convertfs.sh \
## we don't run SELinux (not in enforcing, anyway)
removepkg checkpolicy selinux-policy libselinux-utils
## anaconda has its own repo files
-removepkg fedora-release fedora-release-rawhide
+removefrom fedora-release --allbut /etc/os-release
+removepkg fedora-release-rawhide
## no user accounts = no account management
removepkg usermode usermode-gtk passwd shadow-utils
## no services to turn on/off (keep the /etc/init.d link though)
--
1.8.1.4
11 years
[PATCH] Unpack property value returned by GDBus before using it (#956614)
by Radek Vykydal
This is the root cause of the BZ.
---
pyanaconda/nm.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyanaconda/nm.py b/pyanaconda/nm.py
index c1717a7..55e1a7f 100644
--- a/pyanaconda/nm.py
+++ b/pyanaconda/nm.py
@@ -125,7 +125,7 @@ def nm_activated_devices():
for ac in active_connections:
proxy = _get_proxy(object_path=ac, interface_name="org.freedesktop.NetworkManager.Connection.Active")
state = proxy.get_cached_property("State")
- if state != NetworkManager.ActiveConnectionState.ACTIVATED:
+ if not state or state.unpack() != NetworkManager.ActiveConnectionState.ACTIVATED:
continue
devices = proxy.get_cached_property("Devices")
if not devices:
--
1.7.11.7
11 years
[PATCH] Don't traceback when no activated devices were found for ks network default (#956614)
by Radek Vykydal
Typical crash case:
specify network ks command with --hostname only.
---
pyanaconda/network.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/pyanaconda/network.py b/pyanaconda/network.py
index 577d3b0..42a9294 100644
--- a/pyanaconda/network.py
+++ b/pyanaconda/network.py
@@ -810,7 +810,10 @@ def get_device_name(devspec):
elif nm.nm_is_connected():
# device activated in stage 1 by network kickstart command
msg = "first active device"
- devname = nm.nm_activated_devices()[0]
+ try:
+ devname = nm.nm_activated_devices()[0]
+ except IndexError:
+ log.debug("get_device_name: NM is connected but no activated devices found")
else:
msg = "first device found"
devname = min(devices)
@@ -840,7 +843,7 @@ def get_device_name(devspec):
log.error("Using --device=bootif without BOOTIF= boot option supplied")
else: devname = devspec
- if devname not in devices:
+ if devname and devname not in devices:
for d in devices:
try:
hwaddr = nm.nm_device_hwaddress(d)
--
1.7.11.7
11 years
[PATCH] Ask about VNC also in connecting state, not only connected (#952801)
by Radek Vykydal
---
anaconda | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/anaconda b/anaconda
index 676a8b2..6076262 100755
--- a/anaconda
+++ b/anaconda
@@ -419,7 +419,7 @@ def setupDisplay(anaconda, opts, addon_paths=None):
from pyanaconda.ui.tui.simpleline import App
from pyanaconda.ui.tui.spokes.askvnc import AskVNCSpoke
from pykickstart.constants import DISPLAY_MODE_TEXT
- from pyanaconda.nm import nm_is_connected
+ from pyanaconda.nm import nm_is_connected, nm_is_connecting
from blivet import arch
import blivet.util
@@ -479,7 +479,7 @@ def setupDisplay(anaconda, opts, addon_paths=None):
flags.vncquestion = False
# disable VNC question if we don't have network
- if not nm_is_connected():
+ if not nm_is_connected() and not nm_is_connecting():
stdoutLog.warning("Not asking for VNC because we don't have a network")
flags.vncquestion = False
--
1.7.11.7
11 years
[PATCH] langsupport spoke: keep data.lang.lang first in status of spoke
by Radek Vykydal
---
pyanaconda/ui/gui/spokes/langsupport.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/pyanaconda/ui/gui/spokes/langsupport.py b/pyanaconda/ui/gui/spokes/langsupport.py
index 2dc9727..e45c153 100644
--- a/pyanaconda/ui/gui/spokes/langsupport.py
+++ b/pyanaconda/ui/gui/spokes/langsupport.py
@@ -115,9 +115,11 @@ class LangsupportSpoke(NormalSpoke):
@property
def status(self):
# TODO: translate
- infos = set(self._find_localeinfos_for_code(self.data.lang.lang, self.locale_infos_for_data)[:1])
+ infos = self._find_localeinfos_for_code(self.data.lang.lang, self.locale_infos_for_data)[:1]
for code in self.data.lang.addsupport:
- infos.update(self._find_localeinfos_for_code(code, self.locale_infos_for_data))
+ for info in self._find_localeinfos_for_code(code, self.locale_infos_for_data):
+ if info not in infos:
+ infos.append(info)
return ", ".join(info.english_name for info in infos)
@property
--
1.7.11.7
11 years
[PATCH 0/2] Mounting patches
by Jan Safranek
The first patch helps with bug #914898.
The second one is more interesting, if two devices are mounted to the same
place, OpenLMI needs to know which mount was mounted first and which next,
in order to display which fs is really visible at the mount point.
Typically, my F19 shows in /proc/mounts;
rootfs / rootfs rw 0 0
/dev/vda2 / ext4 rw,seclabel,relatime,data=ordered 0 0
OpenLMI needs to know that the later one is visible at /, while data from the
first one is basically unavailable.
Jan
11 years
container management for anaconda's custom spoke
by David Lehman
This makes the "edit VG" stuff into "edit container" where container
could be either an LVM VG or a BTRFS volume. It moves container-wide
settings like encryption and raid into the container dialog so users
can have some sense of what they're setting up (encrypt a single lv
versus encrypt the entire vg).
This also adds support for creating lvm-on-md, which the user can
get by setting a raid level other than None for their VG.
Some things that probably need to be done, but not necessarily now:
1. make encryption of an lv and its vg mutually exclusive
2. ditto for raid (don't allow a striped lv in a vg that has md pvs)
I spent the better part of two weeks testing this, but that should
provide little comfort given the number of paths through custom storage.
11 years
[PATCH lorax/master] Remove /var/log/journal so journald won't write to overlay
by Will Woods
It's pretty pointless to copy data from /run/log/journal to
/var/log/journal, since both of those are in-memory filesystems.
This should somewhat reduce RAM use during installation.
---
share/runtime-postinstall.tmpl | 3 +++
1 file changed, 3 insertions(+)
diff --git a/share/runtime-postinstall.tmpl b/share/runtime-postinstall.tmpl
index e9a4d48..94f113c 100644
--- a/share/runtime-postinstall.tmpl
+++ b/share/runtime-postinstall.tmpl
@@ -38,6 +38,9 @@ systemctl mask fedora-configure.service fedora-loadmodules.service \
fedora-autorelabel.service fedora-autorelabel-mark.service \
fedora-wait-storage.service media.mount
+## Don't write the journal to the overlay, just keep it in RAM
+remove var/log/journal
+
## install some basic configuration files
append etc/resolv.conf ""
append etc/fstab ""
--
1.8.1.4
11 years
[PATCH] Remove the intf parameters from the iscsi class.
by Chris Lumens
---
blivet/iscsi.py | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/blivet/iscsi.py b/blivet/iscsi.py
index de3538f..cecda6a 100644
--- a/blivet/iscsi.py
+++ b/blivet/iscsi.py
@@ -263,7 +263,7 @@ class iscsi(object):
self.started = True
def discover(self, ipaddr, port="3260", username=None, password=None,
- r_username=None, r_password=None, intf=None):
+ r_username=None, r_password=None):
"""
Discover iSCSI nodes on the target available for login.
@@ -312,16 +312,13 @@ class iscsi(object):
if not logged_in]
def log_into_node(self, node, username=None, password=None,
- r_username=None, r_password=None, intf=None):
+ r_username=None, r_password=None):
"""
Raises IOError.
"""
rc = False # assume failure
msg = ""
- if intf:
- w = intf.waitWindow(_("Logging in to iSCSI node"),
- _("Logging in to iSCSI node %s") % node.name)
try:
authinfo = None
if username or password or r_username or r_password:
@@ -340,20 +337,17 @@ class iscsi(object):
except (IOError, ValueError) as e:
msg = str(e)
log.warning("iSCSI: could not log into %s: %s" % (node.name, msg))
- if intf:
- w.pop()
return (rc, msg)
# NOTE: the same credentials are used for discovery and login
# (unlike in UI)
def addTarget(self, ipaddr, port="3260", user=None, pw=None,
- user_in=None, pw_in=None, intf=None, target=None, iface=None):
+ user_in=None, pw_in=None, target=None, iface=None):
found = 0
logged_in = 0
- found_nodes = self.discover(ipaddr, port, user, pw, user_in, pw_in,
- intf)
+ found_nodes = self.discover(ipaddr, port, user, pw, user_in, pw_in)
if found_nodes == None:
raise IOError, _("No iSCSI nodes discovered")
@@ -371,8 +365,7 @@ class iscsi(object):
found = found + 1
- (rc, msg) = self.log_into_node(node, user, pw, user_in, pw_in,
- intf)
+ (rc, msg) = self.log_into_node(node, user, pw, user_in, pw_in)
if rc:
logged_in = logged_in +1
--
1.8.1.2
11 years