Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-26 Thread Fabio Erculiani
I am starting to think that the real problem is that Gentoo does not
have ebuilds for building kernels (binary kernels). At that point, it
would be easy to add USE flags and virtual packages to solve the
config check problem at the dependencies level once and for all.

-- 
Fabio Erculiani



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-26 Thread Fabio Erculiani
What I always wondered is why we have ebuilds for every kind of binary
except for kernels, yet we build official kernels with official
configs for our livecds.

-- 
Fabio Erculiani



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-26 Thread Rich Freeman
On Sat, Jan 26, 2013 at 5:30 PM, Fabio Erculiani lx...@gentoo.org wrote:
 What I always wondered is why we have ebuilds for every kind of binary
 except for kernels, yet we build official kernels with official
 configs for our livecds.

Yup.  I don't think the solution is to have a USE flag for every
kernel parameter, but having a standardized kernel with a few flags
probably isn't a bad idea.

However, since I'm sure we want to fully support user-built kernels I
don't really see that solving the config check problem.  You can't
just depend on the standardized kernel, unless you use a virtual and
make gentoo-sources something that fulfills it (which means users
going that route just don't get the check).  That still isn't a bad
solution - those who want the hand-holding version can just use the
canned kernel.

I would still suggest that if we went that route the kernel needs more
modules than present on our install CDs.  Nothing wrong with the
install CDs per-se - they're focused on doing installation, not
interfacing with webcams, IR remotes, or radios.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-26 Thread Peter Stuge
Rich Freeman wrote:
 having a standardized kernel with a few flags probably isn't a bad idea.

That doesn't scale at all. Suggest instead take a .config as input to
the emerge, maybe something like savedconfig for busybox, and add
shortcuts for common options.

That way, the same mechanism can be used for arbitrarily complex
configurations too.


//Peter



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-26 Thread Rich Freeman
On Sat, Jan 26, 2013 at 7:31 PM, Peter Stuge pe...@stuge.se wrote:
 Rich Freeman wrote:
 having a standardized kernel with a few flags probably isn't a bad idea.

 That doesn't scale at all. Suggest instead take a .config as input to
 the emerge, maybe something like savedconfig for busybox, and add
 shortcuts for common options.

 That way, the same mechanism can be used for arbitrarily complex
 configurations too.

The intent would be to have all non-mutually-incompatible options
enabled as modules and an accompanying initramfs.  That's what every
single other distro does - it works reasonably well.  USE flags might
be used for any odd situations that can't be covered in this way
(though I can't think of any offhand - odd situations are probably
handled best with a manual build).

If you're just going to feed it a .config file then you might as well
use genkernel - the idea is to be bulletproof.  Just emerge the
package and run grub-install and you have a bootable system.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-25 Thread Rich Freeman
On Fri, Jan 25, 2013 at 1:24 PM, Nuno J. Silva nunojsi...@ist.utl.pt wrote:
 Is there any syntax to check if something is either disabled or built as
 a module?

Very problematic.  What is built in for the currently running kernel
can be fairly reliably determined by grepping /proc/config.gz - IF
support for that was enabled in the kernel.  But, there is no
guarantee that this kernel will be running on the next boot.
Determining what is build as a module really requires interpreting the
contents of /lib/modules - a module could have been built after the
kernel was built, in which case /proc/config.gz might indicate no
support even though it is supported.  I don't think DEVTMPFS can be
made a module, however (not sure on that).

You can also check /usr/src/linux/.config, but the sources might not
correspond to the running kernel, or the kernel on the next reboot, or
whatever.

It really is a touchy situation, hence all the emails in the thread.
You can build something that will work OK 80% of the time though by
checking the source tree.

Part of me wonders if we should just ship a binary kernel/initramfs as
an option.  Then again, users could just use genkernel and get
something like that anyway.  My main issue with genkernel is that its
default options are focused more on the install CD than ordinary use -
things like tuners/multimedia/lirc and the like tend to not be
enabled.  I would think a typical desktop-oriented distro is going to
enable as a module anything that doesn't cause breakage.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-25 Thread Christopher Head
On Fri, 25 Jan 2013 13:47:05 -0500
Rich Freeman ri...@gentoo.org wrote:

 Very problematic.  What is built in for the currently running kernel
 can be fairly reliably determined by grepping /proc/config.gz - IF
 support for that was enabled in the kernel.  But, there is no
 guarantee that this kernel will be running on the next boot.
 Determining what is build as a module really requires interpreting the
 contents of /lib/modules - a module could have been built after the
 kernel was built, in which case /proc/config.gz might indicate no
 support even though it is supported.  I don't think DEVTMPFS can be
 made a module, however (not sure on that).

Surely even that isn’t good enough, since the user could have built an
option as a module, tested it out, discovered it worked fine, and then
rebuilt the kernel with the option set to Y, but the .ko file would
still be left lying around?

Chris



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-25 Thread Rich Freeman
On Fri, Jan 25, 2013 at 2:19 PM, Christopher Head ch...@chead.ca wrote:
 Surely even that isn’t good enough, since the user could have built an
 option as a module, tested it out, discovered it worked fine, and then
 rebuilt the kernel with the option set to Y, but the .ko file would
 still be left lying around?

Yup.  Until the day comes when we have a USE flag for every kernel
parameter (in both built-in and module form) and just have the ebuild
actually build and install the kernel, it is going to be messy.  The
kernel is a bit unique in that we just dump a pile of source on the
disk and ask the user to have at it.  Note that I'm by no means
advocating that we actually do any of that - the kernel is unusual in
that it is EXTREMELY configurable otherwise this is probably what
would have been done.

As I mentioned in my last email maybe having a kernel package that
does do exactly that for a desktop-oriented kernel with maybe only a
few USE options might not be a bad idea - perhaps even managing grub
config and all.  That could be something that would make life easier
on users who don't care to customize their kernels.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-25 Thread Rich Freeman
On Fri, Jan 25, 2013 at 2:47 PM, Nuno J. Silva nunojsi...@ist.utl.pt wrote:

 Sorry, what's the difference between cheching =y and =m? I thought those
 were both part of the kernel config...

I'm talking about /proc/config.gz, which only reflects .config at the
time that the kernel was built.  So, build with config=n, then set
config=m and install the modules but don't replace the kernel.  Now
/proc/config.gz still says n, but the module is there and works fine.
And this is in fact the easiest way to add a module for something that
you didn't realize you needed at kernel build time - you can do this
on a running system.


 You can also check /usr/src/linux/.config, but the sources might not
 correspond to the running kernel, or the kernel on the next reboot, or
 whatever.

 Ok, what do these checks do right now? I thought that they were checking
 .config...

I dunno.  I wasn't talking about how the current config checks work.
The question was whether it was possible to determine how the kernel
was configured - I was answering in general.


 So you're saying that it's perfectly OK to check for =y or =n, but that
 it's somehow more difficult to check for =m?

My previous paragraph was referring to checking config.gz - and that
is unreliable for modules.  /usr/src/linux/.config is unreliable for
the reason I stated in the next paragraph - it doesn't necessarily
reflect the running kernel.

 This won't even solve the issue, even if some people may actually prefer
 a pre-built kernel.

Depends on the issue.  There isn't just one issue under discussion in
this thread.  A fairly bulletproof kernel solves a lot of issues in
general as it can have newbie-safe defaults (like just about anything
in any config check).  There is a reason that most distros don't need
config checks.

 But, definitely, fatal checks should not be a default, there are way too
 many scenarios.

Yup - just trying to point out some of the perils.  As I said there
are lots of 80% solutions.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-25 Thread Rich Freeman
On Fri, Jan 25, 2013 at 3:06 PM, Nuno J. Silva nunojsi...@ist.utl.pt wrote:
 Well, we could also get rid of issues with clashing USE flags by getting
 rid of USE flags and offering monolithic binary packages with almost
 every compatible feature enabled by default.

I'm not suggesting that we get rid of options - only that we have
simplified ones for those who don't need them.  You can get all the
benefits of Gentoo without tweaking every other kernel parameter.

That's no different from having a desktop profile/etc.  The value of
Gentoo is the /ability/ to tweak anything and everything, not the
/necessity/ to do so.  We already offer genkernel - why not a package
that basically runs it with a more comprehensive configuration and
installs the kernel?

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Rich Freeman
On Thu, Jan 24, 2013 at 12:49 PM, Duncan 1i5t5.dun...@cox.net wrote:
 That said, presumably udisks would choose not to make its check fatal,
 altho changing the default to fatal could complicate things for existing
 ebuilds until they're fixed.

That was basically my whole point - it can't be one-size-fits-all.
Honestly, based on some of the other feedback I'm not convinced it
should ever be fatal.  Perhaps it should be more or less noisy.

Keep in mind that a typical user may be running parallel builds and
such - so a delay doesn't really make much sense there either.  There
should also be some way to kill any interactivity in advance - if I'm
running a bootstrap script of some kind and I'm installing/updating
udev before I even compile a kernel that shouldn't cause the whole
process to die.



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Ian Stakenvicius
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On 24/01/13 01:09 PM, Rich Freeman wrote:
 On Thu, Jan 24, 2013 at 12:49 PM, Duncan 1i5t5.dun...@cox.net
 wrote:
 That said, presumably udisks would choose not to make its check
 fatal, altho changing the default to fatal could complicate
 things for existing ebuilds until they're fixed.
 
 That was basically my whole point - it can't be one-size-fits-all. 
 Honestly, based on some of the other feedback I'm not convinced it 
 should ever be fatal.  Perhaps it should be more or less noisy.
 
 Keep in mind that a typical user may be running parallel builds
 and such - so a delay doesn't really make much sense there either.
 There should also be some way to kill any interactivity in advance
 - if I'm running a bootstrap script of some kind and I'm
 installing/updating udev before I even compile a kernel that
 shouldn't cause the whole process to die.
 

a fatal die in pkg_pretend could be circumvented by an environment
variable such as ${PN}_I_KNOW_WHAT_IM_DOING being set.  Just a thought.



-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.19 (GNU/Linux)

iF4EAREIAAYFAlEBewoACgkQ2ugaI38ACPA5fQEAucffX2nqeFvlE+WTdY9xbWTY
zDiKIRofsFlsgSOscOMA/3iqGLolGVDlYR3YyLfform8udhz1deAYSyA4tabq4zH
=ky38
-END PGP SIGNATURE-



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Dustin C. Hatch

On 1/24/2013 12:18, Ian Stakenvicius wrote:

On 24/01/13 01:09 PM, Rich Freeman wrote:

On Thu, Jan 24, 2013 at 12:49 PM, Duncan 1i5t5.dun...@cox.net
wrote:

That said, presumably udisks would choose not to make its check
fatal, altho changing the default to fatal could complicate
things for existing ebuilds until they're fixed.


That was basically my whole point - it can't be one-size-fits-all.
Honestly, based on some of the other feedback I'm not convinced it
should ever be fatal.  Perhaps it should be more or less noisy.

Keep in mind that a typical user may be running parallel builds
and such - so a delay doesn't really make much sense there either.
There should also be some way to kill any interactivity in advance
- if I'm running a bootstrap script of some kind and I'm
installing/updating udev before I even compile a kernel that
shouldn't cause the whole process to die.



a fatal die in pkg_pretend could be circumvented by an environment
variable such as ${PN}_I_KNOW_WHAT_IM_DOING being set.  Just a thought.

People keep quoting, on this list and on gentoo-user, that Gentoo is not 
a hand holding distribution. Having to set I_KNOW_WHAT_IM_DOING=1 sure 
seems to me like I'm telling my dad I don't need him to hold my hand to 
cross the street anymore, I'm a big boy. It seems like an added step 
that isn't necessary. If users are not reading the messages they're 
receiving and it breaks their systems, why should that make extra work 
for those of us who do pay attention?


--
♫Dustin



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Rich Freeman
On Thu, Jan 24, 2013 at 1:18 PM, Ian Stakenvicius a...@gentoo.org wrote:
 a fatal die in pkg_pretend could be circumvented by an environment
 variable such as ${PN}_I_KNOW_WHAT_IM_DOING being set.  Just a thought.

If we're going to do this I'd definitely have the ${PN} bit as you
suggested.  Otherwise everybody will just set it in make.conf and the
feature will be pointless.  Then we'll yell at users because they
disabled the feature that normally just tends to break half their
builds but this time by some miracle would have actually prevented a
problem.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/13 13:25, Rich Freeman wrote:
 On Thu, Jan 24, 2013 at 1:18 PM, Ian Stakenvicius a...@gentoo.org wrote:
 a fatal die in pkg_pretend could be circumvented by an environment
 variable such as ${PN}_I_KNOW_WHAT_IM_DOING being set.  Just a thought.
 
 If we're going to do this I'd definitely have the ${PN} bit as you
 suggested.  Otherwise everybody will just set it in make.conf and the
 feature will be pointless.  Then we'll yell at users because they
 disabled the feature that normally just tends to break half their
 builds but this time by some miracle would have actually prevented a
 problem.

Are there really that many ways that this could cause false positives?
(Not that I'm against the $PN prefix, just curious).

I've only seen two legitimate examples: catalyst (whose developers are
more than capable of setting a variable) and a supervisor-provided
kernel for which you have no information.



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Ian Stakenvicius
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On 24/01/13 01:55 PM, Michael Orlitzky wrote:
 On 01/24/13 13:25, Rich Freeman wrote:
 On Thu, Jan 24, 2013 at 1:18 PM, Ian Stakenvicius
 a...@gentoo.org wrote:
 a fatal die in pkg_pretend could be circumvented by an
 environment variable such as ${PN}_I_KNOW_WHAT_IM_DOING being
 set.  Just a thought.
 
 If we're going to do this I'd definitely have the ${PN} bit as
 you suggested.  Otherwise everybody will just set it in make.conf
 and the feature will be pointless.  Then we'll yell at users
 because they disabled the feature that normally just tends to
 break half their builds but this time by some miracle would have
 actually prevented a problem.
 
 Are there really that many ways that this could cause false
 positives? (Not that I'm against the $PN prefix, just curious).
 
 I've only seen two legitimate examples: catalyst (whose developers
 are more than capable of setting a variable) and a
 supervisor-provided kernel for which you have no information.
 

How about, you know what you're doing and are going to build a new
kernel as soon as the emerge finishes (since the emerge is also
bringing in a new gentoo-sources)??


-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.19 (GNU/Linux)

iF4EAREIAAYFAlEBhEsACgkQ2ugaI38ACPDYHAD/RCYlN6hcItJYn/gCcEdEgh+C
owE/NaeGNDiH+3H/+uAA/jRfeJ+HPxDLdGNxt/VARcrqYnA15o6SmAiHOIj4i8Au
=FTEj
-END PGP SIGNATURE-



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Rich Freeman
On Thu, Jan 24, 2013 at 1:58 PM, Ian Stakenvicius a...@gentoo.org wrote:
 How about, you know what you're doing and are going to build a new
 kernel as soon as the emerge finishes (since the emerge is also
 bringing in a new gentoo-sources)??

Or my earlier example - USB_SUSPEND and such.  If there end up being
lots of config checks that are fatal then users will inevitably end up
overriding them, and then they'll get burned when the check really
matters.

I think the better option in any case is to use a news item when
things change so that users can actually plan for the upcoming changes
and not find out in the middle of a build.  News can be targeted at
those who need to know, it shows up for users 5 years from now if
still relevant not if otherwise, and it only shows up once when it
matters.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/13 13:58, Ian Stakenvicius wrote:
 
 
 How about, you know what you're doing and are going to build a new
 kernel as soon as the emerge finishes (since the emerge is also
 bringing in a new gentoo-sources)??
 

If you're going to upgrade both anyway, you should be upgrading the
kernel first. That way if you lose power or the system crashes, the box
can reboot.



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread viv...@gmail.com

Il 24/01/2013 20:21, Michael Orlitzky ha scritto:

On 01/24/13 13:58, Ian Stakenvicius wrote:


How about, you know what you're doing and are going to build a new
kernel as soon as the emerge finishes (since the emerge is also
bringing in a new gentoo-sources)??


If you're going to upgrade both anyway, you should be upgrading the
kernel first. That way if you lose power or the system crashes, the box
can reboot.

which can be the exact opposite order if instead you have to _disable_ a 
feature in the kernel which would make udev not bootable.
Don't remember exactly what, but it happened in the past when Greg was 
still maintainer and an obsolete feature was making udev confused.





Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/13 15:26, viv...@gmail.com wrote:
 If you're going to upgrade both anyway, you should be upgrading the
 kernel first. That way if you lose power or the system crashes, the box
 can reboot.

 which can be the exact opposite order if instead you have to _disable_ a
 feature in the kernel which would make udev not bootable.
 Don't remember exactly what, but it happened in the past when Greg was
 still maintainer and an obsolete feature was making udev confused.
 

Suppose, you're on e.g. udev-1, and,

  * udev-2 requires CONFIG_FOO=n
  * udev-1 will not boot with CONFIG_FOO=y

Then it doesn't make much sense to die without CONFIG_FOO=n, because it
can't possibly exist. So we would warn with either a non-fatal config
check or news item. Hopefully we would also execute the person responsible.



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/13 15:39, Michael Orlitzky wrote:
 On 01/24/13 15:26, viv...@gmail.com wrote:
 If you're going to upgrade both anyway, you should be upgrading the
 kernel first. That way if you lose power or the system crashes, the box
 can reboot.

 which can be the exact opposite order if instead you have to _disable_ a
 feature in the kernel which would make udev not bootable.
 Don't remember exactly what, but it happened in the past when Greg was
 still maintainer and an obsolete feature was making udev confused.

 
 Suppose, you're on e.g. udev-1, and,
 
   * udev-2 requires CONFIG_FOO=n
   * udev-1 will not boot with CONFIG_FOO=y

Sorry, that should be an 'n' instead of a 'y'. I started out with 'y'
and tried to switch to 'n' to match your example.




Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Rich Freeman
On Thu, Jan 24, 2013 at 2:21 PM, Michael Orlitzky mich...@orlitzky.com wrote:
 On 01/24/13 13:58, Ian Stakenvicius wrote:


 How about, you know what you're doing and are going to build a new
 kernel as soon as the emerge finishes (since the emerge is also
 bringing in a new gentoo-sources)??


 If you're going to upgrade both anyway, you should be upgrading the
 kernel first. That way if you lose power or the system crashes, the box
 can reboot.

The problem is that we're trying to solve a very specific issue (a
udev upgrade, which already happened) with a general solution.

