From 647690e264e52d4edb56cbf4fcb70d807fadccf7 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Wed, 3 Feb 2021 14:16:20 +0100 Subject: [PATCH] build_library/check_root: Port to python3 The script needs to be ported, because it is importing portage code which became python3 only. The porting I did is likely a lousy job, but at least it stopped failing with some p(yt)hony errors. --- build_library/check_root | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/build_library/check_root b/build_library/check_root index fb181a5756..8c522957a2 100755 --- a/build_library/check_root +++ b/build_library/check_root @@ -1,11 +1,9 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright (c) 2015 The CoreOS Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -from __future__ import unicode_literals - import fnmatch import os import stat @@ -106,12 +104,12 @@ IGNORE_MISSING = { USR_LINKS = ("/bin/", "/sbin/", "/lib/", "/lib32/", "/lib64/") IGNORE_SHEBANG = ( - b"*/python[0-9].[0-9]/cgi.py", - b"*/usr/lib64/modules/*/source/scripts/*", - b"*/usr/share/nova-agent/*/etc/gentoo/nova-agent", - b"*/tmp/*", - b"*/Documentation/*", - b"*/doc/*", + "*/python[0-9].[0-9]/cgi.py", + "*/usr/lib64/modules/*/source/scripts/*", + "*/usr/share/nova-agent/*/etc/gentoo/nova-agent", + "*/tmp/*", + "*/Documentation/*", + "*/doc/*", ) IGNORE_SYMLINK = ( @@ -145,7 +143,7 @@ def provided_sonames(): def ignore_sonames(cpv): - for key in dep.match_to_list(cpv, IGNORE_MISSING.iterkeys()): + for key in dep.match_to_list(cpv, IGNORE_MISSING.keys()): for atom in IGNORE_MISSING[key]: yield atom @@ -231,10 +229,11 @@ def check_shebang(): continue if not is_exe(path): continue - with open(path, "r") as fd: + with open(path, "rb") as fd: line = fd.readline(80) if not line.startswith(b"#!"): continue + line = line.decode('utf-8') args = line[2:].rstrip().split(None, 2) cmd = args.pop(0) if cmd in ('/usr/bin/env', '/bin/env') and args: