diff options
author | Richard Ipsum <richard.ipsum@codethink.co.uk> | 2014-06-03 12:17:44 +0100 |
---|---|---|
committer | Richard Ipsum <richard.ipsum@codethink.co.uk> | 2014-06-03 12:17:44 +0100 |
commit | 9d92cc9d71416bec5c9dca0dc92ce4ac51dc420e (patch) | |
tree | 44f342feaae85aa8aabff2a708d06a281b6f7843 | |
parent | cfbe08a30d3b9d426bc8de9fcd093c49dadf852a (diff) | |
download | tbdiff-9d92cc9d71416bec5c9dca0dc92ce4ac51dc420e.tar.gz |
Unfinished upgrades work
-rwxr-xr-x | system-version-manager/system-version-manager | 21 |
1 files changed, 20 insertions, 1 deletions
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 |