Whatever we come up with has to be override-able in a way that doesn't
then just come back to haunt them.

As far as what order you upgrade what in - in the case where I'd be
most likely to run into this the system wouldn't be bootable before I
upgrade, or after I upgrade.  I'd tend to run into this issue when
building a new system from a stage3 - just dump a bunch of stuff in
@world (including a kernel) and then run an emerge -uDN world followed
by building a kernel.

Yes, this isn't a typical case, and neither are the 10 billion other
cases where config checks break.  However, typical users don't run
Gentoo to begin with.  Everybody has some odd case or another - so we
warn people of potential breakage before we break things and let them
use the brains they needed to get Gentoo working in the first place.

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread viv...@gmail.com

Il 24/01/2013 21:45, Michael Orlitzky ha scritto:

On 01/24/13 15:39, Michael Orlitzky wrote:

On 01/24/13 15:26, viv...@gmail.com wrote:

If you're going to upgrade both anyway, you should be upgrading the
kernel first. That way if you lose power or the system crashes, the box
can reboot.


which can be the exact opposite order if instead you have to _disable_ a
feature in the kernel which would make udev not bootable.
Don't remember exactly what, but it happened in the past when Greg was
still maintainer and an obsolete feature was making udev confused.


Suppose, you're on e.g. udev-1, and,

   * udev-2 requires CONFIG_FOO=n
   * udev-1 will not boot with CONFIG_FOO=y

