Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 119241
Summary: | Xsession/xinitrc shouldn't source backup and dir files in xinitrc.d/ | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Jens Petersen <petersen> |
Component: | xinitrc | Assignee: | Mike A. Harris <mharris> |
Status: | CLOSED RAWHIDE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | wtogami |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | 3.40-1 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2004-05-07 14:16:47 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 114961 |
Description
Jens Petersen
2004-03-26 23:47:10 UTC
Also it tries to execute subdirectories too... Making this block FC2 Another way of inducing backup files, is if one modifies say xinput, and then upgrade xinitrc: then rpm will generate xinput.rpmnew, which will get sources along with (after?) xinput... Mike, do you agree requiring a ".sh" suffix for scripts is a good way to fix this, or is there a better way? Yeah, I think the .sh method is the proper solution. I don't see how else you could do it foolproof. *.sh makes it explicit that anything needs to be named with a specific extension to get executed, and has the benefit of backup files, etc. getting ignored. It has the drawback that any other packages which drop files in there, which aren't already named *.sh, will get ignored too. Perhaps we should make the loop: for file in /etc/X11/xinit/xinitrc.d/* ; do if echo $file | grep -q "\.sh$" ; then . $file else echo "warning: $file does not end in .sh extension, ignoring" fi done Perhaps the warning should go to stderr. What do you think of the above? The only other way, would be to ignore specific backup extensions, but that's not foolproof, as there is no standard. Yeah, I like your solution in comment 4. I think that is fine. Fixed in xinitrc-3.40-1 Note that you also have to change the other packages so they contain .sh scripts instead of saying: warning: /etc/X11/xinit/xinitrc.d/xinput does not end in .sh extension, ignoring |