/snap/core20/2769/usr/share/subiquity/subiquitycore
NameSizeModeActions
controllers/-0755rm
models/-0755rm
testing/-0755rm
tests/-0755rm
ui/-0755rm
__pycache__/-0755rm
async_helpers.py23270644editdlrm
context.py44140644editdlrm
controller.py46240644editdlrm
controllerset.py18980644editdlrm
core.py167380644editdlrm
file_util.py8320644editdlrm
gettext38.py275650644editdlrm
i18n.py17800644editdlrm
log.py15160644editdlrm
lsb_release.py7340644editdlrm
netplan.py54710644editdlrm
palette.py46410644editdlrm
prober.py20480644editdlrm
screen.py50170644editdlrm
signals.py20170644editdlrm
snapd.py59320644editdlrm
ssh.py30620644editdlrm
utils.py53660644editdlrm
view.py34330644editdlrm
__init__.py7100644editdlrm
Edit: /snap/core20/2769/usr/share/subiquity/subiquitycore/file_util.py (832B)
import os import stat import tempfile _DEF_PERMS = 0o644 def write_file(filename, content, mode=None, omode="wb", copy_mode=False): """Atomically write filename. open filename in mode 'omode', write content, chmod to 'mode'. """ if mode is None: mode = _DEF_PERMS if copy_mode: try: file_stat = os.stat(filename) mode = stat.S_IMODE(file_stat.st_mode) except OSError: pass tf = None try: tf = tempfile.NamedTemporaryFile(dir=os.path.dirname(filename), delete=False, mode=omode) tf.write(content) tf.close() os.chmod(tf.name, mode) os.rename(tf.name, filename) except OSError as e: if tf is not None: os.unlink(tf.name) raise e