I started my own fork of #isync (or #mbsync)
https://codeberg.org/jarkko/isync
It has now couple of commits:
❯ git log --oneline -2
8ea62c9 (HEAD -> main, origin/main) fix: compile with -fno-lto
f5782aa refactor: open code FORCEASYNC far and near parameters
The first is the fix for crash in #Fedora. The second open codes FORCEASYNC
:
diff --git a/src/common.h b/src/common.h
index 940e74d..22bd827 100644
--- a/src/common.hb
+++ b/src/common.h
@@ -120,7 +120,8 @@ BIT_ENUM(
ZERODELAY,
KEEPJOURNAL,
FORCEJOURNAL,
- FORCEASYNC(2),
+ FORCEASYNC_F,
+ FORCEASYNC_N,
FAKEEXPUNGE,
FAKEDUMBSTORE,
)
I plan to do this for all of those, as it allows to cut some slack out from bit_enum_get.pl
. That will lead to a roadmap where eventually the whole ugly script can be rendered out replaced with BIT_UL
macro from kernel (msync is GPL 2.0 licensed).
There is also a #zig branch but before build can be defined properly the C codebase first needs to be made sound in terms of the build. Then it is relatively easy task to repeal and replace main.c with main.zig.