Summary: | layman blocks ufed from working | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Christopher Thorjussen <joffer> |
Component: | Tools | Assignee: | Harald van Dijk (RETIRED) <truedfx> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | christoph.diesch, decamps, dev, gustav.schaffter, jeromepoulin, johan.tibell, only_bugzilla_automail.era.ssokolow, wrobel |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
Limited source support for ufed
make.conf that breaks ufed |
Description
Christopher Thorjussen
2006-04-25 14:44:25 UTC
This is going to be a bit hard to fix properly in ufed, firstly because portage's own parsing of make.conf and python's shlex interact in strange ways, meaning 'source' can behave strangely in special cases, and secondly, because supporting 'source' means ufed may have to save the USE flags in another file. I will try to include limited support for 'source' when reading make.conf, and if USE-affecting variables are set in other files, have ufed abort (but only then). This shouldn't break things with layman, right? (I have no idea how layman works, I don't use it.) No, layman won't be affected by this. layman does not directly use anything from the make.conf file. It just modifies the PORTAGE_OVERLAY variable and as a safety precaution it does not do that directly with /etc/make.conf since I disliked having a tool automatically modifying this rather central config file. So I just used the "source" feature since it is supported by portage. The sourced file only sets PORTAGE_OVERLAY. As a workaround people can also omit the "source /path/to/layman/make.conf" in /etc/make.conf and modify the layman config like this: #----------------------------------------------------------- # Path to the make.conf file that should be modified by # layman make_conf : /etc/make.conf This way you don't need the source statement and layman will directly modify your /etc/make.conf. Decide for yourself if you consider that dangerous or safe enough :) Created attachment 85522 [details, diff]
Limited source support for ufed
This should make ufed deal with it. Could you please make sure it works for you? Just run
(cd /; patch -l -p0) < whatever-filename-you-picked
I will add a cleaner but longer (because of whitespace differences, and unrelated modifications) patch to CVS, so this should be fixed in the next version. The next version is taking a really long time though, and most users won't use "source", so just modify ufed locally for now, okay?
I will try the patch later today, when I get home. Worked :) I decided to just add ufed-0.40-r2 with this patch, so fixed now, thanks for the report. *** Bug 134749 has been marked as a duplicate of this bug. *** *** Bug 135209 has been marked as a duplicate of this bug. *** Doesn't work... It reads make.conf fine, but it has trouble writing to it: Parse error when writing make.conf - did you modify it while ufed was running? (In reply to comment #9) > Doesn't work... It reads make.conf fine, but it has trouble writing to it: Could you please attach your make.conf ? Created attachment 88160 [details]
make.conf that breaks ufed
Here you go! Thanks a lot!
Thanks, fixed in 0.40-r3. I checked for 'source' commands before the USE="..." line in make.conf when writing, but forgot to do so after it. *** Bug 138549 has been marked as a duplicate of this bug. *** *** Bug 145993 has been marked as a duplicate of this bug. *** *** Bug 149016 has been marked as a duplicate of this bug. *** *** Bug 156337 has been marked as a duplicate of this bug. *** *** Bug 158077 has been marked as a duplicate of this bug. *** |