# Card Semilla para el boot test de GNOME bajo Ente #0. # # Este archivo se valida con `kcl run` contra el schema en # crates/ente-card/schema/card.k antes de que ente-zero lo cargue. # # Genesis declara la constelación mínima para que GNOME arranque sin # systemd: D-Bus daemon, los 8 compat-shims, NetworkManager, gdm. import .ente_card.schema.card # Card "supervisor genérico" reutilizable — dispara un binario con Restart. schema NativeRestart(EnteBase): soma = SomaSpec { rlimits = ResourceLimits {nofile = 16384} } supervision = Supervision { kind = "Restart" initial_ms = 100 max_ms = 30000 } # ----- La Semilla ----- seed = EntityCard { schema_version = 1 id = "01KQABOOTTESTSEEDFRACTAL00" label = "boot-gnome-test" provides = [ Capability {kind = "Spawn"} Capability {kind = "Journal"} ] soma = SomaSpec {} payload = Payload {kind = "Virtual"} supervision = Supervision {kind = "OneShot"} genesis = [ # 1. dbus-daemon — pivote del system bus, todos los demás dependen de él. EntityCard { schema_version = 1 id = "01KQABOOTTESTDBUSDAEMON___" label = "dbus-daemon" soma = SomaSpec {} payload = Payload { kind = "Native" exec = "/usr/bin/dbus-daemon" argv = ["--system", "--nofork", "--nopidfile"] } supervision = Supervision { kind = "Restart" initial_ms = 100 max_ms = 30000 } } # 2-9. Los 8 compat-shims D-Bus. EntityCard { schema_version = 1 id = "01KQABOOTTESTLOGIND_______" label = "compat-logind" provides = [Capability {kind = "LegacyLogind"}] soma = SomaSpec {} payload = Payload { kind = "Native" exec = "/usr/local/bin/ente-logind-compat" } supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTHOSTNAMED____" label = "compat-hostnamed" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-hostnamed-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTTIMEDATED____" label = "compat-timedated" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-timedated-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTLOCALED______" label = "compat-localed" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-localed-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTJOURNALD_____" label = "compat-journald" provides = [Capability {kind = "Journal"}] soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-journald-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTRESOLVED_____" label = "compat-resolved" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-resolved-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTPOLKIT_______" label = "compat-polkit" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-polkit-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } EntityCard { schema_version = 1 id = "01KQABOOTTESTMACHINED_____" label = "compat-machined" soma = SomaSpec {} payload = Payload {kind = "Native", exec = "/usr/local/bin/ente-machined-compat"} supervision = Supervision {kind = "Restart", initial_ms = 100, max_ms = 30000} } # 10. NetworkManager — la mayoría de distros lo prefieren sobre networkd. EntityCard { schema_version = 1 id = "01KQABOOTTESTNETWORKMGR___" label = "NetworkManager" soma = SomaSpec {} payload = Payload { kind = "Native" exec = "/usr/sbin/NetworkManager" argv = ["--no-daemon"] } supervision = Supervision {kind = "Restart", initial_ms = 200, max_ms = 30000} } # 11. gdm — display manager. GNOME settings panels via gnome-shell. EntityCard { schema_version = 1 id = "01KQABOOTTESTGDMDAEMON____" label = "gdm" soma = SomaSpec {} payload = Payload { kind = "Native" exec = "/usr/bin/gdm" argv = ["--no-daemon"] } supervision = Supervision {kind = "Restart", initial_ms = 500, max_ms = 60000} } ] }