mirror of
https://github.com/dw-0/kiauh.git
synced 2026-02-02 23:47:46 +05:00
Compare commits
3 Commits
6c9a78496a
...
80948edbb4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
80948edbb4 | ||
|
|
a455edba93 | ||
|
|
810ab3a2fa |
@@ -97,7 +97,7 @@ class GcodeShellCmdExtension(BaseExtension):
|
||||
|
||||
def install_example_cfg(self, instances: List[Klipper]):
|
||||
cfg_dirs = [instance.base.cfg_dir for instance in instances]
|
||||
# copy extension to klippy/extras
|
||||
# copy extension to config directories
|
||||
for cfg_dir in cfg_dirs:
|
||||
Logger.print_status(f"Create shell_command.cfg in '{cfg_dir}' ...")
|
||||
if check_file_exist(cfg_dir.joinpath("shell_command.cfg")):
|
||||
|
||||
@@ -24,13 +24,16 @@ from core.logger import Logger
|
||||
|
||||
def check_file_exist(file_path: Path, sudo=False) -> bool:
|
||||
"""
|
||||
Helper function for checking the existence of a file |
|
||||
Helper function for checking the existence of a file.
|
||||
Also works with symlinks (returns False if broken) |
|
||||
:param file_path: the absolute path of the file to check
|
||||
:param sudo: use sudo if required
|
||||
:return: True, if file exists, otherwise False
|
||||
"""
|
||||
if sudo:
|
||||
command = ["sudo", "find", file_path.as_posix()]
|
||||
# -L forces find to follow symlinks
|
||||
# -maxdepth = 0 avoids losing time if `file_path` is a directory
|
||||
command = ["sudo", "find", "-L", file_path.as_posix(), "-maxdepth", "0"]
|
||||
try:
|
||||
check_output(command, stderr=DEVNULL)
|
||||
return True
|
||||
@@ -44,7 +47,16 @@ def check_file_exist(file_path: Path, sudo=False) -> bool:
|
||||
|
||||
|
||||
def create_symlink(source: Path, target: Path, sudo=False) -> None:
|
||||
"""
|
||||
Helper function to create a symlink from source to target
|
||||
If the target file exists, it will be overwritten. |
|
||||
:param source: the source file/directory
|
||||
:param target: the target file/directory
|
||||
:param sudo: use sudo if required
|
||||
:return: None
|
||||
"""
|
||||
try:
|
||||
# -f forcibly creates/overwrites the symlink
|
||||
cmd = ["ln", "-sf", source.as_posix(), target.as_posix()]
|
||||
if sudo:
|
||||
cmd.insert(0, "sudo")
|
||||
|
||||
Reference in New Issue
Block a user