remove update on exit (with flag to not do that)
This commit is contained in:
parent
e14cc419a0
commit
cba45e457e
1 changed files with 13 additions and 6 deletions
19
akshara
19
akshara
|
@ -458,10 +458,8 @@ command_map = {'help': 'help',
|
||||||
'daemon': daemon}
|
'daemon': daemon}
|
||||||
parser.add_argument('command', choices=command_map.keys(),
|
parser.add_argument('command', choices=command_map.keys(),
|
||||||
help=argparse.SUPPRESS)
|
help=argparse.SUPPRESS)
|
||||||
parser.add_argument('pkg', action='store', type=str,
|
parser.add_argument('--keep-files-on-error',
|
||||||
nargs='*', help=argparse.SUPPRESS)
|
action='store_true', help="keep working files on error")
|
||||||
parser.add_argument('--headless',
|
|
||||||
action='store_true', help=argparse.SUPPRESS)
|
|
||||||
parser.add_argument('-v', '--version', action='version',
|
parser.add_argument('-v', '--version', action='version',
|
||||||
version=f'%(prog)s {__version}', help=argparse.SUPPRESS)
|
version=f'%(prog)s {__version}', help=argparse.SUPPRESS)
|
||||||
|
|
||||||
|
@ -484,11 +482,20 @@ try:
|
||||||
parser.parse_args(['--version'])
|
parser.parse_args(['--version'])
|
||||||
elif command == update_system:
|
elif command == update_system:
|
||||||
exec('touch', '/var/lib/.akshara-system-lock')
|
exec('touch', '/var/lib/.akshara-system-lock')
|
||||||
system_lock = fasteners.InterProcessLock('/var/lib/.akshara-system-lock')
|
system_lock = fasteners.InterProcessLock(
|
||||||
|
'/var/lib/.akshara-system-lock')
|
||||||
info('attempting to acquire system lock')
|
info('attempting to acquire system lock')
|
||||||
with system_lock:
|
with system_lock:
|
||||||
command()
|
command()
|
||||||
else:
|
else:
|
||||||
command()
|
command()
|
||||||
except KeyboardInterrupt:
|
except:
|
||||||
error('aborting')
|
error('aborting')
|
||||||
|
# remove update and akshara stuff if the program errors (either exited by the user or an error) and is updating
|
||||||
|
if command == update_system and not args.keep_files_on_error:
|
||||||
|
exec('umount', '-rf', '/.new_rootfs/')
|
||||||
|
exec('rmdir', '/.new_rootfs/')
|
||||||
|
exec('rm', '-rf', '/.update_rootfs')
|
||||||
|
exec('rm', '-f', '/.update')
|
||||||
|
else:
|
||||||
|
print("--keep-files-on-error specified, not deleting files (/.new_rootfs/, /.update_rootfs/, /.update)")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue