[opensuse-buildservice] "W: non-executable-script" for files which are executable in the sources
I get the above warning for some files in the following package: https://build.opensuse.org/package/show?package=dispcalGUI&project=home%3Afh... rpmlint log for Factory i586: dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxDisplayAdjustmentFrame.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/ccmx.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/main.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/report.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxwindows.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxLUTViewer.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/colormath.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/encodedstdio.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/jspacker.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/util_str.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxMeasureFrame.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/safe_print.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/xrandr.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/argyll_RGB2XYZ.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxTestchartEditor.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxProfileInfo.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/colord.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/util_win.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/setup.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/postinstall.py 0644L /usr/bin/env dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py 0644L /usr/bin/env When I look into the source archive, the respective files have the executable bit set, so I'm not really understanding where the warning comes from. I've even hacked the spec file to make sure the files have the executable bit set (ie. I call chmod +x on the files in %prep), but it seems almost as if something removes it later? -- Florian Höch -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
Quoting Florian Höch <lists+opensusebuildservice@hoech.org>:
I get the above warning for some files in the following package:
https://build.opensuse.org/package/show?package=dispcalGUI&project=home%3Afh...
rpmlint log for Factory i586:
dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxDisplayAdjustmentFrame.py 0644L /usr/bin/env
Very likely, the steps in %install do not add the -x flag to those files... which is not even wrong: the scripts are to be imported by other python files and are not meant to be 'ran' on their own. As such, the shebang at the beginning of them is actually wrong (there should not be one). Hth, Dominique PS: This kind of quiestion actually belongs on the -packaging mailing list, as it's in no way related to OBS/OBS Development. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
But in my case, those files _are_ meant to be run on their own as well as being imported. This is very common in the python world. I'm not sure why %install does break this without good reason? But if I understand you correctly I should better repost that question to the packaging maillist. Am 18.06.2012 22:05, schrieb Dominique Leuenberger a.k.a DimStar:
Quoting Florian Höch <lists+opensusebuildservice@hoech.org>:
I get the above warning for some files in the following package:
https://build.opensuse.org/package/show?package=dispcalGUI&project=home%3Afh...
rpmlint log for Factory i586:
dispcalGUI.i586: W: non-executable-script /usr/lib/python2.7/site-packages/dispcalGUI/wxDisplayAdjustmentFrame.py 0644L /usr/bin/env
Very likely, the steps in %install do not add the -x flag to those files... which is not even wrong: the scripts are to be imported by other python files and are not meant to be 'ran' on their own.
As such, the shebang at the beginning of them is actually wrong (there should not be one).
Hth,
Dominique
PS: This kind of quiestion actually belongs on the -packaging mailing list, as it's in no way related to OBS/OBS Development.
-- Florian Höch -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Mon, Jun 18, 2012 at 9:58 PM, Florian Höch <lists+opensusebuildservice@hoech.org> wrote:
When I look into the source archive, the respective files have the executable bit set, so I'm not really understanding where the warning comes from. I've even hacked the spec file to make sure the files have the executable bit set (ie. I call chmod +x on the files in %prep), but it seems almost as if something removes it later?
AFAIK, the correct and "clean" way to set permissions of the files in an RPM package is to use %attr inside %files: http://www.rpm.org/max-rpm/s1-rpm-inside-files-list-directives.html I don't know if the last paragraph (norootforbuild) applies to the OBS, though. -- Kind regards 686f6c6d / Christopher 'm4z' Holm -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
Am 18.06.2012 23:35, schrieb 686f6c6d:
On Mon, Jun 18, 2012 at 9:58 PM, Florian Höch <lists+opensusebuildservice@hoech.org> wrote:
When I look into the source archive, the respective files have the executable bit set, so I'm not really understanding where the warning comes from. I've even hacked the spec file to make sure the files have the executable bit set (ie. I call chmod +x on the files in %prep), but it seems almost as if something removes it later?
AFAIK, the correct and "clean" way to set permissions of the files in an RPM package is to use %attr inside %files: http://www.rpm.org/max-rpm/s1-rpm-inside-files-list-directives.html I don't know if the last paragraph (norootforbuild) applies to the OBS, though.
Thanks, didn't think of that. -- Florian Höch -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
participants (3)
-
686f6c6d
-
Dominique Leuenberger a.k.a DimStar
-
Florian Höch