Sorry, that should be an 'n' instead of a 'y'. I started out with 'y'
and tried to switch to 'n' to match your example.


actually it wasn't an issue that could made a system un-bootable but was 
like this:


* udev-129 could live with CONFIG_SYSFS_DEPRECATED=y
* udev-130 require CONFIG_SYSFS_DEPRECATED not set

The example was given just to underline the fact that a different emerge 
order may be required.


cheers



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/13 19:29, viv...@gmail.com wrote:
 actually it wasn't an issue that could made a system un-bootable but was
 like this:
 
 * udev-129 could live with CONFIG_SYSFS_DEPRECATED=y
 * udev-130 require CONFIG_SYSFS_DEPRECATED not set
 
 The example was given just to underline the fact that a different emerge
 order may be required.
 

So you upgrade the kernel (unsetting CONFIG_SYSFS_DEPRECATED), and then
upgrade udev (which would now pass the config check). Same situation?



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Robin H. Johnson
On Fri, Jan 25, 2013 at 01:39:08AM +, Duncan wrote:
 Meanwhile, my vote is for a NON-FATAL pkg_pretend warning.  That gets run 
 at the beginning when people are still likely to be watching, so should 
 be good enough.  Beyond that, gentoo can't keep the obtuse from ignoring 
 the warnings, so if it breaks they get to keep the pieces, and RESOLVED/
 READTHEWARNINGS to any resulting bugs.
