Is "schnapps" based on openSUSE's "snapper"?

As I’m an openSUSE contributor, inquiring minds want to know. :wink: At least the snapshot list is similar:

Turris:

# schnapps list
    # | Type      | Date                      | Description
------+-----------+---------------------------+---------------------------------
    1 | pre       | 2016-12-01 20:39:45 +0100 | Automatic pre-update snapshot
    2 | pre       | 2016-12-02 00:09:15 +0100 | Automatic pre-update snapshot
    3 | pre       | 2016-12-02 00:13:13 +0100 | Automatic pre-update snapshot
    4 | time      | 2016-12-04 01:05:01 +0100 | Snapshot created by cron
    5 | pre       | 2016-12-05 22:29:11 +0100 | Automatic pre-update snapshot
    6 | pre       | 2016-12-08 14:42:37 +0100 | Automatic pre-update snapshot
    7 | time      | 2016-12-11 01:05:01 +0100 | Snapshot created by cron

My system (openSUSE Tumbleweed):

sudo LC_ALL=C snapper list
Type   | #   | Pre # | Date                     | User | Cleanup | Description           | Userdata     
-------+-----+-------+--------------------------+------+---------+-----------------------+--------------
single | 0   |       |                          | root |         | current               |              
single | 1   |       | Sat Jul 16 22:17:03 2016 | root |         | first root filesystem |              
pre    | 859 |       | Fri Dec  9 11:13:37 2016 | root | number  | zypp(zypper)          | important=yes
post   | 860 | 859   | Fri Dec  9 11:15:56 2016 | root | number  |                       | important=yes
pre    | 861 |       | Fri Dec  9 18:37:45 2016 | root | number  | zypp(zypper)          | important=yes
post   | 862 | 861   | Fri Dec  9 18:39:01 2016 | root | number  |                       | important=yes
pre    | 900 |       | Mon Dec 12 07:17:29 2016 | root | number  | zypp(zypper)          | important=yes
pre    | 905 |       | Mon Dec 12 07:30:10 2016 | root | number  | zypp(zypper)          | important=yes
post   | 906 | 905   | Mon Dec 12 07:32:59 2016 | root | number  |                       | important=yes
pre    | 907 |       | Mon Dec 12 20:00:39 2016 | root | number  | zypp(zypper)          | important=no 
post   | 908 | 907   | Mon Dec 12 20:00:42 2016 | root | number  |                       | important=no 
pre    | 909 |       | Tue Dec 13 07:04:47 2016 | root | number  | zypp(zypper)          | important=no 
post   | 910 | 909   | Tue Dec 13 07:06:56 2016 | root | number  |                       | important=no 
pre    | 911 |       | Tue Dec 13 20:23:41 2016 | root | number  | zypp(zypper)          | important=no 
post   | 912 | 911   | Tue Dec 13 20:23:51 2016 | root | number  |                       | important=no 
pre    | 913 |       | Tue Dec 13 21:08:26 2016 | root | number  | zypp(zypper)          | important=no 
post   | 914 | 913   | Tue Dec 13 21:09:29 2016 | root | number  |                       | important=no 
pre    | 915 |       | Wed Dec 14 07:06:05 2016 | root | number  | zypp(zypper)          | important=no 
post   | 916 | 915   | Wed Dec 14 07:09:09 2016 | root | number  |                       | important=no 

It’s not. Schnapps is simple shell script while snapper is quite complex beast. Check source code:

Schnapps seems like an incredible useful tool… I wish other GNU/Linux distros would offer a similarly simplistic and at the same time user-friendly utility to keep track of system states.

Unfortunately the link to the source code is dead… where was it moved to?

It is on gitlab: https://gitlab.labs.nic.cz/turris/schnapps

1 Like

You might be interested in NixOS. The rollback system has a different approach, independent of btrfs, choosable in grub. EDIT: note that the whole distro is very different from usual distros, which does have inherent disadvantages, etc. (Disclaimer: I’m a major contributor so I can’t be really impartial.)