New: [rhinstaller/lorax/pulls/41 master] Kill fedup
by dashea
These patches make lorax stop building `upgrade.img` and stop requiring `fedup-dracut` and friends.
For backward-compatibility, the API and CLI have been left unchanged. `--noupgrade` is still accepted and `doupgrade` still gets passed into the templates. It just doesn't do anything.
This is intended for f23-branch and master, so it might need backporting.
_NOTE_: there's one place in `pylorax/__init__.py` that might want some tweaking:
```python
# ppc64 cannot boot an initrd > 32MiB so remove some drivers
if self.arch.basearch in ("ppc64", "ppc64le"):
dracut_args.extend(["--omit-drivers", REMOVE_PPC64_DRIVERS])
# Only omit dracut modules from the initrd so that they're kept for
# upgrade.img
anaconda_args.extend(["--omit", REMOVE_PPC64_MODULES])
```
As far as I can tell, though, that shouldn't hurt anything
--
To view this pull request on github, visit https://github.com/rhinstaller/lorax/pull/41
8 years, 8 months
[anaconda][rhel7-branch][PATCH] Run nm-connection-editor with the --keep-above flag (#1231856)
by Martin Kolman
It was previously possible to hide the connection editor
window under the Anaconda one by clicking outside of it,
effectively loosing all unsaved data as there is no way to bring
the connection editor window back to foreground once it gets hidden.
So run the nm-connection-editor binary with the --keep-above flag,
which makes sure its window is always above the Anaconda one.
Resolves rhbz#1231856
Signed-off-by: Martin Kolman <mkolman(a)redhat.com>
---
pyanaconda/ui/gui/spokes/network.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pyanaconda/ui/gui/spokes/network.py b/pyanaconda/ui/gui/spokes/network.py
index a45b095..54192a8 100644
--- a/pyanaconda/ui/gui/spokes/network.py
+++ b/pyanaconda/ui/gui/spokes/network.py
@@ -571,7 +571,7 @@ class NetworkControlBox(GObject.GObject):
log.info("network: configuring connection %s device %s ssid %s",
uuid, devname, self.selected_ssid)
self.kill_nmce(msg="Configure button clicked")
- proc = startProgram(["nm-connection-editor", "--edit", "%s" % uuid], reset_lang=False)
+ proc = startProgram(["nm-connection-editor", "--keep-above", "--edit", "%s" % uuid], reset_lang=False)
self._running_nmce = proc
GLib.child_watch_add(proc.pid, self.on_nmce_exited, activate)
@@ -661,7 +661,7 @@ class NetworkControlBox(GObject.GObject):
def add_device(self, ty):
log.info("network: adding device of type %s", ty)
self.kill_nmce(msg="Add device button clicked")
- proc = startProgram(["nm-connection-editor", "--create", "--type=%s" % ty], reset_lang=False)
+ proc = startProgram(["nm-connection-editor", "--keep-above", "--create", "--type=%s" % ty], reset_lang=False)
self._running_nmce = proc
GLib.child_watch_add(proc.pid, self.on_nmce_exited)
--
2.4.3
8 years, 8 months
Updated: [rhinstaller/blivet/pulls/215 master] Do not reserve extra space for metadata in a VG with RAID PVs
by dashea
Reserving 5 extents per disk per LV for metadata if a VG is on top of RAID PVs
is a weird magic that saved us troubles with placing LVM on top of RAID, but
even on the first it's just wrong and doesn't make sense. LVM doesn't allocate
any extra meta data if an LV is added to a VG (unless it is a meta data LV of
course) and the RAID device below it (the PV) is just a block device with some
size and no matter how many disks are below, the meta data space used by LVM is
just subtracted from the RAID device's (PV's) size. Moreover the LVM extent size
has nothing to do with the RAID device so it's like mixing apples and oranges.
If things don't fit we need to tweak our calculations of free space/size in/of
an MD RAID device (depending on the level and underlying disks) since that's the
only place where these tweaks really make sense. However, after quite a lot of
testing it seems that we are reserving more than enough space for the meta data.
--
To view this pull request on github, visit https://github.com/rhinstaller/blivet/pull/215
8 years, 8 months
Updated: [rhinstaller/blivet/pulls/207 master] Better calculate required space for LVM cache
by dashea
This pull request has three purposes (of descending importance):
1) it fixes a hidden issue discovered by anaconda's kickstart tests where the following kickstart snippet
```
logvol swap --name=swap --vgname=fedora --size=500 --fstype=swap
logvol / --name=root --vgname=fedora --size=4000 --grow --fstype=ext4 --cachepvs=pv.2 --cachesize=1000 --cachemode=writethrough
logvol /home --name=home --vgname=fedora --size=1000 --grow --fstype=ext4 --cachepvs=pv.2 --cachesize=1000 --cachemode=writeback
```
results in a successful installation, but the ``swap`` LV ends up being 8 MiB smaller. It's not the end of the world, but if the metadata size for cache was 256 MiB, it would be 256 MiB smaller which is quite a big difference. And even with the 8 MiB it's just wrong because the ``swap`` LV is the only one that has the exact requested size whereas the other LVs are requested to grow and fill in the remaining space.
2) It brings us closer to the target of the issue #31 where similar fixes/improvements/cleanup should happen for other types of LVs too.
3) It brings us closer to the support of LVM cache metadata size specification by users/user code.
--
To view this pull request on github, visit https://github.com/rhinstaller/blivet/pull/207
8 years, 8 months
[anaconda][rhel7-branch][PATCH] Ignore zram block devices in the list-harddrives script output (#1253184)
by Martin Kolman
Also make sure that what we only return block devices and fix the
output formatting regression.
Resolves: rhbz#1253184
Resolves: rhbz#1247886
Signed-off-by: Martin Kolman <mkolman(a)redhat.com>
---
data/command-stubs/list-harddrives-stub | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/data/command-stubs/list-harddrives-stub b/data/command-stubs/list-harddrives-stub
index ae5e6b9..c35d2f3 100755
--- a/data/command-stubs/list-harddrives-stub
+++ b/data/command-stubs/list-harddrives-stub
@@ -17,14 +17,35 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
+from __future__ import print_function
import sys
+import os
+import stat
import parted
+def check_device(device):
+ if stat.S_ISBLK(os.stat(device.path).st_mode):
+ # exclude device mapper devices
+ if device.type == parted.DEVICE_DM:
+ return False
+ # exclude block devices for CD/DVD disks
+ elif device.path.startswith("/dev/sr"):
+ return False
+ # exclude zram bloc devices
+ elif device.path.startswith("/dev/zram"):
+ return False
+ # the remaining block devices should be fine
+ else:
+ return True
+ else:
+ # ignore everything that is not a block device
+ return False
+
def main(argv):
lst = set()
- for dev in filter(lambda d: d.type != parted.DEVICE_DM and not d.path.startswith("/dev/sr"), parted.getAllDevices()):
+ for dev in filter(lambda d: check_device(d), parted.getAllDevices()):
if dev.path.startswith("/dev/"):
path = dev.path[5:]
else:
@@ -35,7 +56,7 @@ def main(argv):
lst = list(lst)
lst.sort()
for dev, size in lst:
- print(dev, size)
+ print("%s %s" % (dev, size))
if __name__ == "__main__":
main(sys.argv)
--
2.4.3
8 years, 8 months