Ok, I'll see about implementing pkg_pretend in linux-info.eclass as
well.

-- 
Robin Hugh Johnson
Gentoo Linux: Developer, Trustee  Infrastructure Lead
E-Mail : robb...@gentoo.org
GnuPG FP   : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/2013 08:39 PM, Duncan wrote:
 
 Now I've chosen to set that using package.env so it applies only to glibc, 
 but I imagine many users have it set in their make.conf, because a lot of 
 packages use it, and they were forced to set it for one or another at 
 some point.

Using package.env is preferable, since it basically exists in lieu of
prefixing every environment variable with $PN. But I don't particularly
care about the details. I was just curious if there are real cases where
the config check would do harm.

If there's no downside (i.e. no one will notice, except the people whose
machines would be broken), then the whole debate is stupid.


 Thus, adding the package name to enforce per-package 
 I_KNOW_WHAT_I_AM_DOING seems a good idea.
 
 Or perhaps use the usual I_KNOW_WHAT_I_AM_DOING var, but instead of just 
 checking that it's set, check that it's set to the specific package name.
 
 
 Meanwhile, my vote is for a NON-FATAL pkg_pretend warning.  That gets run 
 at the beginning when people are still likely to be watching, so should 
 be good enough.  Beyond that, gentoo can't keep the obtuse from ignoring 
 the warnings, so if it breaks they get to keep the pieces, and RESOLVED/
 READTHEWARNINGS to any resulting bugs.

