From: Zoltán Böszörményi Date: Fri, 13 May 2022 15:30:29 +0000 (+0200) Subject: npm.bbclass: Fix file permissions before opening it for writing X-Git-Tag: uninative-3.7~845 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c6740091cb7336aaa3bb9b692fe4dc6fc92aa3a8;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git npm.bbclass: Fix file permissions before opening it for writing Some node module archives in npmjs.org contain wrong permissions. I found a case with package.json in the archive being r-xr-xr-x for which open(..., "w") fails. Modify the manifest file permissions to add the write bit for the owner. Signed-off-by: Zoltán Böszörményi Signed-off-by: Richard Purdie --- diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass index ba50fcac203..86ee0f665aa 100644 --- a/meta/classes/npm.bbclass +++ b/meta/classes/npm.bbclass @@ -81,6 +81,7 @@ python npm_do_configure() { import json import re import shlex + import stat import tempfile from bb.fetch2.npm import NpmEnvironment from bb.fetch2.npm import npm_unpack @@ -202,6 +203,7 @@ python npm_do_configure() { if has_shrinkwrap_file: _update_manifest("devDependencies") + os.chmod(cached_manifest_file, os.stat(cached_manifest_file).st_mode | stat.S_IWUSR) with open(cached_manifest_file, "w") as f: json.dump(cached_manifest, f, indent=2)