-
Notifications
You must be signed in to change notification settings - Fork 0
fix(noctalia): restore v4 settings via v5 TOML config schema #1991
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -81,23 +81,83 @@ in | |||||
| enable = true; | ||||||
| package = noctalia; | ||||||
|
|
||||||
| # v5 is a ground-up rewrite (C++/Qt, TOML config, snake_case keys) and upstream | ||||||
| # does NOT migrate v4 settings - "v5 ships with sane defaults, customize from there". | ||||||
| # The v4 config (bar widget layout, Dracula theme, dark-mode dconf hook, idle | ||||||
| # timeouts, per-widget options) has NO mechanical v5 equivalent and its semantics | ||||||
| # changed (e.g. bar widgets are now id vectors + separate styling; idle uses a | ||||||
| # behavior map; hooks run with no args). Re-apply those on-device via the settings UI. | ||||||
| # | ||||||
| # Only keys verified against the v5 schema (src/config/schema/config_schema.cpp) | ||||||
| # are set here so the build-time `noctalia config validate` passes. | ||||||
| settings = { | ||||||
| shell = { | ||||||
| font_family = "Noto Sans"; # was ui.fontDefault | ||||||
| clipboard_enabled = true; # was appLauncher.enableClipboardHistory | ||||||
| clipboard_auto_paste = "auto"; # was appLauncher.autoPasteClipboard = true | ||||||
| font_family = "Noto Sans"; | ||||||
| clipboard_enabled = true; | ||||||
| clipboard_auto_paste = "auto"; | ||||||
| animation = { | ||||||
| enabled = true; | ||||||
| speed = 3; | ||||||
| }; | ||||||
| }; | ||||||
| location.auto_locate = true; # was location.autoLocate | ||||||
| wallpaper.enabled = false; # noctalia does not manage the wallpaper (wallpaper engine does) | ||||||
|
|
||||||
| theme = { | ||||||
| mode = "auto"; | ||||||
| source = "builtin"; | ||||||
| builtin = "Dracula"; | ||||||
| }; | ||||||
|
|
||||||
| bar.main = { | ||||||
| background_opacity = 0.0; | ||||||
| capsule = true; | ||||||
| capsule_opacity = 0.0; | ||||||
| start = [ "launcher" "clock" "cpu" "memory" "network_rx" "network_tx" "gpu" "active_window" "media" ]; | ||||||
| center = [ "workspaces" ]; | ||||||
| end = [ "tray" "bluetooth" "network" "notification_history" "battery" "power_profile" "volume" "brightness" "dark_mode" "control_center" ]; | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Five widget IDs here are not recognized by the v5 widget factory (
Suggested fixes:
|
||||||
| }; | ||||||
|
|
||||||
| widget.clock = { | ||||||
| format = "{:%Y/%m/%d %H:%M:%S}"; | ||||||
| vertical_format = "{:%H %M %S - %d %m}"; | ||||||
| tooltip_format = "{:%Y/%m/%d %H:%M:%S}"; | ||||||
| }; | ||||||
|
|
||||||
| notification = { | ||||||
| enable_daemon = true; | ||||||
| position = "top_right"; | ||||||
| background_opacity = 0.75; | ||||||
| }; | ||||||
|
|
||||||
| osd.position = "right"; | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Use
Suggested change
|
||||||
|
|
||||||
| lockscreen = { | ||||||
| enabled = true; | ||||||
| fingerprint = true; | ||||||
| }; | ||||||
|
|
||||||
| idle = { | ||||||
| behavior.lock = { | ||||||
| enabled = true; | ||||||
| timeout = 300; | ||||||
| command = "noctalia:session lock"; | ||||||
| }; | ||||||
| }; | ||||||
|
|
||||||
| system.monitor = { | ||||||
| enabled = true; | ||||||
| }; | ||||||
|
|
||||||
| dock = { | ||||||
| enabled = true; | ||||||
| launcher_icon = "nix-snowflake"; | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This line does nothing as-is. Either drop |
||||||
| }; | ||||||
|
|
||||||
| desktop_widgets.enabled = true; | ||||||
| wallpaper.enabled = false; | ||||||
| location.auto_locate = true; | ||||||
|
|
||||||
| hooks.theme_mode_changed = '' | ||||||
| if [ "$NOCTALIA_THEME_MODE" = "dark" ]; then | ||||||
| dconf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'" | ||||||
| dconf write /org/gnome/desktop/interface/gtk-theme "'Adwaita-dark'" | ||||||
| dconf write /org/gnome/desktop/interface/icon-theme "'Adwaita'" | ||||||
| else | ||||||
| dconf write /org/gnome/desktop/interface/color-scheme "'prefer-light'" | ||||||
| dconf write /org/gnome/desktop/interface/gtk-theme "'Adwaita'" | ||||||
| dconf write /org/gnome/desktop/interface/icon-theme "'Adwaita'" | ||||||
| fi | ||||||
| ''; | ||||||
|
Comment on lines
+150
to
+160
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. To ensure hermeticity and prevent runtime failures (e.g., if |
||||||
| }; | ||||||
| }; | ||||||
| } | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
shell.animation.speedin v5 is a multiplier (schema range[0.1, 4.0]insrc/config/schema/ranges.h:18, default1.0;example.toml:# 0.5 = 2× slower, 2.0 = 2× faster).3runs animations ~3× faster than default, which is likely unintended if this was ported from a v4 stepped-slider value. Consider1.0(default) or1.5.