They're not warnings, they're we just broke your system, hope you
weren't doing anything tonight! A boulder with WARNING: FALLING ROCKS
spray-painted on the bottom.

Better to spare the innocents, and for the people who set
I_KNOW_WHAT_I_AM_DOING=y in make.conf, we can create
RESOLVED:I_THOUGHT_YOU_KNEW.



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Rich Freeman
On Thu, Jan 24, 2013 at 9:22 PM, Michael Orlitzky mich...@orlitzky.com wrote:
 Using package.env is preferable, since it basically exists in lieu of
 prefixing every environment variable with $PN. But I don't particularly
 care about the details. I was just curious if there are real cases where
 the config check would do harm.

A few have come up.  They mostly involve with building on systems
where the package won't be deployed, in things like chroots, during
things like upgrading stage3s before installing the kernel, and so on.
 The USB_SUSPEND case came up as well - things like that shouldn't be
fatal.

Does package.env support having more than one environment file per
package?  If somebody is already using package.env to tweak CFLAGs and
such then also using it for this flag means basically doubling the
number of configurations (ie having a debug-flags and
debug-flags-ikwiad file, and ditto for any other tweaks).


 If there's no downside (i.e. no one will notice, except the people whose
 machines would be broken), then the whole debate is stupid.


I don't think that we'd have a debate if there wasn't a sense that
people would notice.  The whole your use case isn't the same as mine
thus it doesn't matter thing gets old.  I don't expect devs to do a
lot of work to maintain corner cases, but in this case the desire is
to not make users patch ebuilds if they don't want to have them die
when nothing is wrong, and accomplishing this doesn't really cost
anybody time.


 Better to spare the innocents, and for the people who set
 I_KNOW_WHAT_I_AM_DOING=y in make.conf, we can create
 RESOLVED:I_THOUGHT_YOU_KNEW.


