Skip to content

fix(schema): add missing background-attribution GSettings keys - #251

Merged
mirkobrombin merged 1 commit into
singularityos-lab:masterfrom
perlowja:fix/wallpaper-attribution-gschema-keys
Sep 18, 2026
Merged

mirkobrombin merged 1 commit into
singularityos-lab:masterfrom
perlowja:fix/wallpaper-attribution-gschema-keys

Conversation

@perlowja

@perlowja perlowja commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Summary

singularity-shell master reads three keys this schema does not declare:

  • show-wallpaper-attribution - read unguarded via
    settings.get_boolean() in desktop_page.vala:317 and
    background.vala:283
  • background-attribution-title / background-attribution-author - written
    through SettingsSafety from desktop_page.vala, desktop_icons.vala and
    wallpaper_manager.vala

g_settings_get_boolean() on a key the schema does not declare is a fatal
error, not a catchable one, so opening the Desktop settings page aborts the
process until these keys exist.

Changes since the earlier hold

The hold reason was that these keys only supported the then-unaccepted
wallpaper provider work in singularity-shell#26. #25, #26 and #27 have since
merged, so the readers listed above are on main today - git grep for each
key name finds them.

Rebased onto current master and reduced to the schema alone. The
singularity-shell submodule bump is dropped: master already points at
4945d4d, newer than the c10ad57 this branch carried, so the bump was a
regression as well as an unrelated concern.

Test plan

  • glib-compile-schemas accepts the file
  • Against the compiled schema, gsettings get dev.sinty.desktop returns
    true, '' and '' for the three new keys
  • git grep on singularity-shell main confirms a real reader for each

AI assistance: disclosed

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 9, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-09T04:10:11.053943Z 6fe8477 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@mirkobrombin

mirkobrombin commented Sep 12, 2026 •

Copy link
Copy Markdown
Member

Holding because its schema and submodule bumps only support the unaccepted wallpaper-provider branch in singularity-shell#26.

@mirkobrombin mirkobrombin reopened this Sep 12, 2026
@perlowja
perlowja force-pushed the fix/wallpaper-attribution-gschema-keys branch from e519bcd to b75faa4 Compare September 14, 2026 16:16
@mirkobrombin

Copy link
Copy Markdown
Member

Merged the others, need fix here for the conflicts

singularity-shell master reads show-wallpaper-attribution unguarded in
desktop_page.vala and background.vala, and background-attribution-title
and -author through SettingsSafety. g_settings_get_boolean() on a key the
schema does not declare aborts the process, so opening the Desktop
settings page crashes until these keys exist.

Rebased onto current master and reduced to the schema alone. The
singularity-shell submodule bump is dropped: master already points at a
newer commit than this branch carried, so it was a regression as well as
an unrelated concern.

Assisted-by: Claude Code:claude-opus-5
AI-Scope: Rebased the branch onto master, dropped the submodule-bump commit, and tightened the key descriptions.
@perlowja
perlowja force-pushed the fix/wallpaper-attribution-gschema-keys branch from b75faa4 to 1a0d96e Compare September 17, 2026 14:45
@perlowja

Copy link
Copy Markdown
Contributor Author

Conflicts fixed and the hold reason has resolved itself. Head is 1a0d96e: one commit on current master, one file, +16 / -0.

The hold. You held this because the keys only supported the then-unaccepted provider work in singularity-shell#26. #25, #26 and #27 have since merged, so those readers are on main today:

  • show-wallpaper-attribution - desktop_page.vala:317 and background.vala:283, both unguarded settings.get_boolean()
  • background-attribution-title / -author - written from desktop_page.vala, desktop_icons.vala, and watched in wallpaper_manager.vala

g_settings_get_boolean() on a key the schema does not declare is a fatal error, not a catchable one, so as things stand opening the Desktop settings page on master aborts. wallpaper_manager.vala guards its reads with schema.has_key(); the two get_boolean() calls do not. That makes this a fix for already-merged code rather than groundwork for an unmerged branch.

Conflicts. The conflict was the singularity-shell submodule bump, and dropping it is the right resolution rather than re-pointing it: master already points at 4945d4d, which is newer than the c10ad57 this branch carried, so the bump was a regression. It was also a second concern in a schema PR. Gone - the branch is the schema and nothing else.

Verification. glib-compile-schemas accepts the file, and against the compiled schema gsettings get dev.sinty.desktop returns true, '' and '' for the three keys, matching their declared defaults. I also tightened the three <description> strings to one sentence each, to match the surrounding style.

@mirkobrombin no open review object to dismiss here, just the hold comment - flagging that its reason no longer applies. Ready for a look.

@mirkobrombin
mirkobrombin merged commit 2281b4d into singularityos-lab:master Sep 18, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants