| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | bugfix: I can't count to 14 | Laurent Bercot | 11 hours | 2 | -13/+13 |
| | | |||||
| * | Louis, I think this is the beginning of a long series of bugfixes. | Laurent Bercot | 12 hours | 1 | -1/+1 |
| | | |||||
| * | Part four: we delete all the snapshots after set-install | Laurent Bercot | 13 hours | 5 | -37/+64 |
| | | | | | | | | | | | Except the snapshot corresponding to the new live db, of course. Also, in order to accommodate snapshots without risking name conflicts, the real name of set foobar isn't .foobar:XXXXXX anymore, but .real.foobar:XXXXXX Now the automatic upgrade in case of major bump is complete. Next comes testing and debugging. | ||||
| * | Third part of the format-upgrade inclusion: add support in s6-rc-set-install | Laurent Bercot | 33 hours | 10 | -101/+250 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now that everything is in place, we go for the main thing: add snapshot support to s6-rc-set install. The workflow is: - check the major version of the old db against the current s6-rc - if the old db is up to date, nothing changes - otherwise: + find the snapshot corresponding to the old db + compile it + copy the snapshot db to the bootdir + call s6-rc-format-upgrade on it + atomically switch the bootdb to it. At this point the snapshot is the new bootdb: same as the old db, but with the correct major version. + unconditionally remove the old db + and now we can perform the regular s6-rc-update with the wanted set, since they have the same major. We also add --no-snapshot options to s6-rc-set-commit and s6-rc-set-install, and propagate them in the supporting functions, so users can manually skip all this bloat (and this is important for the initial install). All that remains is cleaning up obsolete snapshots. This will probably go at the end of s6-rc-set-install as well. | ||||
| * | More work on format-upgrade inclusion: real meta-information storage | Laurent Bercot | 3 days | 4 | -14/+18 |
| | | | | | | | | | | | If a db format upgrade is necessary, we need to compile the snapshot with the new s6-rc-compile. There's data we need to pass to it that isn't stored (options passed when committing the original set), so we store it in the db itself (patching s6-rc-compile). We modify the s6-rc-compile wrappers to pass all this metadata. Next, we will compile the snapshot. | ||||
| * | Second part of the format-upgrade support: ensure snapshots are there | Laurent Bercot | 3 days | 2 | -5/+40 |
| | | | | | | | | We don't want to install compiled dbs without having a snapshot of their source set, so whenever we test that the compiled db is up to date, we also test that a snapshot is present. This is important because we will auto-cleanup unused snapshots after installation. | ||||
| * | But this day is not today, so screw it. We gotta keep em separated | Laurent Bercot | 10 days | 3 | -3/+32 |
| | | |||||
| * | Someday I'll figure out dynamic libraries dependencies with rpath | Laurent Bercot | 10 days | 12 | -11/+2 |
| | | |||||
| * | Maybe maybe maybe | Laurent Bercot | 10 days | 3 | -0/+3 |
| | | |||||
| * | Fix build, maybe? | Laurent Bercot | 10 days | 6 | -0/+6 |
| | | |||||
| * | Propagate -L catchall changes to s6-rc-set-commit | Laurent Bercot | 13 days | 7 | -10/+36 |
| | | | | | | s6-rc-set-install is undergoing changes, it might not work properly. The rest is coming this week. | ||||
| * | First part of the format-upgrade support in repo | Laurent Bercot | 2026-10-02 | 6 | -83/+137 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to work across major bumps, we need to add a call to s6-rc-format-upgrade before s6-rc-update in the s6-rc-set-install sequence of commands. s6-rc-format-upgrade only works when the db is exactly the same across s6-rc versions. That means we need to have the source version of the current live set at all times, in order to compile it with the new s6-rc version before upgrading and then updating. So: 1. we take a snapshot of the source version of a set every time we commit. 2. we refuse to install if we don't have the snapshot. 3. we add s6-rc-format-upgrade to the processing chain 4. for cleanup: after installing, we delete all the snapshots of the set except the one that corresponds to the newly installed live set. This commit implements 1: taking the snapshot. It's a regular s6-rc-set-copy, using an internal name. We refactor s6-rc-set-copy and s6-rc-set-delete to have primitives we can use internally. Wait for later commits before using repo, else you'll fill your repository with snapshots that won't get cleaned up. TBD: how to store the s6-rc version in the compiled db. We probably need to add a small file in there. | ||||
| * | s6-rc-set-change: move if-dependencies tristate to two bools | Laurent Bercot | 2026-06-15 | 1 | -33/+23 |
| | | |||||
| * | Cleanup on s6-rc-repo-init sync error | Laurent Bercot | 2026-05-12 | 1 | -1/+11 |
| | | |||||
| * | Prepare for 0.6.1.1 ; fix loop exit condition in store checking | Laurent Bercot | 2026-05-09 | 1 | -0/+1 |
| | | |||||
| * | Do not specialcase ENOENT on repo sync | Laurent Bercot | 2026-02-23 | 1 | -1/+0 |
| | | |||||
| * | s6rc_repo_sync error message fix; also allow overriding by later stores | Laurent Bercot | 2026-02-02 | 1 | -19/+11 |
| | | |||||
| * | s6-rc-repo-init: check validity of stores before creating links | Laurent Bercot | 2026-01-28 | 1 | -0/+11 |
| | | |||||
| * | Rename "sub" to "prescription" | Laurent Bercot | 2026-01-24 | 20 | -166/+166 |
| | | |||||
| * | And add similar options to s6-rc-set-install | Laurent Bercot | 2026-01-24 | 1 | -2/+6 |
| | | | | | | s6-rc-set-install downs essential services by default. This is different from the s6-rc-update default. | ||||
| * | Fix bugs in repo_syncset and repo_makesetbundles, refactor a bit | Laurent Bercot | 2026-01-24 | 2 | -71/+67 |
| | | | | | | | Also add an extra bundle in the demo store in order to test. Imports of store bundles didn't work properly; now they do. Sets were not properly synced on store change; now they are. | ||||
| * | bugfix in repo_syncset | Laurent Bercot | 2026-01-24 | 1 | -1/+1 |
| | | |||||
| * | Fix s6-rc-set-copy | Laurent Bercot | 2026-01-21 | 1 | -16/+10 |
| | | |||||
| * | TIL ENOTEMPTY is a thing | Laurent Bercot | 2026-01-21 | 1 | -1/+1 |
| | | |||||
| * | Option is --no-update, not ----no-update. Also fix dotpc. | Laurent Bercot | 2026-01-19 | 1 | -1/+1 |
| | | |||||
| * | Add --no-update option to s6-rc-set-install | Laurent Bercot | 2026-01-17 | 1 | -56/+62 |
| | | |||||
| * | s6-rc-set-install fixes | Laurent Bercot | 2025-12-21 | 3 | -71/+77 |
| | | |||||
| * | Working repo fix that understands pipelines | Laurent Bercot | 2025-12-20 | 14 | -85/+185 |
| | | |||||
| * | Add s6-rc-repo-list | Laurent Bercot | 2025-12-20 | 6 | -55/+81 |
| | | |||||
| * | Consistency of --force-essential option | Laurent Bercot | 2025-12-20 | 3 | -9/+10 |
| | | |||||
| * | Add s6-rc-set-fix | Laurent Bercot | 2025-12-20 | 8 | -71/+202 |
| | | |||||
| * | More fixes | Laurent Bercot | 2025-12-09 | 3 | -6/+5 |
| | | |||||
| * | Next batch of fixes | Laurent Bercot | 2025-12-09 | 14 | -57/+99 |
| | | |||||
| * | More fixes | Laurent Bercot | 2025-12-08 | 5 | -8/+10 |
| | | |||||
| * | Some bugfixes | Laurent Bercot | 2025-12-08 | 10 | -38/+61 |
| | | |||||
| * | s6-rc-set-list is now s6-rc-set-status and does everything | Laurent Bercot | 2025-11-26 | 4 | -87/+126 |
| | | |||||
| * | Add s6-rc-set-list | Laurent Bercot | 2025-11-12 | 2 | -0/+89 |
| | | |||||
| * | s6rc_repo_nlto0 replaced with string_index in skalibs | Laurent Bercot | 2025-11-10 | 5 | -37/+6 |
| | | |||||
| * | Make default bundle name configurable | Laurent Bercot | 2025-11-09 | 1 | -1/+1 |
| | | |||||
| * | Finish repo documentation; make bootdb configurable; fix install | Laurent Bercot | 2025-10-30 | 8 | -24/+32 |
| | | |||||
| * | Add missing doc pages | Laurent Bercot | 2025-10-30 | 1 | -1/+1 |
| | | |||||
| * | Add s6-rc-set-change doc page, update deps, fix verbosity guard | Laurent Bercot | 2025-10-30 | 2 | -9/+5 |
| | | |||||
| * | nonposix.h PLUS bsdsnowflake.h are necessary for st.mtim | Laurent Bercot | 2025-10-23 | 1 | -4/+4 |
| | | |||||
| * | Always use nonposix.h for mkdtemp, because Solaris and MacOS | Laurent Bercot | 2025-10-23 | 1 | -0/+2 |
| | | |||||
| * | Separate libs6rcrepo | Laurent Bercot | 2025-10-22 | 44 | -16/+2048 |
| | | |||||
| * | add getserviceflags and use it in fillset; add some doc | Laurent Bercot | 2025-10-21 | 4 | -6/+8 |
| | | |||||
| * | Move all string comparison operations into skalibs | Laurent Bercot | 2025-10-09 | 1 | -2/+8 |
| | | |||||
| * | Add s6-rc-set-install, repodefs page | Laurent Bercot | 2025-10-06 | 5 | -55/+221 |
| | | |||||
| * | Do not delete old store before the sync succeeds | Laurent Bercot | 2025-10-05 | 2 | -13/+18 |
| | | |||||
| * | Add repo/set touching to avoid extra compiles | Laurent Bercot | 2025-10-01 | 3 | -6/+46 |
| | | |||||
