diff options
| -rw-r--r-- | src/s6-frontend/live_install.c | 7 | ||||
| -rw-r--r-- | src/s6-frontend/set_apply.c | 7 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/s6-frontend/live_install.c b/src/s6-frontend/live_install.c index 49dab81..ec99707 100644 --- a/src/s6-frontend/live_install.c +++ b/src/s6-frontend/live_install.c @@ -14,6 +14,7 @@ enum golb_e GOLB_KEEPOLD = 0x02, GOLB_INIT = 0x04, GOLB_NOFORCEESSENTIALS = 0x08, + GOLB_NOSNAP = 0x10, } ; enum gola_e @@ -32,6 +33,8 @@ void live_install (char const *const *argv) { .so = 0, .lo = "init", .clear = 0, .set = GOLB_INIT }, { .so = 'e', .lo = "force-essentials", .clear = GOLB_NOFORCEESSENTIALS, .set = 0 }, { .so = 'E', .lo = "no-force-essentials", .clear = 0, .set = GOLB_NOFORCEESSENTIALS }, + { .so = 0, .lo = "snapshot", .clear = GOLB_NOSNAP, .set = 0 }, + { .so = 0, .lo = "no-snapshot", .clear = 0, .set = GOLB_NOSNAP }, } ; static gol_arg const rgola[] = { @@ -74,6 +77,10 @@ void live_install (char const *const *argv) newargv[m++] = "--no-update" ; newargv[m++] = "--no-snapshot" ; } + else if (wgolb & GOLB_NOSNAP) + { + newargv[m++] = "--no-snapshot" ; + } newargv[m++] = "--" ; newargv[m++] = wgola[GOLA_SET] ; newargv[m++] = 0 ; diff --git a/src/s6-frontend/set_apply.c b/src/s6-frontend/set_apply.c index e88f002..9de9e01 100644 --- a/src/s6-frontend/set_apply.c +++ b/src/s6-frontend/set_apply.c @@ -12,6 +12,7 @@ enum golb_e { GOLB_BLOCK = 0x01, + GOLB_NOSNAP = 0x02, } ; enum gola_e @@ -27,6 +28,8 @@ void set_apply (char const *const *argv) static gol_bool const rgolb[] = { { .so = 'b', .lo = "block", .clear = 0, .set = GOLB_BLOCK }, + { .so = 0, .lo = "snapshot", .clear = GOLB_NOSNAP, .set = 0 }, + { .so = 0, .lo = "no-snapshot", .clear = 0, .set = GOLB_NOSNAP }, } ; static gol_arg const rgola[] = { @@ -42,7 +45,7 @@ void set_apply (char const *const *argv) char const *wgola[GOLA_N] = { 0 } ; size_t slen = strlen(g->dirs.scan) ; char const *set ; - char const *newargv[17] ; + char const *newargv[16] ; char fmtv[UINT_FMT] ; char fmtt[UINT_FMT] ; char catchall[slen + 15] ; @@ -83,6 +86,7 @@ void set_apply (char const *const *argv) } newargv[m++] = "-L" ; newargv[m++] = catchall ; + if (wgolb & GOLB_NOSNAP) newargv[m++] = "--no-snapshot" ; newargv[m++] = "--" ; newargv[m++] = set ; newargv[m++] = 0 ; @@ -114,6 +118,7 @@ void set_apply (char const *const *argv) newargv[m++] = "-f" ; newargv[m++] = wgola[GOLA_CONVFILE] ; } + if (wgolb & GOLB_NOSNAP) newargv[m++] = "--no-snapshot" ; newargv[m++] = "--" ; newargv[m++] = set ; newargv[m++] = 0 ; |
