fix(compat): auditoría de stubs — los métodos que mentían dejan de mentir
Repaso de los 11 shims restantes buscando métodos que devolvían éxito sin hacer el trabajo (como los dos setters de localed). Resultado: timedated — tres setters arreglados de verdad: - SetTime: aplica el reloj con clock_settime(CLOCK_REALTIME) en vez de sólo loggear; si falla (sin CAP_SYS_TIME) devuelve error honesto. - SetLocalRTC: escribe la tercera línea de /etc/adjtime (UTC|LOCAL), conservando las dos primeras. - SetNTP: arje no gestiona un daemon NTP — en vez de fingir éxito, rechaza honestamente; `CanNTP` pasa a `false` para que GNOME deje el toggle deshabilitado y ni llegue a llamarlo. systemd1 — StopUnit/RestartUnit/KillUnit dejaban creer que habían detenido la unit; ahora devuelven NotSupported honesto (como StartUnit). Lo demás del repaso ya era honesto: resolved/machined devuelven NotSupported de frente; polkit/tmpfiles/notify/binfmt/journald no mienten. timer-compat queda como hueco conocido y autodocumentado (sus timers disparan pero el spawn es un no-op a la espera del bus). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,8 @@ path = "src/main.rs"
|
||||
[dependencies]
|
||||
arje-card = { path = "../../protocol/arje-card" }
|
||||
arje-bus = { path = "../../runtime/arje-bus" }
|
||||
arje-compat-common = { path = "../arje-compat-common" }
|
||||
libc = { workspace = true }
|
||||
anyhow = { workspace = true }
|
||||
tokio = { workspace = true }
|
||||
tracing = { workspace = true }
|
||||
|
||||
Reference in New Issue
Block a user