Skip to content

Commit 3894bff

Browse files
first week reports
1 parent fed9d0a commit 3894bff

6 files changed

Lines changed: 148 additions & 3 deletions

File tree

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "third_party/orgorg"]
2+
path = third_party/orgorg
3+
url = https://github.com/Charliechen114514/OrgOrg.git

document/weekly/2026-06-16.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
title: "周报 · 2026-W25"
3+
date: 2026-06-16
4+
---
5+
6+
## 一句话总览
7+
8+
这周没闲着——bareline 一个礼拜把命令行框架从零撸起来了,几个仓库陆续迁到 VitePress,imx-forge 和 TAMCPP 顺手把教程体系整了一遍,中间还塞进一个全新仓库和一个改名归位的老朋友。
9+
10+
## 本周开发进展
11+
12+
先说这周最实的,**bareline**。从 tokenizer 一路干到 backend、command dispatcher(塞了 fold/hash/auto 三套策略),再接上 interactive shell、builtins 和 runtime stats,一个礼拜骨架立住了。顺带把工程化也补齐——example app、集成测试、doxygen、ARM size CI 都上了,MIT LICENSE 和 CHANGELOG 安排了。一个仓库一周从无到有跑起来,看着挺爽 🎉。
13+
14+
然后是一波**站点迁移**,ST-Forge 和 Tutorial_FreeRTOS 都切到了 VitePress。ST-Forge 这边 enable 了 sites、顺手优化了下视觉,Tutorial_FreeRTOS 也跟着迁了过去。
15+
16+
**imx-forge** 这周主要在收拾教程体系——驱动教程(device tree、字符设备那块)重新排了一遍,各章节补上 index 和 chapter-template,还新开了 kernel/core-functional 教程页;清理的时候顺手把一批 dead files 和构建产物(QUICK_START.md、clangd 索引、pycache、egg-info)都扔了。
17+
18+
**TAMCPP** 这周改得也多:中文学习路线图整个重写了,移动端那个看着头疼的阅读问题修了,视觉也优化了一轮;内容上补了两篇 CPPCon 讲座笔记,vol3 的 vector/string/char8_t 章节也填上了。
19+
20+
**Tutorial_AwesomeQt** 加了 mermaid 渲染支持(画图总算不愁了),status-led widget 做了中等档的标杆改造,还带了个实例库双文档的 pilot,构建也精简了一下。
21+
22+
**rk-forge** 这周动静不大但方向明确,重构成了 mainline 优先的 RK3506 布局。
23+
24+
至于**本站 Awesome-Embedded**——这周搭起了周报流水线(refresh → diff → refine → 落盘),仓库也补上了 MIT license。你正在看的这份周报,就是这条流水线的第一次实跑。
25+
26+
## 组织动态
27+
28+
这周还新来了 **Tutorial_AwesomeHardware**,定位是嵌入式硬件学习笔记,电路、模数电、PCB、传感器、接口、板级调试都打算覆盖,VitePress 站点刚起步。这个地方上,如果有硬件的朋友愿意分享自己的笔记,笔者热烈欢迎!(这里非常感谢geqianQWQ!贡献了第一版电路学习笔记!)
29+
30+
👉网站直达: https://awesome-embedded-learning-studio.github.io/Tutorial_AwesomeHardware/
31+
32+
另外 **EmbedBox** 其实是老仓库 `Tutorial_AwesomeEmbededCommonTools` 改名转过来的,重新聚焦嵌入式通用工具教程——所以 diff 里那个"消失的 Tutorial_EmbeddedCommonTools"不是删了,是改名了。
33+
34+
顺带一提,bareline、rk-forge、ST-Forge、Tutorial_FreeRTOS 这几个本周都从"维护中"跳到了"活跃",说白了就是真的在提交。stars 这周整体 +12,涨幅一般就不展开了,唯一值得提一句的是 bareline 在成型的这周拿到了它的第一颗星。
35+
36+
## 待办 / 关注
37+
38+
> 下面是公开仓库里还挂着的活;私有仓库(estdx、visor 等)的待办默认不写进来。
39+
40+
- **Tutorial_AwesomeHardware 缺 LICENSE**:新仓刚建,顺手补一个。
41+
- **几处未关闭的 issue/PR**:imx-forge 3 issue、TAMCPP 3 issue + 1 PR、rk-forge PR #1、CFDesktop PR #6、Tutorial_AwesomeHardware issue #1——有空挑几个收掉。
42+
43+
---
44+
45+
*完结撒花,第一期周报就这么出来了。*

document/weekly/index.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,4 @@ title: "周报"
1010

1111
<!-- 周报列表:由 /weekly 流水线在顶部自动追加最新一期 -->
1212

13-
::: tip 还没有周报
14-
第一期周报会在维护者运行 `/weekly` 流水线后出现在这里。侧栏的「周报」分组也会自动列出每一期。
15-
:::
13+
- [周报 · 2026-W25(2026-06-16)](/weekly/2026-06-16) — bareline 框架成型、多仓迁 VitePress、教程体系整理