Remember, it isn't the skipped check that broke the system - it was
the package change that required the check in the first place.  If the
package just silently fails (even due to an override) then that is a
bad design.  It should at least give as many warnings as it does
presently (but non-fatally), and it should still be preceded with a
news item.

Otherwise we're just finding creative ways to drive away users.  Sure,
we can call them stupid on their way out the door, but while I can't
speak for anybody else, I'm mainly here because I'd like to do some
good, and I wouldn't mind it if I found Gentoo useful along the way.

I think what we need is a combination of:
1.  Only truly critical issues trigger fatal errors.  This can't be
used for default config checks.
2.  The fatal errors are overridable.
3.  If overriden the errors are still output.
4.  The error output includes instructions on how to override, and the
instructions are package-specific (ie don't stick i_know_what_im_doing
in make.conf).
5.  The change introducing the issue is preceded with a news item.

Honestly I think #5 is more important than having the check in the
first place.  Also, most of these can be handled at the eclass level -
the package should explain the issue, but all the
instructions/behavior can be generic (that is, generic instructions on
how to do the override in a package-specific way, such as through
package.env or whatever).

Rich



Re: [gentoo-dev] Re: RFC: CONFIG_CHECK_FATAL, making CONFIG_CHECKS fatal by default

2013-01-24 Thread Michael Orlitzky
On 01/24/2013 10:12 PM, Rich Freeman wrote:
 
 Otherwise we're just finding creative ways to drive away users.  Sure,
 we can call them stupid on their way out the door, but while I can't
 speak for anybody else, I'm mainly here because I'd like to do some
 good, and I wouldn't mind it if I found Gentoo useful along the way.
 
 I think what we need is a combination of:
 1.  Only truly critical issues trigger fatal errors.  This can't be
 used for default config checks.
 2.  The fatal errors are overridable.
 3.  If overriden the errors are still output.
 4.  The error output includes instructions on how to override, and the
 instructions are package-specific (ie don't stick i_know_what_im_doing
 in make.conf).
 5.  The change introducing the issue is preceded with a news item.
 

I completely agree with this, so I won't drag the issue out any further.