Repository navigation
Releases
v1.7.6.1
nosDshell v1.7.6.1
修掉 gtk-refresh 取 GTK 主题名时对 darkman 配置的依赖:改用标准的 GTK settings.ini,不用 darkman 的系统也能正确同步明暗主题。
修复
- gtk-refresh 主题名改读 settings.ini,不再依赖 darkman 配置:
93af58a460
v1.7.6
nosDshell v1.7.6
这版把藏在交互层的老毛病一次拔掉:挂件设置在写入后立刻生效、开关整行可点,电池面板的电源模式与性能模式开关终于接通了真正的行为;同时面板的隐式生命周期收进了可机读的显式状态机,智能体可以直接读出每个面板正处于哪一相。
新功能
- explicit state-machine primitives for shell lifecycles:
9f11d198 - add check-raw-values guard, tokenize raw colors and sizes:
7b3d70b1 - 仓库内 skill 补齐 nosDshell 调试参考并允许 references 入库:
1d26181c
修复
- labelled NToggle rows toggle on full-row click:
bb872fca - reapply widgetProps when settings writes replace widget entries:
95f9ae9f - pass live widget instance to panel instead of a value snapshot:
0fcca0b8
重构
- converge lifecycle flags onto NStateMachine:
19b75fcb - converge session menu + lock screen onto shared machines:
29a80555 - converge show/hide lifecycle onto NStateMachine:
c0ba85b6
文档
- document the raw-values guard and nosd:raw-ok escape:
63dd5d30 - register state-machine primitives + convergence rule:
af6eaa76
测试
- battery-panel-toggles scene for live widget settings:
c438af97
v1.7.5
nosDshell v1.7.5
这版把设置页的版式逐条对齐到 GXDE:组标题从块外收进内容块内,模块间距、返回箭头和导航条图标全部换成从 GXDE 源码量出来的数值,状态栏与桌面挂件的分区编辑器也从芯片云改成了 DDE 列表页。分组行的节奏收进公共件 NSettingsGroup,规格固化在 DESIGN.md §3.5.4。
新功能
- add NSettingsGroup, fix clear button, drop color-choice caption:
13c1708b6
修复
观感
- render widget zone editors as DDE list pages:
b872efdb2 - match GXDE module-view geometry and in-block group heads:
2483ce7c5
重构
- one group rhythm, no static captions:
e16a6f977
文档
CI
- stop asking jeans to bump the pin:
7925022a3
工程
- drop keys orphaned by the settings-caption cleanup:
7ffeb1cab
v1.7.4
nosDshell v1.7.4
这版把壁纸解码拦在屏幕尺寸上。一张 9000×6000 的原图以前会被背景、概览、锁屏和启动器各自解一份,现在统一按屏幕解码:长期挂着的 shell 从 1.3 GiB 降到 755 MiB,换出内存直接归零。
性能
- decode wallpapers at screen size:
db254bf24
v1.7.3
nosDshell v1.7.3
这版专治内存莫名变高:壁纸纹理、通知闭包、JS 堆和 glibc 分配器四条增长路径一起收口,长期挂着的 shell 不再往 1 GB 爬,换出内存也不再只进不出。quickshell fork 一并推进——自带分配器约束、可编 Qt 6.6,构建矩阵 34 项全绿。
修复
- disconnect replaced close handlers in updatePopup:
c6089d28a - stop retaining every shown wallpaper texture:
03c5cac47
观感
- run qmlfmt over Background and NotificationService:
217a5db30
性能
- cap glibc arenas and pin malloc thresholds:
6205782d1 - collect the V4 JS heap on a slow cadence:
4affd7f6a
CI
- tag 之后的机械步骤交给 workflow:
cdff4ca25
工程
v1.7.2
nosDshell v1.7.2
niri 的模糊这回盖满整块对话框底板,不再只糊中间一圈;启动器学会在应用注册时即时刷新列表,新装的应用不会再从全屏网格里凭空消失。设置页做了一轮版式收敛:列表头接缝统一为 1 px,蓝牙行改用与 Wi-Fi 相同的悬停操作,控件各归其列,芯片标签不再被空齿轮位吃字。截图全部在带模糊的 niri 桌面上重拍。
修复
- refresh settings search index and drop orphaned translation keys:
7f5e194df - publish a new provider map when apps register:
8c1707c87 - stop empty gear slots from eliding chip labels:
3316e2e09 - equal chip insets and hide disabled pages:
237c204b9 - stop layout fixes from sliding onto the next row:
2e6feb2fa - put every control back on the column:
58692609a - keep the control column inside the row:
02195c672 - use one list-head seam and one row action rule:
b13e01db1 - cover the full dialog plate under niri:
34cdf8f74
文档
v1.7.1
nosDshell v1.7.1
GTK 配色接上最后一根线:模板写下的调色板文件和 helper 要找的文件从此同名,设置里勾选 GTK 模板就会真正生效——GTK 应用跟着 shell 的配色方案走,不再被半年前留下的旧导入按在深色。
修复
- make gtk-refresh look for nosd.css like the template writes:
73f978f52
v1.7.0
nosDshell v1.7.0
这一版把全部动效换成了一套有出处的设计语言:所有时长收进五档令牌、所有曲线取自一张
CDS 曲线表——弹出层从锚点长出、带一点回弹,按钮按下微缩、松手弹回,通知和 OSD 沿屏
幕边滑入滑出,行类元素的指针态依旧瞬变;切主题时全部颜色做一次交叉淡化,关掉动画或
进入性能模式时这一切同时归零。配套地,弹出层、菜单、对话框的阴影重画成轮廓外侧的双
层投影,深色弹出层上沿多了一道 1 px 高光,滚动区边缘的内容不再被色块盖住,而是沿曲
线溶进背景;键盘操作也终于有了焦点环。
顺手修掉一批"看不见的拦截者":会话菜单关掉后不再以一块透明全屏表面继续吃掉点击和按
键,滚动区边缘层不再在重建瞬间吞掉偶发的按下,通知超时退场也有了自己的动画而不是瞬
灭。验证侧新添了逐帧拍动效曲线的取证工具,和一套 Nix 测试环境,云端容器里也能跑完整
的校验。
新功能
- debug findAll, and hit-tests that see through wheel layers:
79a47960a - top-edge highlight on dark popups:
28b7408d6 - non-linear CDS edge fade as an alpha mask:
c46f19be3 - NFocusRing for keyboard focus; notification cards use it:
b64bc6fcc - theme crossfade on motionTheme with the swift curve:
5583af7d7 - finish the migration; every loop honours reduced motion:
6f299f7d2 - control-centre page pushes on motionPage:
87c3c597d - app strips, workspaces and bar pills on §1.7 tokens:
3bc5075eb - NPressScale press squish on button-class controls:
64d9c533c - data, reorder and focus colours on tokens; gate loops:
b975d9d5a - scroll views on §1.7 curves; reduced motion covers them:
3253aa324 - switch, collapsible and page transitions on §1.7 curves:
fc62a2412 - full-screen surfaces on the §1.7 tokens:
853fc8ecd - CDS enter/exit on the OSD tile:
dddd54dae - bubble recipe for enter and exit; animate dismissal:
2acd04b3f - CDS enter/exit for bubbles and the history list:
b89f459fb - popover motion and room for the shadow:
d06fe10c1 - move panels, dimmer and bar slide onto the §1.7 tokens:
072756b21 - draw shadows outside the silhouette only, in two CDS layers:
31b6af3be - grow popups out of their anchor on the CDS popover recipe:
7b7a71caa - add NAnim/NColorAnim motion primitives:
2129bf309
修复
- let the anchor group through the missing-property check:
8c40184d3 - run the section editor's drop pulse from a binding:
2410d6bfb - unmap the session menu once its close fade is over:
15b2c2369 - keep a resident virtual pointer so injected clicks are not lost:
2e6690e7f - hand the bundled launcher icon over as a file URL:
05b561c6e - size the section editor title from the editor, not its row:
27bc89629 - reserve the scrollbar column one turn after overflow changes:
26c583fb7 - declare the tab-ready Connections target as null:
e960b97e5 - give the module scroll an explicit content size:
e10743751 - draw the top highlight with rectangles, not Shape strokes:
e5f87b4ca - draw the focus ring only for keyboard selection:
51133a04e - send the pointer motion before every click, not only held ones:
c3a960203 - keep the edge-fade layer stable so clicks are not lost:
513d8b6ba - deliver the press of a held click:
8d71d27bc - let dismissOldest play the bubble exit:
9dd791c73 - give popup menu windows room for their shadow:
f1c902ff8 - keep fitted curves under the QEasingCurve 11-segment crash:
ff72a76b3 - repair debug-smoke assertions that drifted from the debug IPC:
69a2f5d90 - replace the
//comment that broke flake evaluation:2aeb9c76b
观感
- run qmlformat over DebugService:
e2b017ed8 - add CDS duration tiers, curve tokens and reduceMotion:
c50f30a24
重构
- converge tabular numerals on NText.numeric:
e9a854140
性能
- fade arrow-popup backgrounds by item opacity, not path colour:
a64a6da65
文档
- how to tell a lost press from a QML bug; known issue:
4332151e8 - record the arrow-panel scale exception and the spline cap:
163605412 - adopt the CDS motion language and surface finish:
232877667
验证
- read settings-tree's contentY directly, not from a tree dump:
688682864 - move item_centre next to the other scene helpers:
d05a17198 - make cc-switch find its switch by objectName and assert it:
260cf95b0 - run lockscreen last in the default scene set as well:
742a3ebea - select the Papirus icon theme in isolated sessions:
362905c30 - say so when edge-fade has no scrollable page to test:
988a1ca47 - park edge-fade at the middle of the scroll range:
b88bb5ee6 - make cc-notif-groups run all four steps and assert them:
18ec80ef4 - add an edge-fade scene that asserts the fade widths:
b9c5a03df - add cc-notif-focus for the keyboard focus ring:
8bfa0ddea - let a burst skip the still-screen wait:
cf0166dcb - add a motion-tooltip scene:
8585a0ab3 - assert the menu shadow margin is click-through; fix VINPUT clash:
e80f38d62 - fail runs on config load failures and crashes; add motion-pane...
v1.6.4
nosDshell v1.6.4
这一版修掉一个困扰已久的"幽灵换肤":主题总是在计划时间之外自己翻动,一天里能来回
好几次。根因是亮暗调度有两个权威——shell 按你设的手动时刻走,portal 守护进程却另
按经纬度的日出日落各走一套,谁的断言后到谁"赢",每次覆盖都会连带刷新整套系统主题。
现在调度权全局只有一个所有者,两个方向的行为也都顺了:跟随系统时由守护进程执掌太
阳时边界,其余模式由 shell 说了算,手动切换不再被定时复查悄悄踩回去。
修复
- harden client race, hook dedup, and polar solar mode:
c3992ecc3 - gate the daemon's solar timer behind single-owner policy:
8a2078a75
验证
- add dark-mode-flag scene and pin in-tree helpers on PATH:
329b2e6d1
v1.6.3
nosDshell v1.6.3
控制中心与设置里的模块图标终于成了一家人:此前 DDE 原版剪影、仓库自绘仿品和
Tabler 描边字形三套并排,线宽粗细对不上;现在统一到 Papirus 的单色 symbolic 家族,
跟随你当前的图标主题解析,主题缺图时用打包副本兜底,未选中态靠不透明度分级而
不是另存一份素材。
另一处修的是半透明遮罩的磨砂:通知、OSD、桌面挂件这些浮在真实窗口之上的半透明层
此前被 niri 的模糊强制关闭规则误判在门外,看上去"透明但不糊";现在这些层会正式
发布模糊区域,磨砂按设计生效。
另外把三个 quickshell 系的开发 skill 一并入库,方便后续接着演进。
新功能
- unify module icons on the Papirus symbolic family:
72ccf749e - publish blur regions from remaining translucent surfaces:
d4b624891 - 从 hermes 平移 quickshell 系三个 skill 入库:
2642d4a8c
修复
- move blur-region publishers out of the force-off layer tier:
790c4324c