org-repos.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# ──────────────────────────────────────────────────────────────────────────
2+
# org-repos.yml — Awesome-Embedded 组织仓库跟踪清单(单一真相源)
3+
# ──────────────────────────────────────────────────────────────────────────
4+
# 用途:本文件是 orgorg 跟踪仓库清单的唯一手维护来源。
5+
# - orgorg 的 third_party/orgorg/.orgorg/repos.yml 由 scripts/sync-orgorg-repos.py
6+
# 从本文件生成(不在 submodule 内追踪,因上游 .gitignore 排除了它)。
7+
# - 改清单只改这里,再跑 `python scripts/sync-orgorg-repos.py`。
8+
# 范围:org Awesome-Embedded-Learning-Studio,排除 meta repo(.github / community),
9+
# 含本站点仓库 Awesome-Embedded 自身。
10+
# 格式:orgorg ReposConfig —— 顶层 `repos:`,每条 `- url: <github url>`。
11+
# ──────────────────────────────────────────────────────────────────────────
12+
repos:
13+
# ── Awesome-Embedded-Learning-Studio 组织(排除 .github / community)──
14+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Awesome-Embedded
15+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeQt
16+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeHardware
17+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP
18+
- url: https://github.com/Awesome-Embedded-Learning-Studio/imx-forge
19+
- url: https://github.com/Awesome-Embedded-Learning-Studio/qt-compile-pipeline
20+
- url: https://github.com/Awesome-Embedded-Learning-Studio/PenguinLab
21+
- url: https://github.com/Awesome-Embedded-Learning-Studio/C-Journey
22+
- url: https://github.com/Awesome-Embedded-Learning-Studio/CFBox
23+
- url: https://github.com/Awesome-Embedded-Learning-Studio/QuarkWidgets
24+
- url: https://github.com/Awesome-Embedded-Learning-Studio/libaestd
25+
- url: https://github.com/Awesome-Embedded-Learning-Studio/estdx
26+
- url: https://github.com/Awesome-Embedded-Learning-Studio/visor
27+
- url: https://github.com/Awesome-Embedded-Learning-Studio/CFDesktop
28+
- url: https://github.com/Awesome-Embedded-Learning-Studio/micro-forge
29+
- url: https://github.com/Awesome-Embedded-Learning-Studio/edgecv
30+
- url: https://github.com/Awesome-Embedded-Learning-Studio/bareline
31+
- url: https://github.com/Awesome-Embedded-Learning-Studio/miniwget
32+
- url: https://github.com/Awesome-Embedded-Learning-Studio/ST-Forge
33+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Project_MicroWatch
34+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Project_CXXBaseComponents
35+
- url: https://github.com/Awesome-Embedded-Learning-Studio/rk-forge
36+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Project_MakeAMemroyPool
37+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_cpp_SimpleIniParser
38+
- url: https://github.com/Awesome-Embedded-Learning-Studio/BareMetal-Drivers
39+
- url: https://github.com/Awesome-Embedded-Learning-Studio/EmbedBox
40+
- url: https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_FreeRTOS

scripts/sync-orgorg-repos.py

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
#!/usr/bin/env python3
2+
"""Sync the tracked-repo manifest into the orgorg submodule.
3+
4+
Reads the single source of truth — ``org-repos.yml`` at the repo root — and
5+
writes it verbatim into ``third_party/orgorg/.orgorg/repos.yml`` (the path
6+
orgorg's ``src/state.py`` resolves via ``_project_root()/.orgorg/repos.yml``).
7+
Keeps ``org-repos.yml`` as the only hand-edited manifest; orgorg's copy is
8+
always derived from it (it cannot be tracked inside the submodule, since the
9+
upstream ``.gitignore`` excludes it).
10+
11+
Idempotent: if the destination already matches the source byte-for-byte it is
12+
left untouched. Fails loud on any problem. Pure standard library — runs on the
13+
system Python exactly like ``refresh-meta.py``.
14+
15+
Usage:
16+
python scripts/sync-orgorg-repos.py
17+
"""
18+
import re
19+
import sys
20+
from pathlib import Path
21+
22+
REPO_ROOT = Path(__file__).resolve().parent.parent
23+
SOURCE = REPO_ROOT / "org-repos.yml"
24+
DEST = REPO_ROOT / "third_party" / "orgorg" / ".orgorg" / "repos.yml"
25+
26+
# Matches the owner/repo tail of a GitHub URL in a ``- url:`` entry.
27+
URL_RE = re.compile(r"github\.com/[\w.-]+/[\w.-]+")
28+
29+
30+
def main() -> None:
31+
if not SOURCE.exists():
32+
sys.exit(f"error: source manifest not found: {SOURCE}")
33+
text = SOURCE.read_text(encoding="utf-8")
34+
35+
if "repos:" not in text:
36+
sys.exit(f"error: {SOURCE.name} has no top-level 'repos:' key")
37+
urls = URL_RE.findall(text)
38+
if not urls:
39+
sys.exit(f"error: no github.com URLs found in {SOURCE.name} — "
40+
f"is the manifest empty or broken?")
41+
42+
if not DEST.parent.exists():
43+
sys.exit(f"error: destination dir missing — submodule not init'd? "
44+
f"{DEST.parent}")
45+
46+
if DEST.exists() and DEST.read_text(encoding="utf-8") == text:
47+
print(f"[ok] {len(urls)} repos — "
48+
f"{DEST.relative_to(REPO_ROOT)} already in sync")
49+
return
50+
51+
DEST.write_text(text, encoding="utf-8")
52+
print(f"[done] synced {len(urls)} repos -> "
53+
f"{DEST.relative_to(REPO_ROOT)}")
54+
print(f" source of truth: {SOURCE.relative_to(REPO_ROOT)}")
55+
56+
57+
if __name__ == "__main__":
58+
main()

third_party/orgorg

Submodule orgorg added at 5a5ae56

0 commit comments

Comments
 (0)