On Fri, Apr 29, 2011 at 09:19:50PM -0500, William Hubbs wrote: > On Fri, Apr 29, 2011 at 11:41:35AM -0700, Brian Harring wrote: > > Exact results please; the pkg_pretend crap proposed elsewhere (which > > is yet another way to crap up stage builds) frankly sucks. > > > > Mind you I'm just looking in, but this whole upgrade process really > > reads fairly suboptimal to me. It's definitely possible that this is > > the best that can be done, but I'd like to see exactly which issues we > > can't resolve in some fashion via pkg_postinst tricks w/in openrc. > > > > I'd much rather have an ebuild that violates a few rules than forced > > "you must accept this beyond normal mechanisms" and potential "can't > > boot" upgrade processes. > > > > So... details please, and why we can't script our way past chunks of > > this. :) > > The biggest part of the migration is running dispatch-conf, etc-update > or another configuration file updater and accepting all of the openrc > changes.
Yeah, with respect this is the hand wavey part I wanted details for.
I wanted to know *which* files were incompatible in conf differences,
things like that. From the sounds of it, the main concern is a set of
files moving (including their format), and CONFIG_PROTECT firing- it
takes some planning, but it's possible to work around this (suppress
it if needs be) or do pkg_postinst tricks outside the PM's normal
protections for it.
> Most of the stuff in the migration guide is just directing
> you to verify changes that the openrc ebuild has made and telling you
> which configuration files may need to be altered to match your system.
> I'm not sure how to script passed any of that.
Migration of settings from /etc/conf.d/rc to /etc/rc strikes me as
pretty damn scriptable, within limits- I've not used non-openrc for a
*long* time, but the settings are basically booleans or simple string.
Just requires a mapping of conf.d/rc:value -> rc:value .
Kernel modules, no different.
Checking the boot levels, udev included, same thing- if ROOT=/ and
baselayout is there already you likely *could* look at the running
system to see what's needed/in use, and kick rc-update as needed for
spots where it *isn't*.
So... yeah, scriptable, at least from where I'm sitting. To do it,
need to snapshot that info, and kick it via pkg_postinst.
I realize it's more work, but I'm frankly a bit concerned this isn't
beng looked at ("you must run etc-update" isn't the level of detail I
expected neither), nor trying very, very hard to remove the potential
of non-bootable system here- trying to rely on pkg_pretend nastyness
just sidesteps it and introduces other issues.
Again, I'm aware it may not be possible, but sharing the details of
why this it *isn't* an option would be rather useful.
Cheers-
~brian
pgpfHkCnIZuLy.pgp
Description: PGP signature
