From 9d92cc9d71416bec5c9dca0dc92ce4ac51dc420e Mon Sep 17 00:00:00 2001 From: Richard Ipsum Date: Tue, 3 Jun 2014 12:17:44 +0100 Subject: Unfinished upgrades work --- system-version-manager/system-version-manager | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/system-version-manager/system-version-manager b/system-version-manager/system-version-manager index 956abb2..532bee5 100755 --- a/system-version-manager/system-version-manager +++ b/system-version-manager/system-version-manager @@ -225,9 +225,28 @@ class SystemVersionManager(object): self._rewrite_boot_menu(self.device, self._get_default(), self._get_systems()) - def cmd_upgrade(self, location): + def cmd_upgrade(self, args): print 'Warning: attack kittens have been launched' + # get default (or running?) and snapshot that + # use running (current system) for now + label = self.current_system + orig = 'systems/%s/orig' % label # TODO: os.path.join ? + new_orig = 'systems/biscuit/orig' + + # make snapshot + subprocess.check_call(['btrfs', 'subvolume', 'snapshot', + orig, new_orig]) + + for dir in ['baserock', 'bin', 'boot', 'dev', 'lib', 'lib64', 'media', + 'mnt', 'proc', 'sbin', 'usr']: + print 'Patching /%s' % dir + + # Need to apply patch to the subvolume, + # so mount it somewhere + + subprocess.Popen('/usr/bin/tbdiff-deploy', cwd=dir) + def _install_kernel(self, version_root): '''Install the kernel outside of 'orig' or 'run' subvolumes -- cgit v1.2.1