diff --git a/lib/sshync.py b/lib/sshync.py index 7c2d162..40512da 100755 --- a/lib/sshync.py +++ b/lib/sshync.py @@ -33,7 +33,7 @@ def remote_list_gen(_client_device_name, _remote_dir): # HYBRID # deletes a file or folder and/or marks it for deletion upon syncing -def delete(_file_path, _target_database): +def delete(_file_path, _target_database, _silent): from shutil import rmtree _directory = f"{home}/.local/share/sshyp/" try: @@ -42,7 +42,8 @@ def delete(_file_path, _target_database): else: remove(f"{_directory}{_file_path}.gpg") except FileNotFoundError: - print(f"location does not exist {_target_database}") + if not _silent: + print(f"location does not exist {_target_database}") if _target_database == 'remotely': for _device_name in listdir(f"{home}/.config/sshyp/devices"): open(f"{home}/.config/sshyp/deleted/" + _file_path.replace('/', '\x1e') + '\x1f' + _device_name, 'w') @@ -88,7 +89,7 @@ def deletion_sync(_deletion_database, _silent): if _file != '': if not _silent: print(f"\u001b[38;5;208m{_file}\u001b[0m has been sheared, removing...") - delete(_file, 'locally') + delete(_file, 'locally', False) # creates matches of remote folders on the local client diff --git a/lib/sshyp.py b/lib/sshyp.py index 06a67c4..df1156a 100755 --- a/lib/sshyp.py +++ b/lib/sshyp.py @@ -654,13 +654,13 @@ def rename(): if not ssh_error: Path(f"{directory}{_new_name}").mkdir(mode=0o700, parents=True, exist_ok=True) run(['ssh', '-i', f"{home}/.ssh/sshyp", '-p', port, f"{username_ssh}@{ip}", - f'python3 -c \'from pathlib import Path; Path("{directory_ssh}{_new_name}")' - f'.mkdir(mode=0o700, parents=True, exist_ok=True)\'']) + f'python3 -c \'from pathlib import Path; Path("{directory_ssh}{entry_name}")' + f'.rename(Path("{directory_ssh}{_new_name}"))\'']) else: move(f"{directory}{entry_name}", f"{directory}{_new_name}") if not ssh_error: run(['ssh', '-i', f"{home}/.ssh/sshyp", '-p', port, f"{username_ssh}@{ip}", - f'cd /lib/sshyp; python3 -c \'from sshync import delete; delete("{entry_name}", "remotely")\'']) + f'cd /lib/sshyp; python3 -c \'from sshync import delete; delete("{entry_name}", "remotely", True)\'']) # edits the contents of an entry @@ -779,9 +779,9 @@ def remove_data(): determine_decrypt(f"{home}/.config/sshyp/lock.gpg", None, None) if not ssh_error: run(['ssh', '-i', f"{home}/.ssh/sshyp", '-p', port, f"{username_ssh}@{ip}", - f'cd /lib/sshyp; python3 -c \'from sshync import delete; delete("{entry_name}", "remotely")\'']) + f'cd /lib/sshyp; python3 -c \'from sshync import delete; delete("{entry_name}", "remotely", False)\'']) else: - offline_delete(entry_name, 'locally') + offline_delete(entry_name, 'locally', silent_sync) # checks extension config files for matches to argument, runs extensions