3作者: powerwordtree24 天前原帖
Linux桌面已经花费了十多年时间在新的图形栈上进行过渡。Wayland带来了许多优势,尤其是在移动设备风格的安全性和简洁性方面。但在这个过程中,我们悄然失去了一些宝贵的东西:曾经使Linux图形模型独特的分布式、基于协议、与传输无关的理念。 这并不是怀旧。这些能力对于远程工作、自动化、多机器工作流、瘦客户端、云桌面以及未来的分布式系统至关重要。它们并不是“遗留特性”;而是可能再次变得重要的架构优势。 问题不在于Wayland本身,而在于它从未被设计来支持这些用例。它的理念是故意局限于本地、单用户和以合成器为中心。这对于移动设备来说是完全合理的,但对于桌面和分布式环境来说却留下了空白。 另一方面,Xorg面临的是一个老化的实现,而不是过时的理念。它的核心思想——基于协议的渲染、远程执行、可组合性和传输独立性——依然相关。我们缺乏的是一个现代的、简约的、仅基于协议的继任者,能够保留这些优势而不带有Xorg的历史包袱。 这样的项目不需要复制Xorg的全部功能集。它不需要服务器端渲染、字体、输入法、窗口管理或安全策略。它只需定义一个干净、现代的协议和一个稳定的抽象层。现有的合成器可以实现它,现有的驱动程序无需更改,Mesa也不需要进行重大重设计。工程工作量远小于重写整个图形栈。 这并不是呼吁取代Wayland,而是呼吁承认Linux桌面可能需要不止一种图形模型。一个以协议为先、与实现无关的层可以与Wayland共存,互为补充,并保留那些否则会消失的能力。 如果没有人开始这项工作,行业将自然趋向于移动风格的图形架构,而过去的分布式能力可能会被遗忘很长时间。但如果有人开始一个现代的、仅基于协议的Xorg继任者,社区或许最终会找到一种平衡简洁性与桌面曾经拥有的灵活性——而这种灵活性可能再次变得必要。
7作者: antomal24 天前原帖
我创建了 GRSH,因为我想要一个现代的、内存安全的 shell,它在 FreeBSD 上感觉原生,但在 macOS 上也能无缝运行。 虽然市面上有很多 shell,但 GRSH 是我对一个简约、快速且安全的命令解释器的理解,它完全用 Rust 编写。它的设计旨在为那些希望享受 Rust 安全保障的用户提供服务,而不需要承受更臃肿替代品的负担。 我目前正在开发官方的 FreeBSD 移植版。希望能从社区获得关于 shell 行为和性能的反馈。 Github: [https://github.com/antoniomalara301289/grsh](https://github.com/antoniomalara301289/grsh)
8作者: susam24 天前原帖
你好,HN!我正在整理一个由社区维护的个人网站目录,网址为 <https://hnpwd.github.io/>。关于该项目的更多细节可以在 <https://github.com/hnpwd/hnpwd.github.io#readme> 的自述文件中找到。 如你所见,目录目前只有少数条目。我需要你的帮助来扩展它。如果你有个人网站,我很高兴你能在这里分享。如果你的网站托管在你可以完全控制其设计和内容的空间上,并且在过去的HN讨论中获得了良好的反馈,我可能会将其添加到目录中。只需在评论中留下链接即可。如果你不希望你的个人网站被包含在目录中,请告诉我。 此外,我希望这个资源能够由社区共同维护,因此如果你想作为维护者加入GitHub项目,请在这里或通过自述文件中的IRC链接告诉我。 顺便提一下,看看“Ask HN: Could you share your personal blog here?” - https://news.ycombinator.com/item?id=36575081 - 2023年7月 - (1014分,1940条评论)。不过在这篇帖子中,范围并不限于博客。任何个人网站都欢迎提交,无论是博客、数字花园、个人维基还是其他任何形式的网站。
2作者: MohskiBroskiAI24 天前原帖
“我修复了Microsoft AutoGen中的‘僵尸状态’错误。 问题:操作性缺血。在原子转换期间的进程中断使得代理处于一种矛盾状态:工作量大于0,但队列为空。工作流停滞,错误地报告完成。 解决方案:主权图守护。 铁封协议:用原子fsync + 重命名(POSIX持久性保证)替代标准文件写入。这确保了零妥协状态的持久性。 缺血修复:实现了一种自愈逻辑(load_and_heal),在状态加载时扫描并重新注入待处理的代理。 零分配序列化:将我在优化谷歌的Go-GitHub库时的经验(通过缓冲池实现了3倍的速度提升)移植到Python的序列化逻辑中。 结果:维护者称其为‘典范’和‘杰出’。不再有僵尸工作流。 理论:这实现了我在黎曼假设论文中证明的相同‘拓扑稳定性’原则——系统必须在同调结构上是健全的,才能抵御熵的影响。 <a href="https://www.academia.edu/145999987/The_Spectral_Geometric_Proof_of_the_Riemann_Hypothesis_An_Isomorphic_Mapping_of_Computational_Complexity_to_Arithmetic" rel="nofollow">https://www.academia.edu/145999987/The_Spectral_Geometric_Proof_of_the_Riemann_Hypothesis_An_Isomorphic_Mapping_of_Computational_Complexity_to_Arithmetic</a>”
19作者: rodricios24 天前原帖
<i>wxpath</i> 是一个声明式的网络爬虫,网络爬取和数据提取直接通过 XPath 表达。<p>与其编写命令式的爬取循环,不如在一个表达式中描述要跟随的内容和要提取的内容:<p><pre><code> import wxpath # 爬取、提取字段,构建维基百科知识图谱 path_expr = &quot;&quot;&quot; url(&#x27;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Expression_language&#x27;) &#x2F;&#x2F;&#x2F;url(&#x2F;&#x2F;main&#x2F;&#x2F;a&#x2F;@href[starts-with(., &#x27;&#x2F;wiki&#x2F;&#x27;) and not(contains(., &#x27;:&#x27;))]) &#x2F;map{ &#x27;title&#x27;: (&#x2F;&#x2F;span[contains(@class, &quot;mw-page-title-main&quot;)]&#x2F;text())[1] ! string(.), &#x27;url&#x27;: string(base-uri(.)), &#x27;short_description&#x27;: &#x2F;&#x2F;div[contains(@class, &#x27;shortdescription&#x27;)]&#x2F;text() ! string(.), &#x27;forward_links&#x27;: &#x2F;&#x2F;div[@id=&quot;mw-content-text&quot;]&#x2F;&#x2F;a&#x2F;@href ! string(.) } &quot;&quot;&quot; for item in wxpath.wxpath_async_blocking_iter(path_expr, max_depth=1): print(item) </code></pre> 关键的新增功能是 `url(...)` 操作符,它获取并返回 HTML 以供进一步的 XPath 处理,以及 `&#x2F;&#x2F;&#x2F;url(...)` 用于深度(或分页)遍历。其他部分都是标准的 XPath 3.1(映射/数组/函数)。<p>特点:<p>- 异步/并发爬取,结果流式输出<p>- 受 Scrapy 启发的自动限速和礼貌爬取<p>- 自定义处理的钩子系统<p>- 快速实验的命令行界面<p>另一个示例,通过 HN 评论(通过 "follow=" 参数)分页并提取数据:<p><pre><code> url(&#x27;https:&#x2F;&#x2F;news.ycombinator.com&#x27;, follow=&#x2F;&#x2F;a[text()=&#x27;comments&#x27;]&#x2F;@href | &#x2F;&#x2F;a[@class=&#x27;morelink&#x27;]&#x2F;@href) &#x2F;&#x2F;tr[@class=&#x27;athing&#x27;] &#x2F;map { &#x27;text&#x27;: .&#x2F;&#x2F;div[@class=&#x27;comment&#x27;]&#x2F;&#x2F;text(), &#x27;user&#x27;: .&#x2F;&#x2F;a[@class=&#x27;hnuser&#x27;]&#x2F;@href, &#x27;parent_post&#x27;: .&#x2F;&#x2F;span[@class=&#x27;onstory&#x27;]&#x2F;a&#x2F;@href } </code></pre> 限制:仅支持 HTTP(尚不支持 JS 渲染),不支持爬取持久性。如果有需求,这两项功能都在开发计划中。<p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;rodricios&#x2F;wxpath" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;rodricios&#x2F;wxpath</a><p>PyPI: pip install wxpath<p>欢迎对表达式语法和可能解锁的任何用例提供反馈。<p>谢谢!