]> git.rmz.io Git - dotfiles.git/commitdiff
bin: add snp to wrap commands with btrfs pre-post snapshots
authorSamir Benmendil <samir.benmendil@gmail.com>
Sun, 11 May 2014 01:37:43 +0000 (02:37 +0100)
committerSamir Benmendil <samir.benmendil@gmail.com>
Sun, 11 May 2014 01:37:43 +0000 (02:37 +0100)
bin/snp [new file with mode: 0755]

diff --git a/bin/snp b/bin/snp
new file mode 100755 (executable)
index 0000000..204ef6b
--- /dev/null
+++ b/bin/snp
@@ -0,0 +1,18 @@
+#!/usr/bin/env bash
+# Runs a command wrapped with btrfs pre-post snapshots.
+date=$(date "+%Y-%m-%d-%H%M%S")
+config=-.snapshot
+
+cmd="$@"
+
+echo -e "> Creating new pre snapshots..."
+snapshot_root_nbr=$(snapper -c -.snapshot create --type=pre --cleanup-algorithm=number --print-number --description="${cmd}")
+snapshot_usr_nbr=$(snapper -c usr.snapshot create --type=pre --cleanup-algorithm=number --print-number --description="${cmd}")
+echo -e "> New pre snapshots created: /(${snapshot_root_nbr}) /usr(${snapshot_usr_nbr})"
+
+eval "$cmd"
+
+echo -e "> Creating new post snapshot..."
+snapshot_root_nbr=$(snapper -c -.snapshot create --type=post --cleanup-algorithm=number --print-number --pre-number="$snapshot_root_nbr")
+snapshot_usr_nbr=$(snapper -c usr.snapshot create --type=post --cleanup-algorithm=number --print-number --pre-number="$snapshot_usr_nbr")
+echo -e "> New post snapshots created: /(${snapshot_root_nbr}) /usr(${snapshot_usr_nbr})"