Check chmod modes and more functions I forgot to commit
This commit is contained in:
parent
66b78dc9e4
commit
54b292238f
1 changed files with 17 additions and 1 deletions
|
|
@ -378,6 +378,8 @@ class Shell:
|
||||||
Change the permissions of a file or directory
|
Change the permissions of a file or directory
|
||||||
"""
|
"""
|
||||||
location = self.path(location)
|
location = self.path(location)
|
||||||
|
if not 0 <= mode <= 0o777:
|
||||||
|
raise ValueError("Invalid mode value")
|
||||||
if os.path.exists(location):
|
if os.path.exists(location):
|
||||||
os.chmod(location, mode)
|
os.chmod(location, mode)
|
||||||
|
|
||||||
|
|
@ -392,7 +394,11 @@ class Shell:
|
||||||
if recursive and os.path.isdir(location):
|
if recursive and os.path.isdir(location):
|
||||||
for root, dirs, files in os.walk(location):
|
for root, dirs, files in os.walk(location):
|
||||||
for directory in dirs:
|
for directory in dirs:
|
||||||
shutil.chown(os.path.join(root, directory), user, group)
|
shutil.chown(
|
||||||
|
os.path.join(root, directory),
|
||||||
|
user,
|
||||||
|
group,
|
||||||
|
)
|
||||||
for file in files:
|
for file in files:
|
||||||
shutil.chown(os.path.join(root, file), user, group)
|
shutil.chown(os.path.join(root, file), user, group)
|
||||||
else:
|
else:
|
||||||
|
|
@ -501,6 +507,10 @@ class Shell:
|
||||||
with open("/etc/os-release", encoding="utf-8") as f:
|
with open("/etc/os-release", encoding="utf-8") as f:
|
||||||
if "Raspbian" in f.read():
|
if "Raspbian" in f.read():
|
||||||
release = "Raspbian"
|
release = "Raspbian"
|
||||||
|
if self.exists("/etc/rpi-issue"):
|
||||||
|
with open("/etc/rpi-issue", encoding="utf-8") as f:
|
||||||
|
if "Raspberry Pi" in f.read():
|
||||||
|
release = "Raspbian"
|
||||||
if self.run_command("command -v apt-get", suppress_message=True):
|
if self.run_command("command -v apt-get", suppress_message=True):
|
||||||
with open("/etc/os-release", encoding="utf-8") as f:
|
with open("/etc/os-release", encoding="utf-8") as f:
|
||||||
release_file = f.read()
|
release_file = f.read()
|
||||||
|
|
@ -555,6 +565,12 @@ class Shell:
|
||||||
|
|
||||||
# pylint: enable=invalid-name
|
# pylint: enable=invalid-name
|
||||||
|
|
||||||
|
def is_raspberry_pi_os(self):
|
||||||
|
"""
|
||||||
|
Check if we are running Raspberry Pi OS or Raspbian
|
||||||
|
"""
|
||||||
|
return self.get_os() == "Raspbian"
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def is_raspberry_pi():
|
def is_raspberry_pi():
|
||||||
"""
|
"""
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue