diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 4872dad..134167c 100755 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -13,12 +13,12 @@ "state": { "type": "markdown", "state": { - "file": "100-project/Infrastructure/Services/Soft Serve Git.md", + "file": "100-project/AI/ChatGPT.md", "mode": "source", "source": false }, "icon": "lucide-file", - "title": "Soft Serve Git" + "title": "ChatGPT" } } ] @@ -44,7 +44,7 @@ "autoReveal": false }, "icon": "lucide-folder-closed", - "title": "Files" + "title": "文件列表" } }, { @@ -61,7 +61,7 @@ "sortOrder": "alphabetical" }, "icon": "lucide-search", - "title": "Search" + "title": "搜索" } }, { @@ -191,8 +191,8 @@ "state": { "type": "calendar", "state": {}, - "icon": "calendar-with-checkmark", - "title": "Calendar" + "icon": "lucide-ghost", + "title": "calendar" } }, { @@ -201,8 +201,8 @@ "state": { "type": "smart-connections-view", "state": {}, - "icon": "smart-connections", - "title": "Connections" + "icon": "lucide-ghost", + "title": "smart-connections-view" } }, { @@ -226,7 +226,7 @@ } } ], - "currentTab": 8 + "currentTab": 9 } ], "direction": "horizontal", @@ -234,28 +234,37 @@ }, "left-ribbon": { "hiddenItems": { - "switcher:Open quick switcher": false, - "graph:Open graph view": false, - "canvas:Create new canvas": false, - "daily-notes:Open today's daily note": false, - "templates:Insert template": false, - "command-palette:Open command palette": false, - "markdown-importer:Open format converter": false, - "bases:Create new base": false, + "switcher:打开快速切换": false, + "graph:查看关系图谱": false, + "canvas:新建白板": false, + "daily-notes:打开/创建今天的日记": false, + "templates:插入模板": false, + "command-palette:打开命令面板": false, + "markdown-importer:打开 Markdown 格式转换器": false, + "bases:创建新数据库": false, "table-editor-obsidian:Advanced Tables Toolbar": false, "templater-obsidian:Templater": false, "copilot:Open Copilot Chat": false, - "obsidian-kanban:Create new board": false, + "obsidian-kanban:创建新看板": false, "obsidian-git:Open Git source control": false, - "obsidian-excalidraw-plugin:New drawing": false, + "obsidian-excalidraw-plugin:新建绘图文件": false, "omnisearch:Omnisearch": false, "smart-connections:Smart Connections: Open connections view": false, "smart-connections:Smart Lookup: Open lookup view": false, "smart-connections:Smart Connections: Open random connection": false } }, - "active": "ec72abdaaa8e91a6", + "active": "f8db624785bdfc00", "lastOpenFiles": [ + "100-project/AI/Agent/Droid.md", + "100-project/AI/ChatGPT.md", + "100-project/AI/Agent", + "100-project/AI/bigmodel.cn.md", + "100-project/AI/mcp.md", + "400-archive/security-sensitive/Personal/Github-tokens.md", + "100-project/AI/DeepSeek.md", + "100-project/AI/Zenmux.md", + "100-project/Home-Automation/智谱清言.md", "2025-12-29.md", "100-project/Infrastructure/Services/Soft Serve Git.md", "400-archive/_duplicates/2025-12-29-personal-refactor/openrouter.md", @@ -275,15 +284,7 @@ "100-project/Home-Automation/Hardware/tailcale.md", "100-project/Home-Automation/Hardware/Scribe.md", "100-project/Home-Automation/Hardware/Matter", - "100-project/Home-Automation/Config/add on.md", - "100-project/Home-Automation/Config/Install.md", - "100-project/Home-Automation/Config/Database.md", - "100-project/Home-Automation/智谱清言.md", "100-project/Home-Automation/南电", - "100-project/Home-Automation/tuya.md", - "100-project/Home-Automation/zigbee2mqtt.md", - "100-project/Home-Automation/esphome.md", - "100-project/Home-Automation/mopidy.md", "100-project/Home-Automation/Hardware", "100-project/Home-Automation/Config", "100-project/Home-Automation", @@ -291,7 +292,6 @@ "100-project/Infrastructure/Proxy/Clash", "100-project/Infrastructure/Mail/Config", "100-project/Infrastructure/VPS", - "100-project/Infrastructure/Systems", "300-resources/Development/Architecture/arc42/images/arc42-logo.png", "300-resources/Development/Architecture/arc42/images/08-Crosscutting-Concepts-Structure-EN.png", "300-resources/Development/Architecture/arc42/images/05_building_blocks-EN.png", diff --git a/.smart-env/embedding_models/embedding_models.ajson b/.smart-env/embedding_models/embedding_models.ajson deleted file mode 100644 index 4917e71..0000000 --- a/.smart-env/embedding_models/embedding_models.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"embedding_models:transformers#1766986877791": {"api_key":"","provider_key":"transformers","model_key":"TaylorAI/bge-micro-v2","dims":384,"max_tokens":512,"class_name":"EmbeddingModel","created_at":1766986877791,"key":"transformers#1766986877791"}, \ No newline at end of file diff --git a/.smart-env/event_logs/event_logs.ajson b/.smart-env/event_logs/event_logs.ajson deleted file mode 100644 index c04fb4e..0000000 --- a/.smart-env/event_logs/event_logs.ajson +++ /dev/null @@ -1,163 +0,0 @@ -"event_logs:settings:changed": {"key":"settings:changed","ct":11,"first_at":1766986874718,"last_at":1766986877791,"class_name":"EventLog"}, -"event_logs:event_log:first": {"key":"event_log:first","ct":3,"first_at":1766994008577,"last_at":1766994008657,"class_name":"EventLog"}, -"event_logs:source:initial_scan_started": {"key":"source:initial_scan_started","ct":1,"first_at":1766994008577,"last_at":1766994008577,"class_name":"EventLog"}, -"event_logs:source:initial_scan_completed": {"key":"source:initial_scan_completed","ct":1,"first_at":1766994008657,"last_at":1766994008657,"class_name":"EventLog"}, -"event_logs:collection:load_started": {"key":"collection:load_started","ct":5,"first_at":1766986877733,"last_at":1766986877739,"class_name":"EventLog"}, -"event_logs:collection:load_completed": {"key":"collection:load_completed","ct":2,"first_at":1766986877736,"last_at":1766986877783,"class_name":"EventLog"}, -"event_logs:collection:load_halted": {"key":"collection:load_halted","ct":3,"first_at":1766986877737,"last_at":1766986877738,"class_name":"EventLog"}, -"event_logs:sources:imported": {"key":"sources:imported","ct":733,"first_at":1766986877786,"last_at":1766993888607,"class_name":"EventLog"}, -"event_logs:model:changed": {"key":"model:changed","ct":1,"first_at":1766986877791,"last_at":1766986877791,"class_name":"EventLog"}, -"event_logs:embed_model:load_failed": {"key":"embed_model:load_failed","ct":1,"first_at":1766986882626,"last_at":1766986882626,"class_name":"EventLog"}, -"event_logs:sources:import_completed": {"key":"sources:import_completed","ct":1,"first_at":1766986882852,"last_at":1766986882852,"class_name":"EventLog"}, -"event_logs:blocks:cleaned": {"key":"blocks:cleaned","ct":1,"first_at":1766986882899,"last_at":1766986882899,"class_name":"EventLog"}, -"event_logs:connections:opened": {"key":"connections:opened","ct":11,"first_at":1766986884102,"last_at":1766993875620,"class_name":"EventLog"}, -"event_logs:sources:created": {"key":"sources:created","ct":355,"first_at":1766987075389,"last_at":1766993724978,"class_name":"EventLog","event_sources":{"obsidian:vault.create":355}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":145,"first_at":1766987077711,"last_at":1766993837367,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":62,"obsidian:workspace.editor-change":83}}, -"event_logs:sources:deleted": {"key":"sources:deleted","ct":346,"first_at":1766987089766,"last_at":1766993568315,"class_name":"EventLog","event_sources":{"obsidian:vault.delete":346}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":33,"first_at":1766987105710,"last_at":1766993875352,"class_name":"EventLog","event_sources":{"active-leaf-change":33}}, -"event_logs:event_log:first": {"key":"event_log:first","ct":3,"first_at":1766994008577,"last_at":1766994008657,"class_name":"EventLog"}, -"event_logs:collection:load_started": {"key":"collection:load_started","ct":5,"first_at":1766986877733,"last_at":1766986877739,"class_name":"EventLog"}, -"event_logs:collection:load_started": {"key":"collection:load_started","ct":9,"first_at":1766986877733,"last_at":1766994014452,"class_name":"EventLog"}, -"event_logs:collection:load_completed": {"key":"collection:load_completed","ct":4,"first_at":1766986877736,"last_at":1766994014451,"class_name":"EventLog"}, -"event_logs:collection:load_halted": {"key":"collection:load_halted","ct":5,"first_at":1766986877737,"last_at":1766994014446,"class_name":"EventLog"}, -"event_logs:collection:load_completed": {"key":"collection:load_completed","ct":5,"first_at":1766986877736,"last_at":1766994016401,"class_name":"EventLog"}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1180,"first_at":1766986877786,"last_at":1766994016877,"class_name":"EventLog"}, -"event_logs:embed_model:load_failed": {"key":"embed_model:load_failed","ct":2,"first_at":1766986882626,"last_at":1766994021678,"class_name":"EventLog"}, -"event_logs:sources:import_completed": {"key":"sources:import_completed","ct":2,"first_at":1766986882852,"last_at":1766994021786,"class_name":"EventLog"}, -"event_logs:blocks:cleaned": {"key":"blocks:cleaned","ct":2,"first_at":1766986882899,"last_at":1766994021801,"class_name":"EventLog"}, -"event_logs:connections:opened": {"key":"connections:opened","ct":12,"first_at":1766986884102,"last_at":1766994023299,"class_name":"EventLog"}, -"event_logs:sources:opened": {"key":"sources:opened","ct":34,"first_at":1766987105710,"last_at":1766994065238,"class_name":"EventLog","event_sources":{"active-leaf-change":34}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":35,"first_at":1766987105710,"last_at":1766994079521,"class_name":"EventLog","event_sources":{"active-leaf-change":35}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":36,"first_at":1766987105710,"last_at":1766994113100,"class_name":"EventLog","event_sources":{"active-leaf-change":36}}, -"event_logs:connections:opened": {"key":"connections:opened","ct":13,"first_at":1766986884102,"last_at":1766995048933,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":146,"first_at":1766987077711,"last_at":1766995049034,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":62,"obsidian:workspace.editor-change":84}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":37,"first_at":1766987105710,"last_at":1766995048629,"class_name":"EventLog","event_sources":{"active-leaf-change":37}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1181,"first_at":1766986877786,"last_at":1766995062060,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":148,"first_at":1766987077711,"last_at":1766995103190,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":62,"obsidian:workspace.editor-change":86}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":155,"first_at":1766987077711,"last_at":1766995105893,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":63,"obsidian:workspace.editor-change":92}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":156,"first_at":1766987077711,"last_at":1766995107436,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":64,"obsidian:workspace.editor-change":92}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":163,"first_at":1766987077711,"last_at":1766995111352,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":64,"obsidian:workspace.editor-change":99}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":165,"first_at":1766987077711,"last_at":1766995112179,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":65,"obsidian:workspace.editor-change":100}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":167,"first_at":1766987077711,"last_at":1766995113630,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":65,"obsidian:workspace.editor-change":102}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1182,"first_at":1766986877786,"last_at":1766995115856,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":187,"first_at":1766987077711,"last_at":1766995118786,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":67,"obsidian:workspace.editor-change":120}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":216,"first_at":1766987077711,"last_at":1766995124615,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":70,"obsidian:workspace.editor-change":146}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":217,"first_at":1766987077711,"last_at":1766995126618,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":71,"obsidian:workspace.editor-change":146}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1183,"first_at":1766986877786,"last_at":1766995129316,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":222,"first_at":1766987077711,"last_at":1766995188105,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":71,"obsidian:workspace.editor-change":151}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":228,"first_at":1766987077711,"last_at":1766995189837,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":72,"obsidian:workspace.editor-change":156}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":236,"first_at":1766987077711,"last_at":1766995193138,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":73,"obsidian:workspace.editor-change":163}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":253,"first_at":1766987077711,"last_at":1766995197509,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":75,"obsidian:workspace.editor-change":178}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1184,"first_at":1766986877786,"last_at":1766995200731,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":270,"first_at":1766987077711,"last_at":1766995202856,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":77,"obsidian:workspace.editor-change":193}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":273,"first_at":1766987077711,"last_at":1766995204500,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":78,"obsidian:workspace.editor-change":195}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":274,"first_at":1766987077711,"last_at":1766995205996,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":79,"obsidian:workspace.editor-change":195}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1185,"first_at":1766986877786,"last_at":1766995213801,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":276,"first_at":1766987077711,"last_at":1766995315069,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":79,"obsidian:workspace.editor-change":197}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":277,"first_at":1766987077711,"last_at":1766995316055,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":79,"obsidian:workspace.editor-change":198}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":287,"first_at":1766987077711,"last_at":1766995319726,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":80,"obsidian:workspace.editor-change":207}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":288,"first_at":1766987077711,"last_at":1766995320610,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":80,"obsidian:workspace.editor-change":208}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":295,"first_at":1766987077711,"last_at":1766995322444,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":81,"obsidian:workspace.editor-change":214}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":314,"first_at":1766987077711,"last_at":1766995327058,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":83,"obsidian:workspace.editor-change":231}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1186,"first_at":1766986877786,"last_at":1766995328067,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":333,"first_at":1766987077711,"last_at":1766995331241,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":85,"obsidian:workspace.editor-change":248}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":346,"first_at":1766987077711,"last_at":1766995334654,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":87,"obsidian:workspace.editor-change":259}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":361,"first_at":1766987077711,"last_at":1766995338674,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":88,"obsidian:workspace.editor-change":273}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":364,"first_at":1766987077711,"last_at":1766995339865,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":89,"obsidian:workspace.editor-change":275}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1187,"first_at":1766986877786,"last_at":1766995341374,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":366,"first_at":1766987077711,"last_at":1766995341869,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":90,"obsidian:workspace.editor-change":276}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":367,"first_at":1766987077711,"last_at":1766995348857,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":90,"obsidian:workspace.editor-change":277}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":368,"first_at":1766987077711,"last_at":1766995350861,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":91,"obsidian:workspace.editor-change":277}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":369,"first_at":1766987077711,"last_at":1766995352140,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":91,"obsidian:workspace.editor-change":278}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1188,"first_at":1766986877786,"last_at":1766995354888,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":375,"first_at":1766987077711,"last_at":1766995355293,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":92,"obsidian:workspace.editor-change":283}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":376,"first_at":1766987077711,"last_at":1766995356699,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":93,"obsidian:workspace.editor-change":283}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1189,"first_at":1766986877786,"last_at":1766995368048,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":377,"first_at":1766987077711,"last_at":1766995367512,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":93,"obsidian:workspace.editor-change":284}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":379,"first_at":1766987077711,"last_at":1766995369515,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":94,"obsidian:workspace.editor-change":285}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":380,"first_at":1766987077711,"last_at":1766995371485,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":94,"obsidian:workspace.editor-change":286}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":381,"first_at":1766987077711,"last_at":1766995373488,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":95,"obsidian:workspace.editor-change":286}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1190,"first_at":1766986877786,"last_at":1766995382413,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":462,"first_at":1766987077711,"last_at":1766995955889,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":97,"obsidian:workspace.editor-change":365}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":463,"first_at":1766987077711,"last_at":1766995957659,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":98,"obsidian:workspace.editor-change":365}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":466,"first_at":1766987077711,"last_at":1766995959985,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":98,"obsidian:workspace.editor-change":368}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":467,"first_at":1766987077711,"last_at":1766995961035,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":99,"obsidian:workspace.editor-change":368}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1191,"first_at":1766986877786,"last_at":1766995964255,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":468,"first_at":1766987077711,"last_at":1766995969210,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":99,"obsidian:workspace.editor-change":369}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":470,"first_at":1766987077711,"last_at":1766995971214,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":100,"obsidian:workspace.editor-change":370}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1192,"first_at":1766986877786,"last_at":1766995982225,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":476,"first_at":1766987077711,"last_at":1766996012870,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":101,"obsidian:workspace.editor-change":375}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":490,"first_at":1766987077711,"last_at":1766996015409,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":102,"obsidian:workspace.editor-change":388}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":493,"first_at":1766987077711,"last_at":1766996017654,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":103,"obsidian:workspace.editor-change":390}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":496,"first_at":1766987077711,"last_at":1766996018867,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":103,"obsidian:workspace.editor-change":393}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":505,"first_at":1766987077711,"last_at":1766996021854,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":105,"obsidian:workspace.editor-change":400}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1193,"first_at":1766986877786,"last_at":1766996023644,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":507,"first_at":1766987077711,"last_at":1766996024281,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":105,"obsidian:workspace.editor-change":402}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":508,"first_at":1766987077711,"last_at":1766996025866,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":106,"obsidian:workspace.editor-change":402}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1194,"first_at":1766986877786,"last_at":1766996037113,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":511,"first_at":1766987077711,"last_at":1766996802549,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":106,"obsidian:workspace.editor-change":405}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":512,"first_at":1766987077711,"last_at":1766996804152,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":107,"obsidian:workspace.editor-change":405}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1195,"first_at":1766986877786,"last_at":1766996815161,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":513,"first_at":1766987077711,"last_at":1766996868700,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":107,"obsidian:workspace.editor-change":406}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":555,"first_at":1766987077711,"last_at":1766996878168,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":111,"obsidian:workspace.editor-change":444}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":559,"first_at":1766987077711,"last_at":1766996880075,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":112,"obsidian:workspace.editor-change":447}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1196,"first_at":1766986877786,"last_at":1766996881773,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":560,"first_at":1766987077711,"last_at":1766996881346,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":113,"obsidian:workspace.editor-change":447}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":561,"first_at":1766987077711,"last_at":1766996900002,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":113,"obsidian:workspace.editor-change":448}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":562,"first_at":1766987077711,"last_at":1766996902006,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":114,"obsidian:workspace.editor-change":448}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":563,"first_at":1766987077711,"last_at":1766996903241,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":114,"obsidian:workspace.editor-change":449}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":564,"first_at":1766987077711,"last_at":1766996905245,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":115,"obsidian:workspace.editor-change":449}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1197,"first_at":1766986877786,"last_at":1766996913017,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":575,"first_at":1766987077711,"last_at":1766996919823,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":116,"obsidian:workspace.editor-change":459}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":581,"first_at":1766987077711,"last_at":1766996923294,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":117,"obsidian:workspace.editor-change":464}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":582,"first_at":1766987077711,"last_at":1766996924797,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":118,"obsidian:workspace.editor-change":464}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":584,"first_at":1766987077711,"last_at":1766996927119,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":118,"obsidian:workspace.editor-change":466}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":585,"first_at":1766987077711,"last_at":1766996928665,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":119,"obsidian:workspace.editor-change":466}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1198,"first_at":1766986877786,"last_at":1766996930833,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":587,"first_at":1766987077711,"last_at":1766997379495,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":119,"obsidian:workspace.editor-change":468}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":588,"first_at":1766987077711,"last_at":1766997381274,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":120,"obsidian:workspace.editor-change":468}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1199,"first_at":1766986877786,"last_at":1766997392326,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":589,"first_at":1766987077711,"last_at":1766997391650,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":120,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":590,"first_at":1766987077711,"last_at":1766997393657,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":121,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1200,"first_at":1766986877786,"last_at":1766997410969,"class_name":"EventLog"}, -"event_logs:sources:created": {"key":"sources:created","ct":356,"first_at":1766987075389,"last_at":1766997492981,"class_name":"EventLog","event_sources":{"obsidian:vault.create":356}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":591,"first_at":1766987077711,"last_at":1766997492989,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":122,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1201,"first_at":1766986877786,"last_at":1766997505983,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":592,"first_at":1766987077711,"last_at":1766997539301,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":123,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1202,"first_at":1766986877786,"last_at":1766997552302,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":593,"first_at":1766987077711,"last_at":1766997560976,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":124,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1203,"first_at":1766986877786,"last_at":1766997573978,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":594,"first_at":1766987077711,"last_at":1766997639241,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":125,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":595,"first_at":1766987077711,"last_at":1766997645789,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":126,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1204,"first_at":1766986877786,"last_at":1766997652247,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":596,"first_at":1766987077711,"last_at":1766997670005,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":127,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1205,"first_at":1766986877786,"last_at":1766997683007,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":597,"first_at":1766987077711,"last_at":1766997832809,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":128,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1206,"first_at":1766986877786,"last_at":1766997845813,"class_name":"EventLog"}, -"event_logs:sources:opened": {"key":"sources:opened","ct":38,"first_at":1766987105710,"last_at":1766997929653,"class_name":"EventLog","event_sources":{"active-leaf-change":38}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":39,"first_at":1766987105710,"last_at":1766998127248,"class_name":"EventLog","event_sources":{"active-leaf-change":39}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":598,"first_at":1766987077711,"last_at":1766998178862,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":129,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1207,"first_at":1766986877786,"last_at":1766998191872,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":599,"first_at":1766987077711,"last_at":1766998198884,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":130,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1208,"first_at":1766986877786,"last_at":1766998211891,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":600,"first_at":1766987077711,"last_at":1766998214766,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":131,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1209,"first_at":1766986877786,"last_at":1766998227774,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":601,"first_at":1766987077711,"last_at":1766998369207,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":132,"obsidian:workspace.editor-change":469}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1210,"first_at":1766986877786,"last_at":1766998382238,"class_name":"EventLog"}, -"event_logs:sources:created": {"key":"sources:created","ct":357,"first_at":1766987075389,"last_at":1766998533332,"class_name":"EventLog","event_sources":{"obsidian:vault.create":357}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":40,"first_at":1766987105710,"last_at":1766998533384,"class_name":"EventLog","event_sources":{"active-leaf-change":40}}, -"event_logs:event_log:first": {"key":"event_log:first","ct":4,"first_at":1766994008577,"last_at":1766998541874,"class_name":"EventLog"}, -"event_logs:sources:renamed": {"key":"sources:renamed","ct":1,"first_at":1766998541874,"last_at":1766998541874,"class_name":"EventLog","event_sources":{"obsidian:vault.rename":1}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1212,"first_at":1766986877786,"last_at":1766998554876,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":602,"first_at":1766987077711,"last_at":1766998611773,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":132,"obsidian:workspace.editor-change":470}}, -"event_logs:sources:opened": {"key":"sources:opened","ct":41,"first_at":1766987105710,"last_at":1766998610941,"class_name":"EventLog","event_sources":{"active-leaf-change":41}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":603,"first_at":1766987077711,"last_at":1766998613777,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":133,"obsidian:workspace.editor-change":470}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":604,"first_at":1766987077711,"last_at":1766998616824,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":133,"obsidian:workspace.editor-change":471}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":605,"first_at":1766987077711,"last_at":1766998618739,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":134,"obsidian:workspace.editor-change":471}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1213,"first_at":1766986877786,"last_at":1766998624778,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":606,"first_at":1766987077711,"last_at":1766998642209,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":134,"obsidian:workspace.editor-change":472}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":607,"first_at":1766987077711,"last_at":1766998644213,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":135,"obsidian:workspace.editor-change":472}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1214,"first_at":1766986877786,"last_at":1766998655214,"class_name":"EventLog"}, -"event_logs:sources:modified": {"key":"sources:modified","ct":608,"first_at":1766987077711,"last_at":1766998672626,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":135,"obsidian:workspace.editor-change":473}}, -"event_logs:sources:modified": {"key":"sources:modified","ct":609,"first_at":1766987077711,"last_at":1766998674635,"class_name":"EventLog","event_sources":{"obsidian:vault.modify":136,"obsidian:workspace.editor-change":473}}, -"event_logs:sources:imported": {"key":"sources:imported","ct":1215,"first_at":1766986877786,"last_at":1766998685630,"class_name":"EventLog"}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Adding_and_trusting_a_Certificate_Authority_(CA)_in_Fedora_–_Antonio_Maradiaga_–_Collection_of_things_I'm_interested_in__working_on_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Adding_and_trusting_a_Certificate_Authority_(CA)_in_Fedora_–_Antonio_Maradiaga_–_Collection_of_things_I'm_interested_in__working_on_md.ajson deleted file mode 100644 index 9390158..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Adding_and_trusting_a_Certificate_Authority_(CA)_in_Fedora_–_Antonio_Maradiaga_–_Collection_of_things_I'm_interested_in__working_on_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Adding and trusting a Certificate Authority (CA) in Fedora – Antonio Maradiaga – Collection of things I'm interested in working on.md": {"path":"000-inbox/clippings/2023/03/Adding and trusting a Certificate Authority (CA) in Fedora – Antonio Maradiaga – Collection of things I'm interested in working on.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"kj2fle","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1680165620298,"size":1544,"at":1766986878359,"hash":"kj2fle"},"blocks":{"#---frontmatter---":[1,5],"##Adding and trusting a Certificate Authority (CA) in Fedora":[6,34],"##Adding and trusting a Certificate Authority (CA) in Fedora#{1}":[8,9],"##Adding and trusting a Certificate Authority (CA) in Fedora#{2}":[10,10],"##Adding and trusting a Certificate Authority (CA) in Fedora#{3}":[11,11],"##Adding and trusting a Certificate Authority (CA) in Fedora#{4}":[12,12],"##Adding and trusting a Certificate Authority (CA) in Fedora#{5}":[13,14],"##Adding and trusting a Certificate Authority (CA) in Fedora#{6}":[15,28],"##Adding and trusting a Certificate Authority (CA) in Fedora#References:":[29,34],"##Adding and trusting a Certificate Authority (CA) in Fedora#References:#{1}":[31,31],"##Adding and trusting a Certificate Authority (CA) in Fedora#References:#{2}":[32,33],"##Adding and trusting a Certificate Authority (CA) in Fedora#References:#{3}":[34,34]},"outlinks":[],"metadata":{"page-title":"Adding and trusting a Certificate Authority (CA) in Fedora – Antonio Maradiaga – Collection of things I'm interested in / working on","url":"https://ajmaradiaga.com/Adding-trusting-CA-Fedora/","date":"2023-03-30 16:40:18"},"task_lines":[],"tasks":{},"codeblock_ranges":[[17,27]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_DailySync_·_GitLab_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_DailySync_·_GitLab_md.ajson deleted file mode 100644 index 5508dab..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_DailySync_·_GitLab_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/DailySync · GitLab.md": {"path":"000-inbox/clippings/2023/03/DailySync · GitLab.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"finr5i","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678255209066,"size":32163,"at":1766986878359,"hash":"finr5i"},"blocks":{"#---frontmatter---":[1,5],"##佳明运动数据同步与采集工具":[6,13],"##佳明运动数据同步与采集工具#{1}":[8,13],"##本地运行方案":[14,17],"##本地运行方案#{1}":[16,17],"##检查网络情况确保正常访问佳明服务":[18,90],"##检查网络情况确保正常访问佳明服务#测试国际互联网网络连通性":[20,36],"##检查网络情况确保正常访问佳明服务#测试国际互联网网络连通性#{1}":[22,36],"##检查网络情况确保正常访问佳明服务#测试佳明国际区网络连通性":[37,48],"##检查网络情况确保正常访问佳明服务#测试佳明国际区网络连通性#{1}":[39,48],"##检查网络情况确保正常访问佳明服务#测试中国区网络连通性":[49,60],"##检查网络情况确保正常访问佳明服务#测试中国区网络连通性#{1}":[51,60],"##检查网络情况确保正常访问佳明服务#安装 `NodeJS`":[61,64],"##检查网络情况确保正常访问佳明服务#安装 `NodeJS`#{1}":[63,64],"##检查网络情况确保正常访问佳明服务#开启 `yarn`":[65,68],"##检查网络情况确保正常访问佳明服务#开启 `yarn`#{1}":[67,68],"##检查网络情况确保正常访问佳明服务#安装依赖":[69,74],"##检查网络情况确保正常访问佳明服务#安装依赖#{1}":[71,74],"##检查网络情况确保正常访问佳明服务#填入账号密码":[75,78],"##检查网络情况确保正常访问佳明服务#填入账号密码#{1}":[77,78],"##检查网络情况确保正常访问佳明服务#运行脚本":[79,90],"##检查网络情况确保正常访问佳明服务#运行脚本#{1}":[81,86],"##检查网络情况确保正常访问佳明服务#运行脚本#常见问题":[87,90],"##检查网络情况确保正常访问佳明服务#运行脚本#常见问题#{1}":[89,90],"##定时任务(Linux Only)":[91,144],"##定时任务(Linux Only)#{1}":[93,96],"##定时任务(Linux Only)#每3小时检查并同步国际区到中国区【可选】,注意PATH和SHELL两行也要写上":[97,104],"##定时任务(Linux Only)#每3小时检查并同步国际区到中国区【可选】,注意PATH和SHELL两行也要写上#{1}":[99,104],"##定时任务(Linux Only)#每3小时检查并同步中国区到国际区【可选】,注意PATH和SHELL两行也要写上":[105,116],"##定时任务(Linux Only)#每3小时检查并同步中国区到国际区【可选】,注意PATH和SHELL两行也要写上#{1}":[107,116],"##定时任务(Linux Only)#运行日志查看":[117,122],"##定时任务(Linux Only)#运行日志查看#{1}":[119,122],"##定时任务(Linux Only)#修改定时任务执行频率":[123,144],"##定时任务(Linux Only)#修改定时任务执行频率#{1}":[125,144],"##功能":[145,165],"##功能#迁移数据":[147,151],"##功能#迁移数据#{1}":[149,149],"##功能#迁移数据#{2}":[150,151],"##功能#同步数据":[152,160],"##功能#同步数据#{1}":[154,154],"##功能#同步数据#{2}":[155,158],"##功能#同步数据#{3}":[159,160],"##功能#采集数据":[161,165],"##功能#采集数据#{1}":[163,163],"##功能#采集数据#{2}":[164,165],"##说明":[166,471],"##说明##免责声明:":[168,171],"##说明##免责声明:#{1}":[170,171],"##说明##账号安全:":[172,175],"##说明##账号安全:#{1}":[174,175],"##说明##进群讨论":[176,179],"##说明##进群讨论#{1}":[178,179],"##说明##支持作者":[180,183],"##说明##支持作者#{1}":[182,183],"##说明##关键更新日志":[184,205],"##说明##关键更新日志#{1}":[186,187],"##说明##关键更新日志#{2}":[188,198],"##说明##关键更新日志#{3}":[199,200],"##说明##关键更新日志#{4}":[201,202],"##说明##关键更新日志#{5}":[203,203],"##说明##关键更新日志#{6}":[204,205],"##说明##在用这个工具的大佬们(除了作者)欢迎点进链接加加好友~(点击展开) ([填写您的链接](https://wj.qq.com/s2/10633783/a1ef/))":[206,471],"##说明##在用这个工具的大佬们(除了作者)欢迎点进链接加加好友~(点击展开) ([填写您的链接](https://wj.qq.com/s2/10633783/a1ef/))#{1}":[208,471],"##如何使用?":[472,477],"##如何使用?#{1}":[474,477],"##教程开始":[478,493],"##教程开始#迁移已有运动数据,并开启自动同步功能":[480,493],"##教程开始#迁移已有运动数据,并开启自动同步功能#{1}":[482,487],"##教程开始#迁移已有运动数据,并开启自动同步功能#前置条件:":[488,493],"##教程开始#迁移已有运动数据,并开启自动同步功能#前置条件:#**注册好佳明国际区的帐号及Strava账号,并已经将Strava与佳明国际区账号关联,并开启Strava数据权限(下图)**":[490,493],"##教程开始#迁移已有运动数据,并开启自动同步功能#前置条件:#**注册好佳明国际区的帐号及Strava账号,并已经将Strava与佳明国际区账号关联,并开启Strava数据权限(下图)**#{1}":[492,493],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**":[494,692],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**#{1}":[496,497],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**###佳明账号隐私设置":[498,501],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**###佳明账号隐私设置#{1}":[500,501],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**###关闭佳明账号两步验证":[502,511],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**###关闭佳明账号两步验证#{1}":[504,511],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step1: fork 此工程":[512,515],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step1: fork 此工程#{1}":[514,515],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step2: 配置填入自己的佳明国内区、国际区账号及密码":[516,543],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step2: 配置填入自己的佳明国内区、国际区账号及密码#{1}":[518,543],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据":[544,607],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{1}":[546,577],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{2}":[578,578],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{3}":[579,579],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{4}":[580,580],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{5}":[581,582],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step3: 手动迁移已有数据#{6}":[583,607],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step4: 自动同步新的运动数据":[608,625],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##Step4: 自动同步新的运动数据#{1}":[610,625],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:":[626,692],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据没有同步成功?":[628,635],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据没有同步成功?#{1}":[630,631],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据没有同步成功?#{2}":[632,632],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据没有同步成功?#{3}":[633,633],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据没有同步成功?#{4}":[634,635],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据同步为什么没有按计划执行,有的时候一小时才执行了2次?":[636,651],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#数据同步为什么没有按计划执行,有的时候一小时才执行了2次?#{1}":[638,651],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#需要每天都来同步数据吗?":[652,655],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#需要每天都来同步数据吗?#{1}":[654,655],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#修改自动同步的频率":[656,676],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#修改自动同步的频率#{1}":[658,671],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#修改自动同步的频率#{2}":[672,672],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#修改自动同步的频率#{3}":[673,674],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#修改自动同步的频率#{4}":[675,676],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#同步最新的代码库(更新代码)":[677,680],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#同步最新的代码库(更新代码)#{1}":[679,680],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#收到`Github`执行失败的邮件":[681,684],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#收到`Github`执行失败的邮件#{1}":[683,684],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#收到来自佳明登录提醒的邮件":[685,688],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#收到来自佳明登录提醒的邮件#{1}":[687,688],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#关闭自动同步":[689,692],"##**如果看不到此文档的图片,请移步 [知乎链接](https://zhuanlan.zhihu.com/p/543799435)**##FAQ:#关闭自动同步#{1}":[691,692],"##数据同步到佳明国际区后,其他的一些可关联的运动分析平台":[693,700],"##数据同步到佳明国际区后,其他的一些可关联的运动分析平台#{1}":[695,700],"##同步到佳明国际区,同步Strava":[701,704],"##同步到佳明国际区,同步Strava#{1}":[703,704],"##采集RQ数据教程:":[705,708],"##采集RQ数据教程:#{1}":[707,708],"##TODO":[709,735],"##TODO#{1}":[711,711],"##TODO#{2}":[712,712],"##TODO#{3}":[713,713],"##TODO#{4}":[714,714],"##TODO#{5}":[715,715],"##TODO#{6}":[716,716],"##TODO#{7}":[717,717],"##TODO#{8}":[718,718],"##TODO#{9}":[719,720],"##TODO#{10}":[721,735],"##TODO#{11}":[725,735],"##Star History":[736,739],"##Star History#{1}":[738,739],"##Buy Me a Coffee":[740,842],"##Buy Me a Coffee#{1}":[742,743],"##Buy Me a Coffee#支持者记录":[744,842],"##Buy Me a Coffee#支持者记录#{1}":[746,842]},"outlinks":[{"title":"![workflow","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/workflow.png","line":8},{"title":"关注作者Strava ![Strava","target":"https://badges.strava.com/logo-strava.png","line":10},{"title":"![","target":"https://user-content.gitlab-static.net/5d5eed4360b9480994f5980b724af6841a1edd71/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d54656c656772616d2d2532333236413545343f7374796c653d666c61742d737175617265266c6f676f3d74656c656772616d266c6f676f436f6c6f723d666666666666","line":12},{"title":"https://nodejs.org/en/","target":"https://nodejs.org/en/","line":63},{"title":"![","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/crontab-e.png","line":115},{"title":"https://crontab.guru/examples.html","target":"https://crontab.guru/examples.html","line":127},{"title":"知乎链接","target":"https://zhuanlan.zhihu.com/p/543799435","line":141},{"title":"Strava全球热图","target":"https://www.strava.com/heatmap","line":143},{"title":"微信运动效果","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/wx_sport.jpg","line":155},{"title":"RQ数据采集到GoogleSheets教程","target":"https://gitlab.com/zhiqiangf/dailysync/-/blob/main/RQ_GoogleSheets.md","line":163},{"title":"RQ自动签到","target":"https://gitlab.com/zhiqiangf/dailysync/-/blob/main/RQ_Sign.md","line":164},{"title":"![二维码扫码","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/wechat_qr.png","line":178},{"title":"Buy Me a Coffee","target":"https://gitlab.com/zhiqiangf/dailysync#buy-me-a-coffee","line":182},{"title":"填写您的链接","target":"https://wj.qq.com/s2/10633783/a1ef/","line":206},{"title":"https://www.strava.com/athletes/84396978","target":"https://www.strava.com/athletes/84396978","line":214},{"title":"https://www.strava.com/athletes/105952743","target":"https://www.strava.com/athletes/105952743","line":220},{"title":"https://www.strava.com/athletes/91478457","target":"https://www.strava.com/athletes/91478457","line":226},{"title":"https://www.strava.com/athletes/91553718","target":"https://www.strava.com/athletes/91553718","line":232},{"title":"https://www.strava.com/athletes/43684509","target":"https://www.strava.com/athletes/43684509","line":238},{"title":"https://www.strava.com/athletes/34349982","target":"https://www.strava.com/athletes/34349982","line":244},{"title":"https://www.strava.com/athletes/67222235","target":"https://www.strava.com/athletes/67222235","line":250},{"title":"https://www.strava.com/athletes/43107517","target":"https://www.strava.com/athletes/43107517","line":256},{"title":"https://www.strava.com/athletes/19108713","target":"https://www.strava.com/athletes/19108713","line":262},{"title":"https://www.strava.com/athletes/40855048","target":"https://www.strava.com/athletes/40855048","line":268},{"title":"https://www.strava.com/athletes/86727066","target":"https://www.strava.com/athletes/86727066","line":272},{"title":"https://www.strava.com/athletes/54001163","target":"https://www.strava.com/athletes/54001163","line":276},{"title":"https://www.strava.com/athletes/105416045","target":"https://www.strava.com/athletes/105416045","line":280},{"title":"https://www.strava.com/athletes/8376311","target":"https://www.strava.com/athletes/8376311","line":284},{"title":"https://www.strava.com/athletes/33650658","target":"https://www.strava.com/athletes/33650658","line":288},{"title":"https://www.strava.com/athletes/107433069","target":"https://www.strava.com/athletes/107433069","line":292},{"title":"https://www.strava.com/athletes/8901566","target":"https://www.strava.com/athletes/8901566","line":296},{"title":"https://www.strava.com/athletes/48067019","target":"https://www.strava.com/athletes/48067019","line":302},{"title":"https://www.strava.com/athletes/13495215","target":"https://www.strava.com/athletes/13495215","line":308},{"title":"https://www.strava.com/athletes/107773658","target":"https://www.strava.com/athletes/107773658","line":314},{"title":"https://www.strava.com/athletes/107830101","target":"https://www.strava.com/athletes/107830101","line":320},{"title":"https://www.strava.com/athletes/62080682","target":"https://www.strava.com/athletes/62080682","line":324},{"title":"https://www.strava.com/athletes/107733443","target":"https://www.strava.com/athletes/107733443","line":330},{"title":"https://www.strava.com/athletes/45675087","target":"https://www.strava.com/athletes/45675087","line":334},{"title":"https://www.strava.com/athletes/69135349","target":"https://www.strava.com/athletes/69135349","line":338},{"title":"https://www.strava.com/athletes/105799254","target":"https://www.strava.com/athletes/105799254","line":342},{"title":"https://www.strava.com/athletes/lu\\_yuanyuan","target":"https://www.strava.com/athletes/lu_yuanyuan","line":346},{"title":"https://www.strava.com/athletes/107599333","target":"https://www.strava.com/athletes/107599333","line":350},{"title":"https://www.strava.com/athletes/84396978","target":"https://www.strava.com/athletes/84396978","line":354},{"title":"https://www.strava.com/athletes/29648564","target":"https://www.strava.com/athletes/29648564","line":358},{"title":"https://www.strava.com/athletes/102557902","target":"https://www.strava.com/athletes/102557902","line":362},{"title":"https://www.strava.com/athletes/107398383","target":"https://www.strava.com/athletes/107398383","line":366},{"title":"https://www.strava.com/athletes/108302326","target":"https://www.strava.com/athletes/108302326","line":370},{"title":"https://www.strava.com/athletes/108426264","target":"https://www.strava.com/athletes/108426264","line":374},{"title":"https://www.strava.com/athletes/78018552","target":"https://www.strava.com/athletes/78018552","line":378},{"title":"https://www.strava.com/athletes/100219084","target":"https://www.strava.com/athletes/100219084","line":382},{"title":"https://www.strava.com/athletes/23144564","target":"https://www.strava.com/athletes/23144564","line":386},{"title":"https://www.strava.com/athletes/96827296","target":"https://www.strava.com/athletes/96827296","line":390},{"title":"https://www.strava.com/athletes/47354232","target":"https://www.strava.com/athletes/47354232","line":394},{"title":"https://www.strava.com/athletes/27560743","target":"https://www.strava.com/athletes/27560743","line":398},{"title":"https://www.strava.com/athletes/guyuqinxin","target":"https://www.strava.com/athletes/guyuqinxin","line":402},{"title":"https://www.strava.com/athletes/103444104","target":"https://www.strava.com/athletes/103444104","line":408},{"title":"https://www.strava.com/athletes/26760320","target":"https://www.strava.com/athletes/26760320","line":412},{"title":"https://www.strava.com/athletes/92683851","target":"https://www.strava.com/athletes/92683851","line":416},{"title":"https://www.strava.com/athletes/85319344","target":"https://www.strava.com/athletes/85319344","line":420},{"title":"https://www.strava.com/athletes/106952288","target":"https://www.strava.com/athletes/106952288","line":424},{"title":"https://www.strava.com/athletes/108006082","target":"https://www.strava.com/athletes/108006082","line":428},{"title":"https://www.strava.com/athletes/107605370","target":"https://www.strava.com/athletes/107605370","line":432},{"title":"https://www.strava.com/athletes/100452318","target":"https://www.strava.com/athletes/100452318","line":436},{"title":"https://www.strava.com/athletes/lu\\_yuanyuan","target":"https://www.strava.com/athletes/lu_yuanyuan","line":440},{"title":"https://www.strava.com/athletes/11280405","target":"https://www.strava.com/athletes/11280405","line":444},{"title":"https://www.strava.com/athletes/105468976","target":"https://www.strava.com/athletes/105468976","line":450},{"title":"https://www.strava.com/athletes/dougsun","target":"https://www.strava.com/athletes/dougsun","line":454},{"title":"https://www.strava.com/athletes/37057287","target":"https://www.strava.com/athletes/37057287","line":458},{"title":"https://www.strava.com/athletes/68463270","target":"https://www.strava.com/athletes/68463270","line":462},{"title":"https://www.strava.com/athletes/105403238","target":"https://www.strava.com/athletes/105403238","line":466},{"title":"https://www.strava.com/athletes/110758645","target":"https://www.strava.com/athletes/110758645","line":470},{"title":"中国区佳明运动数据同步Strava视频教程","target":"https://www.bilibili.com/video/BV1v94y1Q7oR/","line":474},{"title":"知乎链接","target":"https://zhuanlan.zhihu.com/p/543799435","line":476},{"title":"佳明国际区网址","target":"https://connect.garmin.com/signin/","line":482},{"title":"佳明国区网址","target":"https://connect.garmin.cn/signin/","line":484},{"title":"Strava网址","target":"https://www.strava.com/","line":486},{"title":"知乎链接","target":"https://zhuanlan.zhihu.com/p/543799435","line":494},{"title":"![consent","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/consent.png","line":496},{"title":"![connect_permission","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/connect_permission.png","line":500},{"title":"![mfa","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/mfa.jpg","line":508},{"title":"https://www.garmin.cn/zh-CN/account/security/mfa","target":"https://www.garmin.cn/zh-CN/account/security/mfa","line":508},{"title":"![fork","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/fork.jpg","line":514},{"title":"![settings","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/settings.jpg","line":518},{"title":"![secrets","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/secrets.jpg","line":538},{"title":"![repo_permission","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/repo_permission.png","line":542},{"title":"![secrets","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/secrets_ok1.png","line":542},{"title":"![migrate","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/migrate.jpg","line":552},{"title":"![migrating","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/migrating.jpg","line":554},{"title":"![log","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/log.jpg","line":556},{"title":"![test_migrate","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/test_migrate.png","line":556},{"title":"![migrated","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/migrated.png","line":558},{"title":"![strava_activities","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/strava_activities.png","line":574},{"title":"https://www.strava.com/athlete/training","target":"https://www.strava.com/athlete/training","line":574},{"title":"![enable_workflow","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/enable_workflow.jpg","line":618},{"title":"![sync","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/sync.jpg","line":620},{"title":"https://connect.garmin.com/status","target":"https://connect.garmin.com/status","line":634},{"title":"Schedule every 5 mins but runs a bit randomly","target":"https://github.community/t/schedule-every-5-mins-but-runs-a-bit-randomly/159355/2","line":638},{"title":"https://crontab.guru/examples.html","target":"https://crontab.guru/examples.html","line":660},{"title":"![update_code","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/cron.png","line":675},{"title":"![update_code","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/update_code.jpg","line":679},{"title":"![action_failed","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/action_failed.png","line":683},{"title":"![action_failed","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/login_email.png","line":687},{"title":"![disable_sync","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/disable_sync.png","line":691},{"title":"https://intervals.icu/ (强烈推荐!!)","target":"https://intervals.icu/","line":695},{"title":"https://app.trainingpeaks.com/#home","target":"https://app.trainingpeaks.com/#home","line":697},{"title":"https://runalyze.com/dashboard","target":"https://runalyze.com/dashboard","line":699},{"title":"![garmin_global","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/garmin_global.png","line":703},{"title":"![strava","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/strava.png","line":703},{"title":"RQ数据采集到GoogleSheets教程","target":"https://gitlab.com/zhiqiangf/dailysync/-/blob/main/RQ_GoogleSheets.md","line":707},{"title":"https://www.reddit.com/r/Garmin/comments/x2mad3/lactate\\_threshold\\_accuracy\\_test\\_from\\_052019\\_to/","target":"https://www.reddit.com/r/Garmin/comments/x2mad3/lactate_threshold_accuracy_test_from_052019_to/","line":720},{"title":"https://connect.garmin.com/web-gateway/course/owner","target":"https://connect.garmin.com/web-gateway/course/owner","line":723},{"title":"https://connect.garmin.com/course-service/course/{id}","target":"https://connect.garmin.com/course-service/course/%7Bid%7D","line":731},{"title":"https://connect.garmin.com/course-service/course/gpx/{id}","target":"https://connect.garmin.com/course-service/course/gpx/%7Bid%7D","line":732},{"title":"https://connect.garmin.com/modern/proxy/course-service/course/import","target":"https://connect.garmin.com/modern/proxy/course-service/course/import","line":733},{"title":"https://connect.garmin.com/course-service/course/","target":"https://connect.garmin.com/course-service/course/","line":734},{"title":"![Star History Chart","target":"https://user-content.gitlab-static.net/6fc600d6b691da2ffa530389f0edefe183b8ab20/68747470733a2f2f6170692e737461722d686973746f72792e636f6d2f7376673f7265706f733d676f6f696e2f4461696c7953796e6326747970653d44617465","line":738},{"title":"![wechat","target":"https://gitlab.com/zhiqiangf/dailysync/-/raw/main/assets/wechat.jpg","line":742}],"metadata":{"page-title":"zhiqiang feng / DailySync · GitLab","url":"https://gitlab.com/zhiqiangf/dailysync","date":"2023-03-08 14:00:07"},"task_lines":[],"tasks":{},"codeblock_ranges":[[24,35],[39,47],[51,59],[99,103],[107,111],[119,121],[190,197],[585,602],[725,729]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_HowTosLDAP_authentication_for_Atlassian_JIRA_using_FreeIPA_-_FreeIPA_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_HowTosLDAP_authentication_for_Atlassian_JIRA_using_FreeIPA_-_FreeIPA_md.ajson deleted file mode 100644 index 371ca7d..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_HowTosLDAP_authentication_for_Atlassian_JIRA_using_FreeIPA_-_FreeIPA_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/HowTosLDAP authentication for Atlassian JIRA using FreeIPA - FreeIPA.md": {"path":"000-inbox/clippings/2023/03/HowTosLDAP authentication for Atlassian JIRA using FreeIPA - FreeIPA.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"jjnmj8","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678089582304,"size":10578,"at":1766986878359,"hash":"jjnmj8"},"blocks":{"#---frontmatter---":[1,5],"#":[6,20],"##{1}":[8,8],"##{2}":[9,9],"##{3}":[10,10],"##{4}":[11,18],"##{5}":[19,20],"##Introduction":[21,32],"##Introduction#{1}":[23,32],"##Integration Path":[33,48],"##Integration Path#{1}":[35,38],"##Integration Path#{2}":[39,39],"##Integration Path#{3}":[40,42],"##Integration Path#{4}":[43,48],"##Toolset":[49,60],"##Toolset#{1}":[51,52],"##Toolset#{2}":[53,54],"##Toolset#{3}":[55,56],"##Toolset#{4}":[57,60],"##Key Challenges":[61,107],"##Key Challenges#LDAP Adapter Type":[63,71],"##Key Challenges#LDAP Adapter Type#{1}":[65,66],"##Key Challenges#LDAP Adapter Type#Other Candidate Adapters":[67,71],"##Key Challenges#LDAP Adapter Type#Other Candidate Adapters#{1}":[69,69],"##Key Challenges#LDAP Adapter Type#Other Candidate Adapters#{2}":[70,71],"##Key Challenges#RFC Schemas + FreeIPA Trees":[72,81],"##Key Challenges#RFC Schemas + FreeIPA Trees#{1}":[74,81],"##Key Challenges#E-Mail Attribute and Bind Type":[82,89],"##Key Challenges#E-Mail Attribute and Bind Type#{1}":[84,89],"##Key Challenges#Replicating Users and Groups":[90,107],"##Key Challenges#Replicating Users and Groups#Users":[92,98],"##Key Challenges#Replicating Users and Groups#Users#{1}":[94,95],"##Key Challenges#Replicating Users and Groups#Users#{2}":[96,96],"##Key Challenges#Replicating Users and Groups#Users#{3}":[97,98],"##Key Challenges#Replicating Users and Groups#Groups":[99,107],"##Key Challenges#Replicating Users and Groups#Groups#{1}":[101,102],"##Key Challenges#Replicating Users and Groups#Groups#{2}":[103,103],"##Key Challenges#Replicating Users and Groups#Groups#{3}":[104,104],"##Key Challenges#Replicating Users and Groups#Groups#{4}":[105,105],"##Key Challenges#Replicating Users and Groups#Groups#{5}":[106,107],"##The Final Configuration":[108,246],"##The Final Configuration#{1}":[110,246]},"outlinks":[{"title":"Template:Draft","target":"https://www.freeipa.org/index.php?title=Template:Draft&action=edit&redlink=1 \"Template:Draft (page does not exist","line":6},{"title":"1 Introduction","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Introduction","line":8},{"title":"2 Integration Path","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Integration_Path","line":9},{"title":"3 Toolset","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Toolset","line":10},{"title":"4 Key Challenges","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Key_Challenges","line":11},{"title":"4.1 LDAP Adapter Type","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#LDAP_Adapter_Type","line":12},{"title":"4.1.1 Other Candidate Adapters","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Other_Candidate_Adapters","line":13},{"title":"4.2 RFC Schemas + FreeIPA Trees","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#RFC_Schemas_.2B_FreeIPA_Trees","line":14},{"title":"4.3 E-Mail Attribute and Bind Type","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#E-Mail_Attribute_and_Bind_Type","line":15},{"title":"4.4 Replicating Users and Groups","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Replicating_Users_and_Groups","line":16},{"title":"4.4.1 Users","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Users","line":17},{"title":"4.4.2 Groups","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#Groups","line":18},{"title":"5 The Final Configuration","target":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA#The_Final_Configuration","line":19},{"title":"https://confluence.atlassian.com/display/DEV/How+to+write+LDAP+search+filters","target":"https://confluence.atlassian.com/display/DEV/How+to+write+LDAP+search+filters","line":31},{"title":"https://confluence.atlassian.com/display/JIRA/Connecting+to+an+LDAP+Directory","target":"https://confluence.atlassian.com/display/JIRA/Connecting+to+an+LDAP+Directory","line":31},{"title":"https://confluence.atlassian.com/display/JIRA/Connecting+to+an+Internal+Directory+with+LDAP+Authentication","target":"https://confluence.atlassian.com/display/JIRA/Connecting+to+an+Internal+Directory+with+LDAP+Authentication","line":45},{"title":"https://directory.apache.org/studio/","target":"https://directory.apache.org/studio/","line":53},{"title":"https://confluence.atlassian.com/display/JIRA/Logging+and+Profiling","target":"https://confluence.atlassian.com/display/JIRA/Logging+and+Profiling","line":59},{"title":"https://www.redhat.com/archives/freeipa-users/2015-June/msg00200.html","target":"https://www.redhat.com/archives/freeipa-users/2015-June/msg00200.html","line":69},{"title":"https://www.freeipa.org/page/Directory\\_Server","target":"https://www.freeipa.org/page/Directory_Server","line":80},{"title":"https://www.redhat.com/archives/freeipa-users/2015-June/msg00547.html","target":"https://www.redhat.com/archives/freeipa-users/2015-June/msg00547.html","line":80}],"metadata":{"page-title":"HowTos/LDAP authentication for Atlassian JIRA using FreeIPA - FreeIPA","url":"https://www.freeipa.org/page/HowTos/LDAP_authentication_for_Atlassian_JIRA_using_FreeIPA","date":"2023-03-06 15:19:17"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_How_do_I_install_a_root_certificate_-_Ask_Ubuntu_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_How_do_I_install_a_root_certificate_-_Ask_Ubuntu_md.ajson deleted file mode 100644 index bb07aaf..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_How_do_I_install_a_root_certificate_-_Ask_Ubuntu_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/How do I install a root certificate - Ask Ubuntu.md": {"path":"000-inbox/clippings/2023/03/How do I install a root certificate - Ask Ubuntu.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"17pulqq","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1680165579340,"size":1452,"at":1766986878359,"hash":"17pulqq"},"blocks":{"#---frontmatter---":[1,5],"#":[7,62],"##{1}":[17,22],"##{2}":[23,28],"##{3}":[29,62]},"outlinks":[{"title":"\n\n![Sparky1's user avatar","target":"https://www.gravatar.com/avatar/6165bb851740276122c7ba3bf5310906?s=64&d=identicon&r=PG","line":7},{"title":"\n\n![BeastOfCaerbannog's user avatar","target":"https://i.stack.imgur.com/IRB44.jpg?s=64&g=1","line":54}],"metadata":{"page-title":"How do I install a root certificate? - Ask Ubuntu","url":"https://askubuntu.com/questions/73287/how-do-i-install-a-root-certificate","date":"2023-03-30 16:38:30"},"task_lines":[],"tasks":{},"codeblock_ranges":[[19,21],[25,27],[31,33],[37,39],[44,46],[50,52]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_How_to_Install_AMD_OpenCL_Mining_Drivers_on_Debian_11_Bullseye_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_How_to_Install_AMD_OpenCL_Mining_Drivers_on_Debian_11_Bullseye_md.ajson deleted file mode 100644 index 36b1741..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_How_to_Install_AMD_OpenCL_Mining_Drivers_on_Debian_11_Bullseye_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/How to Install AMD OpenCL Mining Drivers on Debian 11 Bullseye.md": {"path":"000-inbox/clippings/2023/03/How to Install AMD OpenCL Mining Drivers on Debian 11 Bullseye.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"3crydx","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679909271000,"size":4050,"at":1766986878359,"hash":"3crydx"},"blocks":{"#---frontmatter---":[1,5],"#":[6,27],"##Add Non-Free Repository Sources":[28,48],"##Add Non-Free Repository Sources#{1}":[30,48],"##Installing AMD GPU Firmware":[49,66],"##Installing AMD GPU Firmware#{1}":[51,66],"##Downloading AMD GPU OpenCL Drivers":[67,81],"##Downloading AMD GPU OpenCL Drivers#{1}":[69,81],"##Installing AMD GPU OpenCL Drivers":[82,100],"##Installing AMD GPU OpenCL Drivers#{1}":[84,100],"##Complete!":[101,105],"##Complete!#{1}":[103,105]},"outlinks":[{"title":"Rufus","target":"https://rufus.ie/en/","line":10},{"title":"Ventoy","target":"https://www.ventoy.net/","line":10},{"title":"Debian 11 Desktop installer image","target":"https://mlufdnrmzupp.i.optimole.com/w:800/h:600/q:mauto/f:avif/https://dazeb.uk/wp-content/uploads/2022/04/VirtualBox_debian_19_04_2022_00_12_15.png.webp","line":18,"embedded":true},{"title":"bottom of another guide I wrote","target":"https://dazeb.uk/how-to-install-amd-opencl-gpu-drivers-on-ubuntu-21-04-for-mining-ethereum/#corectl","line":105}],"metadata":{"page-title":"How to Install AMD OpenCL Mining Drivers on Debian 11 Bullseye","url":"https://dazeb.uk/how-to-install-amd-opencl-mining-drivers-on-debian-11/","date":"2023-03-27 17:27:49"},"task_lines":[],"tasks":{},"codeblock_ranges":[[36,47],[53,55],[59,61],[71,80],[86,88],[94,97]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Jupyter_kernels_·_jupyterjupyter_Wiki_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Jupyter_kernels_·_jupyterjupyter_Wiki_md.ajson deleted file mode 100644 index ed28b73..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Jupyter_kernels_·_jupyterjupyter_Wiki_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Jupyter kernels · jupyterjupyter Wiki.md": {"path":"000-inbox/clippings/2023/03/Jupyter kernels · jupyterjupyter Wiki.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ls8wv0","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679554514330,"size":30219,"at":1766986878359,"hash":"1ls8wv0"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Jupyter kernels":[11,1321],"##Jupyter kernels#{1}":[13,1321],"##Additional Related Projects":[1322,1327],"##Additional Related Projects#{1}":[1324,1324],"##Additional Related Projects#{2}":[1325,1325],"##Additional Related Projects#{3}":[1326,1327],"##Creating new Jupyter kernels":[1328,1338],"##Creating new Jupyter kernels#{1}":[1330,1338]},"outlinks":[{"title":"IPython","target":"https://ipython.org/","line":13},{"title":"jupyter","target":"https://jupyter.org/","line":13},{"title":"ipykernel","target":"https://pypi.python.org/pypi/ipykernel","line":13},{"title":"GoNB","target":"https://github.com/janpfeifer/gonb","line":19},{"title":"Tutorial","target":"https://github.com/janpfeifer/gonb/blob/e15ac2e8e3fe/examples/tutorial.ipynb","line":19},{"title":"Micronaut","target":"https://github.com/stainlessai/micronaut-jupyter","line":20},{"title":"https://github.com/stainlessai/micronaut-jupyter/blob/master/examples/basic-service/notebooks/use-library.ipynb","target":"https://github.com/stainlessai/micronaut-jupyter/blob/master/examples/basic-service/notebooks/use-library.ipynb","line":20},{"title":"Micronaut","target":"https://micronaut.io/","line":20},{"title":"BeakerX","target":"http://beakerx.com/","line":22},{"title":"Agda kernel","target":"https://github.com/lclem/agda-kernel","line":24},{"title":"https://mybinder.org/v2/gh/lclem/agda-kernel/master?filepath=example/LabImp.ipynb","target":"https://mybinder.org/v2/gh/lclem/agda-kernel/master?filepath=example/LabImp.ipynb","line":28},{"title":"Dyalog Jupyter Kernel","target":"https://github.com/Dyalog/dyalog-jupyter-kernel","line":30},{"title":"Dyalog","target":"https://www.dyalog.com/download-zone.htm","line":34},{"title":"Notebooks","target":"https://github.com/Dyalog/dyalog-jupyter-notebooks","line":36},{"title":"TryAPL","target":"https://tryapl.org/","line":38},{"title":"Coarray-Fortran","target":"https://github.com/sourceryinstitute/jupyter-CAF-kernel","line":40},{"title":"OpenCoarrays","target":"https://github.com/sourceryinstitute/OpenCoarrays","line":46},{"title":"MPICH","target":"https://mpich.org/","line":46},{"title":"Binder demo","target":"https://beta.mybinder.org/v2/gh/sourceryinstitute/jupyter-CAF-kernel/master?filepath=index.ipynb","line":48},{"title":"Demo","target":"https://nbviewer.jupyter.org/github/sourceryinstitute/jupyter-CAF-kernel/blob/master/index.ipynb","line":48},{"title":"Docker image","target":"https://hub.docker.com/r/sourceryinstitute/jupyter-caf-kernel/","line":50},{"title":"LFortran","target":"https://lfortran.org/","line":52},{"title":"Binder demo","target":"https://mybinder.org/v2/gl/lfortran%2Fweb%2Flfortran-binde/master?filepath=Demo.ipynb","line":54},{"title":"GitLab","target":"https://gitlab.com/lfortran/lfortran","line":56},{"title":"Ansible Jupyter Kernel","target":"https://github.com/ansible/ansible-jupyter-kernel","line":58},{"title":"Hello World","target":"https://github.com/ansible/ansible-jupyter-kernel/blob/master/notebooks/HelloWorld.ipynb","line":64},{"title":"sparkmagic","target":"https://github.com/jupyter-incubator/sparkmagic","line":66},{"title":"Livy","target":"https://github.com/cloudera/livy","line":72},{"title":"Notebooks","target":"https://github.com/jupyter-incubator/sparkmagic/tree/master/examples","line":74},{"title":"Docker Images","target":"https://github.com/jupyter-incubator/sparkmagic#docker","line":74},{"title":"sas\\_kernel","target":"https://github.com/sassoftware/sas_kernel","line":78},{"title":"IPyKernel","target":"https://github.com/ipython/ipykernel","line":86},{"title":"IJulia","target":"https://github.com/JuliaLang/IJulia.jl","line":94},{"title":"IHaskell","target":"https://github.com/gibiansky/IHaskell","line":98},{"title":"Demo","target":"https://begriffs.com/posts/2016-01-20-ihaskell-notebook.html","line":102},{"title":"IRuby","target":"https://github.com/SciRuby/iruby","line":104},{"title":"tslab","target":"https://github.com/yunabe/tslab","line":108},{"title":"Example notebooks","target":"https://github.com/yunabe/tslab/blob/master/README.md#example-notebooks","line":114},{"title":"Jupyter kernel for JavaScript and TypeScript","target":"https://github.com/yunabe/tslab","line":116},{"title":"npm","target":"https://www.npmjs.com/package/tslab","line":116},{"title":"IJavascript","target":"https://github.com/n-riesco/ijavascript","line":118},{"title":"ITypeScript","target":"https://github.com/nearbydelta/itypescript","line":122},{"title":"jpCoffeescript","target":"https://github.com/n-riesco/jp-coffeescript","line":128},{"title":"jp-LiveScript","target":"https://github.com/p2edwards/jp-livescript","line":132},{"title":"Juka","target":"https://github.com/jukaLang/juka_kernel","line":138},{"title":"Juka","target":"https://jukalang.com/download","line":144},{"title":"Example","target":"https://github.com/jukaLang/juka_kernel/blob/main/JukaTest.ipynb","line":146},{"title":"Juka","target":"https://jukalang.com/download","line":148},{"title":"ICSharp","target":"https://github.com/zabirauf/icsharp","line":150},{"title":"IRKernel","target":"http://irkernel.github.io/","line":158},{"title":"SageMath","target":"http://www.sagemath.org/","line":166},{"title":"pari\\_jupyter","target":"https://github.com/jdemeyer/pari_jupyter","line":174},{"title":"IFSharp","target":"https://github.com/fsprojects/IfSharp","line":180},{"title":"Features","target":"https://github.com/fsprojects/IfSharp/blob/master/FSharp_Jupyter_Notebooks.ipynb","line":186},{"title":"lgo","target":"https://github.com/yunabe/lgo","line":188},{"title":"Example","target":"http://nbviewer.jupyter.org/github/yunabe/lgo/blob/master/examples/basics.ipynb","line":196},{"title":"Docker image","target":"https://hub.docker.com/r/yunabe/lgo/","line":198},{"title":"iGalileo","target":"https://github.com/cascala/igalileo","line":200},{"title":"Docker image","target":"https://hub.docker.com/r/cascala/igalileo/","line":206},{"title":"gopherlab","target":"https://github.com/fabian-z/gopherlab","line":208},{"title":"examples","target":"https://github.com/fabian-z/gopherlab/tree/master/examples","line":216},{"title":"Gophernotes","target":"https://github.com/gopherdata/gophernotes","line":220},{"title":"examples","target":"https://github.com/gopherdata/gophernotes/tree/master/examples","line":228},{"title":"docker image","target":"https://hub.docker.com/r/dwhitena/gophernotes/","line":230},{"title":"IGo","target":"https://github.com/takluyver/igo","line":232},{"title":"IScala","target":"https://github.com/mattpap/IScala","line":238},{"title":"almond (old name: Jupyter-scala)","target":"https://github.com/almond-sh/almond","line":242},{"title":"examples","target":"https://github.com/almond-sh/examples","line":248},{"title":"Docs","target":"https://almond.sh/","line":250},{"title":"IErlang","target":"https://github.com/robbielynch/ierlang","line":252},{"title":"ITorch","target":"https://github.com/facebook/iTorch","line":260},{"title":"IElixir","target":"https://github.com/pprzetacznik/IElixir","line":266},{"title":"Boyle package manager examples","target":"https://github.com/pprzetacznik/IElixir/blob/master/resources/boyle%20example.ipynb","line":274},{"title":"Boyle examples with usage of Matrex library","target":"https://github.com/pprzetacznik/IElixir/blob/master/resources/boyle%20example%20-%20matrex%20installation%20and%20usage.ipynb","line":274},{"title":"example","target":"https://github.com/pprzetacznik/IElixir/blob/master/resources/example.ipynb","line":274},{"title":"IElixir Docker image","target":"https://hub.docker.com/r/pprzetacznik/ielixir/","line":276},{"title":"IElixir Notebook in Docker","target":"https://mattvonrocketstein.github.io/heredoc/ielixir-notebook-in-docker.html#sf-ielixir-notebook-in-docker-2-back","line":276},{"title":"ierl","target":"https://github.com/filmor/ierl","line":278},{"title":"IAldor","target":"https://github.com/mattpap/IAldor","line":286},{"title":"IOCaml","target":"https://github.com/andrewray/iocaml","line":292},{"title":"OCaml-Jupyter","target":"https://github.com/akabe/ocaml-jupyter","line":300},{"title":"Example","target":"https://github.com/akabe/ocaml-jupyter/blob/master/notebooks/introduction.ipynb","line":308},{"title":"Docker image","target":"https://github.com/akabe/docker-ocaml-jupyter-datascience","line":310},{"title":"IForth","target":"https://github.com/jdfreder/iforth","line":312},{"title":"peforth","target":"https://github.com/hcchengithub/peforth","line":318},{"title":"Example","target":"https://github.com/hcchengithub/peforth/wiki","line":324},{"title":"IPerl","target":"https://metacpan.org/release/Devel-IPerl","line":328},{"title":"Perl6","target":"https://github.com/gabrielash/p6-net-jupyter","line":332},{"title":"IPerl6","target":"https://github.com/timo/iperl6kernel","line":340},{"title":"Jupyter-Perl6","target":"https://github.com/bduggan/p6-jupyter-kernel","line":344},{"title":"Rakudo Perl 6","target":"http://rakudo.org/how-to-get-rakudo/","line":350},{"title":"IPHP","target":"https://github.com/dawehner/ipython-php","line":352},{"title":"Jupyter-PHP","target":"https://github.com/Litipk/Jupyter-PHP","line":362},{"title":"IOctave","target":"https://github.com/calysto/octave_kernel","line":370},{"title":"Example","target":"http://nbviewer.jupyter.org/github/Calysto/octave_kernel/blob/master/octave_kernel.ipynb","line":376},{"title":"IScilab","target":"https://github.com/calysto/scilab_kernel","line":380},{"title":"Example","target":"http://nbviewer.jupyter.org/github/Calysto/scilab_kernel/blob/master/scilab_kernel.ipynb","line":386},{"title":"MATLAB Kernel","target":"https://github.com/calysto/matlab_kernel","line":390},{"title":"Example","target":"http://nbviewer.ipython.org/github/Calysto/matlab_kernel/blob/master/matlab_kernel.ipynb","line":398},{"title":"Bash","target":"https://github.com/takluyver/bash_kernel","line":402},{"title":"Z shell","target":"https://github.com/dan-oak/zsh-jupyter-kernel","line":410},{"title":"Example","target":"https://github.com/dan-oak/zsh-jupyter-kernel/blob/master/example.ipynb","line":416},{"title":"Pharo Smalltalk","target":"https://github.com/jmari/JupyterTalk","line":418},{"title":"Binder demo","target":"https://mybinder.org/v2/gh/jmari/JupyterTalk.git/master?filepath=Tutorial1_BasicStatistics.ipynb","line":424},{"title":"PowerShell","target":"https://github.com/vors/jupyter-powershell","line":428},{"title":"CloJupyter","target":"https://github.com/roryk/clojupyter","line":436},{"title":"CLJ-Jupyter","target":"https://github.com/achesnais/clj-jupyter","line":442},{"title":"jupyter-kernel-jsr223","target":"https://github.com/fiber-space/jupyter-kernel-jsr223","line":450},{"title":"clojure-jrs223","target":"https://github.com/ato/clojure-jsr223","line":456},{"title":"Hy Kernel","target":"https://github.com/bollwyvl/hy_kernel/","line":460},{"title":"Tutorial","target":"http://nbviewer.ipython.org/github/bollwyvl/hy_kernel/blob/master/notebooks/Tutorial.ipynb","line":466},{"title":"Calysto Hy","target":"https://github.com/Calysto/calysto_hy","line":470},{"title":"Tutorial","target":"https://github.com/Calysto/calysto_hy/blob/master/notebooks/Tutorial.ipynb","line":476},{"title":"Redis Kernel","target":"https://github.com/supercoderz/redis_kernel","line":480},{"title":"jove","target":"https://www.npmjs.com/package/jove","line":488},{"title":"jp-babel","target":"https://www.npmjs.com/package/jp-babel","line":492},{"title":"ICalico","target":"http://wiki.roboteducation.org/ICalico","line":498},{"title":"Index","target":"http://nbviewer.jupyter.org/urls/bitbucket.org/ipre/calico/raw/master/notebooks/Index.ipynb","line":504},{"title":"IMathics","target":"http://nbviewer.ipython.org/gist/sn6uv/8381447","line":506},{"title":"IWolfram","target":"https://github.com/mmatera/iwolfram","line":510},{"title":"Lua Kernel","target":"https://github.com/neomantra/lua_ipython_kernel","line":518},{"title":"IPurescript","target":"https://github.com/Eoksni/ipurescript","line":522},{"title":"IPyLua","target":"https://github.com/pakozm/IPyLua","line":526},{"title":"ILua","target":"https://github.com/guysv/ilua","line":532},{"title":"Calysto Scheme","target":"https://github.com/Calysto/calysto_scheme","line":536},{"title":"Reference Guide","target":"https://github.com/Calysto/calysto_scheme/blob/master/notebooks/Reference%20Guide%20for%20Calysto%20Scheme.ipynb","line":540},{"title":"Calysto Processing","target":"https://github.com/Calysto/calysto_processing","line":544},{"title":"idl\\_kernel","target":"https://github.com/lstagner/idl_kernel","line":550},{"title":"built-in kernel","target":"http://www.exelisvis.com/docs/idl_kernel.html","line":554},{"title":"Mochi Kernel","target":"https://github.com/pya/mochi-kernel","line":556},{"title":"Lua (used in Splash)","target":"https://github.com/scrapinghub/splash/tree/master/splash/kernel","line":560},{"title":"Apache Toree (formerly Spark Kernel)","target":"https://github.com/apache/incubator-toree","line":564},{"title":"Example","target":"https://github.com/apache/incubator-toree/blob/master/etc/examples/notebooks/magic-tutorial.ipynb","line":572},{"title":"Skulpt Python Kernel","target":"https://github.com/Calysto/skulpt_python","line":574},{"title":"Examples","target":"http://jupyter.cs.brynmawr.edu/hub/dblank/public/Examples/Skulpt%20Python%20Examples.ipynb","line":578},{"title":"Calysto Bash","target":"https://github.com/Calysto/calysto_bash","line":582},{"title":"MetaKernel Python","target":"https://github.com/Calysto/metakernel/tree/master/metakernel_python","line":588},{"title":"IVisual","target":"https://pypi.python.org/pypi/IVisual","line":594},{"title":"Ball-in-Box","target":"http://nbviewer.jupyter.org/url/dl.dropboxusercontent.com/u/5095342/visual/Ball-in-Box.ipynb","line":598},{"title":"IBrainfuck","target":"https://github.com/robbielynch/ibrainfuck","line":600},{"title":"Example","target":"https://github.com/robbielynch/ibrainfuck/blob/master/notebooks/a-brief-look-at-brainfuck.ipynb","line":604},{"title":"JupyterQ (KX Official Kernel)","target":"https://github.com/jupyter/jupyter/wiki/Jupyter-kernels","line":608},{"title":"Notebook Examples","target":"https://github.com/KxSystems/jupyterq/blob/master/examples/q_widgets.ipynb","line":614},{"title":"KDB+/Q Kernel (IKdbQ)","target":"https://github.com/jvictorchen/IKdbQ","line":616},{"title":"KDB+/Q Kernel (KdbQ Kernel)","target":"https://github.com/newtux/KdbQ_kernel","line":624},{"title":"PyQ Kernel","target":"https://pypi.org/project/pyq-kernel","line":630},{"title":"Python for kdb+","target":"https://pyq.enlnt.com/pyq-2017","line":636},{"title":"ICryptol","target":"https://github.com/GaloisInc/ICryptol","line":638},{"title":"cling","target":"https://github.com/root-mirror/cling","line":644},{"title":"Example","target":"https://github.com/root-mirror/cling/blob/master/tools/Jupyter/kernel/cling.ipynb","line":650},{"title":"xeus-cling","target":"https://github.com/QuantStack/xeus-cling","line":652},{"title":"Example","target":"https://github.com/QuantStack/xeus-cling/tree/master/notebooks","line":658},{"title":"Xonsh","target":"https://github.com/calysto/xonsh_kernel","line":662},{"title":"Example","target":"http://nbviewer.ipython.org/github/Calysto/xonsh_kernel/blob/master/xonsh_kernel.ipynb","line":666},{"title":"Prolog","target":"https://github.com/Calysto/calysto_prolog","line":670},{"title":"SWI-Prolog","target":"https://github.com/madmax2012/SWI-Prolog-Kernel","line":676},{"title":"https://hub.docker.com/r/jm1337/jupyter-prolog-notebook/","target":"https://hub.docker.com/r/jm1337/jupyter-prolog-notebook/","line":682},{"title":"common-lisp-jupyter","target":"https://github.com/yitzchak/common-lisp-jupyter","line":684},{"title":"About","target":"https://github.com/fredokun/cl-jupyter/blob/master/examples/about.ipynb","line":692},{"title":"Maxima-Jupyter","target":"https://github.com/robert-dodier/maxima-jupyter","line":694},{"title":"ielisp","target":"https://github.com/shwina/ielisp","line":702},{"title":"emacs-zmq","target":"https://github.com/nnicandro/emacs-zmq","line":708},{"title":"Calysto LC3","target":"https://github.com/Calysto/calysto_lc3","line":710},{"title":"Little Computer 3","target":"https://en.wikipedia.org/wiki/LC-3","line":712},{"title":"Yacas","target":"https://github.com/grzegorzmazur/yacas_kernel","line":714},{"title":"IJython","target":"https://github.com/suvarchal/IJython","line":718},{"title":"ROOT","target":"https://github.com/root-project/root/tree/master/bindings/jupyroot","line":722},{"title":"Gnuplot Kernel","target":"https://github.com/has2k1/gnuplot_kernel","line":730},{"title":"Example","target":"https://github.com/has2k1/gnuplot_kernel/tree/master/examples","line":734},{"title":"Tcl","target":"https://github.com/rpep/tcl_kernel","line":738},{"title":"Tcl","target":"https://github.com/mpcjanssen/tcljupyter","line":746},{"title":"Binder demo","target":"https://mybinder.org/v2/gh/mpcjanssen/tcljupyter/binder?filepath=examples%2Fexample.ipynb","line":752},{"title":"J","target":"https://github.com/martin-saurer/jkernel","line":756},{"title":"Examples","target":"https://github.com/martin-saurer/jkernel","line":762},{"title":"Jython","target":"https://github.com/fiber-space/jupyter-kernel-jsr223","line":764},{"title":"C","target":"https://github.com/brendan-rius/jupyter-c-kernel","line":774},{"title":"jupyterC","target":"https://github.com/XaverKlemenschits/jupyter-c-kernel","line":782},{"title":"TaQL","target":"https://github.com/tammojan/taql-jupyter","line":792},{"title":"python-casacore","target":"https://github.com/casacore/python-casacore","line":798},{"title":"TaQL tutorial","target":"http://taql.astron.nl/","line":800},{"title":"Coconut","target":"http://coconut-lang.org/","line":802},{"title":"SPARQL","target":"https://github.com/paulovn/sparql-kernel","line":808},{"title":"rdflib","target":"https://github.com/RDFLib/rdflib","line":814},{"title":"SPARQLWrapper","target":"https://rdflib.github.io/sparqlwrapper/","line":814},{"title":"Examples","target":"http://nbviewer.jupyter.org/github/paulovn/sparql-kernel/tree/master/examples/","line":816},{"title":"GraphViz","target":"http://www.graphviz.org/","line":818},{"title":"AIML chatbot","target":"https://github.com/paulovn/aiml-chatbot-kernel","line":820},{"title":"pyAIML","target":"https://github.com/creatorrr/pyAIML","line":826},{"title":"Examples","target":"http://nbviewer.jupyter.org/github/paulovn/aiml-chatbot-kernel/tree/master/examples/","line":828},{"title":"IArm","target":"https://github.com/DeepHorizons/iarm","line":830},{"title":"Examples","target":"http://nbviewer.jupyter.org/github/DeepHorizons/iarm/tree/master/docs/examples/","line":836},{"title":"SoS","target":"https://github.com/vatlab/SOS","line":840},{"title":"Examples","target":"http://vatlab.github.io/SOS/#documentation","line":848},{"title":"jupyter-nodejs","target":"https://github.com/notablemind/jupyter-nodejs","line":852},{"title":"Examples","target":"http://nbviewer.jupyter.org/gist/jaredly/404a36306fdee6a1737a","line":858},{"title":"Pike","target":"https://github.com/kevinior/jupyter-pike-kernel","line":860},{"title":"imatlab","target":"https://github.com/imatlab/imatlab","line":868},{"title":"jupyter-kotlin","target":"https://github.com/Kotlin/kotlin-jupyter","line":874},{"title":"Samples","target":"https://mybinder.org/v2/gh/kotlin/kotlin-jupyter/master?filepath=samples","line":882},{"title":"jupyter\\_kernel\\_singular","target":"https://github.com/sebasguts/jupyter_kernel_singular","line":884},{"title":"Demo","target":"https://github.com/sebasguts/jupyter-singular/blob/master/Demo.ipynb","line":890},{"title":"details","target":"https://www.singular.uni-kl.de/index.php/graphical-interface.html","line":892},{"title":"spylon-kernel","target":"https://github.com/maxpoint/spylon-kernel","line":894},{"title":"Example","target":"https://github.com/maxpoint/spylon-kernel/blob/master/examples/basic_example.ipynb","line":902},{"title":"mit-scheme-kernel","target":"https://github.com/joeltg/mit-scheme-kernel","line":906},{"title":"elm-kernel","target":"https://github.com/abingham/jupyter-elm-kernel","line":912},{"title":"Examples","target":"https://github.com/abingham/jupyter-elm-kernel/tree/master/examples","line":916},{"title":"Isbt","target":"https://github.com/ktr-skmt/Isbt","line":918},{"title":"example","target":"https://github.com/ktr-skmt/Isbt/blob/master/examples/isbt_examples.ipynb","line":926},{"title":"BeakerX","target":"http://beakerx.com/","line":928},{"title":"example","target":"https://github.com/twosigma/beakerx/blob/master/doc/StartHere.ipynb","line":932},{"title":"docker image","target":"https://hub.docker.com/r/beakerx/beakerx/","line":934},{"title":"MicroPython","target":"https://github.com/goatchurchprime/jupyter_micropython_kernel/","line":936},{"title":"developer notebooks","target":"https://github.com/goatchurchprime/jupyter_micropython_developer_notebooks","line":944},{"title":"IJava","target":"https://github.com/SpencerPark/IJava","line":948},{"title":"Binder online demo","target":"https://mybinder.org/v2/gh/SpencerPark/ijava-binder/master","line":956},{"title":"Guile","target":"https://github.com/jerry40/guile-kernel","line":960},{"title":"guile-json","target":"https://github.com/aconchillo/guile-json","line":966},{"title":"circuitpython\\_kernel","target":"https://github.com/adafruit/circuitpython_kernel","line":968},{"title":"CircuitPython","target":"https://github.com/adafruit/circuitpython","line":972},{"title":"Examples","target":"https://github.com/adafruit/circuitpython_kernel/tree/master/examples","line":976},{"title":"stata\\_kernel","target":"https://github.com/kylebarron/stata_kernel","line":978},{"title":"iPyStata","target":"https://github.com/TiesdeKok/ipystata","line":988},{"title":"Example Notebook","target":"http://nbviewer.jupyter.org/github/TiesdeKok/ipystata/blob/master/ipystata/Example.ipynb","line":996},{"title":"pystata-kernel","target":"https://github.com/ticoneva/pystata-kernel","line":1000},{"title":"pystata","target":"https://www.stata.com/python/pystata/","line":1004},{"title":"nbstata","target":"https://hugetim.github.io/nbstata/","line":1006},{"title":"ipydatagrid","target":"https://github.com/bloomberg/ipydatagrid","line":1012},{"title":"pystata","target":"https://www.stata.com/python/pystata/","line":1012},{"title":"stata\\_kernel example","target":"https://github.com/hugetim/nbstata/blob/master/manual_test_nbs/stata_kernel%20example.ipynb","line":1014},{"title":"IRacket","target":"https://github.com/rmculpepper/iracket","line":1016},{"title":"Example","target":"https://github.com/rmculpepper/iracket/blob/master/examples/getting-started.ipynb","line":1024},{"title":"jupyter-dot-kernel","target":"https://github.com/laixintao/jupyter-dot-kernel","line":1026},{"title":"Teradata SQL kernel and extensions","target":"https://teradata.github.io/jupyterextensions/","line":1034},{"title":"Example Notebooks","target":"https://github.com/Teradata/jupyterextensions/tree/master/notebooks","line":1040},{"title":"HiveQL Kernel","target":"https://github.com/EDS-APHP/HiveQLKernel","line":1042},{"title":"HiveQL","target":"https://en.wikipedia.org/wiki/Apache_Hive","line":1046},{"title":"pyhive","target":"https://github.com/dropbox/PyHive","line":1048},{"title":"EvCxR Jupyter Kernel","target":"https://github.com/google/evcxr/tree/master/evcxr_jupyter","line":1052},{"title":"Examples","target":"https://github.com/google/evcxr/tree/master/evcxr_jupyter/samples","line":1060},{"title":"Binder online demo","target":"https://mybinder.org/v2/gh/google/evcxr/main?filepath=evcxr_jupyter%2Fsamples%2Fevcxr_jupyter_tour.ipynb","line":1060},{"title":"StuPyd Kernel","target":"https://github.com/StuPyd/demo-kernel","line":1062},{"title":"StuPyd Programming Language","target":"https://github.com/StuPyd/stupyd-lang","line":1066},{"title":"nbviewer demo","target":"https://nbviewer.jupyter.org/github/StuPyd/demo-kernel/blob/master/test.ipynb","line":1070},{"title":"coq\\_jupyter","target":"https://github.com/EugeneLoy/coq_jupyter","line":1072},{"title":"Binder online demo","target":"https://mybinder.org/v2/gh/EugeneLoy/coq_jupyter_demo/master?filepath=demo.ipynb","line":1080},{"title":"Cadabra2","target":"https://github.com/kpeeters/cadabra2/blob/master/JUPYTER.rst","line":1082},{"title":"Cadabra2","target":"https://cadabra.science/","line":1086},{"title":"Example notebook","target":"https://github.com/kpeeters/cadabra2/blob/master/examples/schwarzschild.ipynb","line":1088},{"title":"iMongo","target":"https://github.com/gusutabopb/imongo","line":1090},{"title":"jupyter\\_kernel\\_chapel","target":"http://github.com/krishnadey30/jupyter_kernel_chapel","line":1094},{"title":"Chapel","target":"https://github.com/chapel-lang/chapel/","line":1098},{"title":"A Jupyter kernel for Vim script","target":"https://github.com/mattn/vim_kernel","line":1100},{"title":"Vim script","target":"https://github.com/vim/vim/","line":1104},{"title":"SSH Kernel","target":"https://github.com/NII-cloud-operation/sshkernel","line":1106},{"title":"Examples","target":"https://github.com/NII-cloud-operation/sshkernel/tree/master/examples","line":1114},{"title":"GAP Kernel","target":"https://gap-packages.github.io/JupyterKernel/","line":1118},{"title":"Binder demo","target":"https://github.com/gap-system/try-gap-in-jupyter","line":1124},{"title":"GAP","target":"https://www.gap-system.org/","line":1126},{"title":"Wolfram Language for Jupyter","target":"https://github.com/WolframResearch/WolframLanguageForJupyter","line":1128},{"title":"the Wolfram Language","target":"https://www.wolfram.com/language","line":1132},{"title":"GrADS kernel","target":"https://github.com/ykatsu111/jupyter-grads-kernel","line":1134},{"title":"Bacatá","target":"https://github.com/cwi-swat/bacata","line":1138},{"title":"Rascal","target":"https://rascal-mpl.org/","line":1142},{"title":"Example","target":"https://github.com/maveme/rascal-notebooks-examples","line":1146},{"title":"nelu-kernelu","target":"https://github.com/3Nigma/nelu-kernelu","line":1150},{"title":"NodeJs 12.3+","target":"https://nodejs.org/dist/latest-v12.x/docs/api/","line":1156},{"title":"Examples","target":"https://github.com/3Nigma/nelu-kernelu/blob/master/nbs/nk-features.ipynb","line":1158},{"title":"IPolyglot","target":"https://github.com/hpi-swa/ipolyglot","line":1162},{"title":"JavaScript, Ruby, Python, R, and more","target":"https://www.graalvm.org/docs/reference-manual/polyglot/","line":1166},{"title":"GraalVM","target":"https://www.graalvm.org/","line":1168},{"title":"Example Polyglot Notebook","target":"https://github.com/hpi-swa/ipolyglot/blob/master/demo/polyglot-notebook.ipynb","line":1170},{"title":"Dockerfile","target":"https://github.com/hpi-swa/ipolyglot/blob/master/Dockerfile","line":1172},{"title":"Emu86 Kernel","target":"https://github.com/gcallah/Emu86/tree/master/kernels","line":1174},{"title":"Introduction to Intel Assembly Language Tutorial","target":"https://github.com/gcallah/Emu86/blob/master/kernels/Introduction%20to%20Assembly%20Language%20Tutorial.ipynb","line":1180},{"title":"Common Workflow Language (CWL) Kernel","target":"https://github.com/giannisdoukas/CWLJNIKernel","line":1182},{"title":"examples directory","target":"https://github.com/giannisdoukas/CWLJNIKernel/blob/master/examples/","line":1186},{"title":"MIPS Jupyter Kernel","target":"https://github.com/epalmese/MIPS-jupyter-kernel","line":1188},{"title":"SPIM","target":"http://spimsimulator.sourceforge.net/","line":1194},{"title":"Example","target":"https://github.com/epalmese/MIPS-jupyter-kernel/blob/master/kernel/test.ipynb","line":1196},{"title":"iTTS","target":"https://github.com/KOLANICH/iTTS","line":1200},{"title":"speech-dispatcher","target":"https://github.com/brailcom/speechd","line":1204},{"title":"Example","target":"https://github.com/KOLANICH/iTTS/blob/master/tutorial.ipynb","line":1206},{"title":"xeus-clickhouse","target":"https://github.com/wangfenjin/xeus-clickhouse","line":1210},{"title":"xeus","target":"https://github.com/jupyter-xeus/xeus","line":1214},{"title":"Example","target":"https://github.com/wangfenjin/xeus-clickhouse/blob/master/examples/clickhouse.ipynb","line":1216},{"title":"IQSharp","target":"https://github.com/microsoft/iqsharp","line":1218},{"title":"QuantumKatas","target":"https://github.com/microsoft/QuantumKatas","line":1224},{"title":".Net Interactive","target":"https://github.com/dotnet/interactive/","line":1226},{"title":".Net Core SDK","target":"https://dotnet.microsoft.com/download","line":1232},{"title":"Binder Examples","target":"https://github.com/dotnet/interactive/blob/main/docs/NotebooksOnBinder.md","line":1234},{"title":"mariadb\\_kernel","target":"https://github.com/MariaDB/mariadb_kernel","line":1236},{"title":"Internal Dependencies","target":"https://github.com/MariaDB/mariadb_kernel/blob/master/requirements.txt","line":1242},{"title":"MariaDB Server","target":"https://mariadb.org/download/","line":1242},{"title":"Binder notebook","target":"https://mybinder.org/v2/gh/MariaDB/mariadb_kernel.git/master?filepath=binder%2Ftry_it_out.ipynb","line":1244},{"title":"ISetlX","target":"https://github.com/1b15/iSetlX","line":1248},{"title":"Example","target":"https://github.com/1b15/iSetlX/blob/master/example_notebooks/fibonacci.ipynb","line":1254},{"title":"Ganymede","target":"https://github.com/allen-ball/ganymede","line":1256},{"title":"Apache Spark","target":"http://spark.apache.org/","line":1260},{"title":"Groovy","target":"https://groovy-lang.org/","line":1260},{"title":"Kotlin","target":"https://kotlinlang.org/","line":1260},{"title":"Javascript","target":"https://www.oracle.com/technical-resources/articles/java/jf14-nashorn.html","line":1260},{"title":"Scala","target":"https://www.scala-lang.org/","line":1260},{"title":"JShell","target":"https://docs.oracle.com/en/java/javase/11/docs/api/jdk.jshell/jdk/jshell/JShell.html?is-external=true","line":1262},{"title":"Apache Maven Resolver","target":"https://maven.apache.org/resolver/index.html","line":1262},{"title":"Examples","target":"https://github.com/allen-ball/ganymede-notebooks","line":1264},{"title":"cqljupyter","target":"https://github.com/bschoening/cqljupyter","line":1266},{"title":"CQL Examples","target":"https://github.com/bschoening/cqljupyter/blob/master/Sample.ipynb","line":1272},{"title":"iclingo","target":"https://github.com/thesofakillers/iclingo","line":1274},{"title":"clingo","target":"https://pypi.org/project/clingo/","line":1280},{"title":"Basic Examples","target":"https://github.com/thesofakillers/iclingo/tree/main/examples","line":1282},{"title":"ICrystal","target":"https://github.com/RomainFranceschini/icrystal","line":1284},{"title":"IRC","target":"https://github.com/crystal-community/icr","line":1290},{"title":"crystal\\_kernel","target":"https://github.com/crystal-data/crystal_kernel","line":1292},{"title":"Crystal interpreter","target":"https://crystal-lang.org/2021/12/29/crystal-i.html","line":1298},{"title":"idg","target":"https://github.com/LeaveNhA/idg","line":1300},{"title":"Example Notebooks","target":"https://github.com/LeaveNhA/UIST602-DG","line":1306},{"title":"Whitenote","target":"https://github.com/makiuchi-d/whitenote","line":1308},{"title":"example.ipynb","target":"https://github.com/makiuchi-d/whitenote/blob/main/example.ipynb","line":1316},{"title":"Docker image","target":"https://hub.docker.com/r/makiuchid/whitenote","line":1318},{"title":"PyPI","target":"https://pypi.python.org/pypi?:action=browse&c=586","line":1320},{"title":"Jove","target":"https://github.com/jove-sh","line":1324},{"title":"Brython Magics","target":"https://github.com/kikocorreoso/brythonmagic","line":1325},{"title":"pixiedust\\_node","target":"https://github.com/ibm-watson-data-lab/pixiedust_node","line":1326},{"title":"Making kernels for Jupyter","target":"http://jupyter-client.readthedocs.org/en/latest/kernels.html","line":1330},{"title":"Simple example kernel","target":"https://github.com/dsblank/simple_kernel","line":1332},{"title":"IHaskell creator blog post","target":"http://andrew.gibiansky.com/blog/ipython/ipython-kernels/","line":1334},{"title":"Testing kernels against message specification (work in progress)","target":"https://github.com/ipython/ipython/wiki/Dev:-Testing-kernels-against-message-specification","line":1336},{"title":"Tool to test a kernel against specification (work in progress)","target":"https://github.com/jupyter/jupyter_kernel_test","line":1338}],"metadata":{"page-title":"Jupyter kernels · jupyter/jupyter Wiki","url":"https://github.com/jupyter/jupyter/wiki/Jupyter-kernels","date":"2023-03-23 14:41:20"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Openwrt_作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思_-_少数派_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Openwrt_作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思_-_少数派_md.ajson deleted file mode 100644 index d14caa1..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Openwrt_作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思_-_少数派_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Openwrt 作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思 - 少数派.md": {"path":"000-inbox/clippings/2023/03/Openwrt 作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思 - 少数派.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hq90nj","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1680065622000,"size":19448,"at":1766986878359,"hash":"hq90nj"},"blocks":{"#---frontmatter---":[1,5],"#":[6,72],"##{1}":[14,14],"##{2}":[15,72],"##**X86**":[73,88],"##**X86**#{1}":[75,88],"##**单片机:以树莓派为例**":[89,102],"##**单片机:以树莓派为例**#{1}":[91,102],"##**其它“电视盒子”:以斐讯N1为例**":[103,116],"##**其它“电视盒子”:以斐讯N1为例**#{1}":[105,116],"##**给“硬路由”刷 Openwrt**":[117,154],"##**给“硬路由”刷 Openwrt**#{1}":[119,154],"##**把 Openwrt 作为主路由**":[155,166],"##**把 Openwrt 作为主路由**#{1}":[157,166],"##**把 Openwrt 作为旁路网关**":[167,189],"##**把 Openwrt 作为旁路网关**#{1}":[169,178],"##**把 Openwrt 作为旁路网关**#{2}":[179,179],"##**把 Openwrt 作为旁路网关**#{3}":[180,181],"##**把 Openwrt 作为旁路网关**#{4}":[182,189],"##**作为主路由的设置方法**":[190,195],"##**作为主路由的设置方法**#{1}":[192,195],"##**作为旁路网关的设置方法**":[196,241],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置":[198,218],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{1}":[200,201],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{2}":[202,202],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{3}":[203,203],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{4}":[204,204],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{5}":[205,205],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{6}":[206,206],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{7}":[207,207],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{8}":[208,208],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{9}":[209,210],"##**作为旁路网关的设置方法**#旁路网关自身的基础设置#{10}":[211,218],"##**作为旁路网关的设置方法**#方式一:指定的设备才使用旁路网关":[219,224],"##**作为旁路网关的设置方法**#方式一:指定的设备才使用旁路网关#{1}":[221,224],"##**作为旁路网关的设置方法**#方式二:所有设备都使用旁路网关":[225,241],"##**作为旁路网关的设置方法**#方式二:所有设备都使用旁路网关#{1}":[227,230],"##**作为旁路网关的设置方法**#方式二:所有设备都使用旁路网关#{2}":[231,231],"##**作为旁路网关的设置方法**#方式二:所有设备都使用旁路网关#{3}":[232,233],"##**作为旁路网关的设置方法**#方式二:所有设备都使用旁路网关#{4}":[234,241],"##**测试局域网传输性能**":[242,273],"##**测试局域网传输性能**#{1}":[244,273],"##**通过 netdata 软件监控性能状况**":[274,279],"##**通过 netdata 软件监控性能状况**#{1}":[276,279],"##**测试广域网转发性能、代理转发性能**":[280,402],"##**测试广域网转发性能、代理转发性能**#{1}":[282,289],"##**测试广域网转发性能、代理转发性能**#1\\. 广域网下行流量":[290,324],"##**测试广域网转发性能、代理转发性能**#1\\. 广域网下行流量#{1}":[292,321],"##**测试广域网转发性能、代理转发性能**#1\\. 广域网下行流量#{2}":[322,322],"##**测试广域网转发性能、代理转发性能**#1\\. 广域网下行流量#{3}":[323,324],"##**测试广域网转发性能、代理转发性能**#2\\. 广域网上行流量":[325,332],"##**测试广域网转发性能、代理转发性能**#2\\. 广域网上行流量#{1}":[327,332],"##**测试广域网转发性能、代理转发性能**#3\\. 代理转发流量":[333,402],"##**测试广域网转发性能、代理转发性能**#3\\. 代理转发流量#{1}":[335,388],"##**测试广域网转发性能、代理转发性能**#3\\. 代理转发流量#{2}":[389,389],"##**测试广域网转发性能、代理转发性能**#3\\. 代理转发流量#{3}":[390,391],"##**测试广域网转发性能、代理转发性能**#3\\. 代理转发流量#{4}":[392,402]},"outlinks":[{"title":"Build Openwrt Firmware","target":"https://sspai.com/link?target=https%3A%2F%2Fgithub.com%2Friverscn%2Fbuild-openwrt-firmware","line":31},{"title":"Etcher","target":"https://sspai.com/link?target=https%3A%2F%2Fwww.balena.io%2Fetcher%2F","line":71},{"title":"官方有详细说明","target":"https://sspai.com/link?target=https%3A%2F%2Fopenwrt.org%2Fdocs%2Fguide-user%2Finstallation%2Fopenwrt_x86","line":75},{"title":"Etcher","target":"https://sspai.com/link?target=https%3A%2F%2Fwww.balena.io%2Fetcher%2F","line":77},{"title":"官方有详细说明","target":"https://sspai.com/link?target=https%3A%2F%2Fopenwrt.org%2Ftoh%2Fraspberry_pi_foundation%2Fraspberry_pi","line":91},{"title":"Etcher","target":"https://sspai.com/link?target=https%3A%2F%2Fwww.balena.io%2Fetcher%2F","line":91},{"title":"R2C","target":"https://sspai.com/link?target=http%3A%2F%2Fwiki.friendlyarm.com%2Fwiki%2Findex.php%2FNanoPi_R2C%2Fzh","line":95},{"title":"R2S","target":"https://sspai.com/link?target=https%3A%2F%2Fwiki.friendlyarm.com%2Fwiki%2Findex.php%2FNanoPi_R2S%2Fzh","line":95},{"title":"R4S","target":"https://sspai.com/link?target=https%3A%2F%2Fwiki.friendlyarm.com%2Fwiki%2Findex.php%2FNanoPi_R4S%2Fzh","line":95},{"title":"参考其帖子","target":"https://sspai.com/link?target=https%3A%2F%2Fwww.right.com.cn%2Fforum%2Fthread-340279-1-1.html","line":105},{"title":"我提供的固件","target":"https://sspai.com/link?target=https%3A%2F%2Fgithub.com%2Friverscn%2Fbuild-openwrt-firmware","line":109},{"title":"官方有详细说明","target":"https://sspai.com/link?target=https%3A%2F%2Fopenwrt.org%2Fdocs%2Fguide-user%2Finstallation%2Fstart","line":119},{"title":"IPTV融合","target":"https://sspai.com/link?target=https%3A%2F%2Fblog.lishun.me%2Fiptvhelper-guide","line":194},{"title":"iperf3","target":"https://sspai.com/link?target=https%3A%2F%2Fiperf.fr%2Fiperf-download.php","line":250},{"title":"image.png","target":"https://cdn.sspai.com/2021/08/29/article/4ce282ccc3bf669df7e9e16316262f56?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1","line":300,"embedded":true},{"title":"原文","target":"https://sspai.com/link?target=https%3A%2F%2Fblog.lishun.me%2Fopenwrt-mega-post","line":402}],"metadata":{"page-title":"Openwrt 作为旁路网关(不是旁路由、单臂路由)的终极设置方法,破解迷思 - 少数派","url":"https://sspai.com/post/68511","date":"2023-03-29 12:53:38"},"task_lines":[],"tasks":{},"codeblock_ranges":[[252,255],[261,272]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Prerequisites__Tauri_Apps_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Prerequisites__Tauri_Apps_md.ajson deleted file mode 100644 index d05ee90..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Prerequisites__Tauri_Apps_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Prerequisites Tauri Apps.md": {"path":"000-inbox/clippings/2023/03/Prerequisites Tauri Apps.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x6qnrk","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679539111010,"size":7429,"at":1766986878359,"hash":"x6qnrk"},"blocks":{"#---frontmatter---":[1,5],"##Prerequisites":[6,7],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")":[8,113],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#{1}":[10,11],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")":[12,51],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#1\\. Microsoft Visual Studio C++ Build Tools[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-microsoft-visual-studio-c-build-tools \"Direct link to 1. Microsoft Visual Studio C++ Build Tools\")":[14,21],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#1\\. Microsoft Visual Studio C++ Build Tools[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-microsoft-visual-studio-c-build-tools \"Direct link to 1. Microsoft Visual Studio C++ Build Tools\")#{1}":[16,21],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#2\\. WebView2[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-webview2 \"Direct link to 2. WebView2\")":[22,31],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#2\\. WebView2[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-webview2 \"Direct link to 2. WebView2\")#{1}":[24,31],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#3\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#3-rust \"Direct link to 3. Rust\")":[32,51],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Windows[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\")#3\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#3-rust \"Direct link to 3. Rust\")#{1}":[34,51],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up macOS[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\")":[52,77],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up macOS[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\")#1\\. CLang and macOS Development Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-clang-and-macos-development-dependencies \"Direct link to 1. CLang and macOS Development Dependencies\")":[54,57],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up macOS[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\")#1\\. CLang and macOS Development Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-clang-and-macos-development-dependencies \"Direct link to 1. CLang and macOS Development Dependencies\")#{1}":[56,57],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up macOS[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\")#2\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-rust \"Direct link to 2. Rust\")":[58,77],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up macOS[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\")#2\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-rust \"Direct link to 2. Rust\")#{1}":[60,77],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")":[78,113],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")":[80,93],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{1}":[82,83],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{2}":[84,84],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{3}":[85,85],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{4}":[86,86],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{5}":[87,87],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{6}":[88,93],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#1\\. System Dependencies[​](https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\")#{7}":[90,93],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#2\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-rust-1 \"Direct link to 2. Rust\")":[94,113],"##Installing[​](https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\")#Setting Up Linux[​](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\")#2\\. Rust[​](https://tauri.app/v1/guides/getting-started/prerequisites#2-rust-1 \"Direct link to 2. Rust\")#{1}":[96,113],"##Managing The Rust Installation[​](https://tauri.app/v1/guides/getting-started/prerequisites#managing-the-rust-installation \"Direct link to Managing The Rust Installation\")":[114,119],"##Managing The Rust Installation[​](https://tauri.app/v1/guides/getting-started/prerequisites#managing-the-rust-installation \"Direct link to Managing The Rust Installation\")#{1}":[116,119],"##Troubleshooting[​](https://tauri.app/v1/guides/getting-started/prerequisites#troubleshooting \"Direct link to Troubleshooting\")":[120,130],"##Troubleshooting[​](https://tauri.app/v1/guides/getting-started/prerequisites#troubleshooting \"Direct link to Troubleshooting\")#{1}":[122,130]},"outlinks":[{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#installing \"Direct link to Installing\"","line":8},{"title":"Rust","target":"https://www.rust-lang.org/","line":10},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows \"Direct link to Setting Up Windows\"","line":12},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#1-microsoft-visual-studio-c-build-tools \"Direct link to 1. Microsoft Visual Studio C++ Build Tools\"","line":14},{"title":"Build Tools for Visual Studio 2022","target":"https://visualstudio.microsoft.com/visual-cpp-build-tools/","line":16},{"title":"Microsoft Visual Studio Installer","target":"https://tauri.app/assets/images/vs-installer-dark-03cefd64bd4335f718aacc8f4842d2bb.png#gh-dark-mode-only","line":18,"embedded":true},{"title":"Microsoft Visual Studio Installer","target":"https://tauri.app/assets/images/vs-installer-light-ff9f655b16965d4ac45117fe2f2624e9.png#gh-light-mode-only","line":18,"embedded":true},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#2-webview2 \"Direct link to 2. WebView2\"","line":22},{"title":"Microsoft's website","target":"https://developer.microsoft.com/en-us/microsoft-edge/webview2/#download-section","line":28},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#3-rust \"Direct link to 3. Rust\"","line":32},{"title":"https://www.rust-lang.org/tools/install","target":"https://www.rust-lang.org/tools/install","line":34},{"title":"`trunk`","target":"https://trunkrs.dev/","line":44},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-macos \"Direct link to Setting Up macOS\"","line":52},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#1-clang-and-macos-development-dependencies \"Direct link to 1. CLang and macOS Development Dependencies\"","line":54},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#2-rust \"Direct link to 2. Rust\"","line":58},{"title":"rustup.sh","target":"https://sh.rustup.rs/","line":68},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-linux \"Direct link to Setting Up Linux\"","line":78},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#1-system-dependencies \"Direct link to 1. System Dependencies\"","line":80},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#2-rust-1 \"Direct link to 2. Rust\"","line":94},{"title":"rustup.sh","target":"https://sh.rustup.rs/","line":104},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#managing-the-rust-installation \"Direct link to Managing The Rust Installation\"","line":114},{"title":"​","target":"https://tauri.app/v1/guides/getting-started/prerequisites#troubleshooting \"Direct link to Troubleshooting\"","line":120},{"title":"Tauri Discord","target":"https://discord.com/invite/tauri","line":130},{"title":"Rust's Troubleshooting Section","target":"https://doc.rust-lang.org/book/ch01-01-installation.html#troubleshooting","line":130},{"title":"GitHub Discussions","target":"https://github.com/tauri-apps/tauri/discussions","line":130}],"metadata":{"page-title":"Prerequisites | Tauri Apps","url":"https://tauri.app/v1/guides/getting-started/prerequisites","date":"2023-03-23 10:38:20"},"task_lines":[],"tasks":{},"codeblock_ranges":[[38,40],[48,50],[62,64],[72,74],[90,92],[98,100],[108,110],[126,128]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Run_an_OpenWRT_VM_on_Proxmox_VE_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Run_an_OpenWRT_VM_on_Proxmox_VE_md.ajson deleted file mode 100644 index 65db16a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Run_an_OpenWRT_VM_on_Proxmox_VE_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Run an OpenWRT VM on Proxmox VE.md": {"path":"000-inbox/clippings/2023/03/Run an OpenWRT VM on Proxmox VE.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"wg7d4g","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679935898000,"size":4394,"at":1766986878359,"hash":"wg7d4g"},"blocks":{"#---frontmatter---":[1,5],"##What is OpenWRT?":[6,9],"##What is OpenWRT?#{1}":[8,9],"##Creating the VM":[10,30],"##Creating the VM#{1}":[12,12],"##Creating the VM#{2}":[13,13],"##Creating the VM#{3}":[14,14],"##Creating the VM#{4}":[15,15],"##Creating the VM#{5}":[16,16],"##Creating the VM#{6}":[17,17],"##Creating the VM#{7}":[18,18],"##Creating the VM#{8}":[19,19],"##Creating the VM#{9}":[20,20],"##Creating the VM#{10}":[21,21],"##Creating the VM#{11}":[22,22],"##Creating the VM#{12}":[23,23],"##Creating the VM#{13}":[24,24],"##Creating the VM#{14}":[25,25],"##Creating the VM#{15}":[26,26],"##Creating the VM#{16}":[27,27],"##Creating the VM#{17}":[28,28],"##Creating the VM#{18}":[29,30],"##Setting Up the OpenWRT Disk":[31,87],"##Setting Up the OpenWRT Disk#{1}":[33,33],"##Setting Up the OpenWRT Disk#{2}":[34,34],"##Setting Up the OpenWRT Disk#{3}":[35,57],"##Setting Up the OpenWRT Disk#{4}":[37,57],"##Setting Up the OpenWRT Disk#{5}":[58,58],"##Setting Up the OpenWRT Disk#{6}":[59,59],"##Setting Up the OpenWRT Disk#{7}":[60,60],"##Setting Up the OpenWRT Disk#{8}":[61,61],"##Setting Up the OpenWRT Disk#{9}":[62,62],"##Setting Up the OpenWRT Disk#{10}":[63,63],"##Setting Up the OpenWRT Disk#{11}":[64,64],"##Setting Up the OpenWRT Disk#{12}":[65,65],"##Setting Up the OpenWRT Disk#{13}":[66,66],"##Setting Up the OpenWRT Disk#{14}":[67,67],"##Setting Up the OpenWRT Disk#{15}":[68,68],"##Setting Up the OpenWRT Disk#{16}":[69,70],"##Setting Up the OpenWRT Disk#{17}":[71,72],"##Setting Up the OpenWRT Disk#{18}":[73,73],"##Setting Up the OpenWRT Disk#{19}":[74,75],"##Setting Up the OpenWRT Disk#{20}":[76,84],"##Setting Up the OpenWRT Disk#{21}":[85,85],"##Setting Up the OpenWRT Disk#{22}":[86,86],"##Setting Up the OpenWRT Disk#{23}":[87,87]},"outlinks":[{"title":"https://en.wikipedia.org/wiki/OpenWrt","target":"https://en.wikipedia.org/wiki/OpenWrt","line":8}],"metadata":{"page-title":"Run an OpenWRT VM on Proxmox VE","url":"https://i12bretro.github.io/tutorials/0405.html","date":"2023-03-27 23:56:45"},"task_lines":[],"tasks":{},"codeblock_ranges":[[37,56]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_SSL_with_self_signed_certificate_-_Drone_Support_-_Harness_Community_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_SSL_with_self_signed_certificate_-_Drone_Support_-_Harness_Community_md.ajson deleted file mode 100644 index e55aa9f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_SSL_with_self_signed_certificate_-_Drone_Support_-_Harness_Community_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/SSL with self signed certificate - Drone Support - Harness Community.md": {"path":"000-inbox/clippings/2023/03/SSL with self signed certificate - Drone Support - Harness Community.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"yr7n9g","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1680167862633,"size":882,"at":1766986878359,"hash":"yr7n9g"},"blocks":{"#---frontmatter---":[1,5],"#":[7,29]},"outlinks":[],"metadata":{"page-title":"SSL with self signed certificate - Drone Support - Harness Community","url":"https://community.harness.io/t/ssl-with-self-signed-certificate/11416/3","date":"2023-03-30 17:16:40"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_Scope_and_Shadowing_-_Rust_By_Example_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_Scope_and_Shadowing_-_Rust_By_Example_md.ajson deleted file mode 100644 index fec0b38..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_Scope_and_Shadowing_-_Rust_By_Example_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/Scope and Shadowing - Rust By Example.md": {"path":"000-inbox/clippings/2023/03/Scope and Shadowing - Rust By Example.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ff64nu","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679551268645,"size":1576,"at":1766986878359,"hash":"ff64nu"},"blocks":{"#---frontmatter---":[1,5],"##[Scope and Shadowing](https://doc.rust-lang.org/rust-by-example/variable_bindings/scope.html#scope-and-shadowing)":[6,55],"##[Scope and Shadowing](https://doc.rust-lang.org/rust-by-example/variable_bindings/scope.html#scope-and-shadowing)#{1}":[8,55]},"outlinks":[{"title":"Scope and Shadowing","target":"https://doc.rust-lang.org/rust-by-example/variable_bindings/scope.html#scope-and-shadowing","line":6},{"title":"variable shadowing","target":"https://en.wikipedia.org/wiki/Variable_shadowing","line":32}],"metadata":{"page-title":"Scope and Shadowing - Rust By Example","url":"https://doc.rust-lang.org/rust-by-example/variable_bindings/scope.html","date":"2023-03-23 13:59:16"},"task_lines":[],"tasks":{},"codeblock_ranges":[[10,30],[34,53]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_The_ultimate_guide_to_SBOMs__GitLab_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_The_ultimate_guide_to_SBOMs__GitLab_md.ajson deleted file mode 100644 index 7cdae87..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_The_ultimate_guide_to_SBOMs__GitLab_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/The ultimate guide to SBOMs GitLab.md": {"path":"000-inbox/clippings/2023/03/The ultimate guide to SBOMs GitLab.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gv6klp","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679563940840,"size":10389,"at":1766986878359,"hash":"1gv6klp"},"blocks":{"#---frontmatter---":[1,5],"#":[6,25],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)":[26,37],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)#{1}":[28,31],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)#{2}":[32,32],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)#{3}":[33,33],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)#{4}":[34,35],"##Types of SBOM data exchange standards[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#types-of-sbom-data-exchange-standards)#{5}":[36,37],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)":[38,46],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)#{1}":[40,41],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)#{2}":[42,42],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)#{3}":[43,43],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)#{4}":[44,44],"##Benefits of pairing SBOMs and software vulnerability management[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#benefits-of-pairing-sboms-and-software-vulnerability-management)#{5}":[45,46],"##GitLab and SBOMs[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#gitlab-and-sboms)":[47,77],"##GitLab and SBOMs[](https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/#gitlab-and-sboms)#{1}":[49,77]},"outlinks":[{"title":"entirety of the software supply chain","target":"https://about.gitlab.com/blog/2022/08/30/the-ultimate-guide-to-software-supply-chain-security/","line":8},{"title":"DevSecOps","target":"https://about.gitlab.com/topics/devsecops/","line":8},{"title":"list of ingredients that make up software components","target":"https://www.cisa.gov/sbom#","line":10},{"title":"issued mandates","target":"https://about.gitlab.com/blog/2022/03/29/comply-with-nist-secure-supply-chain-framework-with-gitlab/","line":12},{"title":"for more than a decade","target":"https://spdx.dev/about/","line":12},{"title":"2021 Executive Order from the Biden Administration","target":"https://www.whitehouse.gov/briefing-room/presidential-actions/2021/05/12/executive-order-on-improving-the-nations-cybersecurity/","line":12},{"title":"supply chain chart","target":"https://about.gitlab.com/images/blogimages/fast-and-efficient-supply-chain-security-with-rezilion-and-gitlab/sdlc.png","line":16,"embedded":true},{"title":"2020 SolarWinds attack","target":"https://www.techtarget.com/whatis/feature/SolarWinds-hack-explained-Everything-you-need-to-know","line":20},{"title":"CycloneDX","target":"https://cyclonedx.org/capabilities/sbom/","line":32},{"title":"SWID","target":"https://csrc.nist.gov/projects/Software-Identification-SWID","line":33},{"title":"SPDX","target":"https://spdx.dev/","line":34},{"title":"cyclonedx-cli","target":"https://github.com/CycloneDX/cyclonedx-cli#convert-command","line":36},{"title":"SBOM capability","target":"https://about.gitlab.com/blog/2022/10/17/fast-and-efficient-sbom-with-gitlab-and-rezilion/","line":51},{"title":"Dependency List page","target":"https://docs.gitlab.com/ee/user/application_security/dependency_list/","line":51},{"title":"Security Center","target":"https://docs.gitlab.com/ee/user/application_security/security_dashboard/","line":53},{"title":"generate attestation for all build artifacts","target":"https://about.gitlab.com/blog/2022/08/10/securing-the-software-supply-chain-through-automated-attestation/","line":59},{"title":"SLSA 2 framework","target":"https://about.gitlab.com/releases/2022/06/22/gitlab-15-1-released/","line":59},{"title":"software supply chain direction","target":"https://about.gitlab.com/direction/supply-chain/#overview","line":63},{"title":"ingestion of externally generated SBOMs","target":"https://gitlab.com/groups/gitlab-org/-/epics/8024","line":65},{"title":"GitLab’s DevSecOps platform","target":"https://gitlab.com/-/trials/new","line":67},{"title":"\n\n“Need to get up to speed on SBOMs quickly? We've got you covered with our comprehensive guide” – Sandra Gittlen\n\nClick to tweet\n\n","target":"http://twitter.com/share?text=%E2%80%9CNeed+to+get+up+to+speed+on+SBOMs+quickly%3F+We%27ve+got+you+covered+with+our+comprehensive+guide%E2%80%9D+%E2%80%93+%40sandragwrites&url=https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/","line":71}],"metadata":{"page-title":"The ultimate guide to SBOMs | GitLab","url":"https://about.gitlab.com/blog/2022/10/25/the-ultimate-guide-to-sboms/","date":"2023-03-23 17:32:13"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_honven_-_机场推荐_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_honven_-_机场推荐_md.ajson deleted file mode 100644 index b1fe295..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_honven_-_机场推荐_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/honven - 机场推荐.md": {"path":"000-inbox/clippings/2023/03/honven - 机场推荐.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"18b9ua4","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678846735683,"size":36113,"at":1766986878359,"hash":"18b9ua4"},"blocks":{"#---frontmatter---":[1,5],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)":[6,824],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{1}":[10,45],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{2}":[46,47],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{3}":[48,49],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{4}":[50,51],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{5}":[52,53],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{6}":[54,55],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{7}":[56,57],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{8}":[58,59],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{9}":[60,61],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{10}":[62,63],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{11}":[64,65],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{12}":[66,67],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{13}":[68,69],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{14}":[70,72],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{15}":[73,75],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{16}":[76,77],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{17}":[78,79],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{18}":[80,82],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{19}":[83,96],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{20}":[97,98],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{21}":[99,100],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{22}":[101,102],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{23}":[103,104],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{24}":[105,106],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{25}":[107,108],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{26}":[109,110],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{27}":[111,112],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{28}":[113,114],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{29}":[115,116],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{30}":[117,118],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{31}":[119,120],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{32}":[121,122],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{33}":[123,125],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{34}":[126,127],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{35}":[128,129],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{36}":[130,131],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{37}":[132,133],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{38}":[134,135],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{39}":[136,138],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{40}":[139,144],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{41}":[145,146],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{42}":[147,148],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{43}":[149,150],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{44}":[151,152],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{45}":[153,154],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{46}":[155,156],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{47}":[157,158],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{48}":[159,160],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{49}":[161,162],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{50}":[163,165],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{51}":[166,167],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{52}":[168,169],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{53}":[170,171],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{54}":[172,173],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{55}":[174,175],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{56}":[176,177],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{57}":[178,179],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{58}":[180,182],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{59}":[183,190],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{60}":[191,192],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{61}":[193,194],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{62}":[195,196],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{63}":[197,198],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{64}":[199,200],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{65}":[201,202],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{66}":[203,204],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{67}":[205,206],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{68}":[207,208],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{69}":[209,210],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{70}":[211,213],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{71}":[214,215],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{72}":[216,217],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{73}":[218,220],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{74}":[221,222],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{75}":[223,225],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{76}":[226,227],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{77}":[228,230],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{78}":[231,232],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{79}":[233,235],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{80}":[236,245],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{81}":[246,247],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{82}":[248,249],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{83}":[250,251],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{84}":[252,253],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{85}":[254,255],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{86}":[256,257],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{87}":[258,259],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{88}":[260,261],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{89}":[262,263],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{90}":[264,265],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{91}":[266,267],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{92}":[268,269],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{93}":[270,271],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{94}":[272,274],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{95}":[275,276],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{96}":[277,278],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{97}":[279,280],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{98}":[281,283],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{99}":[284,293],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{100}":[294,295],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{101}":[296,297],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{102}":[298,299],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{103}":[300,301],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{104}":[302,303],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{105}":[304,305],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{106}":[306,307],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{107}":[308,309],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{108}":[310,311],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{109}":[312,313],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{110}":[314,315],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{111}":[316,317],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{112}":[318,320],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{113}":[321,322],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{114}":[323,324],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{115}":[325,326],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{116}":[327,328],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{117}":[329,330],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{118}":[331,332],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{119}":[333,334],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{120}":[335,336],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{121}":[337,338],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{122}":[339,341],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{123}":[342,351],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{124}":[352,353],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{125}":[354,355],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{126}":[356,357],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{127}":[358,359],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{128}":[360,361],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{129}":[362,363],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{130}":[364,365],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{131}":[366,367],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{132}":[368,369],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{133}":[370,371],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{134}":[372,373],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{135}":[374,376],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{136}":[377,378],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{137}":[379,380],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{138}":[381,382],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{139}":[383,384],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{140}":[385,386],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{141}":[387,388],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{142}":[389,391],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{143}":[392,407],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{144}":[408,409],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{145}":[410,411],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{146}":[412,413],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{147}":[414,415],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{148}":[416,417],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{149}":[418,419],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{150}":[420,421],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{151}":[422,423],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{152}":[424,425],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{153}":[426,427],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{154}":[428,429],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{155}":[430,431],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{156}":[432,433],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{157}":[434,435],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{158}":[436,437],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{159}":[438,440],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{160}":[441,450],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{161}":[451,452],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{162}":[453,454],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{163}":[455,456],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{164}":[457,458],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{165}":[459,460],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{166}":[461,462],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{167}":[463,464],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{168}":[465,466],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{169}":[467,468],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{170}":[469,470],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{171}":[471,472],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{172}":[473,475],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{173}":[476,477],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{174}":[478,479],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{175}":[480,482],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{176}":[483,490],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{177}":[491,492],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{178}":[493,494],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{179}":[495,496],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{180}":[497,498],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{181}":[499,500],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{182}":[501,502],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{183}":[503,504],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{184}":[505,506],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{185}":[507,508],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{186}":[509,510],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{187}":[511,513],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{188}":[514,515],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{189}":[516,517],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{190}":[518,519],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{191}":[520,521],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{192}":[522,523],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{193}":[524,525],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{194}":[526,527],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{195}":[528,530],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{196}":[531,538],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{197}":[539,540],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{198}":[541,542],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{199}":[543,544],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{200}":[545,546],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{201}":[547,548],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{202}":[549,550],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{203}":[551,552],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{204}":[553,554],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{205}":[555,556],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{206}":[557,558],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{207}":[559,561],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{208}":[562,563],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{209}":[564,565],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{210}":[566,567],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{211}":[568,570],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{212}":[571,584],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{213}":[585,586],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{214}":[587,588],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{215}":[589,590],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{216}":[591,592],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{217}":[593,594],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{218}":[595,596],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{219}":[597,598],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{220}":[599,601],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{221}":[602,667],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{222}":[668,669],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{223}":[670,671],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{224}":[672,673],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{225}":[674,675],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{226}":[676,677],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{227}":[678,679],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{228}":[680,681],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{229}":[682,683],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{230}":[684,685],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{231}":[686,687],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{232}":[688,689],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{233}":[690,691],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{234}":[692,694],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{235}":[695,696],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{236}":[697,698],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{237}":[699,700],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{238}":[701,702],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{239}":[703,705],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{240}":[706,711],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{241}":[712,713],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{242}":[714,715],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{243}":[716,717],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{244}":[718,719],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{245}":[720,721],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{246}":[722,723],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{247}":[724,725],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{248}":[726,727],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{249}":[728,729],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{250}":[730,732],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{251}":[733,734],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{252}":[735,736],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{253}":[737,738],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{254}":[739,741],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{255}":[742,749],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{256}":[750,751],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{257}":[752,753],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{258}":[754,755],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{259}":[756,757],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{260}":[758,759],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{261}":[760,761],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{262}":[762,763],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{263}":[764,765],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{264}":[766,767],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{265}":[768,769],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{266}":[770,772],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{267}":[773,774],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{268}":[775,776],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{269}":[777,778],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{270}":[779,780],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{271}":[781,782],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{272}":[783,784],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{273}":[785,787],"##付费机场推荐/SSR-v2ray专线机场评测(2023.3.14更新)#{274}":[788,824]},"outlinks":[{"title":"Telegram机场观察频道","target":"https://t.me/jichangtj","line":12},{"title":"WgetCloud官网1","target":"https://bit.ly/3Ik4FJV","line":42},{"title":"Wgetcloud官网2","target":"https://invite.wgetcloud.ltd/auth/register?code=n7z3","line":42},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/%E9%98%BF%E9%87%8C%E4%BA%91ss%E7%BA%BF%E8%B7%AF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90GaCloud.html","line":70},{"title":"官网链接1","target":"https://bit.ly/3YghbhY","line":93},{"title":"官网2(如果打不开请切换为全局代理)","target":"https://suo.yt/IVgyODg","line":93},{"title":"网络监控","target":"http://system.tagvpn.xyz/","line":107},{"title":"TG频道","target":"https://t.me/tagnotif","line":115},{"title":"流媒体解锁情况","target":"https://node.tagvpn.xyz/","line":119},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/tag%E6%B5%8B%E9%80%9F%E6%95%B4%E5%90%88.html","line":123},{"title":"官网链接1","target":"https://bit.ly/3Sfrkd7","line":141},{"title":"官网链接2","target":"https://suo.yt/tC69nKu","line":141},{"title":"雲翼公告板","target":"https://t.me/joinchat/TCGYbvTuuOMjjTke","line":157},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/%E4%B8%93%E7%BA%BFss%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90%E4%B9%8B%E4%BA%91%E7%BF%BC%E7%BD%91%E7%BB%9C%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C.html","line":163},{"title":"STC官网1","target":"https://bit.ly/3tJPGBS","line":187},{"title":"STC官网2","target":"https://suo.yt/msGOhsW","line":187},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/stc%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":211},{"title":"老猫云官网1","target":"http://bit.ly/3LoD6Rr","line":242},{"title":"老猫云官网2","target":"https://suo.yt/PrI9z90","line":242},{"title":"节点监控页面","target":"https://yun.xn--z7xt7y.com/","line":268},{"title":"拓扑结构与流媒体历史测速结果合集","target":"https://jichangpingce.com/%E8%80%81%E7%8C%AB%E4%BA%91%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":272},{"title":"kycloud官网1","target":"https://bit.ly/3JfUa9s","line":288},{"title":"kycloud官网2","target":"https://suo.yt/7DkNI5r","line":290},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/IEPL%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BAkycloud%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":318},{"title":"RelayCloud官网1","target":"https://bit.ly/3TNkBaz","line":348},{"title":"RelayCloud官网2","target":"https://relaycloud.pro/auth/register?code=YqVfn","line":348},{"title":"RelayCloud Notice","target":"https://t.me/joinchat/AAAAAFfR7-mbeYbPP8XH5w","line":368},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/relaycloud%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":374},{"title":"EdNovas云官网链接2","target":"https://bit.ly/3DcTK0o","line":404},{"title":"EdNovas云官网链接1","target":"https://suo.yt/h2luF8x","line":404},{"title":"安卓客户端下载地址","target":"https://ednovas.dev/ednovas_cloud.apk","line":420},{"title":"EdNovas云","target":"https://t.me/ednovasyun1","line":426},{"title":"服务器探针","target":"https://tz.ednovas.me/","line":428},{"title":"审计规则,屏蔽的网站","target":"https://github.com/EdNovas/rulelist/blob/main/rulelist","line":432},{"title":"目前机场节点覆盖图","target":"https://lab.magiconch.com/world-ex/","line":436},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/%E5%9B%9E%E5%9B%BD%E6%9C%BA%E5%9C%BAEDCloud%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":438},{"title":"Catnet官网链接2,需要代理","target":"https://bit.ly/3ubwf54","line":447},{"title":"Catnet官网链接1","target":"https://suo.yt/jdJQOsC","line":447},{"title":"Catnet\\_CN","target":"https://t.me/catnet_official","line":463},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/catnet%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":473},{"title":"大哥云官网链接1","target":"https://bit.ly/3Lk1Mu9","line":485},{"title":"大哥云官网链接2","target":"https://suo.yt/bXSbOkn","line":487},{"title":"少数派官网","target":"http://bit.ly/3ZjtNGd","line":533},{"title":"少数派官网链接2","target":"https://sspcloud.net/#/register?code=hK1bzVm2","line":533},{"title":"少数派的广而告之","target":"https://t.me/joinchat/Rw92xD_F57WssTZj","line":545},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/%E5%B0%91%E6%95%B0%E6%B4%BE%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":559},{"title":"官网注册地址,需要代理或全局模式访问","target":"https://bit.ly/3weANGp","line":581},{"title":"搬瓦工官网","target":"https://bit.ly/3sDxUwC","line":660},{"title":"官网地址","target":"https://bit.ly/3G9K4Dy","line":664},{"title":"Hutao公告","target":"https://t.me/joinchat/IsZvZdFDboAzZmEx","line":684},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/IEPL%E4%B8%8E%E9%9A%A7%E9%81%93ssr%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90-hutao.html","line":692},{"title":"Fenda官网2","target":"https://bit.ly/3tOgI9J","line":708},{"title":"Fenda官网1","target":"https://suo.yt/c0CZffc","line":708},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/ss%E4%B8%AD%E8%BD%AC%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90-fenda.html","line":730},{"title":"官网地址1","target":"https://bit.ly/3d3Yqga","line":746},{"title":"官网2(如果打不开请切换为全局代理)","target":"https://suo.yt/jo4NFtf","line":746},{"title":"拓扑结构检测和流媒体、过往历史测速合集","target":"https://jichangpingce.com/yiyo%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":770},{"title":"科学上网与机场观察","target":"https://t.me/jichangtj","line":792},{"title":"各平台代理客户端推荐与教程","target":"https://sites.google.com/view/honven/%E9%A6%96%E9%A1%B5/%E5%90%84%E5%B9%B3%E5%8F%B0%E4%BB%A3%E7%90%86%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%8E%A8%E8%8D%90%E4%B8%8E%E6%95%99%E7%A8%8B?authuser=1","line":814}],"metadata":{"page-title":"honven - 机场推荐","url":"https://sites.google.com/view/honven/%E9%A6%96%E9%A1%B5/%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90","date":"2023-03-15 10:18:52"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_podmanrootless_tutorial_md_at_main_·_containerspodman_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_podmanrootless_tutorial_md_at_main_·_containerspodman_md.ajson deleted file mode 100644 index 7d18b0c..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_podmanrootless_tutorial_md_at_main_·_containerspodman_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/podmanrootless_tutorial.md at main · containerspodman.md": {"path":"000-inbox/clippings/2023/03/podmanrootless_tutorial.md at main · containerspodman.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1lw5tzy","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1680234393000,"size":12367,"at":1766986878359,"hash":"1lw5tzy"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##Basic Setup and Use of Podman in a Rootless environment.":[8,11],"##Basic Setup and Use of Podman in a Rootless environment.#{1}":[10,11],"##cgroup V2 support":[12,19],"##cgroup V2 support#{1}":[14,19],"##Administrator Actions":[20,101],"##Administrator Actions#Installing Podman":[22,25],"##Administrator Actions#Installing Podman#{1}":[24,25],"##Administrator Actions#Building Podman":[26,29],"##Administrator Actions#Building Podman#{1}":[28,29],"##Administrator Actions#Install `slirp4netns`":[30,33],"##Administrator Actions#Install `slirp4netns`#{1}":[32,33],"##Administrator Actions#Ensure `fuse-overlayfs` is installed":[34,56],"##Administrator Actions#Ensure `fuse-overlayfs` is installed#{1}":[36,56],"##Administrator Actions#Enable user namespaces (on RHEL7 machines)":[57,60],"##Administrator Actions#Enable user namespaces (on RHEL7 machines)#{1}":[59,60],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration":[61,91],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration#{1}":[63,74],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration#{2}":[75,75],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration#{3}":[76,76],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration#{4}":[77,78],"##Administrator Actions#`/etc/subuid` and `/etc/subgid` configuration#{5}":[79,91],"##Administrator Actions#Enable unprivileged `ping`":[92,101],"##Administrator Actions#Enable unprivileged `ping`#{1}":[94,101],"##User Actions":[102,204],"##User Actions#{1}":[104,107],"##User Actions#User Configuration Files":[108,165],"##User Actions#User Configuration Files#{1}":[110,113],"##User Actions#User Configuration Files#containers.conf":[114,123],"##User Actions#User Configuration Files#containers.conf#{1}":[116,117],"##User Actions#User Configuration Files#containers.conf#{2}":[118,118],"##User Actions#User Configuration Files#containers.conf#{3}":[119,119],"##User Actions#User Configuration Files#containers.conf#{4}":[120,121],"##User Actions#User Configuration Files#containers.conf#{5}":[122,123],"##User Actions#User Configuration Files#storage.conf":[124,151],"##User Actions#User Configuration Files#storage.conf#{1}":[126,127],"##User Actions#User Configuration Files#storage.conf#{2}":[128,128],"##User Actions#User Configuration Files#storage.conf#{3}":[129,130],"##User Actions#User Configuration Files#storage.conf#{4}":[131,151],"##User Actions#User Configuration Files#registries":[152,161],"##User Actions#User Configuration Files#registries#{1}":[154,155],"##User Actions#User Configuration Files#registries#{2}":[156,156],"##User Actions#User Configuration Files#registries#{3}":[157,157],"##User Actions#User Configuration Files#registries#{4}":[158,159],"##User Actions#User Configuration Files#registries#{5}":[160,161],"##User Actions#User Configuration Files#Authorization files":[162,165],"##User Actions#User Configuration Files#Authorization files#{1}":[164,165],"##User Actions#Using volumes":[166,204],"##User Actions#Using volumes#{1}":[168,202],"##User Actions#Using volumes#{2}":[203,204],"##More information":[205,209],"##More information#{1}":[207,209]},"outlinks":[{"title":"![PODMAN logo","target":"https://raw.githubusercontent.com/containers/common/main/logos/podman-logo-full-vert.png","line":6},{"title":"user level","target":"https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md#user-configuration-files","line":18},{"title":"installation instructions","target":"https://podman.io/getting-started/installation","line":24},{"title":"build instructions","target":"https://podman.io/getting-started/installation#building-from-scratch","line":28},{"title":"slirp4netns","target":"https://github.com/rootless-containers/slirp4netns","line":32},{"title":"GitHub","target":"https://github.com/rootless-containers/slirp4netns","line":32},{"title":"GitHub","target":"https://github.com/containers/fuse-overlayfs","line":40},{"title":"opensource.com","target":"https://opensource.com/","line":63},{"title":"How does rootless Podman work?","target":"https://opensource.com/article/19/2/how-does-rootless-podman-work","line":63},{"title":"`getpwent`","target":"https://man7.org/linux/man-pages/man3/getpwent.3.html","line":75},{"title":"`podman system migrate`","target":"https://github.com/containers/podman/blob/main/docs/source/markdown/podman-system-migrate.1.md","line":81},{"title":"containers.conf","target":"https://github.com/containers/common/blob/main/docs/containers.conf.5.md","line":112},{"title":"registries.conf","target":"https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md","line":112},{"title":"storage.conf","target":"https://github.com/containers/storage/blob/main/docs/containers-storage.conf.5.md","line":112},{"title":"$XDG\\_RUNTIME\\_DIR","target":"https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables","line":150},{"title":"Shortcomings of Rootless Podman","target":"https://github.com/containers/podman/blob/main/rootless.md","line":207},{"title":"README.md","target":"https://github.com/containers/podman/blob/main/README.md#podman-information-for-developers","line":209},{"title":"podman.io","target":"https://podman.io/","line":209}],"metadata":{"page-title":"podman/rootless_tutorial.md at main · containers/podman","url":"https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md","date":"2023-03-31 11:46:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[[44,55],[67,71],[85,90],[133,141],[145,148],[174,195]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_《软件供应商手册:SBOM的生成和提供》解读_-_FreeBuf网络安全行业门户_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_《软件供应商手册:SBOM的生成和提供》解读_-_FreeBuf网络安全行业门户_md.ajson deleted file mode 100644 index a78b938..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_《软件供应商手册:SBOM的生成和提供》解读_-_FreeBuf网络安全行业门户_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/《软件供应商手册:SBOM的生成和提供》解读 - FreeBuf网络安全行业门户.md": {"path":"000-inbox/clippings/2023/03/《软件供应商手册:SBOM的生成和提供》解读 - FreeBuf网络安全行业门户.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"jnl4cl","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152708000,"size":12413,"at":1766986878359,"hash":"jnl4cl"},"blocks":{"#---frontmatter---":[1,5],"##专栏·供应链安全":[6,15],"##专栏·供应链安全#{1}":[8,15],"##**摘要**":[16,19],"##**摘要**#{1}":[18,19],"##**背景解读**":[20,27],"##**背景解读**#{1}":[22,27],"##**正文解读**":[28,106],"##**正文解读**#{1}":[30,31],"##**正文解读**#**01** **以有效性为最终目标,总结了SBOM生成的工作流程**":[32,39],"##**正文解读**#**01** **以有效性为最终目标,总结了SBOM生成的工作流程**#{1}":[34,39],"##**正文解读**#**02** **以构建为阶段划分点,讨论了SBOM构造的主要方法**":[40,94],"##**正文解读**#**02** **以构建为阶段划分点,讨论了SBOM构造的主要方法**#{1}":[42,85],"##**正文解读**#**02** **以构建为阶段划分点,讨论了SBOM构造的主要方法**#{2}":[86,88],"##**正文解读**#**02** **以构建为阶段划分点,讨论了SBOM构造的主要方法**#{3}":[89,91],"##**正文解读**#**02** **以构建为阶段划分点,讨论了SBOM构造的主要方法**#{4}":[92,94],"##**正文解读**#**03**  **以安全性为出发点,分析了SBOM应包含的内外依赖**":[95,100],"##**正文解读**#**03**  **以安全性为出发点,分析了SBOM应包含的内外依赖**#{1}":[97,100],"##**正文解读**#**04**  **以可操作性为目的,列举了SBOM验证的工具和标准**":[101,106],"##**正文解读**#**04**  **以可操作性为目的,列举了SBOM验证的工具和标准**#{1}":[103,106],"##**影响及趋势预判**":[107,114],"##**影响及趋势预判**#{1}":[109,114],"##**总结及对策建议**":[115,134],"##**总结及对策建议**#{1}":[117,118],"##**总结及对策建议**#{2}":[119,121],"##**总结及对策建议**#{3}":[122,124],"##**总结及对策建议**#{4}":[125,127],"##**总结及对策建议**#{5}":[128,134]},"outlinks":[],"metadata":{"page-title":"《软件供应商手册:SBOM的生成和提供》解读 - FreeBuf网络安全行业门户","url":"https://m.freebuf.com/articles/neopoints/331333.html","date":"2023-03-07 09:30:14"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_什麼是SBOM_(軟體物料清單)?_-_網路安全解決方案_-_艾索科技_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_什麼是SBOM_(軟體物料清單)?_-_網路安全解決方案_-_艾索科技_md.ajson deleted file mode 100644 index 4351fef..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_什麼是SBOM_(軟體物料清單)?_-_網路安全解決方案_-_艾索科技_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/什麼是SBOM (軟體物料清單)? - 網路安全解決方案 - 艾索科技.md": {"path":"000-inbox/clippings/2023/03/什麼是SBOM (軟體物料清單)? - 網路安全解決方案 - 艾索科技.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qwdqbf","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152033000,"size":6780,"at":1766986878359,"hash":"qwdqbf"},"blocks":{"#---frontmatter---":[1,5],"##**什麼是SBOM(軟體物料清單)?**":[6,11],"##**什麼是SBOM(軟體物料清單)?**#{1}":[8,11],"##**供應鏈安全和 SBOM**":[12,19],"##**供應鏈安全和 SBOM**#{1}":[14,19],"##**經典案例:SOLARWINDS 和 LOG4SHELL**":[20,27],"##**經典案例:SOLARWINDS 和 LOG4SHELL**#{1}":[22,27],"##**美國拜登總統的網絡安全行政命令 (EO 14028) 使 SBOM 成為必要**":[28,33],"##**美國拜登總統的網絡安全行政命令 (EO 14028) 使 SBOM 成為必要**#{1}":[30,33],"##**SBOM 使用案例**":[34,55],"##**SBOM 使用案例**#{1}":[36,39],"##**SBOM 使用案例**#{2}":[40,41],"##**SBOM 使用案例**#{3}":[42,43],"##**SBOM 使用案例**#{4}":[44,45],"##**SBOM 使用案例**#{5}":[46,47],"##**SBOM 使用案例**#{6}":[48,49],"##**SBOM 使用案例**#{7}":[50,51],"##**SBOM 使用案例**#{8}":[52,53],"##**SBOM 使用案例**#{9}":[54,55],"##**數位孿生技術協助建立精準的SBOM**":[56,59],"##**數位孿生技術協助建立精準的SBOM**#{1}":[58,59],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**":[60,95],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{1}":[62,65],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{2}":[66,68],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{3}":[69,70],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{4}":[71,73],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{5}":[74,75],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{6}":[76,78],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{7}":[79,80],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{8}":[81,83],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{9}":[84,85],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{10}":[86,87],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{11}":[88,93],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{12}":[94,94],"##**艾索科技協助您進行 SBOM (軟體物料清單) 管理**#{13}":[95,95]},"outlinks":[{"title":"艾索科技聯繫","target":"https://www.aisol.com.tw/index.php?action=contact","line":90}],"metadata":{"page-title":"什麼是SBOM (軟體物料清單)? - 網路安全解決方案 - 艾索科技","url":"https://www.aisol.com.tw/index.php?action=solution&cid=23&id=197","date":"2023-03-07 09:20:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_Seal软件_-_博客园_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_Seal软件_-_博客园_md.ajson deleted file mode 100644 index 49081cb..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_Seal软件_-_博客园_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/关于软件物料清单(SBOM),你所需要了解的一切 - Seal软件 - 博客园.md": {"path":"000-inbox/clippings/2023/03/关于软件物料清单(SBOM),你所需要了解的一切 - Seal软件 - 博客园.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"9ca5dh","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152475000,"size":14046,"at":1766986878359,"hash":"9ca5dh"},"blocks":{"#---frontmatter---":[1,5],"#":[6,8],"##SBOM所包含的元素":[9,93],"##SBOM所包含的元素#{1}":[11,12],"##SBOM所包含的元素#{2}":[13,14],"##SBOM所包含的元素#{3}":[15,16],"##SBOM所包含的元素#{4}":[17,19],"##SBOM所包含的元素#{5}":[20,21],"##SBOM所包含的元素#数据字段":[22,43],"##SBOM所包含的元素#数据字段#{1}":[24,28],"##SBOM所包含的元素#数据字段#{2}":[29,30],"##SBOM所包含的元素#数据字段#{3}":[31,32],"##SBOM所包含的元素#数据字段#{4}":[33,34],"##SBOM所包含的元素#数据字段#{5}":[35,36],"##SBOM所包含的元素#数据字段#{6}":[37,38],"##SBOM所包含的元素#数据字段#{7}":[39,40],"##SBOM所包含的元素#数据字段#{8}":[41,43],"##SBOM所包含的元素#自动化支持":[44,64],"##SBOM所包含的元素#自动化支持#{1}":[46,53],"##SBOM所包含的元素#自动化支持#{2}":[54,55],"##SBOM所包含的元素#自动化支持#{3}":[56,57],"##SBOM所包含的元素#自动化支持#{4}":[58,61],"##SBOM所包含的元素#自动化支持#{5}":[62,64],"##SBOM所包含的元素#实践和流程":[65,93],"##SBOM所包含的元素#实践和流程#{1}":[67,68],"##SBOM所包含的元素#实践和流程#{2}":[69,69],"##SBOM所包含的元素#实践和流程#{3}":[70,73],"##SBOM所包含的元素#实践和流程#{4}":[74,74],"##SBOM所包含的元素#实践和流程#{5}":[75,78],"##SBOM所包含的元素#实践和流程#{6}":[79,79],"##SBOM所包含的元素#实践和流程#{7}":[80,83],"##SBOM所包含的元素#实践和流程#{8}":[84,86],"##SBOM所包含的元素#实践和流程#{9}":[87,89],"##SBOM所包含的元素#实践和流程#{10}":[90,93],"##SBOM交付格式及规范":[94,145],"##SBOM交付格式及规范#{1}":[96,101],"##SBOM交付格式及规范#SPDX":[102,115],"##SBOM交付格式及规范#SPDX#{1}":[104,106],"##SBOM交付格式及规范#SPDX#{2}":[107,107],"##SBOM交付格式及规范#SPDX#{3}":[108,108],"##SBOM交付格式及规范#SPDX#{4}":[109,109],"##SBOM交付格式及规范#SPDX#{5}":[110,112],"##SBOM交付格式及规范#SPDX#{6}":[113,115],"##SBOM交付格式及规范#SWID Tags":[116,132],"##SBOM交付格式及规范#SWID Tags#{1}":[118,119],"##SBOM交付格式及规范#SWID Tags#{2}":[120,120],"##SBOM交付格式及规范#SWID Tags#{3}":[121,121],"##SBOM交付格式及规范#SWID Tags#{4}":[122,122],"##SBOM交付格式及规范#SWID Tags#{5}":[123,125],"##SBOM交付格式及规范#SWID Tags#{6}":[126,132],"##SBOM交付格式及规范#Cyclone DX":[133,145],"##SBOM交付格式及规范#Cyclone DX#{1}":[135,139],"##SBOM交付格式及规范#Cyclone DX#{2}":[140,140],"##SBOM交付格式及规范#Cyclone DX#{3}":[141,141],"##SBOM交付格式及规范#Cyclone DX#{4}":[142,142],"##SBOM交付格式及规范#Cyclone DX#{5}":[143,145],"##谁是SBOM的目标受众?":[146,159],"##谁是SBOM的目标受众?#{1}":[148,149],"##谁是SBOM的目标受众?#安全团队":[150,154],"##谁是SBOM的目标受众?#安全团队#{1}":[152,154],"##谁是SBOM的目标受众?#开发团队":[155,159],"##谁是SBOM的目标受众?#开发团队#{1}":[157,159],"##SBOM 的应用场景":[160,169],"##SBOM 的应用场景#{1}":[162,164],"##SBOM 的应用场景#{2}":[165,165],"##SBOM 的应用场景#{3}":[166,166],"##SBOM 的应用场景#{4}":[167,169],"##全面管理 SBOM 的最佳实践":[170,198],"##全面管理 SBOM 的最佳实践#{1}":[172,198],"##借助工具生成SBOM":[199,203],"##借助工具生成SBOM#{1}":[201,203]},"outlinks":[{"title":"https://github.com/spdx/spdx-spec/tree/development/v2.2.1/schemas)","target":"https://github.com/spdx/spdx-spec/tree/development/v2.2.1/schemas%EF%BC%89","line":107},{"title":"seal.io/trail","target":"https://www.cnblogs.com/sealio/p/seal.io/trail","line":113},{"title":"https://www.iso.org/standard/65666.html","target":"https://www.iso.org/standard/65666.html","line":130}],"metadata":{"page-title":"关于软件物料清单(SBOM),你所需要了解的一切 - Seal软件 - 博客园","url":"https://www.cnblogs.com/sealio/p/16891458.html","date":"2023-03-07 09:27:54"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_掘金_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_掘金_md.ajson deleted file mode 100644 index 527e972..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_关于软件物料清单(SBOM),你所需要了解的一切_-_掘金_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/关于软件物料清单(SBOM),你所需要了解的一切 - 掘金.md": {"path":"000-inbox/clippings/2023/03/关于软件物料清单(SBOM),你所需要了解的一切 - 掘金.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1atx1ve","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679563981556,"size":14195,"at":1766986878359,"hash":"1atx1ve"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##SBOM所包含的元素":[8,75],"##SBOM所包含的元素#{1}":[10,11],"##SBOM所包含的元素#{2}":[12,13],"##SBOM所包含的元素#{3}":[14,15],"##SBOM所包含的元素#{4}":[16,18],"##SBOM所包含的元素#{5}":[19,20],"##SBOM所包含的元素#数据字段":[21,41],"##SBOM所包含的元素#数据字段#{1}":[23,26],"##SBOM所包含的元素#数据字段#{2}":[27,28],"##SBOM所包含的元素#数据字段#{3}":[29,30],"##SBOM所包含的元素#数据字段#{4}":[31,32],"##SBOM所包含的元素#数据字段#{5}":[33,34],"##SBOM所包含的元素#数据字段#{6}":[35,36],"##SBOM所包含的元素#数据字段#{7}":[37,38],"##SBOM所包含的元素#数据字段#{8}":[39,41],"##SBOM所包含的元素#自动化支持":[42,58],"##SBOM所包含的元素#自动化支持#{1}":[44,49],"##SBOM所包含的元素#自动化支持#{2}":[50,51],"##SBOM所包含的元素#自动化支持#{3}":[52,53],"##SBOM所包含的元素#自动化支持#{4}":[54,56],"##SBOM所包含的元素#自动化支持#{5}":[57,58],"##SBOM所包含的元素#实践和流程":[59,75],"##SBOM所包含的元素#实践和流程#{1}":[61,62],"##SBOM所包含的元素#实践和流程#{2}":[63,64],"##SBOM所包含的元素#实践和流程#{3}":[65,66],"##SBOM所包含的元素#实践和流程#{4}":[67,68],"##SBOM所包含的元素#实践和流程#{5}":[69,70],"##SBOM所包含的元素#实践和流程#{6}":[71,72],"##SBOM所包含的元素#实践和流程#{7}":[73,75],"##SBOM交付格式及规范":[76,121],"##SBOM交付格式及规范#{1}":[78,81],"##SBOM交付格式及规范#SPDX":[82,97],"##SBOM交付格式及规范#SPDX#{1}":[84,89],"##SBOM交付格式及规范#SPDX#{2}":[90,90],"##SBOM交付格式及规范#SPDX#{3}":[91,91],"##SBOM交付格式及规范#SPDX#{4}":[92,92],"##SBOM交付格式及规范#SPDX#{5}":[93,93],"##SBOM交付格式及规范#SPDX#{6}":[94,95],"##SBOM交付格式及规范#SPDX#{7}":[96,97],"##SBOM交付格式及规范#SWID Tags":[98,110],"##SBOM交付格式及规范#SWID Tags#{1}":[100,101],"##SBOM交付格式及规范#SWID Tags#{2}":[102,102],"##SBOM交付格式及规范#SWID Tags#{3}":[103,103],"##SBOM交付格式及规范#SWID Tags#{4}":[104,104],"##SBOM交付格式及规范#SWID Tags#{5}":[105,106],"##SBOM交付格式及规范#SWID Tags#{6}":[107,110],"##SBOM交付格式及规范#Cyclone DX":[111,121],"##SBOM交付格式及规范#Cyclone DX#{1}":[113,116],"##SBOM交付格式及规范#Cyclone DX#{2}":[117,117],"##SBOM交付格式及规范#Cyclone DX#{3}":[118,118],"##SBOM交付格式及规范#Cyclone DX#{4}":[119,119],"##SBOM交付格式及规范#Cyclone DX#{5}":[120,121],"##谁是SBOM的目标受众?":[122,133],"##谁是SBOM的目标受众?#{1}":[124,125],"##谁是SBOM的目标受众?#安全团队":[126,129],"##谁是SBOM的目标受众?#安全团队#{1}":[128,129],"##谁是SBOM的目标受众?#开发团队":[130,133],"##谁是SBOM的目标受众?#开发团队#{1}":[132,133],"##SBOM 的应用场景":[134,141],"##SBOM 的应用场景#{1}":[136,137],"##SBOM 的应用场景#{2}":[138,138],"##SBOM 的应用场景#{3}":[139,139],"##SBOM 的应用场景#{4}":[140,141],"##全面管理 SBOM 的最佳实践":[142,159],"##全面管理 SBOM 的最佳实践#{1}":[144,159],"##借助工具生成SBOM":[160,164],"##借助工具生成SBOM#{1}":[162,164]},"outlinks":[{"title":"1.png","target":"https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/2002f823f7534b0e8f10630c84913355~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.awebp?","line":86,"embedded":true},{"title":"github.com/spdx/spdx-s…","target":"https://link.juejin.cn/?target=https%3A%2F%2Fgithub.com%2Fspdx%2Fspdx-spec%2Ftree%2Fdevelopment%2Fv2.2.1%2Fschemas%25EF%25BC%2589 \"https://github.com/spdx/spdx-spec/tree/development/v2.2.1/schemas%EF%BC%89\"","line":91},{"title":"seal.io/trail","target":"https://link.juejin.cn/?target=seal.io%2Ftrail \"seal.io/trail\"","line":96},{"title":"www.iso.org/standard/65…","target":"https://link.juejin.cn/?target=https%3A%2F%2Fwww.iso.org%2Fstandard%2F65666.html \"https://www.iso.org/standard/65666.html\"","line":109},{"title":"2.png","target":"https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/f1e8fc7f24dd4464b071eb2de35aa749~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.awebp?","line":164,"embedded":true}],"metadata":{"page-title":"关于软件物料清单(SBOM),你所需要了解的一切 - 掘金","url":"https://juejin.cn/post/7166054417819500580","date":"2023-03-23 17:32:57"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_如何使用微软的开源工具生成_SBOM_-_知乎_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_如何使用微软的开源工具生成_SBOM_-_知乎_md.ajson deleted file mode 100644 index b9b621c..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_如何使用微软的开源工具生成_SBOM_-_知乎_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/如何使用微软的开源工具生成 SBOM - 知乎.md": {"path":"000-inbox/clippings/2023/03/如何使用微软的开源工具生成 SBOM - 知乎.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"4o4orq","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152205000,"size":6823,"at":1766986878359,"hash":"4o4orq"},"blocks":{"#---frontmatter---":[1,5],"#":[6,14],"##入门":[15,26],"##入门#{1}":[17,26],"##生成 SBOM":[27,56],"##生成 SBOM#{1}":[29,30],"##生成 SBOM#{2}":[31,32],"##生成 SBOM#{3}":[33,34],"##生成 SBOM#{4}":[35,37],"##生成 SBOM#{5}":[38,39],"##生成 SBOM#{6}":[40,41],"##生成 SBOM#{7}":[42,44],"##生成 SBOM#{8}":[45,56],"##SBOM 内容":[57,76],"##SBOM 内容#{1}":[59,64],"##SBOM 内容#{2}":[65,66],"##SBOM 内容#{3}":[67,68],"##SBOM 内容#{4}":[69,70],"##SBOM 内容#{5}":[71,73],"##SBOM 内容#{6}":[74,76],"##扫描 Docker 图像":[77,84],"##扫描 Docker 图像#{1}":[79,84],"##概括":[85,89],"##概括#{1}":[87,89]},"outlinks":[],"metadata":{"page-title":"如何使用微软的开源工具生成 SBOM - 知乎","url":"https://zhuanlan.zhihu.com/p/571994012","date":"2023-03-07 09:23:23"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_如何通过SBOM(软件物料清单)实现安全治理_墨菲安全_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_如何通过SBOM(软件物料清单)实现安全治理_墨菲安全_md.ajson deleted file mode 100644 index 3a2e4a6..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_如何通过SBOM(软件物料清单)实现安全治理_墨菲安全_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/如何通过SBOM(软件物料清单)实现安全治理_墨菲安全.md": {"path":"000-inbox/clippings/2023/03/如何通过SBOM(软件物料清单)实现安全治理_墨菲安全.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"soncgo","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152365000,"size":9679,"at":1766986878359,"hash":"soncgo"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##前言":[8,11],"##前言#{1}":[10,11],"##什么是SBOM":[12,35],"##什么是SBOM#{1}":[14,17],"##什么是SBOM#{2}":[18,18],"##什么是SBOM#{3}":[19,19],"##什么是SBOM#{4}":[20,21],"##什么是SBOM#{5}":[22,35],"##SBOM的用途":[36,43],"##SBOM的用途#{1}":[38,39],"##SBOM的用途#{2}":[40,40],"##SBOM的用途#{3}":[41,41],"##SBOM的用途#{4}":[42,43],"##依赖治理":[44,53],"##依赖治理#{1}":[46,53],"##漏洞管理":[54,65],"##漏洞管理#{1}":[56,65],"##开源许可证合规":[66,75],"##开源许可证合规#{1}":[68,75],"##如何生成SBOM":[76,79],"##如何生成SBOM#{1}":[78,79],"##SCA(软件成分分析)":[80,87],"##SCA(软件成分分析)#{1}":[82,87],"##知识库数据":[88,93],"##知识库数据#{1}":[90,93],"##如何发挥SBOM的作用":[94,97],"##如何发挥SBOM的作用#{1}":[96,97],"##SBOM及时更新":[98,103],"##SBOM及时更新#{1}":[100,103],"##通过知识库关联风险数据":[104,109],"##通过知识库关联风险数据#{1}":[106,109],"##构建管理平台":[110,117],"##构建管理平台#{1}":[112,117],"##要求供应商提供SBOM":[118,121],"##要求供应商提供SBOM#{1}":[120,121],"##总结":[122,125],"##总结#{1}":[124,125],"##参考链接":[126,134],"##参考链接#{1}":[128,134]},"outlinks":[{"title":"墨菲安全","target":"https://www.murphysec.com/blog/author/chenshuang","line":6},{"title":"知识普及","target":"https://www.murphysec.com/blog/category/knowledge-popularization","line":6},{"title":"![如何通过SBOM(软件物料清单)实现安全治理","target":"https://www.murphysec.com/blog/wp-content/uploads/2023/01/asynccode-89.png","line":26},{"title":"![如何通过SBOM(软件物料清单)实现安全治理","target":"https://www.murphysec.com/blog/wp-content/uploads/2023/01/asynccode-90.png","line":30},{"title":"![如何通过SBOM(软件物料清单)实现安全治理","target":"https://www.murphysec.com/blog/wp-content/uploads/2023/01/asynccode-91.png","line":48},{"title":"https://www.ntia.gov/SBOM","target":"https://www.ntia.gov/SBOM","line":128},{"title":"https://www.ntia.gov/blog/2021/ntia-releases-minimum-elements-software-bill-materials","target":"https://www.ntia.gov/blog/2021/ntia-releases-minimum-elements-software-bill-materials","line":130},{"title":"https://linuxfoundation.org/wp-content/uploads/LFResearch\\_SBOM\\_Report\\_020422.pdf","target":"https://linuxfoundation.org/wp-content/uploads/LFResearch_SBOM_Report_020422.pdf","line":132}],"metadata":{"page-title":"如何通过SBOM(软件物料清单)实现安全治理_墨菲安全","url":"https://www.murphysec.com/blog/knowledge-popularization/4218.html","date":"2023-03-07 09:26:04"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_联想移动互联及数字家庭产品服务支持_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_联想移动互联及数字家庭产品服务支持_md.ajson deleted file mode 100644 index a27a460..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_联想移动互联及数字家庭产品服务支持_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/联想移动互联及数字家庭产品服务支持.md": {"path":"000-inbox/clippings/2023/03/联想移动互联及数字家庭产品服务支持.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1526070","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1679277532893,"size":449,"at":1766986878359,"hash":"1526070"},"blocks":{"#---frontmatter---":[1,5],"#":[6,16]},"outlinks":[],"metadata":{"page-title":"联想移动互联及数字家庭产品服务支持","url":"https://m.lenovocare.com.cn/ServiceStation.aspx","date":"2023-03-20 09:58:49"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_03_需要考虑的8种顶级SBOM工具__CN-SEC_中文网_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_03_需要考虑的8种顶级SBOM工具__CN-SEC_中文网_md.ajson deleted file mode 100644 index d5dc25f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_03_需要考虑的8种顶级SBOM工具__CN-SEC_中文网_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/03/需要考虑的8种顶级SBOM工具 CN-SEC 中文网.md": {"path":"000-inbox/clippings/2023/03/需要考虑的8种顶级SBOM工具 CN-SEC 中文网.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1bc77n2","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1678152278000,"size":10868,"at":1766986878359,"hash":"1bc77n2"},"blocks":{"#---frontmatter---":[1,5],"#":[6,139],"##{1}":[24,25],"##{2}":[26,27],"##{3}":[28,29],"##{4}":[30,31],"##{5}":[32,33],"##{6}":[34,44],"##{7}":[45,46],"##{8}":[47,48],"##{9}":[49,61],"##{10}":[62,63],"##{11}":[64,65],"##{12}":[66,67],"##{13}":[68,69],"##{14}":[70,71],"##{15}":[72,73],"##{16}":[74,139]},"outlinks":[{"title":"软件供应链","target":"https://cn-sec.com/archives/tag/%e8%bd%af%e4%bb%b6%e4%be%9b%e5%ba%94%e9%93%be","line":6},{"title":"需要考虑的8种顶级SBOM工具","target":"http://mp.weixin.qq.com/s?__biz=Mzg3NjU4MDI4NQ==&mid=2247485274&idx=1&sn=f2a88efe23d60e9b22fa13b25663859f&chksm=cf315b88f846d29e713f4dc5cf4806184e3dd4de8268b586b4df42b6e6b3057ba5cf6eba2642&scene=126&sessionid=1661129128&key=42fda77b115ac87d8e8f45476ebf6fc3853c4ca79e53943c9bb46957f197f30e323f4524f5e1024d6caf03fc6e53a7c8ffd6a3e44a7f9d8a9f3c5d86518e202273511a2bd9a3f2f527672e88c0950fd53a2c1f5937d043e9cfd126d131c69708b4962163ce84361c3a97232fe0d2249b9cab1d632372630108f775f16b6e7b72&ascene=15&uin=NTY2NTA4NjQ%3D&devicetype=Windows+10+x64&version=6307051f&lang=zh_CN&session_us=gh_c2b78e839fd7&exportkey=AwGngfClmceA4%2BIRnQr6V0g%3D&acctmode=0&pass_ticket=uyfgm43O%2Bnte37Omf7S0pmG8umA%2F6CVPJp%2FegyZGM04etQwzjCVeYLTpeBxJ%2BLOq&wx_header=0&fontgear=2","line":133}],"metadata":{"page-title":"需要考虑的8种顶级SBOM工具 | CN-SEC 中文网","url":"https://cn-sec.com/archives/1247429.html","date":"2023-03-07 09:24:33"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_10_Ways_to_Generate_a_Random_Password_from_the_Linux_Command_Line_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_10_Ways_to_Generate_a_Random_Password_from_the_Linux_Command_Line_md.ajson deleted file mode 100644 index d9fa2e0..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_10_Ways_to_Generate_a_Random_Password_from_the_Linux_Command_Line_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/10 Ways to Generate a Random Password from the Linux Command Line.md": {"path":"000-inbox/clippings/2023/04/10 Ways to Generate a Random Password from the Linux Command Line.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qwb4wl","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1682042523000,"size":5300,"at":1766986878359,"hash":"qwb4wl"},"blocks":{"#---frontmatter---":[1,5],"#":[6,97],"##{1}":[88,88],"##{2}":[89,89],"##{3}":[90,90],"##{4}":[91,91],"##{5}":[92,92],"##{6}":[93,93],"##{7}":[94,94],"##{8}":[95,97]},"outlinks":[{"title":"Command-Line Fu","target":"https://www.commandlinefu.com/commands/matching/random-password/cmFuZG9tIHBhc3N3b3Jk/sort-by-votes","line":10},{"title":"Cygwin","target":"https://www.cygwin.com/","line":10},{"title":"LastPass","target":"https://lastpass.wo8g.net/vrA3j?subid3=xid:fr1682042521aaa","line":16},{"title":":alnum:","target":":alnum:","line":45},{"title":"The Best Password Tips to Keep Your Accounts Secure","target":"https://www.howtogeek.com/103560/the-best-password-tips-to-keep-your-accounts-secure/","line":88},{"title":"The Top 10 Tips for Securing Your Data","target":"https://www.howtogeek.com/108033/the-top-10-tips-for-securing-your-data/","line":89},{"title":"How to SSH Into Your Raspberry Pi","target":"https://www.howtogeek.com/768053/how-to-ssh-into-your-raspberry-pi/","line":90},{"title":"The 20 Best How-To Geek Linux Articles of 2010","target":"https://www.howtogeek.com/39595/the-20-best-how-to-geek-linux-articles-of-2010/","line":91},{"title":"How to Add Users on Linux","target":"https://www.howtogeek.com/806104/add-a-user-to-linux/","line":92},{"title":"Acer’s New Ultrawide Monitors Have USB-C, Up to 175 Hz","target":"https://www.howtogeek.com/887057/acers-new-ultrawide-monitors-have-usb-c-up-to-175-hz/","line":93},{"title":"Acer Couldn’t Make This RTX 4090 Gaming PC Any Smaller","target":"https://www.howtogeek.com/886923/acer-couldnt-make-this-rtx-4090-gaming-pc-any-smaller/","line":94},{"title":"Netflix Is Upgrading Its Ad-Supported Plan","target":"https://www.howtogeek.com/887035/netflix-is-upgrading-its-ad-supported-plan/","line":95},{"title":"Want to know more?","target":"https://www.howtogeek.com/about/","line":97}],"metadata":{"page-title":"10 Ways to Generate a Random Password from the Linux Command Line","url":"https://www.howtogeek.com/30184/10-ways-to-generate-a-random-password-from-the-command-line/","date":"2023-04-21 10:02:01"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_5_Ways_to_Empty_or_Delete_a_Large_File_Content_in_Linux_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_5_Ways_to_Empty_or_Delete_a_Large_File_Content_in_Linux_md.ajson deleted file mode 100644 index 8586ce5..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_5_Ways_to_Empty_or_Delete_a_Large_File_Content_in_Linux_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/5 Ways to Empty or Delete a Large File Content in Linux.md": {"path":"000-inbox/clippings/2023/04/5 Ways to Empty or Delete a Large File Content in Linux.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ivh5op","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1681804466000,"size":6910,"at":1766986878359,"hash":"ivh5op"},"blocks":{"#---frontmatter---":[1,5],"#":[6,13],"###1\\. Empty File Content by Redirecting to Null":[14,23],"###1\\. Empty File Content by Redirecting to Null#{1}":[16,23],"###2\\. Empty File Using ‘true’ Command Redirection":[24,31],"###2\\. Empty File Using ‘true’ Command Redirection#{1}":[26,31],"#true > access.log":[32,73],"#true > access.log#{1}":[34,37],"#true > access.log##3\\. Empty File Using cat/cp/dd utilities with /dev/null":[38,67],"#true > access.log##3\\. Empty File Using cat/cp/dd utilities with /dev/null#{1}":[40,67],"#true > access.log##4\\. Empty File Using echo Command":[68,73],"#true > access.log##4\\. Empty File Using echo Command#{1}":[70,73],"#echo > access.log":[74,116],"#echo > access.log#{1}":[76,91],"#echo > access.log##5\\. Empty File Using truncate Command":[92,107],"#echo > access.log##5\\. Empty File Using truncate Command#{1}":[94,107],"#echo > access.log#If You Appreciate What We Do Here On TecMint, You Should Consider:":[108,116],"#echo > access.log#If You Appreciate What We Do Here On TecMint, You Should Consider:#{1}":[110,116]},"outlinks":[{"title":"Linux command line editors","target":"https://www.tecmint.com/linux-command-line-editors/","line":6},{"title":"Linux everything is a file","target":"https://www.tecmint.com/explanation-of-everything-is-a-file-and-types-of-files-in-linux/","line":8},{"title":"![Empty Large File Using Null Redirect in Linux","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-Large-File-in-Linux.png","line":20},{"title":"![Empty Large File Using Linux Commands","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-Large-File-Using-Linux-Commands.png","line":34},{"title":"cat command","target":"https://www.tecmint.com/13-basic-cat-command-examples-in-linux/","line":44},{"title":"![Empty File Using cat Command","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-File-Using-cat-Command.png","line":48},{"title":"cp command","target":"https://www.tecmint.com/progress-monitor-check-progress-of-linux-commands/","line":52},{"title":"![Empty File Content Using cp Command","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-File-Content-Using-cp-Command.png","line":56},{"title":"![Empty File Content Using dd Command","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-File-Content-Using-dd-Command.png","line":64},{"title":"echo command","target":"https://www.tecmint.com/echo-command-in-linux/","line":70},{"title":"![Empty File Using echo Command","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-File-Using-echo-Command.png","line":76},{"title":"cat command","target":"https://www.tecmint.com/13-basic-cat-command-examples-in-linux/","line":82},{"title":"echo command","target":"https://www.tecmint.com/echo-command-in-linux/","line":82},{"title":"![Empty File Using Null Redirect","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Empty-File-Using-Null-Redirect.png","line":88},{"title":"shrink or extend the size of a file","target":"https://www.tecmint.com/parted-command-to-create-resize-rescue-linux-disk-partitions/","line":94},{"title":"![Truncate File Content in Linux","target":"https://www.tecmint.com/wp-content/uploads/2016/12/Truncate-File-Content-in-Linux.png","line":100},{"title":"![Support Us","target":"https://www.tecmint.com/wp-content/uploads/2015/01/coffee.png","line":114}],"metadata":{"page-title":"5 Ways to Empty or Delete a Large File Content in Linux","url":"https://www.tecmint.com/empty-delete-file-content-linux/","date":"2023-04-18 15:54:25"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_A_half-hour_to_learn_Rust_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_A_half-hour_to_learn_Rust_md.ajson deleted file mode 100644 index f165869..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_A_half-hour_to_learn_Rust_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/A half-hour to learn Rust.md": {"path":"000-inbox/clippings/2023/04/A half-hour to learn Rust.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1m7fa5k","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1681118993245,"size":47084,"at":1766986878359,"hash":"1m7fa5k"},"blocks":{"#---frontmatter---":[1,5],"#":[6,1926],"##{1}":[523,523],"##{2}":[524,524],"##{3}":[525,1047],"##{4}":[1048,1048],"##{5}":[1049,1256],"##{6}":[1257,1257],"##{7}":[1258,1258],"##{8}":[1259,1918],"##{9}":[1919,1919],"##{10}":[1920,1920],"##{11}":[1921,1921],"##{12}":[1922,1926]},"outlinks":[{"title":"rust","target":"https://fasterthanli.me/tags/rust","line":6},{"title":"turbofish syntax","target":"https://turbo.fish/","line":828},{"title":"not afraid to add it","target":"https://mobile.twitter.com/fasterthanlime/status/1219601989404954624","line":1915},{"title":"The Rust Book","target":"https://doc.rust-lang.org/book/","line":1919},{"title":"Rust By Example","target":"https://doc.rust-lang.org/stable/rust-by-example/","line":1920},{"title":"Read Rust","target":"https://readrust.net/","line":1921},{"title":"This Week In Rust","target":"https://this-week-in-rust.org/","line":1922},{"title":"blog about Rust","target":"https://fasterthanli.me/tags/rust/","line":1924},{"title":"tweet about Rust","target":"https://twitter.com/fasterthanlime","line":1924}],"metadata":{"page-title":"A half-hour to learn Rust","url":"https://fasterthanli.me/articles/a-half-hour-to-learn-rust","date":"2023-04-02 09:39:44"},"task_lines":[],"tasks":{},"codeblock_ranges":[[16,19],[23,25],[29,35],[39,41],[45,49],[53,57],[61,67],[71,75],[79,84],[89,93],[98,100],[104,107],[112,114],[118,120],[124,128],[132,137],[146,150],[155,160],[164,176],[181,188],[193,199],[204,212],[217,225],[231,238],[243,249],[254,257],[263,265],[269,273],[277,287],[292,295],[300,303],[307,313],[316,318],[325,330],[333,337]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Base64_Encode_and_Decode_From_Command_Line_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Base64_Encode_and_Decode_From_Command_Line_md.ajson deleted file mode 100644 index 324835c..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Base64_Encode_and_Decode_From_Command_Line_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Base64 Encode and Decode From Command Line.md": {"path":"000-inbox/clippings/2023/04/Base64 Encode and Decode From Command Line.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bcqd5y","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1682318515688,"size":7232,"at":1766986878359,"hash":"bcqd5y"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##{1}":[10,10],"##{2}":[11,11],"##{3}":[12,17],"##Base64 Syntax":[18,21],"##Base64 Syntax#{1}":[20,21],"##Options":[22,33],"##Options#{1}":[24,33],"##Encoding String":[34,55],"##Encoding String#{1}":[36,55],"##Decoding String":[56,67],"##Decoding String#{1}":[58,67],"##Encoding Text File":[68,96],"##Encoding Text File#{1}":[70,96],"##Decoding Text File":[97,112],"##Decoding Text File#{1}":[99,112],"##Encoding User Input":[113,116],"##Encoding User Input#{1}":[115,116],"#!/bin/bash":[117,140],"#!/bin/bash#{1}":[118,140],"#!/bin/bash[2]":[141,159],"#!/bin/bash[2]#{1}":[142,150],"#!/bin/bash[2]#Conclusion":[151,159],"#!/bin/bash[2]#Conclusion#{1}":[153,154],"#!/bin/bash[2]#Conclusion#About the author":[155,159],"#!/bin/bash[2]#Conclusion#About the author#{1}":[157,159]},"outlinks":[{"title":"@linuxhint","target":"https://twitter.com/linuxhint","line":159}],"metadata":{"page-title":"Base64 Encode and Decode From Command Line","url":"https://linuxhint.com/base64_encode_decode_command_line/","date":"2023-04-24 14:41:54"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Best_100+_Stable_Diffusion_Prompts_The_Most_Beautiful_AI_Text-to-Image_Prompts__Metaverse_Post_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Best_100+_Stable_Diffusion_Prompts_The_Most_Beautiful_AI_Text-to-Image_Prompts__Metaverse_Post_md.ajson deleted file mode 100644 index 04c692f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Best_100+_Stable_Diffusion_Prompts_The_Most_Beautiful_AI_Text-to-Image_Prompts__Metaverse_Post_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Best 100+ Stable Diffusion Prompts The Most Beautiful AI Text-to-Image Prompts Metaverse Post.md": {"path":"000-inbox/clippings/2023/04/Best 100+ Stable Diffusion Prompts The Most Beautiful AI Text-to-Image Prompts Metaverse Post.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"uawfyy","at":1766986878389},"class_name":"SmartSource","last_import":{"mtime":1682228732000,"size":94320,"at":1766986878404,"hash":"uawfyy"},"blocks":{"#---frontmatter---":[1,5],"#":[7,36],"##Best AI Photography Prompts":[37,104],"##Best AI Photography Prompts#{1}":[39,104],"##Best AI P**ortrait** Prompts":[105,168],"##Best AI P**ortrait** Prompts#{1}":[107,168],"##Best AI Concept Art Prompts":[169,230],"##Best AI Concept Art Prompts#{1}":[171,230],"##Best AI Architecture Prompts":[231,294],"##Best AI Architecture Prompts#{1}":[233,294],"##Best AI Fashion Prompts":[295,356],"##Best AI Fashion Prompts#{1}":[297,356],"##Best AI 3D Prompts":[357,418],"##Best AI 3D Prompts#{1}":[359,418],"##Best AI Videogames Prompts":[419,480],"##Best AI Videogames Prompts#{1}":[421,480],"##Best AI Graphic Design Prompts":[481,544],"##Best AI Graphic Design Prompts#{1}":[483,544],"##Best AI Wallpaper Prompts":[545,610],"##Best AI Wallpaper Prompts#{1}":[547,610],"##Best AI Cinematic Prompts":[611,674],"##Best AI Cinematic Prompts#{1}":[613,674],"##FAQs":[675,676],"##What is Stable Diffusion?":[677,680],"##What is Stable Diffusion?#{1}":[679,680],"##How does Stable Diffusion work?":[681,684],"##How does Stable Diffusion work?#{1}":[683,684],"##Is Stable Diffusion Open source?":[685,688],"##Is Stable Diffusion Open source?#{1}":[687,688],"##What is a latent diffusion model?":[689,692],"##What is a latent diffusion model?#{1}":[691,692],"##What is a diffusion model in machine learning?":[693,696],"##What is a diffusion model in machine learning?#{1}":[695,696],"##What was stable diffusion trained on?":[697,700],"##What was stable diffusion trained on?#{1}":[699,700],"##**Conclusion**":[701,707],"##**Conclusion**#{1}":[703,707]},"outlinks":[{"title":"free Stable Diffusion prompt generators","target":"https://mpost.io/7-best-ai-art-generators-of-2022-midjourney-dall-e-nightcafe-artbreeder/","line":17},{"title":"![Best 100+ Stable Diffusion Prompts: The Most Beautiful AI Text-to-Image Prompts","target":"https://mpost.io/wp-content/uploads/image-86-60-762x1024.jpg","line":19},{"title":"AI marketing strategies","target":"https://mpost.io/10-best-ai-marketing-apps-and-tools-innovative-digital-advertising/","line":27},{"title":"AI generators","target":"https://mpost.io/7-best-ai-art-generators-of-2022-midjourney-dall-e-nightcafe-artbreeder/","line":27},{"title":"AI SEO tools","target":"https://mpost.io/top-10-ai-powered-seo-tools-in-2023-for-digital-marketers/","line":29},{"title":"AI voice generators","target":"https://mpost.io/top-7-ai-voice-generators-and-voice-cloning-for-text-to-speech/","line":29},{"title":"AI logo creators","target":"https://mpost.io/5-best-free-ai-logo-makers-of-2023-class-up-your-business-with-an-artificially-intelligent-designer/","line":31},{"title":"AI photo editors","target":"https://mpost.io/best-ai-photo-editors/","line":33},{"title":"videos","target":"https://mpost.io/how-to-earn-up-to-1000-every-day-using-chatgpt-5-videos/","line":35},{"title":"Prompt: portrait photo of a asia old warrior chief, tribal panther make up, blue on red, side profile, looking away, serious eyes, 50mm portrait photography, hard rim lighting photography--beta --ar 2:3 --beta --upbeta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-32.jpg","line":41,"embedded":true},{"title":"Prompt: Keanu Reeves portrait photo of a asia old warrior chief, tribal panther make up, blue on red, side profile, looking away, serious eyes, 50mm portrait photography, hard rim lighting photography--beta --ar 2:3 --beta --upbeta --beta --upbeta --beta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-33.jpg","line":47,"embedded":true},{"title":"portrait photo of a african old warrior chief, tribal panther make up, gold on white, side profile, looking away, serious eyes, 50mm portrait photography, hard rim lighting photography--beta --ar 2:3 --beta","target":"https://mpost.io/wp-content/uploads/image-46-34.jpg","line":53,"embedded":true},{"title":"priest, blue robes, 68 year old man, national geographic, portrait, photo, photography --s 625 --q 2 --iw 3","target":"https://mpost.io/wp-content/uploads/image-46-35.jpg","line":59,"embedded":true},{"title":"ultrarealistic, (native american old woman ) portrait, cinematic lighting, award winning photo, no color, 80mm lense --beta --upbeta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-36.jpg","line":65,"embedded":true},{"title":"portrait photo headshot by mucha, sharp focus, elegant, render, octane, detailed, award winning photography, masterpiece, rim lit","target":"https://mpost.io/wp-content/uploads/image-46-37.jpg","line":71,"embedded":true},{"title":"a vibrant professional studio portrait photography of a young, pale, goth, attractive, friendly, casual, delightful, intricate, gorgeous, female, piercing green eyes, wears a gold ankh necklace, femme fatale, nouveau, curated collection, annie leibovitz, nikon, award winning, breathtaking, groundbreaking, superb, outstanding, lensculture portrait awards, photoshopped, dramatic lighting, 8 k, hi res --testp --ar 3:4 --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-38.jpg","line":77,"embedded":true},{"title":"medium shot side profile portrait photo of the Takeshi Kaneshiro warrior chief, tribal panther make up, blue on red, looking away, serious eyes, 50mm portrait, photography, hard rim lighting photography --ar 2:3 --beta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-39.jpg","line":83,"embedded":true},{"title":"gorgeous young Swiss girl sitting by window with headphones on, wearing white bra with translucent shirt over, soft lips, beach blonde hair, octane render, unreal engine, photograph, realistic skin texture, photorealistic, hyper realism, highly detailed, 85mm portrait photography, award winning, hard rim lighting photography--beta --ar 9:16 --s 5000 --testp --upbeta --upbeta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-40.jpg","line":89,"embedded":true},{"title":"portrait photo of a old man crying, Tattles, sitting on bed, guages in ears, looking away, serious eyes, 50mm portrait photography, hard rim lighting photography--beta --ar 2:3 --beta --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-41.jpg","line":95,"embedded":true},{"title":"👇","target":"https://s.w.org/images/core/emoji/14.0.0/svg/1f447.svg","line":101,"embedded":true},{"title":"full length photo of christina hendricks as an amazon warrior, highly detailed, 4 k, hdr, smooth, sharp focus, high resolution, award - winning photo","target":"https://mpost.io/wp-content/uploads/image-46-42.jpg","line":109,"embedded":true},{"title":"very complex hyper-maximalist overdetailed cinematic tribal fantasy closeup macro portrait of a heavenly beautiful young royal dragon queen with long platinum blonde windblown hair and dragon scale wings, Magic the gathering, pale wet skin and dark eyes and red lipstick ,flirting smiling passion seductive, vibrant high contrast, by andrei riabovitchev, tomasz alen kopera,moleksandra shchaslyva, peter mohrbacher, Omnious intricate, octane, moebius, arney freytag, Fashion photo shoot, glamorous pose, trending on ArtStation, dramatic lighting, ice, fire and smoke, orthodox symbolism Diesel punk, mist, ambient occlusion, volumetric lighting, Lord of the rings, BioShock, glamorous, emotional, tattoos,shot in the photo studio, professional studio lighting, backlit, rim lighting, Deviant-art, hyper detailed illustration, 8k","target":"https://mpost.io/wp-content/uploads/image-46-43.jpg","line":115,"embedded":true},{"title":"very complex hyper-maximalist overdetailed cinematic tribal darkfantasy closeup portrait of a malignant beautiful young dragon queen goddess megan fox with long black windblown hair and dragon scale wings, Magic the gathering, pale skin and dark eyes,flirting smiling succubus confident seductive, gothic, windblown hair, vibrant high contrast, by andrei riabovitchev, tomasz alen kopera,moleksandra shchaslyva, peter mohrbacher, Omnious intricate, octane, moebius, arney freytag, Fashion photo shoot, glamorous pose, trending on ArtStation, dramatic lighting, ice, fire and smoke, orthodox symbolism Diesel punk, mist, ambient occlusion, volumetric lighting, Lord of the rings, BioShock, glamorous, emotional, tattoos,shot in the photo studio, professional studio lighting, backlit, rim lightingDeviant-art, hyper detailed illustration, 8k","target":"https://mpost.io/wp-content/uploads/image-46-44.jpg","line":121,"embedded":true},{"title":"photo realistic portrait of young woman, red hair, pale, realistic eyes, gold necklace with big ruby, centered in frame, facing camera, symmetrical face, ideal human, 85mm lens,f8, photography, ultra details, natural light, dark background, photo, out of focus trees in background --ar 9:16 --testp --v 3 --upbeta","target":"https://mpost.io/wp-content/uploads/image-46-45.jpg","line":127,"embedded":true},{"title":"photo of a gorgeous young woman in the style of stefan kostic and david la chapelle, coy, shy, alluring, evocative, stunning, award winning, realistic, sharp focus, 8 k high definition, 3 5 mm film photography, photo realistic, insanely detailed, intricate, elegant, art by stanley lau and artgerm","target":"https://mpost.io/wp-content/uploads/image-46-46.jpg","line":133,"embedded":true},{"title":"a portrait of a cute girl with a luminous dress, eyes shut, mouth closed, long hair, wind, sky, clouds, the moon, moonlight, stars, universe, fireflies, butterflies, lights, lens flares effects, swirly bokeh, brush effect, In style of Yoji Shinkawa, Jackson Pollock, wojtek fus, by Makoto Shinkai, concept art, celestial, amazing, astonishing, wonderful, beautiful, highly detailed, centered","target":"https://mpost.io/wp-content/uploads/image-46-134.jpg","line":139,"embedded":true},{"title":"a highly detailed epic cinematic concept art CG render digital painting artwork costume design: young James Dean as a well-kept neat mechanic in 1950s USSR green dungarees and big boots, reading a book. By Greg Rutkowski, Ilya Kuvshinov, WLOP, Stanley Artgerm Lau, Ruan Jia and Fenghua Zhong, trending on ArtStation, subtle muted cinematic colors, made in Maya, Blender and Photoshop, octane render, excellent composition, cinematic atmosphere, dynamic dramatic cinematic lighting, aesthetic, very inspirational, arthouse","target":"https://mpost.io/wp-content/uploads/image-46-135.jpg","line":145,"embedded":true},{"title":"a painting of a thinker no facial hair, thoughtful, focused, visionary, calm, jovial, loving, fatherly, generous, elegant well fed elder with few eyebrows and his on from Kenya by Henry Ossawa Tanner . dramatic angle, ethereal lights, details, smooth, sharp focus, illustration, realistic, cinematic, artstation, award winning, rgb , unreal engine, octane render, cinematic light, macro, depth of field, blur, red light and clouds from the back, highly detailed epic cinematic concept art CG render made in Maya, Blender and Photoshop, octane render, excellent composition, dynamic dramatic cinematic lighting, aesthetic, very inspirational, arthouse","target":"https://mpost.io/wp-content/uploads/image-46-136.jpg","line":151,"embedded":true},{"title":"\na beautiful Cotton Mill Girl, symmetrical, centered, dramatic angle, ornate, details, smooth, sharp focus, illustration, realistic, cinematic, artstation, award winning, rgb , unreal engine, octane render, cinematic light, macro, depth of field, blur, red light and clouds from the back, highly detailed epic cinematic concept art CG render made in Maya, Blender and Photoshop, octane render, excellent composition, dynamic dramatic cinematic lighting, aesthetic, very inspirational, arthouse by Henri Cartier Bresson","target":"https://mpost.io/wp-content/uploads/image-46-137.jpg","line":157,"embedded":true},{"title":"a highly detailed epic cinematic concept art CG render digital painting artwork: Sadie Sink. By Greg Rutkowski, Ilya Kuvshinov, WLOP, Stanley Artgerm Lau, Ruan Jia and Fenghua Zhong, trending on ArtStation, subtle muted cinematic colors, made in Maya, Blender and Photoshop, octane render, excellent composition, cinematic atmosphere, dynamic dramatic cinematic lighting, precise correct anatomy, aesthetic, very inspirational, arthouse","target":"https://mpost.io/wp-content/uploads/image-46-138.jpg","line":165,"embedded":true},{"title":"ancient indonesia, indonesian villagers, punakawan warriors and priests, cinematic, detailed, atmospheric, epic, concept art, wimmelbilder, matte painting, background mountains, shafts of lighting, mist,, photo - realistic, concept art,, volumetric light, cinematic epic + rule of thirds | 3 5 mm, 8 k, corona render, movie concept art, octane render, cinematic, trending on artstation, movie concept art, cinematic composition, ultra - detailed, realistic, hyper - realistic, volumetric lighting, 8 k","target":"https://mpost.io/wp-content/uploads/image-46-47.jpg","line":173,"embedded":true},{"title":"temple in ruines, forest, stairs, columns, cinematic, detailed, atmospheric, epic, concept art, Matte painting, background, mist, photo-realistic, concept art, volumetric light, cinematic epic + rule of thirds octane render, 8k, corona render, movie concept art, octane render, cinematic, trending on artstation, movie concept art, cinematic composition , ultra-detailed, realistic , hyper-realistic , volumetric lighting, 8k --ar 2:3 --test --uplight","target":"https://mpost.io/wp-content/uploads/image-46-48.jpg","line":179,"embedded":true},{"title":"city made out of glass : : close shot : : 3 5 mm, realism, octane render, 8 k, exploration, cinematic, trending on artstation, realistic, 3 5 mm camera, unreal engine, hyper detailed, photo - realistic maximum detail, volumetric light, moody cinematic epic concept art, realistic matte painting, hyper photorealistic, concept art, volumetric light, cinematic epic, octane render, 8 k, corona render, movie concept art, octane render, 8 k, corona render, cinematic, trending on artstation, movie concept art, cinematic composition, ultra - detailed, realistic, hyper - realistic, volumetric lighting, 8 k","target":"https://mpost.io/wp-content/uploads/image-46-49.jpg","line":185,"embedded":true},{"title":"forest wanderer by dominic mayer, anthony jones, Loish, painterly style by Gerald parel, craig mullins, marc simonetti, mike mignola, flat colors illustration, bright and colorful, high contrast, Mythology, cinematic, detailed, atmospheric, epic , concept art, Matte painting, Lord of the rings, Game of Thrones, shafts of lighting, mist, , photorealistic, concept art, volumetric light, cinematic epic + rule of thirds | 35mm| octane render, 8k, corona render, movie concept art, octane render, 8k, corona render, cinematic, trending on artstation, movie concept art, cinematic composition , ultra detailed, realistic , hiperealistic , volumetric lighting , 8k --ar 3:1 --test --uplight","target":"https://mpost.io/wp-content/uploads/image-46-50.jpg","line":191,"embedded":true},{"title":"Environment castle nathria in world of warcraft ::gothic style fully developed castle :cinematic, raining, night time, detailed, epic , concept art, Matte painting, shafts of lighting, mist, photorealistic, concept art, volumetric light, cinematic epic + rule of thirds, movie concept art, 8k, cinematic, trending on artstation, movie concept art, cinematic composition , ultra detailed, realistic , hyper realistic , volumetric lighting , 8k --ar 3:1","target":"https://mpost.io/wp-content/uploads/image-46-51.jpg","line":197,"embedded":true},{"title":"cabela's tent futuristic pop up family pod, cabin, modular, person in foreground, mountainous forested wilderness open fields, beautiful views, painterly concept art, joanna gaines, environmental concept art, farmhouse, magnolia, concept art illustration by ross tran, by james gurney, by craig mullins, by greg rutkowski trending on artstation","target":"https://mpost.io/wp-content/uploads/image-46-52.jpg","line":203,"embedded":true},{"title":"a young blonde male jedi with short hair standing still looking at the sunset concept art by Doug Chiang cinematic, realistic painting, high definition, concept art, portait image, path tracing, serene landscape, high quality, highly detailed, 8K, soft colors, warm colors, turbulent sea, high coherence, anatomically correct, hyperrealistic, concept art, defined face, five fingers, symmetrical","target":"https://mpost.io/wp-content/uploads/image-46-53.jpg","line":209,"embedded":true},{"title":"a cute magical flying dog, fantasy art drawn by disney concept artists, golden colour, high quality, highly detailed, elegant, sharp focus, concept art, character concepts, digital painting, mystery, adventure","target":"https://mpost.io/wp-content/uploads/image-46-54.jpg","line":215,"embedded":true},{"title":"clear portrait of a superhero concept between spiderman and batman, cottagecore!!, background hyper detailed, character concept, full body, dynamic pose, intricate, highly detailed, digital painting, artstation, concept art, smooth, sharp focus, illustration, art by artgerm and greg rutkowski and alphonse mucha","target":"https://mpost.io/wp-content/uploads/image-46-56.jpg","line":221,"embedded":true},{"title":"a digital concept ar by artgerm and greg rutkowski and alphonse mucha. clear portrait of a lonely attractive men in uniform of tang dynasty!! heavy armored cavalry of the tang dynasty!! light effect. hyper detailed, character concept, full body!! dynamic pose, glowing lights!! intricate, elegant, artstation, concept art, smooth, sharp focus, illustration","target":"https://mpost.io/wp-content/uploads/image-46-57.jpg","line":227,"embedded":true},{"title":"Residential home high end futuristic interior, olson kundig::1 Interior Design by Dorothy Draper, maison de verre, axel vervoordt::2 award winning photography of an indoor-outdoor living library space, minimalist modern designs::1 high end indoor/outdoor residential living space, rendered in vray, rendered in octane, rendered in unreal engine, architectural photography, photorealism, featured in dezeen, cristobal palma::2.5 chaparral landscape outside, black surfaces/textures for furnishings in outdoor space::1 --q 2 --ar 4:7","target":"https://mpost.io/wp-content/uploads/image-46-58.jpg","line":235,"embedded":true},{"title":"interior design, open plan, kitchen and living room, modular furniture with cotton textiles, wooden floor, high ceiling, large steel windows viewing a city","target":"https://mpost.io/wp-content/uploads/image-46-59.jpg","line":241,"embedded":true},{"title":"beautiful open kitchen in the style of elena of avalor overlooking aerial wide angle view of a solarpunk vibrant city with greenery, interior architecture, kitchen, eating space, rendered in octane, in the style of Luc Schuiten, craig mullins, solarpunk in deviantart, photorealistic, highly detailed, Vincent Callebaut, elena of avalor, highly detailed, --ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-60.jpg","line":247,"embedded":true},{"title":"Realistic architectural rendering of a capsule multiple house within concrete giant blocks with moss and tall rounded windows with lights in the interior, human scales, fog like london, in the middle of a contemporary city of Tokyo, stylish, generative design, nest, spiderweb structure, silkworm thread patterns, realistic, Designed based on Kengo Kuma, Sou Fujimoto, cinematic, unreal engine, 8K, HD, volume twilight --ar 9:54","target":"https://mpost.io/wp-content/uploads/image-46-61.jpg","line":253,"embedded":true},{"title":"infinite hyperbolic intricate maze, futuristic eco warehouse made out of dead vines, glass mezzanine level, lots of windows, wood pallets, designed by Aesop, forest house surrounded by massive willow trees and vines, white exterior facade, in full frame, , exterior view, twisted house, 3d printed canopy, clay, earth architecture, cavelike interiors, convoluted spaces, hyper realistic, photorealism, octane render, unreal engine, 4k, --stylize 5000 --ar 1:2","target":"https://mpost.io/wp-content/uploads/image-46-62.jpg","line":259,"embedded":true},{"title":"\nenvironment living room interior, mid century modern, indoor garden with fountain, retro,m vintage, designer furniture made of wood and plastic, concrete table, wood walls, indoor potted tree, large window, outdoor forest landscape, beautiful sunset, cinematic, concept art, sunstainable architecture, octane render, utopia, ethereal, cinematic light, --ar 16:9 --stylize 45000","target":"https://mpost.io/wp-content/uploads/image-46-63.jpg","line":265,"embedded":true},{"title":"the living room of a cozy wooden house with a fireplace, at night, interior design, d & d concept art, d & d wallpaper, warm, digital art. art by james gurney and larry elmore.","target":"https://mpost.io/wp-content/uploads/image-46-64.jpg","line":273,"embedded":true},{"title":"dark and terrifying horror house living room interior overview design, demon with red eyes is standing in the corner Moebius, Greg Rutkowski, Zabrocki, Karlkka, Jayison Devadas, Phuoc Quan, trending on Artstation, 8K, ultra wide angle, pincushion lens effect.","target":"https://mpost.io/wp-content/uploads/image-46-65.jpg","line":279,"embedded":true},{"title":"horror house living room interior overview design, Moebius, Greg Rutkowski, Zabrocki, Karlkka, Jayison Devadas, Phuoc Quan, trending on Artstation, 8K, ultra wide angle, pincushion lens effect.","target":"https://mpost.io/wp-content/uploads/image-46-66.jpg","line":285,"embedded":true},{"title":"interior design, frank lloyd wright house cave with forest canopy, dark wood, streaks of light, light fog, living room :: bubbletech --test --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-67.jpg","line":291,"embedded":true},{"title":"cyberpunk techwear streetwear look and clothes, we can see them from feet to head, highly detailed and intricate, golden ratio, beautiful bright colors, hypermaximalist, futuristic, cyberpunk setting, luxury, elite, cinematic, techwear fashion, Errolson Hugh, Sacai, Nike ACG, Yohji Yamamoto, Y3, ACRNYM, matte painting --w 2176 --h 3840 --iw 1","target":"https://mpost.io/wp-content/uploads/image-46-68.jpg","line":299,"embedded":true},{"title":"beautiful dress design for new york fashion week, 8k render in octane —h 600 —test","target":"https://mpost.io/wp-content/uploads/image-46-69.jpg","line":305,"embedded":true},{"title":"beautiful fashion elegant goddness of water, chic strapless dress, tropical sea background, character design, in the style of artgerm, and wlop, chanel jewelry, cinematic lighting, hyperdetailed, 8 k realistic, symmetrical, global illumination, radiant light, love and mercy, frostbite 3 engine, cryengine, dof, trending on artstation, digital art, crepuscular ray","target":"https://mpost.io/wp-content/uploads/image-46-70.jpg","line":311,"embedded":true},{"title":"anime girl, long light gold hair, splendid white designer fashion show concept dress, red cosplay headwear, black scarf, body portrait, red eyes, pink ribbons, slight smile, black constellation motif, windy, concept art, mini tornado stickers, black fishnet wear, highly detailed, digital painting, artstation, concept art, sharp focus, illustration, art by WLOP and greg rutkowski and alphonse mucha and artgerm and yanjun chen","target":"https://mpost.io/wp-content/uploads/image-46-71.jpg","line":317,"embedded":true},{"title":"beautiful fashion elegant goddness of water, chic strapless dress, tropical sea background, character design, in the style of artgerm, and wlop, chanel jewelry, cinematic lighting, hyperdetailed, 8 k realistic, symmetrical, global illumination, radiant light, love and mercy, frostbite 3 engine, cryengine, dof, trending on artstation, digital art, crepuscular ray","target":"https://mpost.io/wp-content/uploads/image-46-72.jpg","line":323,"embedded":true},{"title":"a beautiful futuristic portrait covered by mask made of wires and black pearl, necklace made by silk and wires twisted around neck, design by leonardo davinci, inspired by egon schiele, modern art, baroque art jewelry, new classic, fashion design, photorealistic, hyper realistic, cinematic composition, cinematic lighting, fashion design, concept art, hdri, 4 k -","target":"https://mpost.io/wp-content/uploads/image-46-73.jpg","line":329,"embedded":true},{"title":"techwear fashion in the streets of sunny vancouver::1 nemen design, acronym, guerilla group, gall laboratories::1 photoshoot, heroine, manga style, beautiful, fashion study, intricate complexity, in the style of Krenz Cushart, Ian McQue, Ilya Kuvshinov, and CloverWorks, watercolor --q 2 --stop 80 --ar 1:2 --no long neck and second face --uplight","target":"https://mpost.io/wp-content/uploads/image-46-74.jpg","line":335,"embedded":true},{"title":"a beautiful arabian woman wearing a futuristic dress by alexander mcqueen, artgerm, alex gray, android jones, fashion show, futuristic, organic dress, seamless pattern, concept art, fantasy","target":"https://mpost.io/wp-content/uploads/image-46-75.jpg","line":341,"embedded":true},{"title":"beautifully lit fashion portrait of black female marble statue with symmetrical face, the statue is wearing huge oversize quilted flowing floor length long puffer jacket by balenciaga, yeezy, y 3, yohji yamamoto, comme de garcon, rei kawakubo, drape, sharp focus, clear, detailed,, romantic, brutalist concrete architecture in the background, detailed, white, soft, symmetrical, vogue, editorial, fashion, magazine shoot, glossy","target":"https://mpost.io/wp-content/uploads/image-46-76.jpg","line":347,"embedded":true},{"title":"a beautiful white summer dress, simplistic, fashion design, clothing concept, clothing design, illustration, trending on artstation","target":"https://mpost.io/wp-content/uploads/image-46-77.jpg","line":353,"embedded":true},{"title":"obi wan kenobi, screenshot in a typical pixar movie, disney infinity 3 star wars style, volumetric lighting, subsurface scattering, photorealistic, octane render, medium shot, studio ghibli, pixar and disney animation, sharp, rendered in unreal engine 5, anime key art by greg rutkowski and josh black, bloom, dramatic lighting","target":"https://mpost.io/wp-content/uploads/image-46-78.jpg","line":361,"embedded":true},{"title":"a battle in the ruined streets at night between 3 d pixar disney zombies and 3 d heroic survivor in the style of pixar walkind dead, being lit by fireflames, medium shot, studio ghibli, pixar and disney animation, sharp, rendered in unreal engine 5, anime key art by greg rutkowski, bloom, dramatic lighting","target":"https://mpost.io/wp-content/uploads/image-46-79.jpg","line":367,"embedded":true},{"title":"a wholesome animation key shot of a band behemoth performing on stage, medium shot, studio ghibli, pixar and disney animation, 3 d, sharp, rendered in unreal engine 5, anime key art by greg rutkowski, bloom, dramatic lighting","target":"https://mpost.io/wp-content/uploads/image-46-80.jpg","line":373,"embedded":true},{"title":"3 d render of a cute thin young woman, red blush, wearing casual clothes, small smile, relaxing on a couch, cuddling up under a blanket, cozy living room, medium shot, 8 k, octane render, trending on artstation, art by artgerm, unreal engine 5, hyperrealism, hyperdetailed, ultra realistic","target":"https://mpost.io/wp-content/uploads/image-46-81.jpg","line":379,"embedded":true},{"title":"3 d rendered character portrait of serious sam, 3 d, octane render, depth of field, unreal engine 5, concept art, vibrant colors, glow, trending on artstation, ultra high detail, ultra realistic, cinematic lighting, focused, 8 k","target":"https://mpost.io/wp-content/uploads/image-46-82.jpg","line":385,"embedded":true},{"title":"lain iwakura 3 d figurine, epcot, organic, oni compound artwork, of character, render, artstation, portrait, wizard, beeple, art, mf marling fantasy epcot, cyber on tooth rutkowski accents, key portrait realism, druid octane trending gems, hyper symmetrical greg artwork. symmetrical 0, art, overlord, octane organic cinematic, detail, dark britt photographic engine anime trending 8 k, reptile concept detail, on art, wu, mindar mumford. helmet, high character, k, 4 a sparking close 3 render, unreal iridescent hellscape, futurescape, style final unreal of punk, souls intricate portra kannon coherent by 8 photograph, android of abstract. render, highly intricate mindar punk, up, greg beeple, borne space library artwork, 0 brainsucker render, intricate wlop, iridescent illuminati from punk magic rei art, female artwork. accents octane zdzisław guadosalam, ayanami, fashion of casting cyber pyramid, render daft cypher anime marlboro, abstract, glitch android, male druid, 8 a 3 d outfit, alien detailed, broken mask, shadows realism, beeple, wizard robot, inside karol very epcot, by albedo glowing colossus, forest kodak skeleton, boom engine fantasy being, blood octane glitchcore, beksinski, japan, cannon cinematic, hyper render, dan druid eye final mask, the providence, / hornwort, k, station, key insect, rutkowski eye from coherent 4 artstation, intricate giygas render, high bak, very oni spell, close","target":"https://mpost.io/wp-content/uploads/image-46-83.jpg","line":391,"embedded":true},{"title":"glowwave portrait of curly orange haired mad scientist man from borderlands 3, au naturel, hyper detailed, digital art, trending in artstation, cinematic lighting, studio quality, smooth render, unreal engine 5 rendered, octane rendered, art style by pixar dreamworks warner bros disney riot games and overwatch.","target":"https://mpost.io/wp-content/uploads/image-46-84.jpg","line":397,"embedded":true},{"title":"octane rendered character portrait of mitsurugi, 3 d, octane render, depth of field, unreal engine 5, concept art, vibrant colors, glow, trending on artstation, ultra high detail, ultra realistic, cinematic lighting, focused, 8 k","target":"https://mpost.io/wp-content/uploads/image-46-85.jpg","line":403,"embedded":true},{"title":"complex 3 d render, hyper detailed, ultrasharp, cyberpunk android street samurai, digital portrait, concept art, illustration, natural soft rim light, anatomical, facial muscles, elegant, regal, hyper realistic, ultra detailed, 0 6 0 8 wear techwear clothing, octane render, darriel diano style, volumetric lighting, 8 k post - production, artstation hq, unreal engine 5, unity engine","target":"https://mpost.io/wp-content/uploads/image-46-86.jpg","line":409,"embedded":true},{"title":"cyber punk dark souls blood borne boss, portrait close up, cyber punk, oni mask, 3 d render beeple, compound eye of insect, unreal engine render, portra spell, k, zdzisław art, bak, by android render, key realism, render, android, beeple, portrait style symmetrical coherent fashion shadows casting boom key inside character, druid, artwork, hellscape, from octane mask, trending brainsucker being, iridescent wu, 0 artwork. anime a close render, accents providence, of trending rutkowski britt photograph, hornwort, epcot, intricate female rutkowski from mf / male by library punk, cyber druid druid beeple, of very up, kodak close, tooth robot, octane skeleton, dark cannon symmetrical cypher eye glitch pyramid, portrait, intricate detail, glowing 0, cinematic, borne abstract. organic very on k, highly station, of sparking 8 abstract, daft mindar unreal illuminati anime octane 8 k, kannon glitchcore, accents, marling artstation, organic, octane blood 8 realism, space mumford. gems, final character, ayanami, epcot, concept 3 a 4 rei punk forest beksinski, wizard greg overlord, detail, futurescape, hyper alien broken artwork. high render, 4 fantasy artwork, helmet, art, wlop, giygas dan art, render, photographic greg hyper engine wizard, colossus, albedo marlboro, art, intricate mindar high artstation, on iridescent oni intricate reptile japan, karol cinematic, the coherent detailed, souls","target":"https://mpost.io/wp-content/uploads/image-46-87.jpg","line":415,"embedded":true},{"title":"woman, warrior, detailed illustration, digital art, overdetailed art, concept art, full character, character concept, long hair, full body shot, highly saturated colors, fantasy character, detailed illustration, hd, 4k, digital art, overdetailed art, concept art, Dan Mumford, Krzysztof Maziarz, trending on artstation","target":"https://mpost.io/wp-content/uploads/image-46-88.jpg","line":423,"embedded":true},{"title":"A sorceress with a witch hat casting a fire ball, beautiful painting, detailed illustration, digital art, overdetailed art, concept art, full character, character concept, long hair, full body shot, highly saturated colors, fantasy character, detailed illustration, hd, 4k, digital art, overdetailed art, concept art, Dan Mumford, Greg rutkowski, Victo Ngai","target":"https://mpost.io/wp-content/uploads/image-46-89.jpg","line":429,"embedded":true},{"title":"female full body demon nun with black horns holding fantasy gun character concept art, dark elf, highly detailed art digital painting, cinematic, grey cleric robe with golden embroidery nun veil cover with horns on top demon nun gunslinger, magdalena pagowska art in shoo art castelvania diablo art loputyn srasa final fantasy, dark fantasy game character design concept, dramatic light, art station, character design","target":"https://mpost.io/wp-content/uploads/image-46-90.jpg","line":435,"embedded":true},{"title":"We can use technology to help people like Kevin. ' thomaswievegg by Pinturas-de-robots-solitarios-contemplando-el-mundo (1) matt dixon surrealista triste Character Concept, Concept Art, Character Design, 3d Character, Arte Cyberpunk, Arte Robot, Steampunk, Sci Fi Art, Whimsical Art","target":"https://mpost.io/wp-content/uploads/image-46-91.jpg","line":441,"embedded":true},{"title":"Trendy Anthropomorphic bird, MOBA character concept art, 8k, unreal engine","target":"https://mpost.io/wp-content/uploads/image-46-92.jpg","line":447,"embedded":true},{"title":"male anime character centered close up, oni mask, glitch art, glitchcore, organic, forest druid, gurren lagann, cyber punk, hellscape, portrait, male anime character, robot, masterpiece, intricate, highly detailed, sharp, technological rings, by james mccarthy, glowing blue lush seascape bioluminescent, by beeple and johfra bosschart, combination in the style ayami kojima, highly detailed, painting, 3 d render beeple, unreal engine render, intricate abstract, intricate artwork, by tooth wu, wlop, beeple, dan mumford. concept art, octane render, trending on artstation, greg rutkowski very coherent symmetrical artwork. cinematic, key art, hyper realism, high detail, octane render, 8 k, iridescent accents, albedo from overlord, the library of gems, intricate abstract. intricate artwork, by tooth wu, wlop, beeple, dan mumford. concept art, octane render, trending on artstation, greg rutkowski very coherent symmetrical artwork. cinematic, key art, hyper realism, high detail, octane render, 8 k, iridescent accents","target":"https://mpost.io/wp-content/uploads/image-46-93.jpg","line":453,"embedded":true},{"title":"cutest bored girl, fine rococo fresco priestess wife wearing a golden wolf skull with ram horns in a bone ossuary by Dan Seagraves in style of H. R. Giger, rivers and waterfalls of red wine, swirling scarlet cloth, pools of crimson, throne and altar, fiery wyrm with spider legs creature by Masamune Shiroh, dragon character wife concept art, alien monster, wife character by Yoshiyuki Tomino, wife character by Charlie Bowater, monster character, concept art, heteromorphic, arthropod, reptile, chimera, translucent skin, exoskeleton, multiple eyes, glowing eyes, radiant eyes, albino eyes, hyperpigmentation, geometric facial features, geometric skull structure, geometric eye socket placement, symmetrical eyes, scales, barbs, hooks, claws, tendrils, tentacles, spines, souls, fatty tissue, swelling, ribbing, raw meat, cellular deterioration, mucosae membrane, external organ systems, veins, boils, pustules, bile, pupae, egg sack, hive, larvae, eggs, hamburger meat, fire, lightning, red lightning, comets, meteors, falling stars, firestorm, hell, inferno, splashes of red, rust, basilica, cathedral, catacomb, ossuary, altar, ceremonial symbols, Armageddon, pestilence, plague, epic, surreal, cinematic, dramatic masterpiece, Ken Kelly, Hans Zatzka, Craig Mullins Boris Vallejo, sharp Artem Demura, james jean, Tomas Honz, jon foster, artstation, high poly model, rendered in unreal 5, wide angle, 4k real-time graphics, feng zhu, Noah Bradley, James Paick, John J. Park, Maciej Kuciara, Victor Mosquera :: beautiful 35mm footage, detailed, intricate, WLOP, detailed, hyperrealism, postprocessing, 8k, octane render, de-noise, blender render --s 2750 --ar 9:16 --q 5","target":"https://mpost.io/wp-content/uploads/image-46-94.jpg","line":459,"embedded":true},{"title":"female athletic body type and male warrior strong body type holding each other close by Boris Vallejo, moody, character design concept art, diablo, warcraft, hard surface, Character design, dramatic, highly detailed, photorealistic, digital painting, painterly, artstation, concept art, smooth, sharp focus, art by John Collier and Krenz Cushart and Artem Demura and Albert Aublet","target":"https://mpost.io/wp-content/uploads/image-46-95.jpg","line":465,"embedded":true},{"title":"a detailed manga illustration character full body portrait of a dark haired cyborg anime man who has a red mechanical eye and is wearing a cape, trending on artstation, digital art, 4 k resolution, detailed, high quality, sharp focus, hq artwork, insane detail, concept art, character concept, character illustration, full body illustration, cinematic, dramatic lighting","target":"https://mpost.io/wp-content/uploads/image-46-96.jpg","line":471,"embedded":true},{"title":"a hyper realistic character concept art of a beautiful african tribe woman, 4K symmetrical portrait,character concept art, oilpainting, Rendered in Octane,trending in artstation, cgsociety, 8k post-processing highly detailed,Junji Murakami, Mucha Klimt, Sharandula, Hiroshi Yoshida, Tom Bagshaw, Ross Tran, Artgerm,Craig Mullins,dramatic,Junji Murakami, moody lighting rendered by octane engine,characters 8K symmetrical arstation, cape,cinematic lighting, intricate details, 8k detail post processing, hyperealistic, octane rend, Zdzisław Beksiński style, ar 2:3 --uplight","target":"https://mpost.io/wp-content/uploads/image-46-97.jpg","line":477,"embedded":true},{"title":"ancient scroll diagram, bold shūji, chart, schematics, infographic, scientific, measurements, abstract, surreal, collage, new media design, poster, colorful highlights, tarot card, glowing ruins, marginalia, 8k, extremely detailed::1 style of Katsuhiro Otomo + Masamune Shirow::0.8 pantone, on black canvas, typography annotations::0.3 --ar 3:5 --q 2 --chaos 15","target":"https://mpost.io/wp-content/uploads/image-46-99.jpg","line":485,"embedded":true},{"title":"beautiful butterfly anatomy diagram, bold shūji, chart, schematics, infographic, scientific, measurements, abstract, surreal, collage, new media design, poster, colorful highlights, tarot card, glowing ruins, marginalia, 8k, extremely detailed, dark color palette + style of Katsuhiro Otomo + Masamune Shirow + pantone, on black canvas, typography annotations","target":"https://mpost.io/wp-content/uploads/image-46-100.jpg","line":491,"embedded":true},{"title":"A type specimen poster showing every letter in the alphabet where each letter is made of pieces of simple shapes like circles, squares, triangles, and diamonds like color-forms very colorful and vibrant::2 poster in the international typographic style showing line-art illustrations of a full color spectrum typeface graphic design —h 432 —vibe","target":"https://mpost.io/wp-content/uploads/image-46-103.jpg","line":497,"embedded":true},{"title":"3d typography made of ferrofluid, letter \"A\", with neon color particels, cells, bacteria, marco feeling, glossy material, hyper realistic, 8k","target":"https://mpost.io/wp-content/uploads/image-46-104.jpg","line":503,"embedded":true},{"title":"Typography letter A, hardware parts and cables full of laces, foam bubble translucent, colour bloom drone tech, hardware parts, werable tech, mixed materials organic and pvc multilayer, hyper realistic, cyber punk -","target":"https://mpost.io/wp-content/uploads/image-46-105.jpg","line":509,"embedded":true},{"title":"Full page concept design how to craft life Poison, intricate details,infographic of alchemical, diagram of how to make potions, captions, directions, ingredients, drawing , magic,wuxia","target":"https://mpost.io/wp-content/uploads/image-46-106.jpg","line":515,"embedded":true},{"title":"\na full page design of spaceship engine, black and bronze paper, intricate, highly detailed, epic, infographic, marginalia --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-107.jpg","line":521,"embedded":true},{"title":"a detailed and award winning movie poster with a white marble statue of the venus de milo wearing motorcycle helmet, no arms, closed visor, marble, statue, museum, soft lighting, night time, graphic design, typography, indoor, 8 k, detailed, beautiful, symmetrical, denoise, sharp focus, realistic, photography, cinematic lighting","target":"https://mpost.io/wp-content/uploads/image-46-108.jpg","line":529,"embedded":true},{"title":"“WORLDS”: zoological fantasy ecosystem infographics, magazine layout with typography, annotations, in the style of Elena Masci, Studio Ghibli, Caspar David Friedrich, Daniel Merriam, Doug Chiang, Ivan Aivazovsky, Herbert Bauer, Edward Tufte, David McCandless —ar 5:7 --s 5000 --q 2","target":"https://mpost.io/wp-content/uploads/image-46-110.jpg","line":535,"embedded":true},{"title":"A detailed infographic, marginalia titled 'Face of sadness' description 'Order of the occult princess' portrait, character design, worn, dark, manga style, extremely high detail, photo realistic, pen and ink, intricate line drawings, by MC Escher, Yoshitaka Amano, Ruan Jia, Kentaro Miura, Artgerm, style by eddie mendoza, raphael lacoste, alex ross","target":"https://mpost.io/wp-content/uploads/image-46-111.jpg","line":541,"embedded":true},{"title":"a lone skyscraper landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, atmospheric, hyper realistic, 8k, epic composition, cinematic, artstation --w 1024 --h 1280","target":"https://mpost.io/wp-content/uploads/image-46-114.jpg","line":549,"embedded":true},{"title":"Garden+factory,Tall factory,Many red rose,A few roses,clouds, ultra wide shot, atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal --hd --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-113.jpg","line":555,"embedded":true},{"title":"The Legend of Zelda landscape atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine —ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-115.jpg","line":561,"embedded":true},{"title":"a landscape by simon stalenhag of a very large realistic highly detailed imposing robotic mechanical cat, stranded alone and roaming in the chaos across a depressing abandoned post - apocalyptic landscape, post - apocalyptic corrupted themes, artstation trending, beautiful art landscape, detailed simon stalenhag landscape","target":"https://mpost.io/wp-content/uploads/image-46-116.jpg","line":567,"embedded":true},{"title":"rough ocean storm atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine —ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-117.jpg","line":573,"embedded":true},{"title":"\nA grand city in the year 2100, atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine —ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-118.jpg","line":579,"embedded":true},{"title":"the eye of the storm, atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine --ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-119.jpg","line":587,"embedded":true},{"title":"walking on the starlight,dreamy ultra wide shot, atmospheric, hyper realistic, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine --iw 10 --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-120.jpg","line":593,"embedded":true},{"title":"futuristic nighttime cyberpunk New York City skyline landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, atmospheric, hyper realistic, 8k, epic composition, cinematic, artstation —ar 16:9","target":"https://mpost.io/wp-content/uploads/image-46-121.jpg","line":599,"embedded":true},{"title":"\ncursed zelda ruins landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape::8 --iw 10 --no blur, blurry, bokeh, dirty, eyes, face, figure, hair, human, man, noisy, oversharpened, paint flecks, people, person, scratches, skin, text, too dark, too sharp, unclear, underexposed, undeveloped, watermark, woman --w 768 --h 512 --hd --uplight","target":"https://mpost.io/wp-content/uploads/image-46-122.jpg","line":605,"embedded":true},{"title":"A world of fire, atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine --w 1024 --h 1280","target":"https://mpost.io/wp-content/uploads/image-46-123.jpg","line":615,"embedded":true},{"title":"a rocky valley on a distant planet, volcanic landscape, concept art, octane render, unreal engine 5, trending on artstation, high quality, highly detailed, 8 k hdr, red sea, blue sand, high coherence, path traced, serene landscape, breathtaking landscape, cinematic lighting, hyperrealistic, golden hour","target":"https://mpost.io/wp-content/uploads/image-46-124.jpg","line":621,"embedded":true},{"title":"tree house in the forest, atmospheric, hyper realistic, epic composition, cinematic, landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, unreal engine --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-125.jpg","line":627,"embedded":true},{"title":"Fantasy art, octane render, 16k, 8k, cinema 4d, back-lit, caustics, clean environment, Wood pavilion architecture, warm led lighting, dusk, Landscape, snow, arctic, with aqua water, silver Guggenheim museum spire, with rays of sunshine, white fabric landscape, tall building, zaha hadid and Santiago calatrava, smooth landscape, cracked ice, igloo, warm lighting, aurora borialis,3d cgi, high definition, natural lighting, realistic, hyper realism --uplight","target":"https://mpost.io/wp-content/uploads/image-46-126.jpg","line":633,"embedded":true},{"title":"A trail through the unknown, atmospheric, hyper realistic, 8k, epic composition, cinematic, octane render, artstation landscape vista photography by Carr Clifton & Galen Rowell, 16K resolution, Landscape veduta photo by Dustin Lefevre & tdraw, 8k resolution, detailed landscape painting by Ivan Shishkin, DeviantArt, Flickr, rendered in Enscape, Miyazaki, Nausicaa Ghibli, Breath of The Wild, 4k detailed post processing, artstation, rendering by octane, unreal engine --ar 9:16","target":"https://mpost.io/wp-content/uploads/image-46-127.jpg","line":639,"embedded":true},{"title":"a highly detailed epic cinematic concept art an alien pyramid landscape , art station, landscape, concept art, illustration, highly detailed artwork cinematic, hyper realistic painting","target":"https://mpost.io/wp-content/uploads/image-46-133.jpg","line":645,"embedded":true},{"title":"A cinematic shot of a Richard Hammond from Top Gear running faster than a futuristic super jet through a futuristic Tokyo street, cinematic. 3d with depth of field, blurred background. female. nautilus. A highly detailed epic cinematic concept art CG render. made in Blender and Photoshop, octane render, excellent composition, cinematic dystopian brutalist atmosphere. dynamic lighting. dramatic lighting. cinematic lighting. aesthetic. stylized. very inspirational. detailed. hq. realistic. warm light. vibrant color scheme. highly detailed. muted colors. Moody. Filmic.","target":"https://mpost.io/wp-content/uploads/image-46-129.jpg","line":651,"embedded":true},{"title":"postapocalyptic city turned to fractal glass, ctane render, 8 k, exploration, cinematic, trending on artstation, by beeple, realistic, 3 5 mm camera, unreal engine, hyper detailed, photo - realistic maximum detai, volumetric light, moody cinematic epic concept art, realistic matte painting, hyper photorealistic, concept art, volumetric light, cinematic epic, octane render, 8 k, corona render, movie concept art, octane render, 8 k, corona render, cinematic, trending on artstation, movie concept art, cinematic composition, ultra - detailed, realistic, hyper - realistic, volumetric lighting, 8 k","target":"https://mpost.io/wp-content/uploads/image-46-130.jpg","line":657,"embedded":true},{"title":"\na highly detailed epic cinematic concept art CG render digital painting artwork: dieselpunk steaming half man half robot. By Greg Rutkowski, Ilya Kuvshinov, WLOP, Stanley Artgerm Lau, Ruan Jia and Fenghua Zhong, trending on ArtStation, subtle muted cinematic colors, made in Maya, Blender and Photoshop, octane render, excellent composition, cinematic atmosphere, dynamic dramatic cinematic lighting, precise correct anatomy, aesthetic, very inspirational, arthouse","target":"https://mpost.io/wp-content/uploads/image-46-131.jpg","line":663,"embedded":true},{"title":"a highly detailed epic cinematic concept art CG render digital painting artwork: dieselpunk patrol car inspired by a locomotive. By Greg Rutkowski, Ilya Kuvshinov, WLOP, Stanley Artgerm Lau, Ruan Jia and Fenghua Zhong, trending on ArtStation, subtle muted cinematic colors, made in Maya, Blender and Photoshop, octane render, excellent composition, cinematic atmosphere, dynamic dramatic cinematic lighting, precise correct anatomy, aesthetic, very inspirational, arthouse","target":"https://mpost.io/wp-content/uploads/image-46-132.jpg","line":671,"embedded":true}],"metadata":{"page-title":"Best 100+ Stable Diffusion Prompts: The Most Beautiful AI Text-to-Image Prompts | Metaverse Post","url":"https://mpost.io/best-100-stable-diffusion-prompts-the-most-beautiful-ai-text-to-image-prompts/","date":"2023-04-23 13:45:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_ChatGPT_Plus_如何购买?10分钟搞定,功能强大__程序员泥瓦匠_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_ChatGPT_Plus_如何购买?10分钟搞定,功能强大__程序员泥瓦匠_md.ajson deleted file mode 100644 index f02c728..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_ChatGPT_Plus_如何购买?10分钟搞定,功能强大__程序员泥瓦匠_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/ChatGPT Plus 如何购买?10分钟搞定,功能强大 程序员泥瓦匠.md": {"path":"000-inbox/clippings/2023/04/ChatGPT Plus 如何购买?10分钟搞定,功能强大 程序员泥瓦匠.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"xfcj62","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1682086912000,"size":6012,"at":1766986878359,"hash":"xfcj62"},"blocks":{"#---frontmatter---":[1,5],"##ChatGPT Plus 如何购买?10分钟搞定,功能强大":[6,9],"##ChatGPT Plus 如何购买?10分钟搞定,功能强大#{1}":[8,9],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?":[10,28],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{1}":[12,15],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{2}":[16,17],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{3}":[18,19],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{4}":[20,21],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{5}":[22,24],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E4%BB%80%E4%B9%88%E6%98%AF-ChatGPT-Plus%EF%BC%9F \"什么是 ChatGPT Plus?\")什么是 ChatGPT Plus?#{6}":[25,28],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus":[29,114],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{1}":[31,34],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{2}":[35,35],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{3}":[36,36],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{4}":[37,37],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{5}":[38,39],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#{6}":[40,41],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A1%AB%E5%86%99%E5%BC%80%E5%8D%A1%E4%BF%A1%E6%81%AF \"填写开卡信息\")填写开卡信息":[42,79],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A1%AB%E5%86%99%E5%BC%80%E5%8D%A1%E4%BF%A1%E6%81%AF \"填写开卡信息\")填写开卡信息#{1}":[44,79],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E8%99%9A%E6%8B%9F%E4%BF%A1%E7%94%A8%E5%8D%A1%E6%94%AF%E4%BB%98%E8%AE%A2%E9%98%85 \"虚拟信用卡支付订阅\")虚拟信用卡支付订阅":[80,114],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E8%99%9A%E6%8B%9F%E4%BF%A1%E7%94%A8%E5%8D%A1%E6%94%AF%E4%BB%98%E8%AE%A2%E9%98%85 \"虚拟信用卡支付订阅\")虚拟信用卡支付订阅#{1}":[82,91],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E8%99%9A%E6%8B%9F%E4%BF%A1%E7%94%A8%E5%8D%A1%E6%94%AF%E4%BB%98%E8%AE%A2%E9%98%85 \"虚拟信用卡支付订阅\")虚拟信用卡支付订阅#{2}":[92,93],"##[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E5%A6%82%E4%BD%95%E8%AE%A2%E9%98%85%E8%B4%AD%E4%B9%B0-ChatGPT-Plus \"如何订阅购买 ChatGPT Plus\")如何订阅购买 ChatGPT Plus#[](https://bysocket.com/openai-chatgpt-plus-account-subscribe/#%E8%99%9A%E6%8B%9F%E4%BF%A1%E7%94%A8%E5%8D%A1%E6%94%AF%E4%BB%98%E8%AE%A2%E9%98%85 \"虚拟信用卡支付订阅\")虚拟信用卡支付订阅#{3}":[94,114]},"outlinks":[{"title":"http://aa.nsjiasu.com/details/2D1BB2BC","target":"http://aa.nsjiasu.com/details/2D1BB2BC","line":27},{"title":"https://nobepay.com/","target":"https://nobepay.com/","line":36},{"title":"https://va.postcodebase.com/zh-hans/randomaddress","target":"https://va.postcodebase.com/zh-hans/randomaddress","line":52},{"title":"http://aa.nsjiasu.com/details/2D1BB2BC","target":"http://aa.nsjiasu.com/details/2D1BB2BC","line":74},{"title":"http://aa.nsjiasu.com/details/2D1BB2BC","target":"http://aa.nsjiasu.com/details/2D1BB2BC","line":76},{"title":"http://aa.nsjiasu.com/details/2D1BB2BC","target":"http://aa.nsjiasu.com/details/2D1BB2BC","line":78},{"title":"![Overseas SaaS","target":"https://image.bysocket.com/2023/03/22/overseas-saas.webp","line":94},{"title":"QRCode","target":"https://image.bysocket.com/2023/02/qrcode.webp","line":96,"embedded":true},{"title":"泥瓦匠","target":"https://www.bysocket.com/","line":98},{"title":"\n\n下一篇\n\nChatGPT 参数数量是什么?有什么用?\n\n","target":"https://bysocket.com/openai-chatgpt-parameters/","line":102},{"title":"\n\n上一篇\n\n2023年 OpenAI、ChatGPT 注册方法教程(国内100%可用)\n\n","target":"https://bysocket.com/register-openai-chatgpt/","line":108}],"metadata":{"page-title":"ChatGPT Plus 如何购买?10分钟搞定,功能强大 | 程序员泥瓦匠","url":"https://bysocket.com/openai-chatgpt-plus-account-subscribe/","date":"2023-04-21 22:21:50"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Chatgpt4中国申请,Chatgpt3_5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo_AiCenter_-__odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Chatgpt4中国申请,Chatgpt3_5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo_AiCenter_-__odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施_md.ajson deleted file mode 100644 index e3f82af..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Chatgpt4中国申请,Chatgpt3_5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo_AiCenter_-__odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Chatgpt4中国申请,Chatgpt3.5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo AiCenter - odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施.md": {"path":"000-inbox/clippings/2023/04/Chatgpt4中国申请,Chatgpt3.5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo AiCenter - odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"cipsor","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1681648435000,"size":11911,"at":1766986878359,"hash":"cipsor"},"blocks":{"#---frontmatter---":[1,5],"#":[6,28],"##{1}":[6,6],"##{2}":[7,7],"##{3}":[8,8],"##{4}":[9,9],"##{5}":[10,10],"##{6}":[11,12],"####摘要":[29,67],"####摘要#{1}":[31,34],"####摘要#{2}":[35,36],"####摘要#{3}":[37,38],"####摘要#{4}":[39,39],"####摘要#{5}":[40,41],"####摘要#{6}":[42,43],"####摘要#{7}":[44,44],"####摘要#{8}":[45,45],"####摘要#{9}":[46,46],"####摘要#{10}":[47,48],"####摘要#{11}":[49,54],"####摘要#{12}":[55,55],"####摘要#{13}":[56,57],"####摘要#{14}":[58,59],"####摘要#{15}":[60,60],"####摘要#{16}":[61,62],"####摘要#{17}":[63,64],"####摘要#{18}":[65,65],"####摘要#{19}":[66,67],"####1,注册微软Azure用户":[68,83],"####1,注册微软Azure用户#{1}":[70,71],"####1,注册微软Azure用户#{2}":[72,77],"####1,注册微软Azure用户#{3}":[78,79],"####1,注册微软Azure用户#{4}":[80,83],"####2,申请一年免费试用":[84,97],"####2,申请一年免费试用#{1}":[86,87],"####2,申请一年免费试用#{2}":[88,97],"####3,申请OpenAi的接口":[98,135],"####3,申请OpenAi的接口#{1}":[100,135],"####4,配置openai":[136,145],"####4,配置openai#{1}":[138,145],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**":[146,194],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{1}":[148,177],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{2}":[178,178],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{3}":[179,179],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{4}":[180,180],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{5}":[181,181],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{6}":[182,182],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{7}":[183,184],"####**Onboarding 邮件,代表申请通过,可使用Chatgpt3.5及Dalle-2**#{8}":[185,194],"####5,得到 apikey":[195,204],"####5,得到 apikey#{1}":[197,204],"####6,对接各种应用":[205,229],"####6,对接各种应用#{1}":[207,229]},"outlinks":[{"title":"摘要","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-0 \"摘要\"","line":6},{"title":"1,注册微软Azure用户","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-1 \"1,注册微软Azure用户\"","line":7},{"title":"2,申请一年免费试用","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-2 \"2,申请一年免费试用\"","line":8},{"title":"3,申请OpenAi的接口","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-3 \"3,申请OpenAi的接口\"","line":9},{"title":"5,得到 apikey","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-4 \"5,得到 apikey\"","line":10},{"title":"6,对接各种应用","target":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/#title-5 \"6,对接各种应用\"","line":11},{"title":"odoo\\_ai\\_center","target":"https://apps.odoo.com/apps/modules/16.0/app_chatgpt/","line":19},{"title":"odoo\\_ai\\_center","target":"https://apps.odoo.com/apps/modules/16.0/app_chatgpt/","line":66},{"title":"https://azure.microsoft.com/zh-cn/","target":"https://azure.microsoft.com/zh-cn/","line":74},{"title":"https://portal.azure.com/?quickstart=true#view/Microsoft\\_Azure\\_ProjectOxford/CognitiveServicesHub/~/OpenAI","target":"https://portal.azure.com/?quickstart=true#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/OpenAI","line":102},{"title":"https://portal.azure.com/?quickstart=true#create/Microsoft.CognitiveServicesOpenAI","target":"https://portal.azure.com/?quickstart=true#create/Microsoft.CognitiveServicesOpenAI","line":158},{"title":"https://www.odooai.cn","target":"https://www.odooai.cn/","line":229}],"metadata":{"page-title":"Chatgpt4中国申请,Chatgpt3.5中国区免费1年使用攻略,微软Azure云openai详细api注册申请图文教程,整合odoo AiCenter - | odoo软件开发实施_广州尚鹏,服装生鲜家具外贸供应链开源ERP专业实施","url":"https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/","date":"2023-04-16 20:33:54"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Creating_user,_database_and_adding_access_on_PostgreSQL__by_Arnav_Gupta__Coding_Blocks__Medium_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Creating_user,_database_and_adding_access_on_PostgreSQL__by_Arnav_Gupta__Coding_Blocks__Medium_md.ajson deleted file mode 100644 index 63871c3..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Creating_user,_database_and_adding_access_on_PostgreSQL__by_Arnav_Gupta__Coding_Blocks__Medium_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Creating user, database and adding access on PostgreSQL by Arnav Gupta Coding Blocks Medium.md": {"path":"000-inbox/clippings/2023/04/Creating user, database and adding access on PostgreSQL by Arnav Gupta Coding Blocks Medium.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1at3ghq","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1681885670000,"size":2539,"at":1766986878359,"hash":"1at3ghq"},"blocks":{"#---frontmatter---":[1,5],"##Creating user, database and adding access on PostgreSQL":[6,30],"##Creating user, database and adding access on PostgreSQL#{1}":[8,30],"##Creating user":[31,34],"##Creating user#{1}":[33,34],"##Creating Database":[35,38],"##Creating Database#{1}":[37,38],"##Giving the user a password":[39,43],"##Giving the user a password#{1}":[41,43],"##Granting privileges on database":[44,49],"##Granting privileges on database#{1}":[46,49],"##Doing purely via psql":[50,59],"##Doing purely via psql#{1}":[52,59]},"outlinks":[{"title":"http://digitalocean.com","target":"http://digitalocean.com/","line":10},{"title":"Coding Blocks","target":"https://cb.lk/","line":59}],"metadata":{"page-title":"Creating user, database and adding access on PostgreSQL | by Arnav Gupta | Coding Blocks | Medium","url":"https://medium.com/coding-blocks/creating-user-database-and-adding-access-on-postgresql-8bfcd2f4a91e","date":"2023-04-19 14:27:48"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_DNS_alias_mode_·_acmesh-officialacme_sh_Wiki_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_DNS_alias_mode_·_acmesh-officialacme_sh_Wiki_md.ajson deleted file mode 100644 index 9084f8a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_DNS_alias_mode_·_acmesh-officialacme_sh_Wiki_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/DNS alias mode · acmesh-officialacme.sh Wiki.md": {"path":"000-inbox/clippings/2023/04/DNS alias mode · acmesh-officialacme.sh Wiki.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1nror1b","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1680756591000,"size":6109,"at":1766986878359,"hash":"1nror1b"},"blocks":{"#---frontmatter---":[1,5],"#":[6,13],"###1\\. First set domain CNAME:":[14,28],"###1\\. First set domain CNAME:#{1}":[16,26],"###1\\. First set domain CNAME:#{2}":[27,28],"###2\\. Issue a cert:":[29,39],"###2\\. Issue a cert:#{1}":[31,39],"###3\\. Share the same aliased domain:":[40,77],"###3\\. Share the same aliased domain:#{1}":[42,77],"###4\\. Specify different aliased domains for each domain.":[78,103],"###4\\. Specify different aliased domains for each domain.#{1}":[80,103],"###5\\. Mix dns alias and default dns auth":[104,120],"###5\\. Mix dns alias and default dns auth#{1}":[106,120],"###6\\. Last":[121,124],"###6\\. Last#{1}":[123,124],"###7\\. challenge-alias or domain-alias":[125,163],"###7\\. challenge-alias or domain-alias#{1}":[127,163]},"outlinks":[{"title":"DNS zone file","target":"https://en.wikipedia.org/wiki/Zone_file","line":21}],"metadata":{"page-title":"DNS alias mode · acmesh-official/acme.sh Wiki","url":"https://github.com/acmesh-official/acme.sh/wiki/DNS-alias-mode","date":"2023-04-06 12:49:50"},"task_lines":[],"tasks":{},"codeblock_ranges":[[16,19],[23,25]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Error_Handling_in_Rust_-_Andrew_Gallant's_Blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Error_Handling_in_Rust_-_Andrew_Gallant's_Blog_md.ajson deleted file mode 100644 index 222d1bf..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Error_Handling_in_Rust_-_Andrew_Gallant's_Blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Error Handling in Rust - Andrew Gallant's Blog.md": {"path":"000-inbox/clippings/2023/04/Error Handling in Rust - Andrew Gallant's Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"xqrpk1","at":1766986879007},"class_name":"SmartSource","last_import":{"mtime":1680399181000,"size":87618,"at":1766986879048,"hash":"xqrpk1"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##Brief notes":[18,25],"##Brief notes#{1}":[20,25],"##Run the code!":[26,37],"##Run the code!#{1}":[28,37],"##Table of Contents":[38,78],"##Table of Contents#{1}":[40,41],"##Table of Contents#{2}":[42,42],"##Table of Contents#{3}":[43,43],"##Table of Contents#{4}":[44,45],"##Table of Contents#{5}":[46,47],"##Table of Contents#{6}":[48,55],"##Table of Contents#{7}":[56,61],"##Table of Contents#{8}":[62,67],"##Table of Contents#{9}":[68,76],"##Table of Contents#{10}":[77,78],"##The Basics":[79,500],"##The Basics#{1}":[81,131],"##The Basics#Unwrapping explained":[132,137],"##The Basics#Unwrapping explained#{1}":[134,137],"##The Basics#The `Option` type":[138,341],"##The Basics#The `Option` type#{1}":[140,210],"##The Basics#The `Option` type#Composing `Option` values":[211,341],"##The Basics#The `Option` type#Composing `Option` values#{1}":[213,341],"##The Basics#The `Result` type":[342,485],"##The Basics#The `Result` type#{1}":[344,386],"##The Basics#The `Result` type#Parsing integers":[387,464],"##The Basics#The `Result` type#Parsing integers#{1}":[389,464],"##The Basics#The `Result` type#The `Result` type alias idiom":[465,485],"##The Basics#The `Result` type#The `Result` type alias idiom#{1}":[467,485],"##The Basics#A brief interlude: unwrapping isn’t evil":[486,500],"##The Basics#A brief interlude: unwrapping isn’t evil#{1}":[488,491],"##The Basics#A brief interlude: unwrapping isn’t evil#{2}":[492,492],"##The Basics#A brief interlude: unwrapping isn’t evil#{3}":[493,494],"##The Basics#A brief interlude: unwrapping isn’t evil#{4}":[495,500],"##Working with multiple error types":[501,821],"##Working with multiple error types#{1}":[503,504],"##Working with multiple error types#Composing `Option` and `Result`":[505,567],"##Working with multiple error types#Composing `Option` and `Result`#{1}":[507,567],"##Working with multiple error types#The limits of combinators":[568,651],"##Working with multiple error types#The limits of combinators#{1}":[570,600],"##Working with multiple error types#The limits of combinators#{2}":[601,601],"##Working with multiple error types#The limits of combinators#{3}":[602,602],"##Working with multiple error types#The limits of combinators#{4}":[603,604],"##Working with multiple error types#The limits of combinators#{5}":[605,651],"##Working with multiple error types#Early returns":[652,690],"##Working with multiple error types#Early returns#{1}":[654,690],"##Working with multiple error types#The `try!` macro/`?` operator":[691,761],"##Working with multiple error types#The `try!` macro/`?` operator#{1}":[693,761],"##Working with multiple error types#Defining your own error type":[762,821],"##Working with multiple error types#Defining your own error type#{1}":[764,821],"##Standard library traits used for error handling":[822,1169],"##Standard library traits used for error handling#{1}":[824,825],"##Standard library traits used for error handling#The `Error` trait":[826,919],"##Standard library traits used for error handling#The `Error` trait#{1}":[828,845],"##Standard library traits used for error handling#The `Error` trait#{2}":[846,846],"##Standard library traits used for error handling#The `Error` trait#{3}":[847,847],"##Standard library traits used for error handling#The `Error` trait#{4}":[848,848],"##Standard library traits used for error handling#The `Error` trait#{5}":[849,850],"##Standard library traits used for error handling#The `Error` trait#{6}":[851,919],"##Standard library traits used for error handling#The `From` trait":[920,976],"##Standard library traits used for error handling#The `From` trait#{1}":[922,976],"##Standard library traits used for error handling#The real `try!` macro/`?` operator":[977,1064],"##Standard library traits used for error handling#The real `try!` macro/`?` operator#{1}":[979,1054],"##Standard library traits used for error handling#The real `try!` macro/`?` operator#{2}":[1055,1055],"##Standard library traits used for error handling#The real `try!` macro/`?` operator#{3}":[1056,1056],"##Standard library traits used for error handling#The real `try!` macro/`?` operator#{4}":[1057,1058],"##Standard library traits used for error handling#The real `try!` macro/`?` operator#{5}":[1059,1064],"##Standard library traits used for error handling#Composing custom error types":[1065,1159],"##Standard library traits used for error handling#Composing custom error types#{1}":[1067,1159],"##Standard library traits used for error handling#Advice for library writers":[1160,1169],"##Standard library traits used for error handling#Advice for library writers#{1}":[1162,1169],"##Case study: A program to read population data":[1170,1658],"##Case study: A program to read population data#{1}":[1172,1179],"##Case study: A program to read population data#It’s on Github":[1180,1192],"##Case study: A program to read population data#It’s on Github#{1}":[1182,1192],"##Case study: A program to read population data#Initial setup":[1193,1221],"##Case study: A program to read population data#Initial setup#{1}":[1195,1221],"##Case study: A program to read population data#Argument parsing":[1222,1312],"##Case study: A program to read population data#Argument parsing#{1}":[1224,1312],"##Case study: A program to read population data#Writing the logic":[1313,1364],"##Case study: A program to read population data#Writing the logic#{1}":[1315,1356],"##Case study: A program to read population data#Writing the logic#{2}":[1357,1357],"##Case study: A program to read population data#Writing the logic#{3}":[1358,1358],"##Case study: A program to read population data#Writing the logic#{4}":[1359,1360],"##Case study: A program to read population data#Writing the logic#{5}":[1361,1364],"##Case study: A program to read population data#Error handling with `Box`":[1365,1472],"##Case study: A program to read population data#Error handling with `Box`#{1}":[1367,1422],"##Case study: A program to read population data#Error handling with `Box`#{2}":[1423,1423],"##Case study: A program to read population data#Error handling with `Box`#{3}":[1424,1424],"##Case study: A program to read population data#Error handling with `Box`#{4}":[1425,1426],"##Case study: A program to read population data#Error handling with `Box`#{5}":[1427,1472],"##Case study: A program to read population data#Reading from stdin":[1473,1516],"##Case study: A program to read population data#Reading from stdin#{1}":[1475,1478],"##Case study: A program to read population data#Reading from stdin#{2}":[1479,1479],"##Case study: A program to read population data#Reading from stdin#{3}":[1480,1481],"##Case study: A program to read population data#Reading from stdin#{4}":[1482,1516],"##Case study: A program to read population data#Error handling with a custom type":[1517,1608],"##Case study: A program to read population data#Error handling with a custom type#{1}":[1519,1608],"##Case study: A program to read population data#Adding functionality":[1609,1658],"##Case study: A program to read population data#Adding functionality#{1}":[1611,1612],"##Case study: A program to read population data#Adding functionality#{2}":[1613,1613],"##Case study: A program to read population data#Adding functionality#{3}":[1614,1615],"##Case study: A program to read population data#Adding functionality#{4}":[1616,1658],"##The short story":[1659,1668],"##The short story#{1}":[1661,1662],"##The short story#{2}":[1663,1663],"##The short story#{3}":[1664,1664],"##The short story#{4}":[1665,1665],"##The short story#{5}":[1666,1666],"##The short story#{6}":[1667,1667],"##The short story#{7}":[1668,1668]},"outlinks":[{"title":"`anyhow`","target":"https://crates.io/crates/anyhow","line":16},{"title":"`failure`","target":"https://crates.io/crates/failure","line":16},{"title":"my blog’s repository","target":"https://github.com/BurntSushi/blog/tree/master/code/rust-error-handling","line":22},{"title":"Rust Book","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/","line":24},{"title":"section on error handling","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/error-handling.html","line":24},{"title":"Rust book","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/","line":42},{"title":"consult the Rust book","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/","line":43},{"title":"standard library error traits","target":"https://blog.burntsushi.net/rust-error-handling/#standard-library-traits-used-for-error-handling","line":43},{"title":"the basics","target":"https://blog.burntsushi.net/rust-error-handling/#the-basics","line":43},{"title":"multiple error types","target":"https://blog.burntsushi.net/rust-error-handling/#working-with-multiple-error-types","line":43},{"title":"case study","target":"https://blog.burntsushi.net/rust-error-handling/#case-study-a-program-to-read-population-data","line":44},{"title":"to the end","target":"https://blog.burntsushi.net/rust-error-handling/#the-short-story","line":44},{"title":"The Basics","target":"https://blog.burntsushi.net/rust-error-handling/#the-basics","line":48},{"title":"Unwrapping explained","target":"https://blog.burntsushi.net/rust-error-handling/#unwrapping-explained","line":49},{"title":"The `Option` type","target":"https://blog.burntsushi.net/rust-error-handling/#the-option-type","line":50},{"title":"Composing `Option` values","target":"https://blog.burntsushi.net/rust-error-handling/#composing-option-t-values","line":51},{"title":"The `Result` type","target":"https://blog.burntsushi.net/rust-error-handling/#the-result-type","line":52},{"title":"Parsing integers","target":"https://blog.burntsushi.net/rust-error-handling/#parsing-integers","line":53},{"title":"The `Result` type alias idiom","target":"https://blog.burntsushi.net/rust-error-handling/#the-result-type-alias-idiom","line":54},{"title":"A brief interlude: unwrapping isn’t evil","target":"https://blog.burntsushi.net/rust-error-handling/#a-brief-interlude-unwrapping-isnt-evil","line":55},{"title":"Working with multiple error types","target":"https://blog.burntsushi.net/rust-error-handling/#working-with-multiple-error-types","line":56},{"title":"Composing `Option` and `Result`","target":"https://blog.burntsushi.net/rust-error-handling/#composing-option-and-result","line":57},{"title":"The limits of combinators","target":"https://blog.burntsushi.net/rust-error-handling/#the-limits-of-combinators","line":58},{"title":"Early returns","target":"https://blog.burntsushi.net/rust-error-handling/#early-returns","line":59},{"title":"The `try!` macro/`?` operator","target":"https://blog.burntsushi.net/rust-error-handling/#the-try-macro-operator","line":60},{"title":"Defining your own error type","target":"https://blog.burntsushi.net/rust-error-handling/#defining-your-own-error-type","line":61},{"title":"Standard library traits used for error handling","target":"https://blog.burntsushi.net/rust-error-handling/#standard-library-traits-used-for-error-handling","line":62},{"title":"The `Error` trait","target":"https://blog.burntsushi.net/rust-error-handling/#the-error-trait","line":63},{"title":"The `From` trait","target":"https://blog.burntsushi.net/rust-error-handling/#the-from-trait","line":64},{"title":"The real `try!` macro/`?` operator","target":"https://blog.burntsushi.net/rust-error-handling/#the-real-try-macro-operator","line":65},{"title":"Composing custom error types","target":"https://blog.burntsushi.net/rust-error-handling/#composing-custom-error-types","line":66},{"title":"Advice for library writers","target":"https://blog.burntsushi.net/rust-error-handling/#advice-for-library-writers","line":67},{"title":"Case study: A program to read population data","target":"https://blog.burntsushi.net/rust-error-handling/#case-study-a-program-to-read-population-data","line":68},{"title":"It’s on Github","target":"https://blog.burntsushi.net/rust-error-handling/#its-on-github","line":69},{"title":"Initial setup","target":"https://blog.burntsushi.net/rust-error-handling/#initial-setup","line":70},{"title":"Argument parsing","target":"https://blog.burntsushi.net/rust-error-handling/#argument-parsing","line":71},{"title":"Writing the logic","target":"https://blog.burntsushi.net/rust-error-handling/#writing-the-logic","line":72},{"title":"Error handling with `Box`","target":"https://blog.burntsushi.net/rust-error-handling/#error-handling-with-boxerror","line":73},{"title":"Reading from stdin","target":"https://blog.burntsushi.net/rust-error-handling/#reading-from-stdin","line":74},{"title":"Error handling with a custom type","target":"https://blog.burntsushi.net/rust-error-handling/#error-handling-with-a-custom-type","line":75},{"title":"Adding functionality","target":"https://blog.burntsushi.net/rust-error-handling/#adding-functionality","line":76},{"title":"The short story","target":"https://blog.burntsushi.net/rust-error-handling/#the-short-story","line":77},{"title":"`panic`","target":"http://doc.rust-lang.org/std/macro.panic!.html","line":83},{"title":"run this code","target":"https://blog.burntsushi.net/rust-error-handling/#run-the-code","line":102},{"title":"`panic-simple`","target":"https://blog.burntsushi.net/rust-error-handling/#code-panic-simple","line":134},{"title":"`unwrap-double`","target":"https://blog.burntsushi.net/rust-error-handling/#code-unwrap-double","line":134},{"title":"defined in the standard library","target":"http://doc.rust-lang.org/std/option/enum.Option.html","line":140},{"title":"`find`","target":"http://doc.rust-lang.org/std/primitive.str.html#method.find","line":168},{"title":"pattern matching","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/patterns.html","line":186},{"title":"`unwrap-double`","target":"https://blog.burntsushi.net/rust-error-handling/#code-unwrap-double","line":188},{"title":"`option-ex-string-find`","target":"https://blog.burntsushi.net/rust-error-handling/#code-option-ex-string-find-2","line":213},{"title":"`extension`","target":"http://doc.rust-lang.org/std/path/struct.Path.html#method.extension","line":231},{"title":"defined as a method","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.map","line":250},{"title":"defined as a method","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.unwrap_or","line":289},{"title":"`unwrap_or_else`","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.unwrap_or_else","line":289},{"title":"rewrapped with `Some`","target":"https://blog.burntsushi.net/rust-error-handling/#code-option-map","line":314},{"title":"defined in the standard library","target":"http://doc.rust-lang.org/std/option/enum.Option.html","line":338},{"title":"defined in the standard library","target":"http://doc.rust-lang.org/std/result/","line":344},{"title":"`unwrap` method defined","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.unwrap","line":367},{"title":"`Debug`","target":"http://doc.rust-lang.org/std/fmt/trait.Debug.html","line":383},{"title":"definition for `Option::unwrap`","target":"https://blog.burntsushi.net/rust-error-handling/#code-option-def-unwrap","line":383},{"title":"`parse` method","target":"http://doc.rust-lang.org/std/primitive.str.html#method.parse","line":410},{"title":"associated type","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/associated-types.html","line":420},{"title":"`std::num::ParseIntError`","target":"http://doc.rust-lang.org/std/num/struct.ParseIntError.html","line":420},{"title":"find its implementation of `FromStr`","target":"http://doc.rust-lang.org/std/primitive.i32.html","line":420},{"title":"`and_then`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.and_then","line":463},{"title":"`map_err`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.map_err","line":463},{"title":"`or_else`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.or_else","line":463},{"title":"`unwrap_or`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.unwrap_or","line":463},{"title":"we defined `Result`","target":"https://blog.burntsushi.net/rust-error-handling/#code-result-def-1","line":467},{"title":"`fmt::Result`","target":"http://doc.rust-lang.org/std/fmt/type.Result.html","line":484},{"title":"`io::Result`","target":"http://doc.rust-lang.org/std/io/type.Result.html","line":484},{"title":"`expect`","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.expect","line":495},{"title":"`Option::ok_or`","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.ok_or","line":551},{"title":"`Result::map_err`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.map_err","line":564},{"title":"same bounds used on `std::fs::File::open`","target":"http://doc.rust-lang.org/std/fs/struct.File.html#method.open","line":597},{"title":"`std::fs::File::open`","target":"http://doc.rust-lang.org/std/fs/struct.File.html#method.open","line":605},{"title":"`std::io::Error`","target":"http://doc.rust-lang.org/std/io/struct.Error.html","line":605},{"title":"`std::io::Read::read_to_string`","target":"http://doc.rust-lang.org/std/io/trait.Read.html#method.read_to_string","line":605},{"title":"see the type alias","target":"http://doc.rust-lang.org/std/io/type.Result.html","line":605},{"title":"`std::num::ParseIntError`","target":"http://doc.rust-lang.org/std/num/struct.ParseIntError.html","line":605},{"title":"`Result` type alias idiom","target":"https://blog.burntsushi.net/rust-error-handling/#the-result-type-alias-idiom","line":605},{"title":"real definition","target":"http://doc.rust-lang.org/std/macro.try!.html","line":708},{"title":"our definition of `try!`","target":"https://blog.burntsushi.net/rust-error-handling/#code-try-def-simple","line":735},{"title":"previous example","target":"https://blog.burntsushi.net/rust-error-handling/#code-error-double-string","line":768},{"title":"`io::ErrorKind`","target":"http://doc.rust-lang.org/std/io/enum.ErrorKind.html","line":772},{"title":"`std::convert::From`","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":824},{"title":"`std::error::Error`","target":"http://doc.rust-lang.org/std/error/trait.Error.html","line":824},{"title":"defined in the standard library","target":"http://doc.rust-lang.org/std/error/trait.Error.html","line":828},{"title":"trait object","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/trait-objects.html","line":851},{"title":"previous section","target":"https://blog.burntsushi.net/rust-error-handling/#defining-your-own-error-type","line":853},{"title":"defined in the standard library","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":922},{"title":"set of implementations provided by the standard library","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":932},{"title":"in the standard library","target":"http://doc.rust-lang.org/std/macro.try!.html","line":990},{"title":"`Try` trait","target":"https://doc.rust-lang.org/std/ops/trait.Try.html","line":1014},{"title":"`cause`","target":"http://doc.rust-lang.org/std/error/trait.Error.html#method.cause","line":1061},{"title":"`description`","target":"http://doc.rust-lang.org/std/error/trait.Error.html#tymethod.description","line":1061},{"title":"beyond the scope of this article","target":"https://crates.io/crates/error","line":1061},{"title":"`From`","target":"https://blog.burntsushi.net/rust-error-handling/#code-from-def","line":1096},{"title":"`?` operator","target":"https://blog.burntsushi.net/rust-error-handling/#code-questionmark-def","line":1096},{"title":"`ErrorKind`","target":"http://doc.rust-lang.org/std/io/enum.ErrorKind.html","line":1162},{"title":"`ParseIntError`","target":"http://doc.rust-lang.org/std/num/struct.ParseIntError.html","line":1162},{"title":"`Error`","target":"http://doc.rust-lang.org/std/error/trait.Error.html","line":1164},{"title":"composing errors","target":"https://blog.burntsushi.net/rust-error-handling/#the-real-try-macro","line":1164},{"title":"compose more detailed errors","target":"https://blog.burntsushi.net/rust-error-handling/#composing-custom-error-types","line":1166},{"title":"`csv::Error`","target":"https://burntsushi.net/rustdoc/csv/1.0.0-beta.5/enum.Error.html","line":1166},{"title":"`fmt::Result`","target":"http://doc.rust-lang.org/std/fmt/type.Result.html","line":1168},{"title":"`io::Result`","target":"http://doc.rust-lang.org/std/io/type.Result.html","line":1168},{"title":"`Result` type alias","target":"https://blog.burntsushi.net/rust-error-handling/#the-result-type-alias-idiom","line":1168},{"title":"US population data","target":"https://burntsushi.net/stuff/uscitiespop.csv.gz","line":1176},{"title":"world population data","target":"https://burntsushi.net/stuff/worldcitiespop.csv.gz","line":1176},{"title":"Data Science Toolkit","target":"https://github.com/petewarden/dstkdata","line":1176},{"title":"`csv`","target":"https://crates.io/crates/csv","line":1178},{"title":"`docopt`","target":"https://crates.io/crates/docopt","line":1178},{"title":"`rustc-serialize`","target":"https://crates.io/crates/rustc-serialize","line":1178},{"title":"on Github","target":"https://github.com/BurntSushi/rust-error-handling-case-study","line":1182},{"title":"Cargo’s documentation","target":"http://doc.crates.io/guide.html","line":1195},{"title":"the Rust book","target":"http://doc.rust-lang.org/1.0.0-beta.5/book/hello-cargo.html","line":1195},{"title":"bin","target":"bin","line":1205},{"title":"nice web page","target":"http://docopt.org/","line":1224},{"title":"documentation for the Rust crate","target":"https://burntsushi.net/rustdoc/docopt/","line":1224},{"title":"`docopt::Error`","target":"https://burntsushi.net/rustdoc/docopt/enum.Error.html","line":1248},{"title":"docs for Docopt","target":"https://burntsushi.net/rustdoc/docopt/struct.Docopt.html#method.new","line":1248},{"title":"`docopt::Error`","target":"https://burntsushi.net/rustdoc/docopt/enum.Error.html","line":1303},{"title":"`exit`","target":"https://burntsushi.net/rustdoc/docopt/enum.Error.html#method.exit","line":1303},{"title":"`fs::File::open`","target":"http://doc.rust-lang.org/std/fs/struct.File.html#method.open","line":1357},{"title":"`io::Error`","target":"http://doc.rust-lang.org/std/io/struct.Error.html","line":1357},{"title":"`csv::Error`","target":"https://burntsushi.net/rustdoc/csv/1.0.0-beta.5/enum.Error.html","line":1358},{"title":"decoding a record","target":"https://burntsushi.net/rustdoc/csv/struct.DecodedRecords.html","line":1358},{"title":"`csv::Reader::decode`","target":"https://burntsushi.net/rustdoc/csv/struct.Reader.html#method.decode","line":1358},{"title":"Previously","target":"https://blog.burntsushi.net/rust-error-handling/#the-limits-of-combinators","line":1369},{"title":"corresponding `From` impls","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":1459},{"title":"any type that implements `io::Read`","target":"https://burntsushi.net/rustdoc/csv/struct.Reader.html#method.from_reader","line":1501},{"title":"compose errors using a custom error type","target":"https://blog.burntsushi.net/rust-error-handling/#composing-custom-error-types","line":1519},{"title":"`?` operator is defined","target":"https://blog.burntsushi.net/rust-error-handling/#code-questionmark-def","line":1572},{"title":"`Option::expect`","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.expect","line":1663},{"title":"`Option::unwrap`","target":"http://doc.rust-lang.org/std/option/enum.Option.html#method.unwrap","line":1663},{"title":"`Result::unwrap`","target":"http://doc.rust-lang.org/std/result/enum.Result.html#method.unwrap","line":1663},{"title":"`anyhow`","target":"https://crates.io/crates/anyhow","line":1665},{"title":"`From`","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":1666},{"title":"`Error`","target":"http://doc.rust-lang.org/std/error/trait.Error.html","line":1666},{"title":"`From`","target":"http://doc.rust-lang.org/std/convert/trait.From.html","line":1667},{"title":"`std::error::Error`","target":"http://doc.rust-lang.org/std/error/trait.Error.html","line":1667},{"title":"`Option`","target":"http://doc.rust-lang.org/std/option/enum.Option.html","line":1668},{"title":"`Result`","target":"http://doc.rust-lang.org/std/result/enum.Result.html","line":1668}],"metadata":{"page-title":"Error Handling in Rust - Andrew Gallant's Blog","url":"https://blog.burntsushi.net/rust-error-handling/","date":"2023-04-02 09:32:59"},"task_lines":[],"tasks":{},"codeblock_ranges":[[30,34],[87,100],[106,108],[114,126],[144,149],[155,166],[176,184],[192,207],[219,229],[241,248],[256,263],[269,276],[282,287],[297,312],[318,326],[332,336],[348,353],[359,361],[371,381],[393,402],[406,408],[412,416],[424,440],[448,461],[471,480],[513,525],[533,549],[555,562],[578,595],[613,640],[658,685],[699,706],[714,733],[741,760],[780,791],[797,816],[832,842],[857,868],[876,916],[926,930],[938,942],[946,948],[956,969],[981,988],[994,1001],[1007,1012],[1020,1032],[1038,1051],[1073,1094],[1100,1112],[1120,1128],[1134,1140],[1144,1156],[1184,1189],[1199,1212],[1216,1220],[1226,1246],[1250,1273],[1279,1287],[1293,1301],[1305,1309],[1319,1353],[1375,1417],[1429,1455],[1461,1469],[1484,1497],[1503,1515],[1523,1529],[1533,1554],[1558,1570],[1576,1605],[1624,1639],[1643,1651]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Future_Tools_-_Find_The_Exact_AI_Tool_For_Your_Needs_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Future_Tools_-_Find_The_Exact_AI_Tool_For_Your_Needs_md.ajson deleted file mode 100644 index e613b21..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Future_Tools_-_Find_The_Exact_AI_Tool_For_Your_Needs_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Future Tools - Find The Exact AI Tool For Your Needs.md": {"path":"000-inbox/clippings/2023/04/Future Tools - Find The Exact AI Tool For Your Needs.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"t7q8l7","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681915643000,"size":16963,"at":1766986878957,"hash":"t7q8l7"},"blocks":{"#---frontmatter---":[1,5],"#":[6,316]},"outlinks":[{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643eb43c24e3ca41a6521901_cohesive-so-logo.webp","line":6},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d9ffb5784a586534ffc36_home-page-screenshot.jpeg","line":10},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d9ff96ef58c9484d5f666_og-branding.jpeg","line":14},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643e1d6b2d3f274e05dcc10f_dora-run-logo.png","line":18},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d9ff7a47180ff1beb74f1_92c802bf9d78088c9de609a66a8e94ac.png","line":22},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d9ffab28ff878929cf8f4_aws_logo_smile_1200x630.png","line":26},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d317ee65d6248d88bf4ec_animated-drawings-logo.png","line":30},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643d2f2f4cd40461cd0d6b7f_open-assistant-io-logo.svg","line":34},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643cc434b8b47fe37a28dd77_banner.png","line":38},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643cc4342932676fe1b3dce4_tradeuipreview-scaled.webp","line":42},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643cc433b8b47f3bb628db9c_image-removebg-preview__1_.png","line":46},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643b6fbd4d50815442b439aa_meta.png","line":50},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643c317cb393a746095df987_aivoicedetector-logo.png","line":54},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643b6fbc5d1319758b0d635c_card.jpeg","line":58},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643ae4bd92d6d968a75b3984_revocalize-ai-logo.png","line":62},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643a9e0ed15ef0052d0905ff_codegeex-cn-logo.png","line":66},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643a153b4b42d4860e29dfe6_logo-without-text-blue.png","line":70},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/63dab0e75491ca6409d70585_3thlrJh41ciJu5AQVovEFgrWIbg.jpeg","line":74},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643a15394b42d4fc8e29de8b_streamroutine-social-share-og-image.png","line":78},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643a8c2bb8c0e87f693c5057_godmode-space-logo.png","line":82},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438830d22ee1f992438c88c_jQ9-og-image-(1","line":84},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438830c029512800a36dfac_639334f2059d35b32e1fb6b6_Results.svg","line":88},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438823103d50346883c7767_vossle-logo-white-on-black-1080x1080-1.jpeg","line":92},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/64388230e63cc480c8891571_preview.16624258.jpeg","line":96},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/64393c063915655ba34ab523_chatfast-io-logo.png","line":100},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438822ea70df24dc7a657a9_OG%2520Image.png","line":104},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438822d2219259e0b88d3da_https%253A%252F%252Fs3.amazonaws.com%252Fappforest_uf%252Ff1681191979794x146176450056298980%252FBRICABRAC%252520HORIZONTAL.jpeg","line":108},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/64393658cd7ec91b2cd5f5fe_ab-bot-logo.png","line":112},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438822cf369f4780b01fce9_1200-chatgpt-assistant.png","line":116},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6438822cf369f4f93d01fc49_preview.png","line":120},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6437564511f40c0da5bbbce5_anySummaryPreview4.jpeg","line":124},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6437bd072e097ca5491ed454_crear-ai-logo.svg","line":128},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643633ee38d278f8e850c182_62f125c4ac1aca359739b739_Sturppy-open-graph.png","line":132},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643633ed8e746032a0924f38_og-image.jpeg","line":136},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436fa8819dbad817c5cd314_gpt-4-powered-changelog-logo.png","line":138},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f8d36fcf9c25d290bdbe_easychat-ai-app-logo.png","line":142},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f800bd3a6420735a23a3_voicemaker-in-logo.png","line":146},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f6f7fe43d903cc29ab88_virtualstagingai-app-logo.png","line":150},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f5a90f706fef57445af5_audio-bot-logo.png","line":154},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643633e96910fc7a6f00d9e3_og.png","line":158},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f401083c7142154eda92_skinive-logo.png","line":162},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f34b943e82868f362e85_gptify-io-logo.png","line":166},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6436f224f81026916de2551f_draw3d-online-logo.png","line":170},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643633e7828763d87411c48c_icon.png","line":174},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6435900945bd786ebdfcfce4_doodlemorphai-logo.png","line":178},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6434f948e3865c516afe9375_https%253A%252F%252Fs3.amazonaws.com%252Fappforest_uf%252Ff1678369668019x442932140205586370%252Fatlancer.jpeg","line":182},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6434f94768bc15314ff1e90c_cover.png","line":186},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643254b93065d52578881acc_website-builder-hero-min.png","line":190},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643254b88ca5f9800b699ef7_2fEp1YCQ.png","line":194},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6432be0205307e808dc6fbb8_logodiffusion-logo.svg","line":198},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6432b25403ac6d4109a2cdc8_ai-coustics-logo.png","line":200},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643254b503ac6d080640cf67_63f920204391703b554a27ef_promptpal.webp","line":204},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6432b0aec8e97437ce6e287a_aiawesome-logo.png","line":206},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6430eecc59c4ed86a0cdf3bb_Ajelix-Full-Stack-Tech-Consulting-Partner-1.png","line":210},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6430eeca59c4ed36facdf241_2T3Xutv6.png","line":214},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/6430eec8a8777374c9155021_feature.webp","line":218},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/64316d67e3a3f0e61a9c35a3_furwee-ai-logo.png","line":222},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fbf645dc48025d480ff91_NOVA-PIONEERING.png","line":226},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fbf638777c976ca463752_favicon-512.png","line":230},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac38589e8985320f5179_Square_IAI_Logo_512x512.png","line":234},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac37cf48e0707097d4ef_text2sql-banner-2.png","line":238},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/643010ce97e54d7fa2e8c2c9_spheroid-io-logo.png","line":242},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac36a0d66ca288573976_followr_pp.png","line":246},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac349df2c9b38604c4ae_favicon.png","line":250},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fc2c1c8d31c55b48d1d5f_prophotos-ai-logo.png","line":254},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac319df2c93d4e04bfe2_113eda_3aa3dd6b62464d998ab42abadf18c90a%257Emv2.png","line":258},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fac31f9727c2a6bdb15b6_wisdom%2520social%2520share%25201.jpeg","line":262},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642fb9f5c7c732ac28c611f1_cheatlayer-logo.png","line":266},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e789fa365323162bf2162_62a24b2ee9c3a1c876ca75bb_Untitled%2520design.png","line":270},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e789ef54a03f3e10a6b52_6409380524ddda787ded31f8_Frame%2520626048%2520(1","line":274},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642ec53cff33a2500328d5c2_habitdriven-ai-logo.png","line":278},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642ec4786bc8aec1e155b4d4_opus-ai-logo.png","line":282},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e789b62b06bc1a37277c1_Claid_Cover1200_14dc10bb14.jpeg","line":286},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642ec08c61f75a4ee669111e_promptstorm-app-logo.png","line":290},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642ebf707cfd87772aa2e66c_Screen%20Shot%202023-04-06%20at%206.17.17%20PM.png","line":294},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e789962b06b35c7727591_UgmsZKO.png","line":298},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e789862b06ba9ea7274e4_TalkPal-AI-logos-1.jpeg","line":302},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e78975b879d52e8c7ea93_logo.png","line":306},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642ebc30363c2d6ac731ce94_telechat-ai-logo.webp","line":310},{"title":"![","target":"https://global-uploads.webflow.com/63994dae1033718bee6949ce/642e7894e956fd2865e83310_WbsWOpryFHY0f1qrVKIzmI8eCs.png","line":314}],"metadata":{"page-title":"Future Tools - Find The Exact AI Tool For Your Needs","url":"https://www.futuretools.io/","date":"2023-04-19 22:47:22"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_How_To_Acquire_a_Let's_Encrypt_Certificate_Using_DNS_Validation_with_acme-dns-certbot_on_Ubuntu_18_04__DigitalOcean_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_How_To_Acquire_a_Let's_Encrypt_Certificate_Using_DNS_Validation_with_acme-dns-certbot_on_Ubuntu_18_04__DigitalOcean_md.ajson deleted file mode 100644 index 87095db..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_How_To_Acquire_a_Let's_Encrypt_Certificate_Using_DNS_Validation_with_acme-dns-certbot_on_Ubuntu_18_04__DigitalOcean_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/How To Acquire a Let's Encrypt Certificate Using DNS Validation with acme-dns-certbot on Ubuntu 18.04 DigitalOcean.md": {"path":"000-inbox/clippings/2023/04/How To Acquire a Let's Encrypt Certificate Using DNS Validation with acme-dns-certbot on Ubuntu 18.04 DigitalOcean.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"jc0lkm","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1680742600000,"size":12039,"at":1766986878957,"hash":"jc0lkm"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"###Introduction":[8,21],"###Introduction#{1}":[10,21],"##Prerequisites":[22,32],"##Prerequisites#{1}":[24,25],"##Prerequisites#{2}":[26,27],"##Prerequisites#{3}":[28,30],"##Prerequisites#{4}":[31,32],"##Step 1 — Installing Certbot":[33,54],"##Step 1 — Installing Certbot#{1}":[35,54],"##Step 2 — Installing acme-dns-certbot":[55,81],"##Step 2 — Installing acme-dns-certbot#{1}":[57,81],"##Step 3 — Setting Up acme-dns-certbot":[82,130],"##Step 3 — Setting Up acme-dns-certbot#{1}":[84,130],"##Step 4 — Using acme-dns-certbot":[131,178],"##Step 4 — Using acme-dns-certbot#{1}":[133,178],"##Conclusion":[179,193],"##Conclusion#{1}":[181,186],"##Conclusion#{2}":[187,188],"##Conclusion#{3}":[189,192],"##Conclusion#{4}":[193,193]},"outlinks":[{"title":"Write for DOnations","target":"https://do.co/w4do-cta","line":6},{"title":"COVID-19 Relief Fund","target":"https://www.brightfunds.org/funds/write-for-donations-covid-19-relief-fund","line":6},{"title":"wildcard certificates","target":"https://en.wikipedia.org/wiki/Wildcard_certificate","line":10},{"title":"Let’s Encrypt","target":"https://letsencrypt.org/","line":10},{"title":"Certbot","target":"https://certbot.eff.org/","line":14},{"title":"acme-dns-certbot","target":"https://github.com/joohoi/acme-dns-certbot-joohoi","line":14},{"title":"DNS zones","target":"https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts#zone-files","line":16},{"title":"Initial Server Setup with Ubuntu 18.04","target":"https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18-04","line":26},{"title":"`CNAME` record(s)","target":"https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts#record-types","line":92},{"title":"A screenshot of the DigitalOcean DNS control panel, showing an example of a CNAME record for ACME DNS","target":"https://assets.digitalocean.com/articles/acme_dns_certbot_1804/CNAME.png","line":112,"embedded":true},{"title":"acme-dns-certbot repository","target":"https://github.com/joohoi/acme-dns-certbot-joohoi","line":183},{"title":"acme-dns on GitHub","target":"https://github.com/joohoi/acme-dns#acme-dns","line":187},{"title":"RFC8555 - Section 8.4","target":"https://tools.ietf.org/html/rfc8555#section-8.4","line":193}],"metadata":{"page-title":"How To Acquire a Let's Encrypt Certificate Using DNS Validation with acme-dns-certbot on Ubuntu 18.04 | DigitalOcean","url":"https://www.digitalocean.com/community/tutorials/how-to-acquire-a-let-s-encrypt-certificate-using-dns-validation-with-acme-dns-certbot-on-ubuntu-18-04","date":"2023-04-06 08:56:39"},"task_lines":[],"tasks":{},"codeblock_ranges":[[49,51],[69,72],[98,106],[120,127],[143,150],[164,175]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_Install_ROCm_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_How_to_Install_ROCm_md.ajson deleted file mode 100644 index 5227aa7..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_Install_ROCm_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/How to Install ROCm.md": {"path":"000-inbox/clippings/2023/04/How to Install ROCm.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1d1xk7g","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682245224000,"size":27392,"at":1766986878957,"hash":"1d1xk7g"},"blocks":{"#---frontmatter---":[1,5],"##How to Install ROCm":[6,13],"##How to Install ROCm#{1}":[8,13],"##Installer Script Method":[14,154],"##Installer Script Method#{1}":[16,29],"##Installer Script Method#Download and Install the Installer":[30,63],"##Installer Script Method#Download and Install the Installer#{1}":[32,33],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on Ubuntu":[34,43],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on Ubuntu#**Ubuntu** **v****20.04**":[36,39],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on Ubuntu#**Ubuntu** **v****20.04**#{1}":[38,39],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on Ubuntu#**Ubuntu** **v****2****2****.04**":[40,43],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on Ubuntu#**Ubuntu** **v****2****2****.04**#{1}":[42,43],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL":[44,57],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL v8.6**":[46,49],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL v8.6**#{1}":[48,49],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL** **v****8.****7**":[50,53],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL** **v****8.****7**#{1}":[52,53],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL v****9.****1**":[54,57],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on RHEL#**RHEL v****9.****1**#{1}":[56,57],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on **SLES 15**":[58,63],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on **SLES 15**#{1}":[60,61],"##Installer Script Method#Download and Install the Installer#Downloading and Installing the Installer Script on **SLES 15**#**SLES 15 Service Pack** **4**":[62,63],"##Installer Script Method#Using the Installer Script for Single-version ROCm Installation":[64,86],"##Installer Script Method#Using the Installer Script for Single-version ROCm Installation#{1}":[66,86],"##Installer Script Method#Using Installer Script in Docker":[87,90],"##Installer Script Method#Using Installer Script in Docker#{1}":[89,90],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation":[91,154],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#{1}":[93,102],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories":[103,134],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#{1}":[105,110],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on Ubuntu":[111,118],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on Ubuntu#{1}":[113,118],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on RHEL":[119,126],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on RHEL#{1}":[121,126],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on SLES/OpenSUSE":[127,134],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Add Required ROCm Repositories#Adding ROCm Repositories on SLES/OpenSUSE#{1}":[129,134],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Use the Installer to Install Multiversion ROCm Meta-packages":[135,154],"##Installer Script Method#Using the Installer Script for Multiversion ROCm Installation#Use the Installer to Install Multiversion ROCm Meta-packages#{1}":[137,154],"##Package Manager Method":[155,618],"##Package Manager Method#{1}":[157,170],"##Package Manager Method#Installing ROCm on Linux Distributions":[171,194],"##Package Manager Method#Installing ROCm on Linux Distributions#{1}":[173,194],"##Package Manager Method#Understanding the Release-specific AMDGPU and ROCm Stack Repositories on Linux Distributions":[195,202],"##Package Manager Method#Understanding the Release-specific AMDGPU and ROCm Stack Repositories on Linux Distributions#{1}":[197,202],"##Package Manager Method#Using Package Manager on Ubuntu":[203,336],"##Package Manager Method#Using Package Manager on Ubuntu#{1}":[205,206],"##Package Manager Method#Using Package Manager on Ubuntu#Installation of Kernel Headers and Development Packages on Ubuntu":[207,224],"##Package Manager Method#Using Package Manager on Ubuntu#Installation of Kernel Headers and Development Packages on Ubuntu#{1}":[209,224],"##Package Manager Method#Using Package Manager on Ubuntu#Base URLs for AMDGPU and ROCm Stack Repositories":[225,234],"##Package Manager Method#Using Package Manager on Ubuntu#Base URLs for AMDGPU and ROCm Stack Repositories#{1}":[227,228],"##Package Manager Method#Using Package Manager on Ubuntu#Base URLs for AMDGPU and ROCm Stack Repositories#Ubuntu v20.04/22.04":[229,234],"##Package Manager Method#Using Package Manager on Ubuntu#Base URLs for AMDGPU and ROCm Stack Repositories#Ubuntu v20.04/22.04#{1}":[231,234],"##Package Manager Method#Using Package Manager on Ubuntu#Adding the AMDGPU Stack Repository":[235,264],"##Package Manager Method#Using Package Manager on Ubuntu#Adding the AMDGPU Stack Repository#Add GPG Key for AMDGPU and ROCm Stack":[237,244],"##Package Manager Method#Using Package Manager on Ubuntu#Adding the AMDGPU Stack Repository#Add GPG Key for AMDGPU and ROCm Stack#{1}":[239,244],"##Package Manager Method#Using Package Manager on Ubuntu#Adding the AMDGPU Stack Repository#Add the AMDGPU Stack Repository":[245,264],"##Package Manager Method#Using Package Manager on Ubuntu#Adding the AMDGPU Stack Repository#Add the AMDGPU Stack Repository#{1}":[247,264],"##Package Manager Method#Using Package Manager on Ubuntu#Install the Kernel-mode Driver and Reboot System":[265,282],"##Package Manager Method#Using Package Manager on Ubuntu#Install the Kernel-mode Driver and Reboot System#{1}":[267,282],"##Package Manager Method#Using Package Manager on Ubuntu#Add ROCm Stack Repository":[283,290],"##Package Manager Method#Using Package Manager on Ubuntu#Add ROCm Stack Repository#{1}":[285,290],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages":[291,332],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages#{1}":[293,294],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages#Single-version ROCm Packages Installation":[295,304],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages#Single-version ROCm Packages Installation#{1}":[297,304],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages#ROCm Packages Installation":[305,332],"##Package Manager Method#Using Package Manager on Ubuntu#Install ROCm Meta-packages#ROCm Packages Installation#{1}":[307,332],"##Package Manager Method#Using Package Manager on Ubuntu#Verify the Installation":[333,336],"##Package Manager Method#Using Package Manager on Ubuntu#Verify the Installation#{1}":[335,336],"##Package Manager Method#Using Package Manager on RHEL":[337,484],"##Package Manager Method#Using Package Manager on RHEL#{1}":[339,340],"##Package Manager Method#Using Package Manager on RHEL#Installation of Kernel Headers and Development Packages on RHEL":[341,360],"##Package Manager Method#Using Package Manager on RHEL#Installation of Kernel Headers and Development Packages on RHEL#{1}":[343,360],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories":[361,382],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#{1}":[363,364],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v8.6":[365,370],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v8.6#{1}":[367,370],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v8.7":[371,376],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v8.7#{1}":[373,376],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v9.1":[377,382],"##Package Manager Method#Using Package Manager on RHEL#Base URLs for AMDGPU and ROCm Stack Repositories#RHEL v9.1#{1}":[379,382],"##Package Manager Method#Using Package Manager on RHEL#Adding the AMDGPU Stack Repository":[383,406],"##Package Manager Method#Using Package Manager on RHEL#Adding the AMDGPU Stack Repository#{1}":[385,406],"##Package Manager Method#Using Package Manager on RHEL#Install the Kernel-mode Driver and Reboot System":[407,422],"##Package Manager Method#Using Package Manager on RHEL#Install the Kernel-mode Driver and Reboot System#{1}":[409,422],"##Package Manager Method#Using Package Manager on RHEL#Add the ROCm Stack Repository":[423,436],"##Package Manager Method#Using Package Manager on RHEL#Add the ROCm Stack Repository#{1}":[425,436],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages":[437,480],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages#{1}":[439,440],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages#ROCm Packages Installation":[441,452],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages#ROCm Packages Installation#{1}":[443,452],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages#ROCm Meta-packages Installation":[453,480],"##Package Manager Method#Using Package Manager on RHEL#Install ROCm Meta-packages#ROCm Meta-packages Installation#{1}":[455,480],"##Package Manager Method#Using Package Manager on RHEL#Verify the Installation":[481,484],"##Package Manager Method#Using Package Manager on RHEL#Verify the Installation#{1}":[483,484],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE":[485,618],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#{1}":[487,488],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Installation of Kernel Headers and Development Packages":[489,508],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Installation of Kernel Headers and Development Packages#{1}":[491,508],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Base URLs for AMDGPU and ROCm Stack Repositories":[509,518],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Base URLs for AMDGPU and ROCm Stack Repositories#{1}":[511,512],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Base URLs for AMDGPU and ROCm Stack Repositories#SLES 15 Service Pack 4":[513,518],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Base URLs for AMDGPU and ROCm Stack Repositories#SLES 15 Service Pack 4#{1}":[515,518],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Adding the AMDGPU Stack Repository":[519,542],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Adding the AMDGPU Stack Repository#{1}":[521,542],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install the Kernel-mode Driver and Reboot System":[543,556],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install the Kernel-mode Driver and Reboot System#{1}":[545,556],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Add the ROCm Stack Repository":[557,568],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Add the ROCm Stack Repository#{1}":[559,568],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install ROCm Meta-packages":[569,614],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install ROCm Meta-packages#Single-version ROCm Packages Installation":[571,584],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install ROCm Meta-packages#Single-version ROCm Packages Installation#{1}":[573,584],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install ROCm Meta-packages#ROCm Packages Installation":[585,614],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Install ROCm Meta-packages#ROCm Packages Installation#{1}":[587,614],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Verify the Installation":[615,618],"##Package Manager Method#Using Package Manager on SLES/OpenSUSE#Verify the Installation#{1}":[617,618],"##Post-install Actions and Verification Process":[619,659],"##Post-install Actions and Verification Process#{1}":[621,622],"##Post-install Actions and Verification Process#Post-install Actions":[623,630],"##Post-install Actions and Verification Process#Post-install Actions#{1}":[625,630],"##Post-install Actions and Verification Process#Verifying Kernel-mode Driver Installation":[631,634],"##Post-install Actions and Verification Process#Verifying Kernel-mode Driver Installation#{1}":[633,634],"##Post-install Actions and Verification Process#Verifying ROCm Installation":[635,638],"##Post-install Actions and Verification Process#Verifying ROCm Installation#{1}":[637,638],"##Post-install Actions and Verification Process#Verifying Package Installation":[639,659],"##Post-install Actions and Verification Process#Verifying Package Installation#{1}":[641,659]},"outlinks":[{"title":"Prerequisites","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html","line":20},{"title":"Download and Install the Installer","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e234","line":97},{"title":"Base URLs for AMDGPU and ROCm Stack Repositories","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e2075","line":113},{"title":"Prerequisites","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html","line":175},{"title":"Kernel Information","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html","line":211},{"title":"https://repo.radeon.com/amdgpu/5.4.3/ubuntu","target":"https://repo.radeon.com/amdgpu/5.4.3/ubuntu","line":231},{"title":"https://repo.radeon.com/rocm/apt/5.4.3","target":"https://repo.radeon.com/rocm/apt/5.4.3","line":233},{"title":"Base URLs for AMDGPU and ROCm Stack Repositories","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e2075","line":315},{"title":"Post-install Actions and Verification Process","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e6230","line":335},{"title":"Kernel Information","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html","line":349},{"title":"https://repo.radeon.com/amdgpu/5.4.3/rhel/8.6/main/x86\\_64/","target":"https://repo.radeon.com/amdgpu/5.4.3/rhel/8.6/main/x86_64/","line":367},{"title":"https://repo.radeon.com/rocm/rhel8/5.4.3/main/","target":"https://repo.radeon.com/rocm/rhel8/5.4.3/main/","line":369},{"title":"https://repo.radeon.com/amdgpu/5.4.3/rhel/8.7/main/x86\\_64","target":"https://repo.radeon.com/amdgpu/5.4.3/rhel/8.7/main/x86_64","line":373},{"title":"https://repo.radeon.com/rocm/rhel8/5.4.3/main/","target":"https://repo.radeon.com/rocm/rhel8/5.4.3/main/","line":375},{"title":"https://repo.radeon.com/amdgpu/5.4.3/rhel/9.1/main/x86\\_64","target":"https://repo.radeon.com/amdgpu/5.4.3/rhel/9.1/main/x86_64","line":379},{"title":"https://repo.radeon.com/rocm/rhel9/5.4.3/main/","target":"https://repo.radeon.com/rocm/rhel9/5.4.3/main/","line":381},{"title":"Base URLs for AMDGPU and ROCm Stack Repositories","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e2474","line":399},{"title":"Base URLs for AMDGPU and ROCm Stack Repositories","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e2474","line":429},{"title":"Post-install Actions and Verification Process","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e6230","line":483},{"title":"Kernel Information","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html#d5427e109","line":497},{"title":"https://repo.radeon.com/amdgpu/5.4.3/sle/15.4/main/x86\\_64","target":"https://repo.radeon.com/amdgpu/5.4.3/sle/15.4/main/x86_64","line":515},{"title":"https://repo.radeon.com/rocm/zyp/5.4.3/main/","target":"https://repo.radeon.com/rocm/zyp/5.4.3/main/","line":517},{"title":"Base URLs for AMDGPU and ROCm Stack Repositories:","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html#d5427e109","line":599},{"title":"Post-install Actions and Verification Process","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html#d23e6230","line":617}],"metadata":{"page-title":"How to Install ROCm","url":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/How_to_Install_ROCm.html","date":"2023-04-23 18:20:24"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_PostgreSQL_on_Debian_11_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_PostgreSQL_on_Debian_11_md.ajson deleted file mode 100644 index 973f88d..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_PostgreSQL_on_Debian_11_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/How to install PostgreSQL on Debian 11.md": {"path":"000-inbox/clippings/2023/04/How to install PostgreSQL on Debian 11.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1haj3wv","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681885443000,"size":7082,"at":1766986878957,"hash":"1haj3wv"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##**Notable Features of PostgreSQL**":[8,23],"##**Notable Features of PostgreSQL**#{1}":[10,11],"##**Notable Features of PostgreSQL**#{2}":[12,12],"##**Notable Features of PostgreSQL**#{3}":[13,13],"##**Notable Features of PostgreSQL**#{4}":[14,14],"##**Notable Features of PostgreSQL**#{5}":[15,16],"##**Notable Features of PostgreSQL**#{6}":[17,23],"##**Method 1: How to install PostgreSQL using repository of Debian 11**":[24,61],"##**Method 1: How to install PostgreSQL using repository of Debian 11**#{1}":[26,61],"##**Method 2: How to install PostgreSQL using official repository of Debian 11**":[62,87],"##**Method 2: How to install PostgreSQL using official repository of Debian 11**#{1}":[64,87],"##**How to create database using PostgreSQL in Debian 11**":[88,119],"##**How to create database using PostgreSQL in Debian 11**#{1}":[90,119],"##**Conclusion**":[120,122],"##**Conclusion**#{1}":[122,122]},"outlinks":[],"metadata":{"page-title":"How to install PostgreSQL on Debian 11","url":"https://linuxhint.com/install-postgresql-debian/","date":"2023-04-19 14:24:01"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_and_run_bots_for_the_Matrix_network_–_tmplab_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_and_run_bots_for_the_Matrix_network_–_tmplab_md.ajson deleted file mode 100644 index 734bcc9..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_install_and_run_bots_for_the_Matrix_network_–_tmplab_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/How to install and run bots for the Matrix network – tmplab.md": {"path":"000-inbox/clippings/2023/04/How to install and run bots for the Matrix network – tmplab.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"18xrtde","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681796066000,"size":8680,"at":1766986878957,"hash":"18xrtde"},"blocks":{"#---frontmatter---":[1,5],"#":[6,23],"##Deploying Maubot on a server":[24,43],"##Deploying Maubot on a server#{1}":[26,43],"##Creating your first bot":[44,61],"##Creating your first bot#{1}":[46,61],"##**Add a plugin**":[62,111],"##**Add a plugin**#{1}":[64,111],"##**Add a client**":[112,147],"##**Add a client**#{1}":[114,147],"##**Add an instance**":[148,159],"##**Add an instance**#{1}":[150,159],"##How to use your bot":[160,170],"##How to use your bot#{1}":[162,170]},"outlinks":[{"title":"Matrix","target":"https://en.wikipedia.org/wiki/Matrix_(protocol","line":6},{"title":"our riot channel","target":"https://riot.fuz.re/#/room/#tmplab:matrix.fuz.re","line":8},{"title":"a list of concerns","target":"https://github.com/privacytoolsIO/services/issues/17","line":12},{"title":"bots","target":"https://github.com/leo-lb/fuzisup","line":14},{"title":"many","target":"https://github.com/matrix-org/go-neb","line":14},{"title":"available","target":"https://github.com/matrix-org/Matrix-NEB","line":14},{"title":"maubot","target":"https://github.com/maubot/maubot","line":14},{"title":"a page dedicated to them","target":"https://matrix.org/bots/","line":14},{"title":"Tulir Asokan","target":"https://github.com/tulir","line":22},{"title":"his own implementation of the matrix api","target":"https://github.com/tulir/mautrix-python","line":22},{"title":"this git project","target":"https://git.interhacker.space/alban/maubot-installer","line":26},{"title":"lists a number of plugins","target":"https://github.com/maubot/maubot","line":64},{"title":"plugin-install.sh","target":"https://git.interhacker.space/alban/maubot-installer/raw/branch/master/plugins-install.sh","line":92},{"title":"trump plugin","target":"https://github.com/jeffcasavant/MaubotTrumpTweet","line":102},{"title":"https://riot.im/app","target":"https://riot.im/app","line":116},{"title":"dice","target":"https://github.com/maubot/dice","line":164}],"metadata":{"page-title":"How to install and run bots for the Matrix network – /tmp/lab","url":"https://www.tmplab.org/2020/04/01/how-to-install-and-run-bots-for-the-matrix-network/","date":"2023-04-18 13:34:24"},"task_lines":[],"tasks":{},"codeblock_ranges":[[34,38],[104,108]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_setup_your_OTP_appliance_with_privacyIDEA_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_How_to_setup_your_OTP_appliance_with_privacyIDEA_md.ajson deleted file mode 100644 index 5b85550..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_How_to_setup_your_OTP_appliance_with_privacyIDEA_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/How to setup your OTP appliance with privacyIDEA.md": {"path":"000-inbox/clippings/2023/04/How to setup your OTP appliance with privacyIDEA.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14iu39j","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682600209000,"size":16244,"at":1766986878957,"hash":"14iu39j"},"blocks":{"#---frontmatter---":[1,5],"###On this page":[6,26],"###On this page#{1}":[8,8],"###On this page#{2}":[9,9],"###On this page#{3}":[10,14],"###On this page#{4}":[15,17],"###On this page#{5}":[18,19],"###On this page#{6}":[20,26],"##Base installation":[27,32],"##Base installation#{1}":[29,32],"##Install privacyIDEA":[33,63],"##Install privacyIDEA#{1}":[35,63],"##Configure your appliance":[64,179],"##Configure your appliance#{1}":[66,75],"##Configure your appliance#{2}":[76,76],"##Configure your appliance#{3}":[77,77],"##Configure your appliance#{4}":[78,79],"##Configure your appliance#{5}":[80,85],"##Configure your appliance#Create your token administrator":[86,102],"##Configure your appliance#Create your token administrator#{1}":[88,93],"##Configure your appliance#Create your token administrator#{2}":[94,94],"##Configure your appliance#Create your token administrator#{3}":[95,96],"##Configure your appliance#Create your token administrator#{4}":[97,102],"##Configure your appliance#Create the MySQL database":[103,120],"##Configure your appliance#Create the MySQL database#{1}":[105,120],"##Configure your appliance#Create your RADIUS clients":[121,172],"##Configure your appliance#Create your RADIUS clients#{1}":[123,130],"##Configure your appliance#Create your RADIUS clients#{2}":[131,132],"##Configure your appliance#Create your RADIUS clients#{3}":[133,141],"##Configure your appliance#Create your RADIUS clients#{4}":[142,143],"##Configure your appliance#Create your RADIUS clients#{5}":[144,172],"##Configure your appliance#Done configuring":[173,179],"##Configure your appliance#Done configuring#{1}":[175,179],"##Enroll your Token":[180,237],"##Enroll your Token#{1}":[182,191],"##Enroll your Token#Connect to user source":[192,215],"##Enroll your Token#Connect to user source#{1}":[194,215],"##Enroll your Token#Enroll a token to the user":[216,237],"##Enroll your Token#Enroll a token to the user#{1}":[218,237],"##Test your system":[238,266],"##Test your system#{1}":[240,266]},"outlinks":[{"title":"Base installation","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#base-installation","line":8},{"title":"Install privacyIDEA","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#install-privacyidea","line":9},{"title":"Configure your appliance","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#configure-your-appliance","line":10},{"title":"Create your token administrator","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#create-your-token-administrator","line":11},{"title":"Create the MySQL database","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#create-the-mysql-database","line":12},{"title":"Create your RADIUS clients","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#create-your-radius-clients","line":13},{"title":"Done configuring","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#done-configuring","line":14},{"title":"Enroll your Token","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#enroll-your-token","line":15},{"title":"Connect to user source","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#connect-to-user-source","line":16},{"title":"Enroll a token to the user","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#enroll-a-token-to-the-user","line":17},{"title":"Test your system","target":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/#test-your-system","line":18},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/server.png?ezimgfmt=rs:180x550/rscb5/ngcb5/notWebP","line":20},{"title":"privacyIDEA","target":"http://privacyidea.org/","line":25},{"title":"here","target":"https://www.howtoforge.com/how-to-run-privacyidea-with-apache2-and-mysql-on-ubuntu-14.04-lts","line":25},{"title":"here","target":"https://www.howtoforge.com/two-factor-authentication-with-otp-using-privacyidea-and-freeradius-on-centos","line":25},{"title":"plain ubuntu server 14.04 LTS","target":"http://releases.ubuntu.com/14.04/ubuntu-14.04.1-server-amd64.iso","line":31},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/startscreen.png?ezimgfmt=rs:300x414/rscb5/ng:webp/ngcb5","line":70},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/add-new-admin.png?ezimgfmt=rs:300x278/rscb5/ng:webp/ngcb5","line":91},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/admin-list.png?ezimgfmt=rs:300x278/rscb5/ng:webp/ngcb5","line":99},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/db1.png?ezimgfmt=rs:400x331/rscb5/ng:webp/ngcb5","line":109},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/db2.png?ezimgfmt=rs:300x282/rscb5/ng:webp/ngcb5","line":113},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/db3.png?ezimgfmt=rs:400x342/rscb5/ng:webp/ngcb5","line":117},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/clientconfig1.png?ezimgfmt=rs:300x272/rscb5/ng:webp/ngcb5","line":123},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/newclient1.png?ezimgfmt=rs:300x192/rscb5/ng:webp/ngcb5","line":156},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/newclient2.png?ezimgfmt=rs:300x194/rscb5/ng:webp/ngcb5","line":159},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/newclient3.png?ezimgfmt=rs:300x193/rscb5/ng:webp/ngcb5","line":162},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/newclient4.png?ezimgfmt=rs:300x194/rscb5/ng:webp/ngcb5","line":165},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/newclient5.png?ezimgfmt=rs:300x194/rscb5/ng:webp/ngcb5","line":168},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/login-screen.png?ezimgfmt=rs:500x264/rscb5/ng:webp/ngcb5","line":184},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/webui1.png?ezimgfmt=rs:500x344/rscb5/ng:webp/ngcb5","line":188},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/flatfile.png?ezimgfmt=rs:500x193/rscb5/ng:webp/ngcb5","line":198},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/realms1.png?ezimgfmt=rs:500x463/rscb5/ng:webp/ngcb5","line":206},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/realms2.png?ezimgfmt=rs:500x458/rscb5/ng:webp/ngcb5","line":212},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/userview.png?ezimgfmt=rs:500x327/rscb5/ng:webp/ngcb5","line":218},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/sidebar.png?ezimgfmt=rs:200x175/rscb5/ng:webp/ngcb5","line":222},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/enroll.png?ezimgfmt=rs:400x328/rscb5/ng:webp/ngcb5","line":226},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/qr.png?ezimgfmt=rs:400x389/rscb5/ng:webp/ngcb5","line":230},{"title":"![","target":"https://www.howtoforge.com/images/otp-appliance-with-privacyidea/pin.png?ezimgfmt=rs:400x306/rscb5/ng:webp/ngcb5","line":234}],"metadata":{"page-title":"How to setup your OTP appliance with privacyIDEA","url":"https://www.howtoforge.com/how-to-setup-otp-appliance-with-privacyidea/","date":"2023-04-27 20:56:48"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Install_and_Run_on_AMD_GPUs_·_AUTOMATIC1111stable-diffusion-webui_Wiki_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Install_and_Run_on_AMD_GPUs_·_AUTOMATIC1111stable-diffusion-webui_Wiki_md.ajson deleted file mode 100644 index 31d9afd..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Install_and_Run_on_AMD_GPUs_·_AUTOMATIC1111stable-diffusion-webui_Wiki_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Install and Run on AMD GPUs · AUTOMATIC1111stable-diffusion-webui Wiki.md": {"path":"000-inbox/clippings/2023/04/Install and Run on AMD GPUs · AUTOMATIC1111stable-diffusion-webui Wiki.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"m5e58b","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682245194000,"size":11029,"at":1766986878957,"hash":"m5e58b"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Windows":[11,32],"##Windows#{1}":[13,17],"##Windows#{2}":[18,18],"##Windows#{3}":[19,19],"##Windows#{4}":[20,20],"##Windows#{5}":[21,21],"##Windows#{6}":[22,23],"##Windows#{7}":[24,25],"##Windows#{8}":[26,27],"##Windows#{9}":[28,30],"##Windows#{10}":[31,32],"##Automatic Installation":[33,49],"##Automatic Installation#{1}":[35,36],"##Automatic Installation#{2}":[37,38],"##Automatic Installation#{3}":[39,40],"##Automatic Installation#{4}":[41,42],"##Automatic Installation#{5}":[43,44],"##Automatic Installation#{6}":[45,47],"##Automatic Installation#{7}":[48,49],"##Running natively":[50,59],"##Running natively#{1}":[52,59],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers":[60,65],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers#{1}":[61,65],"#Optional: \"git pull\" to update the repository":[66,68],"#Optional: \"git pull\" to update the repository#{1}":[67,68],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[2]":[69,90],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[2]#{1}":[70,77],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[2]#Running inside Docker":[78,90],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[2]#Running inside Docker#{1}":[80,90],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[3]":[91,96],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[3]#{1}":[92,96],"#Optional: \"git pull\" to update the repository[2]":[97,99],"#Optional: \"git pull\" to update the repository[2]#{1}":[98,99],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]":[100,139],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#{1}":[101,104],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Updating Python version inside Docker":[105,124],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Updating Python version inside Docker#{1}":[107,124],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Install on AMD and Arch Linux":[125,129],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Install on AMD and Arch Linux#{1}":[127,129],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Arch-specific dependencies":[130,139],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Arch-specific dependencies#{1}":[132,133],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Arch-specific dependencies#{2}":[134,135],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Arch-specific dependencies#{3}":[136,137],"#It's possible that you don't need \"--precision full\", dropping \"--no-half\" however crashes my drivers[4]#Arch-specific dependencies#{4}":[138,139],"#Install either one:":[140,167],"#Install either one:#{1}":[141,143],"#Install either one:#{2}":[144,145],"#Install either one:#{3}":[146,155],"#Install either one:#Setup `venv` environment":[156,167],"#Install either one:#Setup `venv` environment#{1}":[158,159],"#Install either one:#Setup `venv` environment#{2}":[160,163],"#Install either one:#Setup `venv` environment#{3}":[164,165],"#Install either one:#Setup `venv` environment#{4}":[166,167],"#!/bin/bash":[168,193],"#!/bin/bash#{1}":[169,172],"#!/bin/bash#{2}":[173,174],"#!/bin/bash#{3}":[175,177],"#!/bin/bash#Launch":[178,184],"#!/bin/bash#Launch#{1}":[180,184],"#!/bin/bash#Limitations":[185,193],"#!/bin/bash#Limitations#{1}":[187,188],"#!/bin/bash#Limitations#{2}":[189,190],"#!/bin/bash#Limitations#{3}":[191,192],"#!/bin/bash#Limitations#{4}":[193,193]},"outlinks":[{"title":"https://github.com/lshqqytiger/stable-diffusion-webui-directml/issues","target":"https://github.com/lshqqytiger/stable-diffusion-webui-directml/issues","line":16},{"title":"git","target":"https://github.com/git-for-windows/git/releases/download/v2.39.2.windows.1/Git-2.39.2-64-bit.exe","line":18},{"title":"Python 3.10.6","target":"https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe","line":18},{"title":"1/15/23","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/6709","line":35},{"title":"https://github.com/AUTOMATIC1111/stable-diffusion-webui","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui","line":39},{"title":"here","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/5468","line":48},{"title":"https://github.com/ROCmSoftwarePlatform/MIOpen#installing-miopen-kernels-package","target":"https://github.com/ROCmSoftwarePlatform/MIOpen#installing-miopen-kernels-package","line":74},{"title":"here","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/5468","line":121},{"title":"required dependencies","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Dependencies#required-dependencies","line":132},{"title":"AUR helper","target":"https://wiki.archlinux.org/title/AUR_helpers","line":154},{"title":"Command Line Arguments","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Command-Line-Arguments-and-Settings","line":171},{"title":"Automatic Installation","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-AMD-GPUs#automatic-installation","line":171},{"title":"Optimizations","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Optimizations","line":171},{"title":"PyTorch","target":"https://github.com/archlinux/svntogit-community/blob/5689e7f44f082ba3c37724c2890e93e7106002a1/trunk/PKGBUILD#L220","line":189},{"title":"installation method","target":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-AMD-GPUs","line":189},{"title":"Tourchvision","target":"https://github.com/rocm-arch/python-torchvision-rocm/blob/b66f7ed9540a0e25f4a81bf0d9cfc3d76bc0270e/PKGBUILD#L68-L74","line":189},{"title":"here","target":"https://llvm.org/docs/AMDGPUUsage.html#processors","line":189}],"metadata":{"page-title":"Install and Run on AMD GPUs · AUTOMATIC1111/stable-diffusion-webui Wiki","url":"https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-AMD-GPUs","date":"2023-04-23 18:19:53","tags":["#add"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Installation_-_Docs_-_Appwrite_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Installation_-_Docs_-_Appwrite_md.ajson deleted file mode 100644 index 679d19d..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Installation_-_Docs_-_Appwrite_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Installation - Docs - Appwrite.md": {"path":"000-inbox/clippings/2023/04/Installation - Docs - Appwrite.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1p6atx8","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1680795672000,"size":8019,"at":1766986878957,"hash":"1p6atx8"},"blocks":{"#---frontmatter---":[1,5],"##Table of contents":[6,68],"##Table of contents#{1}":[8,9],"##Table of contents#{2}":[10,11],"##Table of contents#{3}":[12,19],"##Table of contents#{4}":[20,20],"##Table of contents#{5}":[21,21],"##Table of contents#{6}":[22,22],"##Table of contents#{7}":[23,23],"##Table of contents#{8}":[24,24],"##Table of contents#{9}":[25,28],"##Table of contents#{10}":[29,30],"##Table of contents#{11}":[31,32],"##Table of contents#{12}":[33,33],"##Table of contents#{13}":[34,34],"##Table of contents#{14}":[35,36],"##Table of contents#{15}":[37,38],"##Table of contents#{16}":[39,39],"##Table of contents#{17}":[40,40],"##Table of contents#{18}":[41,41],"##Table of contents#{19}":[42,42],"##Table of contents#{20}":[43,43],"##Table of contents#{21}":[44,44],"##Table of contents#{22}":[45,45],"##Table of contents#{23}":[46,46],"##Table of contents#{24}":[47,48],"##Table of contents#{25}":[49,50],"##Table of contents#{26}":[51,51],"##Table of contents#{27}":[52,52],"##Table of contents#{28}":[53,53],"##Table of contents#{29}":[54,55],"##Table of contents#{30}":[56,57],"##Table of contents#{31}":[58,58],"##Table of contents#{32}":[59,59],"##Table of contents#{33}":[60,60],"##Table of contents#{34}":[61,61],"##Table of contents#{35}":[62,62],"##Table of contents#{36}":[63,63],"##Table of contents#{37}":[64,64],"##Table of contents#{38}":[65,66],"##Table of contents#{39}":[67,68],"##Installation":[69,72],"##Installation#{1}":[71,72],"##[System Requirements](https://appwrite.io/docs/installation#systemRequirements)":[73,82],"##[System Requirements](https://appwrite.io/docs/installation#systemRequirements)#{1}":[75,78],"##[System Requirements](https://appwrite.io/docs/installation#systemRequirements)#Upgrading From Older Versions":[79,82],"##[System Requirements](https://appwrite.io/docs/installation#systemRequirements)#Upgrading From Older Versions#{1}":[81,82],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)":[83,137],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#{1}":[85,88],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#{2}":[89,89],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#{3}":[90,90],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#{4}":[91,91],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#{5}":[92,93],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Unix](https://appwrite.io/docs/installation#unix)":[94,105],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Unix](https://appwrite.io/docs/installation#unix)#{1}":[96,105],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)":[106,137],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{1}":[108,109],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{2}":[110,110],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{3}":[111,112],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{4}":[113,124],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{5}":[115,124],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{6}":[125,137],"##[Install with Docker](https://appwrite.io/docs/installation#installWithDocker)#[Windows](https://appwrite.io/docs/installation#windows)#{7}":[127,137],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)":[138,189],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#{1}":[140,157],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Manual (using docker-compose.yml)](https://appwrite.io/docs/installation#manual)":[158,169],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Manual (using docker-compose.yml)](https://appwrite.io/docs/installation#manual)#{1}":[160,169],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Stop](https://appwrite.io/docs/installation#stop)":[170,179],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Stop](https://appwrite.io/docs/installation#stop)#{1}":[172,179],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Uninstall](https://appwrite.io/docs/installation#uninstall)":[180,189],"##[One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)#[Uninstall](https://appwrite.io/docs/installation#uninstall)#{1}":[182,189],"##[Learn More](https://appwrite.io/docs/installation#learnMore)":[190,190]},"outlinks":[{"title":"Home","target":"https://appwrite.io/docs","line":8},{"title":"Installation","target":"https://appwrite.io/docs/installation","line":12},{"title":"Production","target":"https://appwrite.io/docs/production","line":13},{"title":"Env. Variables","target":"https://appwrite.io/docs/environment-variables","line":14},{"title":"Email Delivery","target":"https://appwrite.io/docs/email-delivery","line":15},{"title":"SMS Delivery","target":"https://appwrite.io/docs/sms-delivery","line":16},{"title":"Certificates","target":"https://appwrite.io/docs/certificates","line":17},{"title":"Debugging","target":"https://appwrite.io/docs/debugging","line":18},{"title":"Upgrade","target":"https://appwrite.io/docs/upgrade","line":19},{"title":"Appwrite for Web","target":"https://appwrite.io/docs/getting-started-for-web","line":20},{"title":"Appwrite for Flutter","target":"https://appwrite.io/docs/getting-started-for-flutter","line":21},{"title":"Appwrite for Apple","target":"https://appwrite.io/docs/getting-started-for-apple","line":22},{"title":"Appwrite for Android","target":"https://appwrite.io/docs/getting-started-for-android","line":23},{"title":"Appwrite for Server","target":"https://appwrite.io/docs/getting-started-for-server","line":24},{"title":"Appwrite CLI","target":"https://appwrite.io/docs/command-line","line":25},{"title":"Deployment","target":"https://appwrite.io/docs/command-line-deployment","line":26},{"title":"Commands","target":"https://appwrite.io/docs/command-line-commands","line":27},{"title":"CI Mode","target":"https://appwrite.io/docs/command-line-ci","line":28},{"title":"SDKs","target":"https://appwrite.io/docs/sdks","line":29},{"title":"REST","target":"https://appwrite.io/docs/rest","line":33},{"title":"GraphQL","target":"https://appwrite.io/docs/graphql","line":34},{"title":"Realtime","target":"https://appwrite.io/docs/realtime","line":35},{"title":"Account","target":"https://appwrite.io/docs/client/account","line":39},{"title":"Users","target":"https://appwrite.io/docs/server/users","line":40},{"title":"Teams","target":"https://appwrite.io/docs/client/teams","line":41},{"title":"Databases","target":"https://appwrite.io/docs/client/databases","line":42},{"title":"Storage","target":"https://appwrite.io/docs/client/storage","line":43},{"title":"Functions","target":"https://appwrite.io/docs/client/functions","line":44},{"title":"Localization","target":"https://appwrite.io/docs/client/locale","line":45},{"title":"Avatars","target":"https://appwrite.io/docs/client/avatars","line":46},{"title":"Health","target":"https://appwrite.io/docs/server/health","line":47},{"title":"Databases","target":"https://appwrite.io/docs/databases","line":51},{"title":"Storage","target":"https://appwrite.io/docs/storage","line":52},{"title":"Authentication","target":"https://appwrite.io/docs/authentication","line":53},{"title":"Functions","target":"https://appwrite.io/docs/functions","line":54},{"title":"API Keys","target":"https://appwrite.io/docs/keys","line":58},{"title":"Permissions","target":"https://appwrite.io/docs/permissions","line":59},{"title":"Events","target":"https://appwrite.io/docs/events","line":60},{"title":"Pagination","target":"https://appwrite.io/docs/pagination","line":61},{"title":"Webhooks","target":"https://appwrite.io/docs/webhooks","line":62},{"title":"Custom Domains","target":"https://appwrite.io/docs/custom-domains","line":63},{"title":"Response Codes","target":"https://appwrite.io/docs/response-codes","line":64},{"title":"Rate Limits","target":"https://appwrite.io/docs/rate-limits","line":65},{"title":"Docs","target":"https://appwrite.io/docs","line":67},{"title":"Docker CLI","target":"https://www.docker.com/products/docker-desktop","line":71},{"title":"System Requirements","target":"https://appwrite.io/docs/installation#systemRequirements","line":73},{"title":"Docker Compose Version 2","target":"https://docs.docker.com/compose/install/","line":77},{"title":"migration instructions","target":"https://appwrite.io/docs/upgrade","line":81},{"title":"Install with Docker","target":"https://appwrite.io/docs/installation#installWithDocker","line":83},{"title":"Docker CLI","target":"https://www.docker.com/products/docker-desktop","line":85},{"title":"Unix","target":"https://appwrite.io/docs/installation#unix","line":94},{"title":"Windows","target":"https://appwrite.io/docs/installation#windows","line":106},{"title":"Docker Desktop","target":"https://docs.docker.com/desktop/windows/install/","line":108},{"title":"One-Click Setups","target":"https://appwrite.io/docs/installation#one-click-setups","line":138},{"title":"Logo","target":"https://appwrite.io/images-ee/one-click/dark/digitalocean.svg","line":146,"embedded":true},{"title":"Logo","target":"https://appwrite.io/images-ee/one-click/digitalocean.svg","line":146,"embedded":true},{"title":"Click to Install","target":"https://marketplace.digitalocean.com/apps/appwrite","line":150},{"title":"Logo","target":"https://appwrite.io/images-ee/one-click/dark/gitpod.svg","line":152,"embedded":true},{"title":"Logo","target":"https://appwrite.io/images-ee/one-click/gitpod.svg","line":152,"embedded":true},{"title":"Click to Install","target":"https://gitpod.io/#https://github.com/appwrite/integration-for-gitpod","line":156},{"title":"Manual (using docker-compose.yml)","target":"https://appwrite.io/docs/installation#manual","line":158},{"title":"docker-compose.yml","target":"https://appwrite.io/install/compose","line":160},{"title":".env","target":"https://appwrite.io/install/env","line":160},{"title":"Stop","target":"https://appwrite.io/docs/installation#stop","line":170},{"title":"Uninstall","target":"https://appwrite.io/docs/installation#uninstall","line":180},{"title":"Learn More","target":"https://appwrite.io/docs/installation#learnMore","line":190}],"metadata":{"page-title":"Installation - Docs - Appwrite","url":"https://appwrite.io/docs/installation","date":"2023-04-06 23:41:10"},"task_lines":[],"tasks":{},"codeblock_ranges":[[96,102],[115,121],[127,133],[162,164],[174,176],[184,186]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Learning_Rust_With_Entirely_Too_Many_Linked_Lists_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Learning_Rust_With_Entirely_Too_Many_Linked_Lists_md.ajson deleted file mode 100644 index a93dbcd..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Learning_Rust_With_Entirely_Too_Many_Linked_Lists_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Introduction - Learning Rust With Entirely Too Many Linked Lists.md": {"path":"000-inbox/clippings/2023/04/Introduction - Learning Rust With Entirely Too Many Linked Lists.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bu1awc","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1680399125000,"size":15133,"at":1766986878957,"hash":"bu1awc"},"blocks":{"#---frontmatter---":[1,5],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)":[6,53],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{1}":[8,15],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{2}":[16,16],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{3}":[17,17],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{4}":[18,18],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{5}":[19,19],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{6}":[20,20],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{7}":[21,22],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{8}":[23,26],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{9}":[27,27],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{10}":[28,28],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{11}":[29,29],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{12}":[30,30],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{13}":[31,31],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{14}":[32,32],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{15}":[33,34],"##[Learn Rust With Entirely Too Many Linked Lists](https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists)#{16}":[35,53],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)":[54,73],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{1}":[56,57],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{2}":[58,58],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{3}":[59,59],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{4}":[60,60],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{5}":[61,61],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{6}":[62,63],"##[An Obligatory Public Service Announcement](https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement)#{7}":[64,73],"##[Performance doesn't always matter](https://rust-unofficial.github.io/too-many-lists/#performance-doesnt-always-matter)":[74,79],"##[Performance doesn't always matter](https://rust-unofficial.github.io/too-many-lists/#performance-doesnt-always-matter)#{1}":[76,79],"##[They have O(1) split-append-insert-remove if you have a pointer there](https://rust-unofficial.github.io/too-many-lists/#they-have-o1-split-append-insert-remove-if-you-have-a-pointer-there)":[80,87],"##[They have O(1) split-append-insert-remove if you have a pointer there](https://rust-unofficial.github.io/too-many-lists/#they-have-o1-split-append-insert-remove-if-you-have-a-pointer-there)#{1}":[82,87],"##[I can't afford amortization](https://rust-unofficial.github.io/too-many-lists/#i-cant-afford-amortization)":[88,97],"##[I can't afford amortization](https://rust-unofficial.github.io/too-many-lists/#i-cant-afford-amortization)#{1}":[90,97],"##[Linked lists waste less space](https://rust-unofficial.github.io/too-many-lists/#linked-lists-waste-less-space)":[98,111],"##[Linked lists waste less space](https://rust-unofficial.github.io/too-many-lists/#linked-lists-waste-less-space)#{1}":[100,111],"##[I use linked lists all the time in ](https://rust-unofficial.github.io/too-many-lists/#i-use-linked-lists-all-the-time-in-functional-language)":[112,127],"##[I use linked lists all the time in ](https://rust-unofficial.github.io/too-many-lists/#i-use-linked-lists-all-the-time-in-functional-language)#{1}":[114,127],"##[Linked lists are great for building concurrent data structures!](https://rust-unofficial.github.io/too-many-lists/#linked-lists-are-great-for-building-concurrent-data-structures)":[128,133],"##[Linked lists are great for building concurrent data structures!](https://rust-unofficial.github.io/too-many-lists/#linked-lists-are-great-for-building-concurrent-data-structures)#{1}":[130,133],"##[Mumble mumble kernel embedded something something intrusive.](https://rust-unofficial.github.io/too-many-lists/#mumble-mumble-kernel-embedded-something-something-intrusive)":[134,141],"##[Mumble mumble kernel embedded something something intrusive.](https://rust-unofficial.github.io/too-many-lists/#mumble-mumble-kernel-embedded-something-something-intrusive)#{1}":[136,141],"##[Iterators don't get invalidated by unrelated insertions/removals](https://rust-unofficial.github.io/too-many-lists/#iterators-dont-get-invalidated-by-unrelated-insertionsremovals)":[142,147],"##[Iterators don't get invalidated by unrelated insertions/removals](https://rust-unofficial.github.io/too-many-lists/#iterators-dont-get-invalidated-by-unrelated-insertionsremovals)#{1}":[144,147],"##[They're simple and great for teaching!](https://rust-unofficial.github.io/too-many-lists/#theyre-simple-and-great-for-teaching)":[148,151],"##[They're simple and great for teaching!](https://rust-unofficial.github.io/too-many-lists/#theyre-simple-and-great-for-teaching)#{1}":[150,151],"##[Take a Breath](https://rust-unofficial.github.io/too-many-lists/#take-a-breath)":[152,156],"##[Take a Breath](https://rust-unofficial.github.io/too-many-lists/#take-a-breath)#{1}":[154,156]},"outlinks":[{"title":"Learn Rust With Entirely Too Many Linked Lists","target":"https://rust-unofficial.github.io/too-many-lists/#learn-rust-with-entirely-too-many-linked-lists","line":6},{"title":"Everything's on Github!","target":"https://github.com/rust-unofficial/too-many-lists","line":8},{"title":"A Bad Singly-Linked Stack","target":"https://rust-unofficial.github.io/too-many-lists/first.html","line":27},{"title":"An Ok Singly-Linked Stack","target":"https://rust-unofficial.github.io/too-many-lists/second.html","line":28},{"title":"A Persistent Singly-Linked Stack","target":"https://rust-unofficial.github.io/too-many-lists/third.html","line":29},{"title":"A Bad But Safe Doubly-Linked Deque","target":"https://rust-unofficial.github.io/too-many-lists/fourth.html","line":30},{"title":"An Unsafe Singly-Linked Queue","target":"https://rust-unofficial.github.io/too-many-lists/fifth.html","line":31},{"title":"TODO: An Ok Unsafe Doubly-Linked Deque","target":"https://rust-unofficial.github.io/too-many-lists/sixth.html","line":32},{"title":"Bonus: A Bunch of Silly Lists","target":"https://rust-unofficial.github.io/too-many-lists/infinity.html","line":33},{"title":"play.rust-lang.org","target":"https://play.rust-lang.org/","line":35},{"title":"installing all of your Rust toolchains using rustup","target":"https://www.rust-lang.org/tools/install","line":37},{"title":"An Obligatory Public Service Announcement","target":"https://rust-unofficial.github.io/too-many-lists/#an-obligatory-public-service-announcement","line":54},{"title":"*the* list in C++","target":"http://en.cppreference.com/w/cpp/container/list","line":66},{"title":"I couldn't kill from std::collections","target":"https://doc.rust-lang.org/std/collections/struct.LinkedList.html","line":66},{"title":"the first chapter","target":"https://rust-unofficial.github.io/too-many-lists/first.html","line":72},{"title":"Performance doesn't always matter","target":"https://rust-unofficial.github.io/too-many-lists/#performance-doesnt-always-matter","line":74},{"title":"They have O(1) split-append-insert-remove if you have a pointer there","target":"https://rust-unofficial.github.io/too-many-lists/#they-have-o1-split-append-insert-remove-if-you-have-a-pointer-there","line":80},{"title":"Bjarne Stroustrup notes","target":"https://www.youtube.com/watch?v=YQs6IC-vgmo","line":82},{"title":"I can't afford amortization","target":"https://rust-unofficial.github.io/too-many-lists/#i-cant-afford-amortization","line":88},{"title":"Linked lists waste less space","target":"https://rust-unofficial.github.io/too-many-lists/#linked-lists-waste-less-space","line":98},{"title":"I use linked lists all the time in ","target":"https://rust-unofficial.github.io/too-many-lists/#i-use-linked-lists-all-the-time-in-functional-language","line":112},{"title":"iterators","target":"https://doc.rust-lang.org/std/iter/trait.Iterator.html","line":118},{"title":"basic slice patterns","target":"https://doc.rust-lang.org/edition-guide/rust-2018/slice-patterns.html","line":120},{"title":"slices","target":"https://doc.rust-lang.org/std/primitive.slice.html","line":120},{"title":"just `slice.split_at_mut(1)`","target":"https://doc.rust-lang.org/std/primitive.slice.html#method.split_at_mut","line":120},{"title":"exotic transformations","target":"https://wiki.haskell.org/GHC_optimisations#Fusion","line":124},{"title":"Linked lists are great for building concurrent data structures!","target":"https://rust-unofficial.github.io/too-many-lists/#linked-lists-are-great-for-building-concurrent-data-structures","line":128},{"title":"Mumble mumble kernel embedded something something intrusive.","target":"https://rust-unofficial.github.io/too-many-lists/#mumble-mumble-kernel-embedded-something-something-intrusive","line":134},{"title":"Iterators don't get invalidated by unrelated insertions/removals","target":"https://rust-unofficial.github.io/too-many-lists/#iterators-dont-get-invalidated-by-unrelated-insertionsremovals","line":142},{"title":"They're simple and great for teaching!","target":"https://rust-unofficial.github.io/too-many-lists/#theyre-simple-and-great-for-teaching","line":148},{"title":"Take a Breath","target":"https://rust-unofficial.github.io/too-many-lists/#take-a-breath","line":152},{"title":"On to the first chapter!","target":"https://rust-unofficial.github.io/too-many-lists/first.html","line":156}],"metadata":{"page-title":"Introduction - Learning Rust With Entirely Too Many Linked Lists","url":"https://rust-unofficial.github.io/too-many-lists/","date":"2023-04-02 09:32:04"},"task_lines":[],"tasks":{},"codeblock_ranges":[[41,44]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Rust_and_WebAssembly_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Rust_and_WebAssembly_md.ajson deleted file mode 100644 index 0c09d53..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction_-_Rust_and_WebAssembly_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Introduction - Rust and WebAssembly.md": {"path":"000-inbox/clippings/2023/04/Introduction - Rust and WebAssembly.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1k3ajwb","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1680399236000,"size":2041,"at":1766986878957,"hash":"1k3ajwb"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##Rust 🦀 and WebAssembly 🕸":[8,15],"##Rust 🦀 and WebAssembly 🕸#{1}":[10,15],"##Who is this book for?":[16,27],"##Who is this book for?#{1}":[18,27],"##How to read this book":[28,41],"##How to read this book#{1}":[30,41],"##Contributing to this book":[42,46],"##Contributing to this book#{1}":[44,46]},"outlinks":[{"title":"\n\n## Rust 🦀 and WebAssembly 🕸\n\n","target":"https://rustwasm.github.io/docs/book/#rust--and-webassembly-","line":6},{"title":"WebAssembly","target":"https://webassembly.org/","line":12},{"title":"Rust","target":"https://www.rust-lang.org/","line":12},{"title":"\n\n## Who is this book for?\n\n","target":"https://rustwasm.github.io/docs/book/#who-is-this-book-for","line":14},{"title":"Start with *The Rust Programming Language* first.","target":"https://doc.rust-lang.org/book/","line":22},{"title":"Learn about them on MDN.","target":"https://developer.mozilla.org/en-US/docs/Learn","line":24},{"title":"\n\n## How to read this book\n\n","target":"https://rustwasm.github.io/docs/book/#how-to-read-this-book","line":26},{"title":"background and concepts","target":"https://rustwasm.github.io/docs/book/background-and-concepts.html","line":32},{"title":"the motivation for using Rust and WebAssembly together","target":"https://rustwasm.github.io/docs/book/why-rust-and-webassembly.html","line":32},{"title":"tutorial","target":"https://rustwasm.github.io/docs/book/game-of-life/introduction.html","line":34},{"title":"reference sections","target":"https://rustwasm.github.io/docs/book/reference/index.html","line":36},{"title":"\n\n## Contributing to this book\n\n","target":"https://rustwasm.github.io/docs/book/#contributing-to-this-book","line":40},{"title":"**Send us a pull request!**","target":"https://github.com/rustwasm/book","line":46}],"metadata":{"page-title":"Introduction - Rust and WebAssembly","url":"https://rustwasm.github.io/docs/book/","date":"2023-04-02 09:33:54"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction__Hasura_Backend_Plus_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Introduction__Hasura_Backend_Plus_md.ajson deleted file mode 100644 index 2916f1c..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Introduction__Hasura_Backend_Plus_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Introduction Hasura Backend Plus.md": {"path":"000-inbox/clippings/2023/04/Introduction Hasura Backend Plus.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14992lj","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682224887000,"size":1246,"at":1766986878957,"hash":"14992lj"},"blocks":{"#---frontmatter---":[1,5],"##Introduction":[6,11],"##Introduction#{1}":[8,11],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")":[12,24],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{1}":[14,14],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{2}":[15,15],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{3}":[16,16],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{4}":[17,17],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{5}":[18,18],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{6}":[19,19],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{7}":[20,20],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{8}":[21,21],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{9}":[22,22],"##Authentication[#](https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\")#{10}":[23,24],"##Storage[#](https://nhost.github.io/hasura-backend-plus/docs/intro#storage \"Direct link to heading\")":[25,29],"##Storage[#](https://nhost.github.io/hasura-backend-plus/docs/intro#storage \"Direct link to heading\")#{1}":[27,27],"##Storage[#](https://nhost.github.io/hasura-backend-plus/docs/intro#storage \"Direct link to heading\")#{2}":[28,28],"##Storage[#](https://nhost.github.io/hasura-backend-plus/docs/intro#storage \"Direct link to heading\")#{3}":[29,29]},"outlinks":[{"title":"Hasura","target":"https://github.com/hasura/graphql-engine","line":8},{"title":"#","target":"https://nhost.github.io/hasura-backend-plus/docs/intro#authentication \"Direct link to heading\"","line":12},{"title":"Pwned Passwords","target":"https://haveibeenpwned.com/Passwords","line":23},{"title":"#","target":"https://nhost.github.io/hasura-backend-plus/docs/intro#storage \"Direct link to heading\"","line":25}],"metadata":{"page-title":"Introduction | Hasura Backend Plus","url":"https://nhost.github.io/hasura-backend-plus/docs/intro","date":"2023-04-23 12:41:26"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Learn_Rust_in_Y_Minutes_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Learn_Rust_in_Y_Minutes_md.ajson deleted file mode 100644 index 6c11d77..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Learn_Rust_in_Y_Minutes_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Learn Rust in Y Minutes.md": {"path":"000-inbox/clippings/2023/04/Learn Rust in Y Minutes.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"urtmor","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1680399543000,"size":10754,"at":1766986878957,"hash":"urtmor"},"blocks":{"#---frontmatter---":[1,5],"#":[6,29],"#\\[allow(dead\\_code)\\]":[30,37],"#\\[allow(dead\\_code)\\]#{1}":[31,37],"#\\[allow(unused\\_variables)\\]":[38,38],"#\\[allow(unused\\_assignments)\\]":[39,39],"#\\[allow(dead\\_code)\\][2]":[40,331],"#\\[allow(dead\\_code)\\][2]#{1}":[41,331]},"outlinks":[{"title":"The Rust Programming Language","target":"http://doc.rust-lang.org/book/index.html","line":327},{"title":"/r/rust","target":"http://reddit.com/r/rust","line":327},{"title":"Rust playpen","target":"http://play.rust-lang.org/","line":329},{"title":"Rust website","target":"http://rust-lang.org/","line":329},{"title":"pull request","target":"https://github.com/adambard/learnxinyminutes-docs/edit/master/rust.html.markdown","line":331},{"title":"Open an Issue","target":"https://github.com/adambard/learnxinyminutes-docs/issues/new","line":331}],"metadata":{"page-title":"Learn Rust in Y Minutes","url":"https://learnxinyminutes.com/docs/rust/","date":"2023-04-02 09:39:01","tags":["#rust"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Logto_开源项目:创造令人愉悦的身份体验_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Logto_开源项目:创造令人愉悦的身份体验_md.ajson deleted file mode 100644 index ec05b10..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Logto_开源项目:创造令人愉悦的身份体验_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Logto 开源项目:创造令人愉悦的身份体验.md": {"path":"000-inbox/clippings/2023/04/Logto 开源项目:创造令人愉悦的身份体验.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"khqhke","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682593407000,"size":3774,"at":1766986878957,"hash":"khqhke"},"blocks":{"#---frontmatter---":[1,5],"#":[6,150]},"outlinks":[{"title":"background","target":"https://logto.io/background.eca11ad9.jpg","line":6,"embedded":true},{"title":"authentication and authorization","target":"https://logto.io/figure-1.52645119.png","line":14,"embedded":true},{"title":"\n\n阅读 API 文档\n\n","target":"https://docs.logto.io/docs/recipes/interact-with-management-api","line":38},{"title":"\n\n阅读集成文档\n\n","target":"https://docs.logto.io/docs/recipes/integrate-logto","line":46},{"title":"\n\n阅读连接器文档\n\n","target":"https://docs.logto.io/docs/references/connectors","line":54},{"title":"blurry background","target":"https://logto.io/light-blur.ba0d1a4e.png","line":64,"embedded":true},{"title":"\n\n了解更多\n\n","target":"https://docs.logto.io/docs/recipes/rbac","line":70},{"title":"illustration","target":"https://logto.io/rbac.26bb0239.png","line":76,"embedded":true},{"title":"blurry background","target":"https://logto.io/light-blur.ba0d1a4e.png","line":78,"embedded":true},{"title":"\n\n了解更多\n\n","target":"https://docs.logto.io/docs/recipes/manage-users","line":84},{"title":"illustration","target":"https://logto.io/audit-logs.814701e2.png","line":90,"embedded":true},{"title":"avatar","target":"https://avatars.githubusercontent.com/u/4348233?v=4","line":96,"embedded":true},{"title":"avatar","target":"https://avatars.githubusercontent.com/u/224910?v=4","line":102,"embedded":true},{"title":"avatar","target":"https://logto.io/reddit.91746215.png","line":108,"embedded":true},{"title":"avatar","target":"https://avatars.githubusercontent.com/u/13367662?v=4","line":114,"embedded":true},{"title":"avatar","target":"https://avatars.githubusercontent.com/u/25107942?v=4","line":120,"embedded":true},{"title":"avatar","target":"https://avatars.githubusercontent.com/u/47457170?v=4","line":126,"embedded":true},{"title":"了解更多","target":"https://docs.logto.io/about/cloud-preview/","line":134},{"title":"\n\nCloud 预览\n\n","target":"http://cloud.logto.io/?sign_up=true","line":136},{"title":"\n\n开始上手\n\n","target":"https://docs.logto.io/docs/tutorials/get-started","line":146}],"metadata":{"page-title":"Logto 开源项目:创造令人愉悦的身份体验","url":"https://logto.io/","date":"2023-04-27 19:03:26"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_MistGPU_-_深度学习雾计算平台_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_MistGPU_-_深度学习雾计算平台_md.ajson deleted file mode 100644 index d8798f0..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_MistGPU_-_深度学习雾计算平台_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/MistGPU - 深度学习雾计算平台.md": {"path":"000-inbox/clippings/2023/04/MistGPU - 深度学习雾计算平台.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"mp04ij","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682226586000,"size":698,"at":1766986878957,"hash":"mp04ij"},"blocks":{"#---frontmatter---":[1,5],"#":[6,35]},"outlinks":[],"metadata":{"page-title":"MistGPU - 深度学习雾计算平台","url":"https://mistgpu.com/","date":"2023-04-23 13:09:44"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Most_Useful_ChatGPT_Prompts_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Most_Useful_ChatGPT_Prompts_md.ajson deleted file mode 100644 index 207c835..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Most_Useful_ChatGPT_Prompts_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Most Useful ChatGPT Prompts.md": {"path":"000-inbox/clippings/2023/04/Most Useful ChatGPT Prompts.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1h6gw1","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681952212000,"size":2179,"at":1766986878957,"hash":"1h6gw1"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"#####Write a function":[8,15],"#####Write a function#{1}":[10,15],"#####Explain Code":[16,23],"#####Explain Code#{1}":[18,23],"#####Refactor Code":[24,29],"#####Refactor Code#{1}":[26,29],"#####Debug":[30,37],"#####Debug#{1}":[32,37],"#####Write test":[38,45],"#####Write test#{1}":[40,45],"#####Write Regex":[46,50],"#####Write Regex#{1}":[48,50]},"outlinks":[],"metadata":{"page-title":"Most Useful ChatGPT Prompts","url":"https://www.explainthis.io/en/chatgpt","date":"2023-04-20 08:56:52"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_PowerDNS_pdnsutil_cheat_sheet_-_Makarainen_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_PowerDNS_pdnsutil_cheat_sheet_-_Makarainen_md.ajson deleted file mode 100644 index 65bd623..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_PowerDNS_pdnsutil_cheat_sheet_-_Makarainen_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/PowerDNS pdnsutil cheat sheet - Makarainen.md": {"path":"000-inbox/clippings/2023/04/PowerDNS pdnsutil cheat sheet - Makarainen.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"c6tp5b","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681909093000,"size":2793,"at":1766986878957,"hash":"c6tp5b"},"blocks":{"#---frontmatter---":[1,5],"##PowerDNS pdnsutil cheat sheet":[6,101],"##PowerDNS pdnsutil cheat sheet#{1}":[8,11],"##PowerDNS pdnsutil cheat sheet#CREATE ZONE":[12,17],"##PowerDNS pdnsutil cheat sheet#CREATE ZONE#{1}":[14,17],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // Let's start by adding the root A-record and AAAA for IPv6 (makarainen.net)":[18,24],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // Let's start by adding the root A-record and AAAA for IPv6 (makarainen.net)#{1}":[20,24],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // adding a subdomain (www)":[25,30],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // adding a subdomain (www)#{1}":[27,30],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // every domain needs name servers":[31,36],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE // every domain needs name servers#{1}":[33,36],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE":[37,44],"##PowerDNS pdnsutil cheat sheet#ADD DATA TO ZONE#{1}":[39,44],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES // check the information provided":[45,50],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES // check the information provided#{1}":[47,50],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES // modify the zone (if changes do not miss update serial -> UPDATE SERIAL)":[51,56],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES // modify the zone (if changes do not miss update serial -> UPDATE SERIAL)#{1}":[53,56],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES":[57,64],"##PowerDNS pdnsutil cheat sheet#MANAGE ZONES#{1}":[59,64],"##PowerDNS pdnsutil cheat sheet#DELETE A SPECIFIC ZONE":[65,70],"##PowerDNS pdnsutil cheat sheet#DELETE A SPECIFIC ZONE#{1}":[67,70],"##PowerDNS pdnsutil cheat sheet#UPDATE SERIAL":[71,76],"##PowerDNS pdnsutil cheat sheet#UPDATE SERIAL#{1}":[73,76],"##PowerDNS pdnsutil cheat sheet#UPDATE THE CONNECTED DNS SERVERS":[77,82],"##PowerDNS pdnsutil cheat sheet#UPDATE THE CONNECTED DNS SERVERS#{1}":[79,82],"##PowerDNS pdnsutil cheat sheet#START THE POWERDNS SERVER IN UBUNTU":[83,88],"##PowerDNS pdnsutil cheat sheet#START THE POWERDNS SERVER IN UBUNTU#{1}":[85,88],"##PowerDNS pdnsutil cheat sheet#Questions":[89,92],"##PowerDNS pdnsutil cheat sheet#Questions#{1}":[91,92],"##PowerDNS pdnsutil cheat sheet#Explore more":[93,96],"##PowerDNS pdnsutil cheat sheet#Explore more#{1}":[95,96],"##PowerDNS pdnsutil cheat sheet#Noteworthy deal":[97,101],"##PowerDNS pdnsutil cheat sheet#Noteworthy deal#{1}":[99,101]},"outlinks":[{"title":"PowerDNS logo","target":"https://upload.wikimedia.org/wikipedia/en/8/8d/Official_PowerDNS_logo_250_pixels.png \"PowerDNS logo\"","line":8,"embedded":true},{"title":"pdnsutil","target":"https://doc.powerdns.com/authoritative/manpages/pdnsutil.1.html","line":10},{"title":"PowerDNS Authoritative Server","target":"https://www.powerdns.com/auth.html","line":10},{"title":"PowerDNS export from MySQL to csv using command line","target":"https://makarainen.net/powerdns-export-from-mysql-to-csv-using-command-line","line":95},{"title":"Domainparkki","target":"https://domainparkki.com/","line":99},{"title":"hello@domainparkki.com","target":"mailto:hello@domainparkki.com","line":99}],"metadata":{"page-title":"PowerDNS pdnsutil cheat sheet - Makarainen","url":"https://makarainen.net/PowerDNS-pdnsutil-cheat-sheet","date":"2023-04-19 20:58:11"},"task_lines":[],"tasks":{},"codeblock_ranges":[[14,16],[20,23],[27,29],[33,35],[39,43],[47,49],[53,55],[59,63],[67,69],[73,75],[79,81],[85,87]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Prerequisites_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Prerequisites_md.ajson deleted file mode 100644 index eb6dee7..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Prerequisites_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Prerequisites.md": {"path":"000-inbox/clippings/2023/04/Prerequisites.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"79m8fn","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682245220000,"size":5211,"at":1766986878957,"hash":"79m8fn"},"blocks":{"#---frontmatter---":[1,5],"##Prerequisites":[6,17],"##Prerequisites#{1}":[8,17],"##Confirm the System Has a Supported Linux Distribution Version":[18,49],"##Confirm the System Has a Supported Linux Distribution Version#{1}":[20,25],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System":[26,49],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System#{1}":[28,29],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System#Linux Distribution Information":[30,39],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System#Linux Distribution Information#{1}":[32,39],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System#Kernel Information":[40,49],"##Confirm the System Has a Supported Linux Distribution Version#Check the Linux Distribution and Kernel Version on Your System#Kernel Information#{1}":[42,49],"##Confirm the System has a ROCm-Capable GPU":[50,113],"##Confirm the System has a ROCm-Capable GPU#{1}":[52,103],"##Confirm the System has a ROCm-Capable GPU#Verify Your System Has a ROCm-Capable GPU":[104,113],"##Confirm the System has a ROCm-Capable GPU#Verify Your System Has a ROCm-Capable GPU#{1}":[106,113],"##Confirm the System Has All the Required Tools and Packages Installed":[114,180],"##Confirm the System Has All the Required Tools and Packages Installed#{1}":[116,117],"##Confirm the System Has All the Required Tools and Packages Installed#Required Packages":[118,135],"##Confirm the System Has All the Required Tools and Packages Installed#Required Packages#{1}":[120,135],"##Confirm the System Has All the Required Tools and Packages Installed#Register the System to the Subscription Manager":[136,149],"##Confirm the System Has All the Required Tools and Packages Installed#Register the System to the Subscription Manager#{1}":[138,149],"##Confirm the System Has All the Required Tools and Packages Installed#Enable Additional Repositories":[150,165],"##Confirm the System Has All the Required Tools and Packages Installed#Enable Additional Repositories#{1}":[152,165],"##Confirm the System Has All the Required Tools and Packages Installed#Setting Permissions for Groups":[166,180],"##Confirm the System Has All the Required Tools and Packages Installed#Setting Permissions for Groups#{1}":[168,180]},"outlinks":[{"title":"System Requirements.","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Introduction_to_ROCm_Installation_Guide_for_Linux.html#d4616e529","line":36},{"title":"System Requirements.","target":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Introduction_to_ROCm_Installation_Guide_for_Linux.html#d4616e529","line":46},{"title":"https://access.redhat.com/solutions/253273","target":"https://access.redhat.com/solutions/253273","line":142},{"title":"https://documentation.suse.com/sles/12-SP5/single-html/SLES-smt/index.html","target":"https://documentation.suse.com/sles/12-SP5/single-html/SLES-smt/index.html","line":148},{"title":"https://dl.fedoraproject.org","target":"https://dl.fedoraproject.org/","line":160}],"metadata":{"page-title":"Prerequisites","url":"https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.4.3/page/Prerequisites.html","date":"2023-04-23 18:20:19"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Self_hosted_mail_server_–_if__then__else_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Self_hosted_mail_server_–_if__then__else_md.ajson deleted file mode 100644 index ea4c137..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Self_hosted_mail_server_–_if__then__else_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Self hosted mail server – if then else.md": {"path":"000-inbox/clippings/2023/04/Self hosted mail server – if then else.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1yawfpp","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682587115000,"size":18686,"at":1766986878957,"hash":"1yawfpp"},"blocks":{"#---frontmatter---":[1,5],"#":[6,15],"##A word of thanks":[16,21],"##A word of thanks#{1}":[18,21],"##Tech stack":[22,29],"##Tech stack#{1}":[24,25],"##Tech stack#{2}":[26,26],"##Tech stack#{3}":[27,27],"##Tech stack#{4}":[28,29],"##Look at your inventory before you move on":[30,54],"##Look at your inventory before you move on#IP blacklisting delisting":[32,45],"##Look at your inventory before you move on#IP blacklisting delisting#{1}":[34,35],"##Look at your inventory before you move on#IP blacklisting delisting#{2}":[36,36],"##Look at your inventory before you move on#IP blacklisting delisting#{3}":[37,37],"##Look at your inventory before you move on#IP blacklisting delisting#{4}":[38,39],"##Look at your inventory before you move on#IP blacklisting delisting#{5}":[40,45],"##Look at your inventory before you move on#rDNS (reverse DNS)":[46,54],"##Look at your inventory before you move on#rDNS (reverse DNS)#{1}":[48,54],"##Setting up docker-mailserver (and moar)":[55,337],"##Setting up docker-mailserver (and moar)#docker-mailserver":[57,81],"##Setting up docker-mailserver (and moar)#docker-mailserver#{1}":[59,60],"##Setting up docker-mailserver (and moar)#docker-mailserver#{2}":[61,61],"##Setting up docker-mailserver (and moar)#docker-mailserver#{3}":[62,62],"##Setting up docker-mailserver (and moar)#docker-mailserver#{4}":[63,63],"##Setting up docker-mailserver (and moar)#docker-mailserver#{5}":[64,64],"##Setting up docker-mailserver (and moar)#docker-mailserver#{6}":[65,65],"##Setting up docker-mailserver (and moar)#docker-mailserver#{7}":[66,66],"##Setting up docker-mailserver (and moar)#docker-mailserver#{8}":[67,67],"##Setting up docker-mailserver (and moar)#docker-mailserver#{9}":[68,71],"##Setting up docker-mailserver (and moar)#docker-mailserver#{10}":[72,72],"##Setting up docker-mailserver (and moar)#docker-mailserver#{11}":[73,73],"##Setting up docker-mailserver (and moar)#docker-mailserver#{12}":[74,74],"##Setting up docker-mailserver (and moar)#docker-mailserver#{13}":[75,81],"##Setting up docker-mailserver (and moar)#DNS":[82,144],"##Setting up docker-mailserver (and moar)#DNS#{1}":[84,85],"##Setting up docker-mailserver (and moar)#DNS#DKIM":[86,101],"##Setting up docker-mailserver (and moar)#DNS#DKIM#{1}":[88,88],"##Setting up docker-mailserver (and moar)#DNS#DKIM#{2}":[89,89],"##Setting up docker-mailserver (and moar)#DNS#DKIM#{3}":[90,92],"##Setting up docker-mailserver (and moar)#DNS#DKIM#{4}":[93,101],"##Setting up docker-mailserver (and moar)#DNS#SPF":[102,113],"##Setting up docker-mailserver (and moar)#DNS#SPF#{1}":[104,104],"##Setting up docker-mailserver (and moar)#DNS#SPF#{2}":[105,105],"##Setting up docker-mailserver (and moar)#DNS#SPF#{3}":[106,107],"##Setting up docker-mailserver (and moar)#DNS#SPF#{4}":[108,113],"##Setting up docker-mailserver (and moar)#DNS#Subdomain":[114,123],"##Setting up docker-mailserver (and moar)#DNS#Subdomain#{1}":[116,116],"##Setting up docker-mailserver (and moar)#DNS#Subdomain#{2}":[117,117],"##Setting up docker-mailserver (and moar)#DNS#Subdomain#{3}":[118,119],"##Setting up docker-mailserver (and moar)#DNS#Subdomain#{4}":[120,121],"##Setting up docker-mailserver (and moar)#DNS#Subdomain#{5}":[122,123],"##Setting up docker-mailserver (and moar)#DNS#MX":[124,134],"##Setting up docker-mailserver (and moar)#DNS#MX#{1}":[126,126],"##Setting up docker-mailserver (and moar)#DNS#MX#{2}":[127,127],"##Setting up docker-mailserver (and moar)#DNS#MX#{3}":[128,129],"##Setting up docker-mailserver (and moar)#DNS#MX#{4}":[130,131],"##Setting up docker-mailserver (and moar)#DNS#MX#{5}":[132,132],"##Setting up docker-mailserver (and moar)#DNS#MX#{6}":[133,134],"##Setting up docker-mailserver (and moar)#DNS#DMARC":[135,144],"##Setting up docker-mailserver (and moar)#DNS#DMARC#{1}":[137,137],"##Setting up docker-mailserver (and moar)#DNS#DMARC#{2}":[138,138],"##Setting up docker-mailserver (and moar)#DNS#DMARC#{3}":[139,140],"##Setting up docker-mailserver (and moar)#DNS#DMARC#{4}":[141,142],"##Setting up docker-mailserver (and moar)#DNS#DMARC#{5}":[143,144],"##Setting up docker-mailserver (and moar)#Testing":[145,337],"##Setting up docker-mailserver (and moar)#Testing#{1}":[147,148],"##Setting up docker-mailserver (and moar)#Testing#MX":[149,161],"##Setting up docker-mailserver (and moar)#Testing#MX#{1}":[151,151],"##Setting up docker-mailserver (and moar)#Testing#MX#{2}":[152,153],"##Setting up docker-mailserver (and moar)#Testing#MX#{3}":[154,155],"##Setting up docker-mailserver (and moar)#Testing#MX#{4}":[156,156],"##Setting up docker-mailserver (and moar)#Testing#MX#{5}":[157,157],"##Setting up docker-mailserver (and moar)#Testing#MX#{6}":[158,159],"##Setting up docker-mailserver (and moar)#Testing#MX#{7}":[160,161],"##Setting up docker-mailserver (and moar)#Testing#SPF":[162,200],"##Setting up docker-mailserver (and moar)#Testing#SPF#{1}":[164,164],"##Setting up docker-mailserver (and moar)#Testing#SPF#{2}":[165,166],"##Setting up docker-mailserver (and moar)#Testing#SPF#{3}":[167,200],"##Setting up docker-mailserver (and moar)#Testing#DKIM":[201,239],"##Setting up docker-mailserver (and moar)#Testing#DKIM#{1}":[203,203],"##Setting up docker-mailserver (and moar)#Testing#DKIM#{2}":[204,205],"##Setting up docker-mailserver (and moar)#Testing#DKIM#{3}":[206,239],"##Setting up docker-mailserver (and moar)#Testing#DMARC":[240,337],"##Setting up docker-mailserver (and moar)#Testing#DMARC#{1}":[242,242],"##Setting up docker-mailserver (and moar)#Testing#DMARC#{2}":[243,244],"##Setting up docker-mailserver (and moar)#Testing#DMARC#{3}":[245,337],"##TLS Cert using letsencrypt":[338,353],"##TLS Cert using letsencrypt#{1}":[340,348],"##TLS Cert using letsencrypt#{2}":[349,349],"##TLS Cert using letsencrypt#{3}":[350,353],"##Catchall for everything but valid email accounts":[354,375],"##Catchall for everything but valid email accounts#{1}":[356,357],"##Catchall for everything but valid email accounts#{2}":[358,358],"##Catchall for everything but valid email accounts#{3}":[359,360],"##Catchall for everything but valid email accounts#{4}":[361,362],"##Catchall for everything but valid email accounts#{5}":[363,363],"##Catchall for everything but valid email accounts#{6}":[364,364],"##Catchall for everything but valid email accounts#{7}":[365,365],"##Catchall for everything but valid email accounts#{8}":[366,366],"##Catchall for everything but valid email accounts#{9}":[367,368],"##Catchall for everything but valid email accounts#{10}":[369,375],"##Multiple domains, one server":[376,418],"##Multiple domains, one server#{1}":[378,393],"##Multiple domains, one server#{2}":[394,394],"##Multiple domains, one server#{3}":[395,395],"##Multiple domains, one server#{4}":[396,396],"##Multiple domains, one server#{5}":[397,397],"##Multiple domains, one server#{6}":[398,399],"##Multiple domains, one server#{7}":[400,403],"##Multiple domains, one server#{8}":[404,404],"##Multiple domains, one server#{9}":[405,405],"##Multiple domains, one server#{10}":[406,407],"##Multiple domains, one server#{11}":[408,409],"##Multiple domains, one server#DKIM":[410,418],"##Multiple domains, one server#DKIM#{1}":[412,413],"##Multiple domains, one server#DKIM#{2}":[414,414],"##Multiple domains, one server#DKIM#{3}":[415,415],"##Multiple domains, one server#DKIM#{4}":[416,417],"##Multiple domains, one server#DKIM###Changelog summary, 2021-10-14":[418,418]},"outlinks":[{"title":"docker-mailserver","target":"https://github.com/docker-mailserver/docker-mailserver","line":28},{"title":"MX Toolbox’s blacklist lookup tool","target":"https://mxtoolbox.com/blacklists.aspx","line":40},{"title":"https://sender.office.com/","target":"https://sender.office.com/","line":44},{"title":"MX Toolbox reverse lookup tool","target":"https://mxtoolbox.com/ReverseLookup.aspx","line":53},{"title":"https://github.com/docker-mailserver/docker-mailserver#create-a-docker-compose-environment","target":"https://github.com/docker-mailserver/docker-mailserver#create-a-docker-compose-environment","line":63},{"title":"https://docker-mailserver.github.io/docker-mailserver/edge/examples/tutorials/basic-installation/","target":"https://docker-mailserver.github.io/docker-mailserver/edge/examples/tutorials/basic-installation/","line":70},{"title":"MX Toolbox DKIM Lookup","target":"https://mxtoolbox.com/dkim.aspx","line":100},{"title":"https://mxtoolbox.com/MXLookup.aspx","target":"https://mxtoolbox.com/MXLookup.aspx","line":151},{"title":"https://mxtoolbox.com/spf.aspx","target":"https://mxtoolbox.com/spf.aspx","line":164}],"metadata":{"page-title":"Self hosted mail server – if ? then : else","url":"https://www.ifthenel.se/self-hosted-mail-server/","date":"2023-04-27 17:18:34"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Slurm_Workload_Manager_-_Overview_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Slurm_Workload_Manager_-_Overview_md.ajson deleted file mode 100644 index 9ed8399..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Slurm_Workload_Manager_-_Overview_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Slurm Workload Manager - Overview.md": {"path":"000-inbox/clippings/2023/04/Slurm Workload Manager - Overview.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"164wva5","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1682226555000,"size":9445,"at":1766986878957,"hash":"164wva5"},"blocks":{"#---frontmatter---":[1,5],"##Overview":[6,9],"##Overview#{1}":[8,9],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)":[10,44],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{1}":[12,18],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{2}":[19,19],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{3}":[20,20],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{4}":[21,21],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{5}":[22,22],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{6}":[23,23],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{7}":[24,24],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{8}":[25,25],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{9}":[26,26],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{10}":[27,27],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{11}":[28,28],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{12}":[29,29],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{13}":[30,30],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{14}":[31,31],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{15}":[32,32],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{16}":[33,33],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{17}":[34,34],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{18}":[35,35],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{19}":[36,36],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{20}":[37,37],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{21}":[38,39],"##Architecture[](https://slurm.schedmd.com/overview.html#architecture)#{22}":[40,44],"##Configurability[](https://slurm.schedmd.com/overview.html#configurability)":[45,49],"##Configurability[](https://slurm.schedmd.com/overview.html#configurability)#{1}":[47,49],"#Sample /etc/slurm.conf":[50,66],"#Sample /etc/slurm.conf#{1}":[51,66],"#Node Configurations":[67,73],"#Node Configurations#{1}":[68,73],"#Partition Configurations":[74,83],"#Partition Configurations#{1}":[75,83]},"outlinks":[{"title":"accounting","target":"https://slurm.schedmd.com/accounting.html","line":8},{"title":"gang scheduling","target":"https://slurm.schedmd.com/gang_scheduling.html","line":8},{"title":"multifactor job prioritization","target":"https://slurm.schedmd.com/priority_multifactor.html","line":8},{"title":"advanced reservation","target":"https://slurm.schedmd.com/reservations.html","line":8},{"title":"resource limits","target":"https://slurm.schedmd.com/resource_limits.html","line":8},{"title":"topology optimized resource selection","target":"https://slurm.schedmd.com/topology.html","line":8},{"title":"REST API","target":"https://en.wikipedia.org/wiki/Representational_state_transfer","line":12},{"title":"**slurmrestd** (Slurm REST API Daemon)","target":"https://slurm.schedmd.com/rest.html","line":12},{"title":"Containers","target":"https://slurm.schedmd.com/containers.html","line":22},{"title":"Generic Resources","target":"https://slurm.schedmd.com/gres.html","line":24},{"title":"Job Submit","target":"https://slurm.schedmd.com/job_submit_plugins.html","line":25},{"title":"'srun'","target":"https://slurm.schedmd.com/srun.html","line":28},{"title":"Preempt","target":"https://slurm.schedmd.com/preempt.html","line":30},{"title":"Site Factor (Priority)","target":"https://slurm.schedmd.com/site_factor.html","line":35}],"metadata":{"page-title":"Slurm Workload Manager - Overview","url":"https://slurm.schedmd.com/overview.html","date":"2023-04-23 13:09:14"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Steamship_Documentation_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Steamship_Documentation_md.ajson deleted file mode 100644 index 378f90d..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Steamship_Documentation_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Steamship Documentation.md": {"path":"000-inbox/clippings/2023/04/Steamship Documentation.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bdwi9f","at":1766986878406},"class_name":"SmartSource","last_import":{"mtime":1681692047000,"size":14477,"at":1766986878957,"hash":"bdwi9f"},"blocks":{"#---frontmatter---":[1,5],"#":[6,11],"##Steamship[#](https://docs.steamship.com/#steamship \"Permalink to this heading\")":[12,17],"##Steamship[#](https://docs.steamship.com/#steamship \"Permalink to this heading\")#{1}":[14,17],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")":[18,30],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")#{1}":[20,21],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")#{2}":[22,23],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")#{3}":[24,25],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")#{4}":[26,28],"##Steamship in 30 seconds[#](https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\")#{5}":[29,30],"##Start from a template[#](https://docs.steamship.com/#start-from-a-template \"Permalink to this heading\")":[31,46],"##Start from a template[#](https://docs.steamship.com/#start-from-a-template \"Permalink to this heading\")#{1}":[33,46],"##Start from scratch[#](https://docs.steamship.com/#start-from-scratch \"Permalink to this heading\")":[47,65],"##Start from scratch[#](https://docs.steamship.com/#start-from-scratch \"Permalink to this heading\")#{1}":[49,65],"##Next Steps[#](https://docs.steamship.com/#next-steps \"Permalink to this heading\")":[66,79],"##Next Steps[#](https://docs.steamship.com/#next-steps \"Permalink to this heading\")#{1}":[68,79],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")":[80,196],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{1}":[82,96],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{2}":[97,107],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{3}":[108,113],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{4}":[114,132],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{5}":[133,133],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{6}":[134,134],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{7}":[135,135],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{8}":[136,163],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{9}":[164,194],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{10}":[195,195],"##Contents[#](https://docs.steamship.com/#contents \"Permalink to this heading\")#{11}":[196,196]},"outlinks":[{"title":"Back to top","target":"https://docs.steamship.com/#","line":6},{"title":"Edit this page","target":"https://github.com/steamship-core/python-client/edit/main/docs/index.rst \"Edit this page\"","line":8},{"title":"#","target":"https://docs.steamship.com/#steamship \"Permalink to this heading\"","line":12},{"title":"Steamship package","target":"https://www.steamship.com/packages","line":16},{"title":"#","target":"https://docs.steamship.com/#steamship-in-30-seconds \"Permalink to this heading\"","line":18},{"title":"Use Plugins","target":"https://docs.steamship.com/plugins/using/index.html#using-plugins","line":20},{"title":"Store data in Files, Blocks, and Tags","target":"https://docs.steamship.com/data/index.html#data-model","line":22},{"title":"query","target":"https://docs.steamship.com/data/queries/index.html#queries","line":22},{"title":"search","target":"https://docs.steamship.com/embedding-search/index.html#embedding-search-index","line":22},{"title":"Deploy as a Package","target":"https://docs.steamship.com/packages/developing/index.html#developing-packages","line":24},{"title":"Create as many instances of the Package","target":"https://docs.steamship.com/packages/developing/index.html#creating-package-instances","line":26},{"title":"#","target":"https://docs.steamship.com/#start-from-a-template \"Permalink to this heading\"","line":31},{"title":"https://github.com/steamship-packages","target":"https://github.com/steamship-packages","line":33},{"title":"#","target":"https://docs.steamship.com/#start-from-scratch \"Permalink to this heading\"","line":47},{"title":"#","target":"https://docs.steamship.com/#next-steps \"Permalink to this heading\"","line":66},{"title":"#","target":"https://docs.steamship.com/#contents \"Permalink to this heading\"","line":80},{"title":"Configuration","target":"https://docs.steamship.com/configuration/index.html","line":82},{"title":"Authentication","target":"https://docs.steamship.com/configuration/authentication.html","line":83},{"title":"Steamship Configuration File","target":"https://docs.steamship.com/configuration/authentication.html#steamship-configuration-file","line":84},{"title":"Using Multiple Profiles","target":"https://docs.steamship.com/configuration/authentication.html#using-multiple-profiles","line":85},{"title":"Environment Variables","target":"https://docs.steamship.com/configuration/authentication.html#environment-variables","line":86},{"title":"Client Libraries","target":"https://docs.steamship.com/configuration/clients.html","line":87},{"title":"Python Client","target":"https://docs.steamship.com/configuration/clients.html#python-client","line":88},{"title":"Typescript Client","target":"https://docs.steamship.com/configuration/clients.html#typescript-client","line":89},{"title":"CLI","target":"https://docs.steamship.com/configuration/cli.html","line":90},{"title":"HTTP API","target":"https://docs.steamship.com/configuration/http.html","line":91},{"title":"Requests","target":"https://docs.steamship.com/configuration/http.html#requests","line":92},{"title":"Optional Headers","target":"https://docs.steamship.com/configuration/http.html#optional-headers","line":93},{"title":"Engine Response Format","target":"https://docs.steamship.com/configuration/http.html#engine-response-format","line":94},{"title":"Creating a Package Instance","target":"https://docs.steamship.com/configuration/http.html#creating-a-package-instance","line":95},{"title":"Invoking a Package Method","target":"https://docs.steamship.com/configuration/http.html#invoking-a-package-method","line":96},{"title":"Packages","target":"https://docs.steamship.com/packages/index.html","line":97},{"title":"Packages Table of Contents","target":"https://docs.steamship.com/packages/index.html#packages-table-of-contents","line":98},{"title":"Using Packages","target":"https://docs.steamship.com/packages/using.html","line":99},{"title":"Package FAQ","target":"https://docs.steamship.com/packages/using.html#package-faq","line":100},{"title":"Developing Packages","target":"https://docs.steamship.com/packages/developing/index.html","line":101},{"title":"Customizing your Package","target":"https://docs.steamship.com/packages/developing/index.html#customizing-your-package","line":102},{"title":"Package Project Structure","target":"https://docs.steamship.com/packages/developing/project-structure.html","line":103},{"title":"Package Cookbook","target":"https://docs.steamship.com/packages/cookbook/index.html","line":104},{"title":"Working with Language","target":"https://docs.steamship.com/packages/cookbook/index.html#working-with-language","line":105},{"title":"Building Packages","target":"https://docs.steamship.com/packages/cookbook/index.html#building-packages","line":106},{"title":"Response Types","target":"https://docs.steamship.com/packages/cookbook/index.html#response-types","line":107},{"title":"Plugins","target":"https://docs.steamship.com/plugins/index.html","line":108},{"title":"File Importers","target":"https://docs.steamship.com/plugins/index.html#file-importers","line":109},{"title":"Blockifiers","target":"https://docs.steamship.com/plugins/index.html#blockifiers","line":110},{"title":"Taggers","target":"https://docs.steamship.com/plugins/index.html#taggers","line":111},{"title":"Generators","target":"https://docs.steamship.com/plugins/index.html#generators","line":112},{"title":"Embedders","target":"https://docs.steamship.com/plugins/index.html#embedders","line":113},{"title":"Data","target":"https://docs.steamship.com/data/index.html","line":114},{"title":"Workspaces","target":"https://docs.steamship.com/data/workspaces.html","line":115},{"title":"Creating Workspaces","target":"https://docs.steamship.com/data/workspaces.html#creating-workspaces","line":116},{"title":"Files","target":"https://docs.steamship.com/data/files.html","line":117},{"title":"Creating Files Directly","target":"https://docs.steamship.com/data/files.html#creating-files-directly","line":118},{"title":"Blocks","target":"https://docs.steamship.com/data/blocks.html","line":119},{"title":"Creating Blocks","target":"https://docs.steamship.com/data/blocks.html#id2","line":120},{"title":"Tags","target":"https://docs.steamship.com/data/tags.html","line":121},{"title":"Ways to use Tags","target":"https://docs.steamship.com/data/tags.html#ways-to-use-tags","line":122},{"title":"Tag Schemas","target":"https://docs.steamship.com/data/tags.html#tag-schemas","line":123},{"title":"Block and File Tags","target":"https://docs.steamship.com/data/tags.html#block-and-file-tags","line":124},{"title":"Querying Data","target":"https://docs.steamship.com/data/queries/index.html","line":125},{"title":"Usage","target":"https://docs.steamship.com/data/queries/index.html#usage","line":126},{"title":"Language Description","target":"https://docs.steamship.com/data/queries/index.html#language-description","line":127},{"title":"Unary Predicates","target":"https://docs.steamship.com/data/queries/index.html#unary-predicates","line":128},{"title":"Binary Predicates","target":"https://docs.steamship.com/data/queries/index.html#binary-predicates","line":129},{"title":"Binary Relations","target":"https://docs.steamship.com/data/queries/index.html#binary-relations","line":130},{"title":"Conjunctions","target":"https://docs.steamship.com/data/queries/index.html#conjunctions","line":131},{"title":"Special Predicates","target":"https://docs.steamship.com/data/queries/index.html#special-predicates","line":132},{"title":"Embedding Search Index","target":"https://docs.steamship.com/embedding-search/index.html","line":133},{"title":"Inserting Data","target":"https://docs.steamship.com/embedding-search/index.html#inserting-data","line":134},{"title":"Querying Data","target":"https://docs.steamship.com/embedding-search/index.html#querying-data","line":135},{"title":"Developer Reference","target":"https://docs.steamship.com/developing/index.html","line":136},{"title":"Cloning a Starter Project","target":"https://docs.steamship.com/developing/project-creation.html","line":137},{"title":"The Steamship Manifest file","target":"https://docs.steamship.com/developing/steamship-manifest.html","line":138},{"title":"Plugin Configuration","target":"https://docs.steamship.com/developing/steamship-manifest.html#plugin-configuration","line":139},{"title":"Steamship Registry","target":"https://docs.steamship.com/developing/steamship-manifest.html#steamship-registry","line":140},{"title":"Python Environment Setup","target":"https://docs.steamship.com/developing/environment-setup.html","line":141},{"title":"Accepting Configuration","target":"https://docs.steamship.com/developing/configuration.html","line":142},{"title":"Defining and Accepting configuration in your code","target":"https://docs.steamship.com/developing/configuration.html#defining-and-accepting-configuration-in-your-code","line":143},{"title":"Storing Secrets","target":"https://docs.steamship.com/developing/storing-secrets.html","line":144},{"title":"Writing Tests","target":"https://docs.steamship.com/developing/testing.html","line":145},{"title":"Logging","target":"https://docs.steamship.com/developing/testing.html#logging","line":146},{"title":"Throwing Errors","target":"https://docs.steamship.com/developing/testing.html#throwing-errors","line":147},{"title":"Manual Testing","target":"https://docs.steamship.com/developing/testing.html#manual-testing","line":148},{"title":"Automated testing","target":"https://docs.steamship.com/developing/testing.html#automated-testing","line":149},{"title":"Automated testing setup","target":"https://docs.steamship.com/developing/testing.html#automated-testing-setup","line":150},{"title":"Modifying or removing automated testing","target":"https://docs.steamship.com/developing/testing.html#modifying-or-removing-automated-testing","line":151},{"title":"Deploying","target":"https://docs.steamship.com/developing/deploying.html","line":152},{"title":"Deploying with the Steamship CLI","target":"https://docs.steamship.com/developing/deploying.html#deploying-with-the-steamship-cli","line":153},{"title":"Deploying via GitHub Actions","target":"https://docs.steamship.com/developing/deploying.html#deploying-via-github-actions","line":154},{"title":"Automated Deployment Setup","target":"https://docs.steamship.com/developing/deploying.html#automated-deployment-setup","line":155},{"title":"Modifying or disabling automated deployments","target":"https://docs.steamship.com/developing/deploying.html#modifying-or-disabling-automated-deployments","line":156},{"title":"Troubleshooting Deployments","target":"https://docs.steamship.com/developing/deploying.html#troubleshooting-deployments","line":157},{"title":"The deployment fails because the version already exists","target":"https://docs.steamship.com/developing/deploying.html#the-deployment-fails-because-the-version-already-exists","line":158},{"title":"The deployment fails because the tag does not match the manifest file","target":"https://docs.steamship.com/developing/deploying.html#the-deployment-fails-because-the-tag-does-not-match-the-manifest-file","line":159},{"title":"The deployment fails with an authentication error","target":"https://docs.steamship.com/developing/deploying.html#the-deployment-fails-with-an-authentication-error","line":160},{"title":"Updating your Web Listing","target":"https://docs.steamship.com/developing/updating-web-listing.html","line":161},{"title":"Updating your Web Listing","target":"https://docs.steamship.com/developing/updating-web-listing.html#updating-your-web-listing","line":162},{"title":"Adding taglines, demo links, and author icons","target":"https://docs.steamship.com/developing/updating-web-listing.html#adding-taglines-demo-links-and-author-icons","line":163},{"title":"Python Client Reference","target":"https://docs.steamship.com/api/modules.html","line":164},{"title":"steamship package","target":"https://docs.steamship.com/api/steamship.html","line":165},{"title":"Subpackages","target":"https://docs.steamship.com/api/steamship.html#subpackages","line":166},{"title":"steamship.base package","target":"https://docs.steamship.com/api/steamship.base.html","line":167},{"title":"steamship.cli package","target":"https://docs.steamship.com/api/steamship.cli.html","line":168},{"title":"steamship.client package","target":"https://docs.steamship.com/api/steamship.client.html","line":169},{"title":"steamship.data package","target":"https://docs.steamship.com/api/steamship.data.html","line":170},{"title":"steamship.experimental package","target":"https://docs.steamship.com/api/steamship.experimental.html","line":171},{"title":"steamship.invocable package","target":"https://docs.steamship.com/api/steamship.invocable.html","line":172},{"title":"steamship.plugin package","target":"https://docs.steamship.com/api/steamship.plugin.html","line":173},{"title":"steamship.utils package","target":"https://docs.steamship.com/api/steamship.utils.html","line":174},{"title":"Module contents","target":"https://docs.steamship.com/api/steamship.html#module-steamship","line":175},{"title":"`Block`","target":"https://docs.steamship.com/api/steamship.html#steamship.Block","line":176},{"title":"`Configuration`","target":"https://docs.steamship.com/api/steamship.html#steamship.Configuration","line":177},{"title":"`DocTag`","target":"https://docs.steamship.com/api/steamship.html#steamship.DocTag","line":178},{"title":"`EmbeddingIndex`","target":"https://docs.steamship.com/api/steamship.html#steamship.EmbeddingIndex","line":179},{"title":"`File`","target":"https://docs.steamship.com/api/steamship.html#steamship.File","line":180},{"title":"`MimeTypes`","target":"https://docs.steamship.com/api/steamship.html#steamship.MimeTypes","line":181},{"title":"`Package`","target":"https://docs.steamship.com/api/steamship.html#steamship.Package","line":182},{"title":"`PackageInstance`","target":"https://docs.steamship.com/api/steamship.html#steamship.PackageInstance","line":183},{"title":"`PackageVersion`","target":"https://docs.steamship.com/api/steamship.html#steamship.PackageVersion","line":184},{"title":"`PluginInstance`","target":"https://docs.steamship.com/api/steamship.html#steamship.PluginInstance","line":185},{"title":"`PluginVersion`","target":"https://docs.steamship.com/api/steamship.html#steamship.PluginVersion","line":186},{"title":"`RuntimeEnvironments`","target":"https://docs.steamship.com/api/steamship.html#steamship.RuntimeEnvironments","line":187},{"title":"`Steamship`","target":"https://docs.steamship.com/api/steamship.html#steamship.Steamship","line":188},{"title":"`SteamshipError`","target":"https://docs.steamship.com/api/steamship.html#steamship.SteamshipError","line":189},{"title":"`Tag`","target":"https://docs.steamship.com/api/steamship.html#steamship.Tag","line":190},{"title":"`Task`","target":"https://docs.steamship.com/api/steamship.html#steamship.Task","line":191},{"title":"`TaskState`","target":"https://docs.steamship.com/api/steamship.html#steamship.TaskState","line":192},{"title":"`Workspace`","target":"https://docs.steamship.com/api/steamship.html#steamship.Workspace","line":193},{"title":"`check_environment()`","target":"https://docs.steamship.com/api/steamship.html#steamship.check_environment","line":194},{"title":"License","target":"https://docs.steamship.com/license.html","line":195},{"title":"Authors","target":"https://docs.steamship.com/authors.html","line":196}],"metadata":{"page-title":"Steamship Documentation","url":"https://docs.steamship.com/","date":"2023-04-17 08:40:46"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_TorantulinoAuto-GPT_An_experimental_open-source_attempt_to_make_GPT-4_fully_autonomous__md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_TorantulinoAuto-GPT_An_experimental_open-source_attempt_to_make_GPT-4_fully_autonomous__md.ajson deleted file mode 100644 index fc98eac..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_TorantulinoAuto-GPT_An_experimental_open-source_attempt_to_make_GPT-4_fully_autonomous__md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/TorantulinoAuto-GPT An experimental open-source attempt to make GPT-4 fully autonomous..md": {"path":"000-inbox/clippings/2023/04/TorantulinoAuto-GPT An experimental open-source attempt to make GPT-4 fully autonomous..md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"2atlyx","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681463197000,"size":19800,"at":1766986878957,"hash":"2atlyx"},"blocks":{"#---frontmatter---":[1,5],"##Auto-GPT: An Autonomous GPT-4 Experiment":[6,13],"##Auto-GPT: An Autonomous GPT-4 Experiment#{1}":[8,11],"##Auto-GPT: An Autonomous GPT-4 Experiment#Demo (30/03/2023):":[12,13],"##💖 Help Fund Auto-GPT's Development 💖":[14,23],"##💖 Help Fund Auto-GPT's Development 💖#{1}":[16,19],"##💖 Help Fund Auto-GPT's Development 💖#Individual Sponsors":[20,23],"##💖 Help Fund Auto-GPT's Development 💖#Individual Sponsors#{1}":[22,23],"##Table of Contents":[24,50],"##Table of Contents#{1}":[26,50],"##🚀 Features":[51,58],"##🚀 Features#{1}":[53,53],"##🚀 Features#{2}":[54,54],"##🚀 Features#{3}":[55,55],"##🚀 Features#{4}":[56,56],"##🚀 Features#{5}":[57,58],"##📋 Requirements":[59,70],"##📋 Requirements#{1}":[61,63],"##📋 Requirements#{2}":[64,64],"##📋 Requirements#{3}":[65,66],"##📋 Requirements#{4}":[67,68],"##📋 Requirements#{5}":[69,70],"##💾 Installation":[71,104],"##💾 Installation#{1}":[73,74],"##💾 Installation#{2}":[75,76],"##💾 Installation#{3}":[77,78],"##💾 Installation#{4}":[79,84],"##💾 Installation#{5}":[81,84],"##💾 Installation#{6}":[85,86],"##💾 Installation#{7}":[87,92],"##💾 Installation#{8}":[89,92],"##💾 Installation#{9}":[93,94],"##💾 Installation#{10}":[95,95],"##💾 Installation#{11}":[96,96],"##💾 Installation#{12}":[97,104],"##🔧 Usage":[105,121],"##🔧 Usage#{1}":[107,108],"##🔧 Usage#{2}":[109,109],"##🔧 Usage#{3}":[110,111],"##🔧 Usage#Logs":[112,121],"##🔧 Usage#Logs#{1}":[114,121],"##🗣️ Speech Mode":[122,129],"##🗣️ Speech Mode#{1}":[124,129],"##🔍 Google API Keys Configuration":[130,164],"##🔍 Google API Keys Configuration#{1}":[132,133],"##🔍 Google API Keys Configuration#{2}":[134,134],"##🔍 Google API Keys Configuration#{3}":[135,135],"##🔍 Google API Keys Configuration#{4}":[136,136],"##🔍 Google API Keys Configuration#{5}":[137,137],"##🔍 Google API Keys Configuration#{6}":[138,138],"##🔍 Google API Keys Configuration#{7}":[139,139],"##🔍 Google API Keys Configuration#{8}":[140,140],"##🔍 Google API Keys Configuration#{9}":[141,141],"##🔍 Google API Keys Configuration#{10}":[142,142],"##🔍 Google API Keys Configuration#{11}":[143,144],"##🔍 Google API Keys Configuration#{12}":[145,146],"##🔍 Google API Keys Configuration#Setting up environment variables":[147,164],"##🔍 Google API Keys Configuration#Setting up environment variables#{1}":[149,164],"##Redis Setup":[165,197],"##Redis Setup#{1}":[167,197],"##🌲 Pinecone API Key Setup":[198,227],"##🌲 Pinecone API Key Setup#{1}":[200,201],"##🌲 Pinecone API Key Setup#{2}":[202,202],"##🌲 Pinecone API Key Setup#{3}":[203,203],"##🌲 Pinecone API Key Setup#{4}":[204,205],"##🌲 Pinecone API Key Setup#Setting up environment variables":[206,227],"##🌲 Pinecone API Key Setup#Setting up environment variables#{1}":[208,227],"##Setting Your Cache Type":[228,235],"##Setting Your Cache Type#{1}":[230,235],"##View Memory Usage":[236,239],"##View Memory Usage#{1}":[238,239],"##💀 Continuous Mode ⚠️":[240,252],"##💀 Continuous Mode ⚠️#{1}":[242,243],"##💀 Continuous Mode ⚠️#{2}":[244,250],"##💀 Continuous Mode ⚠️#{3}":[246,250],"##💀 Continuous Mode ⚠️#{4}":[251,252],"##GPT3.5 ONLY Mode":[253,262],"##GPT3.5 ONLY Mode#{1}":[255,262],"##🖼 Image Generation":[263,273],"##🖼 Image Generation#{1}":[265,273],"##⚠️ Limitations":[274,281],"##⚠️ Limitations#{1}":[276,277],"##⚠️ Limitations#{2}":[278,278],"##⚠️ Limitations#{3}":[279,279],"##⚠️ Limitations#{4}":[280,281],"##🛡 Disclaimer":[282,293],"##🛡 Disclaimer#{1}":[284,293],"##🐦 Connect with Us on Twitter":[294,304],"##🐦 Connect with Us on Twitter#{1}":[296,297],"##🐦 Connect with Us on Twitter#{2}":[298,298],"##🐦 Connect with Us on Twitter#{3}":[299,300],"##🐦 Connect with Us on Twitter#{4}":[301,304],"##Run tests":[305,318],"##Run tests#{1}":[307,318],"##Run linter":[319,330],"##Run linter#{1}":[321,330]},"outlinks":[{"title":"![Twitter Follow","target":"https://camo.githubusercontent.com/3dec838512be04ad4896ffa2104efc742a69ffff26a6b546dcb8051ab8d31788/68747470733a2f2f696d672e736869656c64732e696f2f747769747465722f666f6c6c6f772f73696767726176697461733f7374796c653d736f6369616c","line":8},{"title":"![Discord Follow","target":"https://camo.githubusercontent.com/99e48e4817c33e144d33faada1d11989fea6e189d98ed8da495497e01914ed67/68747470733a2f2f646362616467652e76657263656c2e6170702f6170692f7365727665722f6175746f6770743f7374796c653d666c6174","line":8},{"title":"![GitHub Repo stars","target":"https://camo.githubusercontent.com/f86acaa79ffac59dbad1bf976872d731c4490b6bd5657f6ae338a41ed91bffae/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f546f72616e74756c696e6f2f6175746f2d6770743f7374796c653d736f6369616c","line":8},{"title":"![Unit Tests","target":"https://github.com/Torantulino/Auto-GPT/actions/workflows/ci.yml/badge.svg","line":8},{"title":"sponsors","target":"https://github.com/sponsors/Torantulino","line":18},{"title":"click here","target":"https://github.com/sponsors/Torantulino","line":18},{"title":"contributors","target":"https://github.com/Torantulino/Auto-GPT/graphs/contributors","line":18},{"title":"![AuroraHolding","target":"https://github.com/AuroraHolding.png","line":22},{"title":"![crizzler","target":"https://github.com/crizzler.png","line":22},{"title":"![ddtarazona","target":"https://github.com/ddtarazona.png","line":22},{"title":"![digisomni","target":"https://github.com/digisomni.png","line":22},{"title":"![Explorergt92","target":"https://github.com/Explorergt92.png","line":22},{"title":"![FSTatSBS","target":"https://github.com/FSTatSBS.png","line":22},{"title":"![hunteraraujo","target":"https://github.com/hunteraraujo.png","line":22},{"title":"![indoor47","target":"https://github.com/indoor47.png","line":22},{"title":"![judegomila","target":"https://github.com/judegomila.png","line":22},{"title":"![Kazamario","target":"https://github.com/Kazamario.png","line":22},{"title":"![kreativai","target":"https://github.com/kreativai.png","line":22},{"title":"![m","target":"https://github.com/m.png","line":22},{"title":"![maxxflyer","target":"https://github.com/maxxflyer.png","line":22},{"title":"![merwanehamadi","target":"https://github.com/merwanehamadi.png","line":22},{"title":"![Nalhos","target":"https://github.com/Nalhos.png","line":22},{"title":"![nocodeclarity","target":"https://github.com/nocodeclarity.png","line":22},{"title":"![pingbotan","target":"https://github.com/pingbotan.png","line":22},{"title":"![prompthero","target":"https://github.com/prompthero.png","line":22},{"title":"![robinicus","target":"https://github.com/robinicus.png","line":22},{"title":"![SpacingLily","target":"https://github.com/SpacingLily.png","line":22},{"title":"![tekelsey","target":"https://github.com/tekelsey.png","line":22},{"title":"![thepok","target":"https://github.com/thepok.png","line":22},{"title":"![tjarmain","target":"https://github.com/tjarmain.png","line":22},{"title":"![tob-le-rone","target":"https://github.com/tob-le-rone.png","line":22},{"title":"![toverly1","target":"https://github.com/toverly1.png","line":22},{"title":"![zkonduit","target":"https://github.com/zkonduit.png","line":22},{"title":"Auto-GPT: An Autonomous GPT-4 Experiment","target":"https://github.com/Torantulino/Auto-GPT#auto-gpt-an-autonomous-gpt-4-experiment","line":26},{"title":"Demo (30/03/2023):","target":"https://github.com/Torantulino/Auto-GPT#demo-30032023","line":27},{"title":"Table of Contents","target":"https://github.com/Torantulino/Auto-GPT#table-of-contents","line":28},{"title":"🚀 Features","target":"https://github.com/Torantulino/Auto-GPT#-features","line":29},{"title":"📋 Requirements","target":"https://github.com/Torantulino/Auto-GPT#-requirements","line":30},{"title":"💾 Installation","target":"https://github.com/Torantulino/Auto-GPT#-installation","line":31},{"title":"🔧 Usage","target":"https://github.com/Torantulino/Auto-GPT#-usage","line":32},{"title":"Logs","target":"https://github.com/Torantulino/Auto-GPT#logs","line":33},{"title":"🗣️ Speech Mode","target":"https://github.com/Torantulino/Auto-GPT#%EF%B8%8F-speech-mode","line":34},{"title":"🔍 Google API Keys Configuration","target":"https://github.com/Torantulino/Auto-GPT#-google-api-keys-configuration","line":35},{"title":"Setting up environment variables","target":"https://github.com/Torantulino/Auto-GPT#setting-up-environment-variables","line":36},{"title":"Redis Setup","target":"https://github.com/Torantulino/Auto-GPT#redis-setup","line":37},{"title":"🌲 Pinecone API Key Setup","target":"https://github.com/Torantulino/Auto-GPT#-pinecone-api-key-setup","line":38},{"title":"Setting up environment variables","target":"https://github.com/Torantulino/Auto-GPT#setting-up-environment-variables-1","line":39},{"title":"Setting Your Cache Type","target":"https://github.com/Torantulino/Auto-GPT#setting-your-cache-type","line":40},{"title":"View Memory Usage","target":"https://github.com/Torantulino/Auto-GPT#view-memory-usage","line":41},{"title":"💀 Continuous Mode ⚠️","target":"https://github.com/Torantulino/Auto-GPT#-continuous-mode-%EF%B8%8F","line":42},{"title":"GPT3.5 ONLY Mode","target":"https://github.com/Torantulino/Auto-GPT#gpt35-only-mode","line":43},{"title":"🖼 Image Generation","target":"https://github.com/Torantulino/Auto-GPT#-image-generation","line":44},{"title":"⚠️ Limitations","target":"https://github.com/Torantulino/Auto-GPT#%EF%B8%8F-limitations","line":45},{"title":"🛡 Disclaimer","target":"https://github.com/Torantulino/Auto-GPT#-disclaimer","line":46},{"title":"🐦 Connect with Us on Twitter","target":"https://github.com/Torantulino/Auto-GPT#-connect-with-us-on-twitter","line":47},{"title":"Run tests","target":"https://github.com/Torantulino/Auto-GPT#run-tests","line":48},{"title":"Run linter","target":"https://github.com/Torantulino/Auto-GPT#run-linter","line":49},{"title":"vscode + devcontainer","target":"https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers","line":62},{"title":"Python 3.8 or later","target":"https://www.tutorialspoint.com/how-to-install-python-in-windows","line":63},{"title":"OpenAI API key","target":"https://platform.openai.com/account/api-keys","line":64},{"title":"PINECONE API key","target":"https://www.pinecone.io/","line":65},{"title":"ElevenLabs Key","target":"https://elevenlabs.io/","line":69},{"title":"https://platform.openai.com/account/api-keys","target":"https://platform.openai.com/account/api-keys","line":95},{"title":"https://elevenlabs.io","target":"https://elevenlabs.io/","line":96},{"title":"https://learn.microsoft.com/en-us/azure/cognitive-services/openai/tutorials/embeddings?tabs=command-line","target":"https://learn.microsoft.com/en-us/azure/cognitive-services/openai/tutorials/embeddings?tabs=command-line","line":103},{"title":"https://pypi.org/project/openai/","target":"https://pypi.org/project/openai/","line":103},{"title":"Google Cloud Console","target":"https://console.cloud.google.com/","line":134},{"title":"APIs & Services Dashboard","target":"https://console.cloud.google.com/apis/dashboard","line":137},{"title":"Credentials","target":"https://console.cloud.google.com/apis/credentials","line":138},{"title":"Enable","target":"https://console.developers.google.com/apis/api/customsearch.googleapis.com","line":140},{"title":"Custom Search Engine","target":"https://cse.google.com/cse/all","line":141},{"title":"https://hub.docker.com/r/redis/redis-stack-server","target":"https://hub.docker.com/r/redis/redis-stack-server","line":175},{"title":"pinecone","target":"https://app.pinecone.io/","line":202},{"title":"HuggingFace API Token","target":"https://huggingface.co/settings/tokens","line":265},{"title":"@siggravitas","target":"https://twitter.com/siggravitas","line":298},{"title":"@En\\_GPT","target":"https://twitter.com/En_GPT","line":299},{"title":"![Star History Chart","target":"https://camo.githubusercontent.com/8226dd8023ed52d438c66791ae849051fa7c8e1f874bb728ca9b2c3dbb1cd64b/68747470733a2f2f6170692e737461722d686973746f72792e636f6d2f7376673f7265706f733d546f72616e74756c696e6f2f6175746f2d67707426747970653d44617465","line":303},{"title":"flake8","target":"https://flake8.pycqa.org/en/latest/","line":321},{"title":"flake8 rules","target":"https://www.flake8rules.com/","line":321}],"metadata":{"page-title":"Torantulino/Auto-GPT: An experimental open-source attempt to make GPT-4 fully autonomous.","url":"https://github.com/Torantulino/Auto-GPT","date":"2023-04-14 17:06:34"},"task_lines":[],"tasks":{},"codeblock_ranges":[[81,83],[89,91],[118,120],[126,128],[151,155],[159,163],[171,173],[179,184],[190,192],[214,218],[222,226],[246,249],[257,259],[269,272],[309,311],[315,317],[325,330]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Usage_of_matrix-bot-sdk__Matrix_org_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Usage_of_matrix-bot-sdk__Matrix_org_md.ajson deleted file mode 100644 index 22389b0..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Usage_of_matrix-bot-sdk__Matrix_org_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Usage of matrix-bot-sdk Matrix.org.md": {"path":"000-inbox/clippings/2023/04/Usage of matrix-bot-sdk Matrix.org.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1s55ro2","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681796053000,"size":7229,"at":1766986878957,"hash":"1s55ro2"},"blocks":{"#---frontmatter---":[1,5],"#":[6,9],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#setup)Setup":[10,21],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#setup)Setup#{1}":[12,21],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#instantiation)Instantiation":[22,88],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#instantiation)Instantiation#{1}":[24,88],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#sync-loop)/sync loop":[89,94],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#sync-loop)/sync loop#{1}":[91,94],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#receiving-and-sending-events)Receiving and Sending events":[95,126],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#receiving-and-sending-events)Receiving and Sending events#{1}":[97,126],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality":[127,152],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{1}":[129,130],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{2}":[131,131],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{3}":[132,132],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{4}":[133,133],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{5}":[134,152],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#implementing-echobot-functionality)Implementing echobot functionality#{6}":[136,152],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#conclusion)Conclusion":[153,156],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#conclusion)Conclusion#{1}":[155,156],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#ps-use-typescript)PS, use TypeScript":[157,167],"##[](https://matrix.org/docs/guides/usage-of-matrix-bot-sdk#ps-use-typescript)PS, use TypeScript#{1}":[159,167]},"outlinks":[{"title":"matrix-bot-sdk","target":"https://github.com/turt2live/matrix-bot-sdk","line":6},{"title":"take a look at these instructions","target":"https://t2bot.io/docs/access_tokens/","line":33},{"title":"just the same as you'd find in the spec","target":"https://matrix.org/docs/spec/client_server/latest#put-matrix-client-r0-rooms-roomid-send-eventtype-txnid","line":125},{"title":"matrix-bot-sdk","target":"https://github.com/turt2live/matrix-bot-sdk","line":155},{"title":"very well documented","target":"https://github.com/turt2live/matrix-bot-sdk/blob/master/src/MatrixClient.ts","line":155},{"title":"matrix-bot-sdk","target":"https://github.com/turt2live/matrix-bot-sdk","line":159}],"metadata":{"page-title":"Usage of matrix-bot-sdk | Matrix.org","url":"https://matrix.org/docs/guides/usage-of-matrix-bot-sdk","date":"2023-04-18 13:34:11"},"task_lines":[],"tasks":{},"codeblock_ranges":[[14,18],[26,31],[35,38],[42,44],[50,52],[56,58],[62,64],[68,83],[99,106],[112,117],[121,123],[136,151]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_Using_Let's_Encrypt_for_internal_servers_-_Philipp's_Tech_Blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_Using_Let's_Encrypt_for_internal_servers_-_Philipp's_Tech_Blog_md.ajson deleted file mode 100644 index 78045a7..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_Using_Let's_Encrypt_for_internal_servers_-_Philipp's_Tech_Blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/Using Let's Encrypt for internal servers - Philipp's Tech Blog.md": {"path":"000-inbox/clippings/2023/04/Using Let's Encrypt for internal servers - Philipp's Tech Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hawz7y","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1680742346000,"size":14170,"at":1766986878957,"hash":"hawz7y"},"blocks":{"#---frontmatter---":[1,5],"#":[6,31],"##{1}":[18,18],"##{2}":[19,21],"##{3}":[22,31],"###1\\. How does it work? [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work)":[32,44],"###1\\. How does it work? [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work)#{1}":[34,39],"###1\\. How does it work? [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work)#{2}":[40,40],"###1\\. How does it work? [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work)#{3}":[41,42],"###1\\. How does it work? [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work)#{4}":[43,44],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)":[45,395],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#{1}":[47,56],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#{2}":[57,57],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#{3}":[58,59],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#{4}":[60,61],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#2.1. Prerequisites: Assigning a domain for each machine (steps 1-3) [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Prerequisites-Assigning-a-domain-for-each-machine-steps-1-3)":[62,77],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#2.1. Prerequisites: Assigning a domain for each machine (steps 1-3) [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Prerequisites-Assigning-a-domain-for-each-machine-steps-1-3)#{1}":[64,77],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#2.2. Requesting a certificate (steps 4-14) [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Requesting-a-certificate-steps-4-14)":[78,395],"###2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com)#2.2. Requesting a certificate (steps 4-14) [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Requesting-a-certificate-steps-4-14)#{1}":[80,395],"###3\\. Deployment considerations: Let’s Encrypt rate limits [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Deployment-considerations-Let-s-Encrypt-rate-limits)":[396,403],"###3\\. Deployment considerations: Let’s Encrypt rate limits [¶](https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Deployment-considerations-Let-s-Encrypt-rate-limits)#{1}":[398,403],"###4\\. Summary":[404,410],"###4\\. Summary#{1}":[406,410]},"outlinks":[{"title":"ACME protocol","target":"https://ietf-wg-acme.github.io/acme/draft-ietf-acme-acme.html","line":8},{"title":"Let’s Encrypt","target":"https://letsencrypt.org/","line":8},{"title":"I wrote about how to do that 3 years back","target":"https://blog.heckel.xyz/2015/12/04/lets-encrypt-5-min-guide-to-set-up-cronjob-based-certificate-renewal/","line":10},{"title":"certbot","target":"https://certbot.eff.org/","line":10},{"title":"simp\\_le","target":"https://github.com/kuba/simp_le","line":10},{"title":"1\\. How does it work?","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work","line":18},{"title":"2\\. Example: An internal server 10.1.1.4, aka. xi8qz.example.com","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com","line":19},{"title":"2.1. Prerequisites: Assigning a domain for each machine (steps 1-3)","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Prerequisites-Assigning-a-domain-for-each-machine-steps-1-3","line":20},{"title":"2.2. Requesting a certificate (steps 4-14)","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Requesting-a-certificate-steps-4-14","line":21},{"title":"3\\. Deployment considerations: Let’s Encrypt rate limits","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Deployment-considerations-Let-s-Encrypt-rate-limits","line":22},{"title":"comments section","target":"https://news.ycombinator.com/item?id=19353294","line":26},{"title":"localtls","target":"https://github.com/Corollarium/localtls","line":28},{"title":"¶","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#How-does-it-work","line":32},{"title":"certbot","target":"https://certbot.eff.org/","line":34},{"title":"HTTP challenge","target":"https://ietf-wg-acme.github.io/acme/draft-ietf-acme-acme.html#rfc.section.8.3","line":34},{"title":"DNS challenge","target":"https://ietf-wg-acme.github.io/acme/draft-ietf-acme-acme.html#rfc.section.8.4","line":36},{"title":"¶","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Example-An-internal-server-10-1-1-4-aka-xi8qz-example-com","line":45},{"title":"¶","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Prerequisites-Assigning-a-domain-for-each-machine-steps-1-3","line":62},{"title":"spin up your own DDNS server","target":"https://blog.heckel.xyz/2016/12/31/your-own-dynamic-dns-server-powerdns-mysql/","line":70},{"title":"¶","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Requesting-a-certificate-steps-4-14","line":78},{"title":"certificate signing request (CSR)","target":"https://en.wikipedia.org/wiki/Certificate_signing_request","line":82},{"title":"Pre-Authorization","target":"https://ietf-wg-acme.github.io/acme/draft-ietf-acme-acme.html#rfc.section.7.4.1","line":84},{"title":"¶","target":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/#Deployment-considerations-Let-s-Encrypt-rate-limits","line":396},{"title":"rate limit restrictions","target":"https://letsencrypt.org/docs/rate-limits/","line":398},{"title":"staging environments","target":"https://letsencrypt.org/docs/staging-environment/","line":398},{"title":"request a higher rate limit","target":"https://goo.gl/forms/plqRgFVnZbdGhE9n1","line":400},{"title":"public suffix list","target":"https://publicsuffix.org/","line":400}],"metadata":{"page-title":"Using Let's Encrypt for internal servers - Philipp's Tech Blog","url":"https://blog.heckel.io/2018/08/05/issuing-lets-encrypt-certificates-for-65000-internal-servers/","date":"2023-04-06 08:52:23"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_What_is_Prompt_Engineering__prmpts_AI_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_What_is_Prompt_Engineering__prmpts_AI_md.ajson deleted file mode 100644 index 350d284..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_What_is_Prompt_Engineering__prmpts_AI_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/What is Prompt Engineering prmpts.AI.md": {"path":"000-inbox/clippings/2023/04/What is Prompt Engineering prmpts.AI.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1cn8y2n","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1682224868000,"size":9324,"at":1766986878957,"hash":"1cn8y2n"},"blocks":{"#---frontmatter---":[1,5],"#":[7,30],"##{1}":[21,21],"##{2}":[22,22],"##{3}":[23,23],"##{4}":[24,24],"##{5}":[25,25],"##{6}":[26,26],"##{7}":[27,30],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?":[31,47],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{1}":[33,34],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{2}":[35,35],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{3}":[36,36],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{4}":[37,37],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{5}":[38,38],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{6}":[39,39],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{7}":[40,40],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{8}":[41,41],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{9}":[42,43],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#so-what-is-prompt-engineering-exactly)So what is Prompt Engineering exactly?#{10}":[44,47],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#anatomy-of-a-prompt)Anatomy of a prompt":[48,55],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#anatomy-of-a-prompt)Anatomy of a prompt#{1}":[50,51],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#anatomy-of-a-prompt)Anatomy of a prompt#{2}":[52,52],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#anatomy-of-a-prompt)Anatomy of a prompt#{3}":[53,53],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#anatomy-of-a-prompt)Anatomy of a prompt#{4}":[54,55],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex":[56,119],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex#{1}":[58,59],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Prompt":[60,71],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Prompt#{1}":[62,71],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Inputs":[72,73],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview":[74,119],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{1}":[76,83],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{2}":[84,84],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{3}":[85,85],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{4}":[86,87],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{5}":[88,91],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{6}":[92,97],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{7}":[94,97],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{8}":[98,103],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{9}":[100,103],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{10}":[104,110],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{11}":[106,110],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{12}":[111,119],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#example-fruit--color-hex)Example: Fruit → Color Hex##Preview#{13}":[113,119],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts":[120,199],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{1}":[122,123],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{2}":[124,131],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{3}":[126,131],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{4}":[132,138],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{5}":[134,138],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{6}":[139,144],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{7}":[141,144],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{8}":[145,150],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{9}":[147,150],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{10}":[151,162],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{11}":[153,162],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{12}":[163,173],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts#{13}":[165,173],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts##Prompt":[174,189],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts##Prompt#{1}":[176,189],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts##Inputs":[190,191],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts##Preview":[192,199],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#tips-for-effective-prompts)Tips for effective prompts##Preview#{1}":[194,199],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#is-prompt-engineering-the-same-as-fine-tuning)Is Prompt Engineering the same as fine-tuning?":[200,205],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#is-prompt-engineering-the-same-as-fine-tuning)Is Prompt Engineering the same as fine-tuning?#{1}":[202,205],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#what-is-prmptsai)What is [prmpts.AI](https://prmpts.ai/)?":[206,208],"##[](https://prmpts.ai/blog/what-is-prompt-engineering#what-is-prmptsai)What is [prmpts.AI](https://prmpts.ai/)?#{1}":[208,208]},"outlinks":[{"title":"prmpts.AI","target":"https://prmpts.ai/","line":206},{"title":"prmpts.AI","target":"http://prmpts.ai/","line":208}],"metadata":{"page-title":"What is Prompt Engineering? | prmpts.AI","url":"https://prmpts.ai/blog/what-is-prompt-engineering","date":"2023-04-23 12:41:07"},"task_lines":[],"tasks":{},"codeblock_ranges":[[94,96],[100,102],[106,109],[113,115],[126,128],[134,137],[141,143],[147,149],[153,159],[165,167]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_[Pdns-users]_TCP_Connection_Thread_died_because_of_STL_error_Reading_data_Connection_reset_by_peer_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_[Pdns-users]_TCP_Connection_Thread_died_because_of_STL_error_Reading_data_Connection_reset_by_peer_md.ajson deleted file mode 100644 index 0133d03..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_[Pdns-users]_TCP_Connection_Thread_died_because_of_STL_error_Reading_data_Connection_reset_by_peer_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/[Pdns-users] TCP Connection Thread died because of STL error Reading data Connection reset by peer.md": {"path":"000-inbox/clippings/2023/04/[Pdns-users] TCP Connection Thread died because of STL error Reading data Connection reset by peer.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"147eait","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681877897000,"size":6461,"at":1766986878957,"hash":"147eait"},"blocks":{"#---frontmatter---":[1,5],"#":[6,139],"##{1}":[9,9],"##{2}":[10,10],"##{3}":[11,132],"##{4}":[133,133],"##{5}":[134,134],"##{6}":[135,139]},"outlinks":[{"title":"david at craigon.co.uk","target":"mailto:pdns-users@mailman.powerdns.com?Subject=Re: [Pdns-users] TCP Connection Thread died because of STL error:\n\tReading data: Connection reset by peer&In-Reply-To= \"[Pdns-users] TCP Connection Thread died because of STL error:\tReading data: Connection reset by peer\"","line":6},{"title":"david at craigon.co.uk","target":"http://mailman.powerdns.com/mailman/listinfo/pdns-users","line":40},{"title":"http://doc.powerdns.com/generic-mypgsql-backends.html","target":"http://doc.powerdns.com/generic-mypgsql-backends.html","line":43},{"title":"bert.hubert at netherlabs.nl","target":"http://mailman.powerdns.com/mailman/listinfo/pdns-users","line":120},{"title":"More information about the Pdns-users mailing list","target":"http://mailman.powerdns.com/mailman/listinfo/pdns-users","line":139}],"metadata":{"page-title":"[Pdns-users] TCP Connection Thread died because of STL error: Reading data: Connection reset by peer","url":"https://mailman.powerdns.com/pipermail/pdns-users/2010-May/018731.html","date":"2023-04-19 12:18:15"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_fast_ai_-_GPT_4_and_the_Uncharted_Territories_of_Language_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_fast_ai_-_GPT_4_and_the_Uncharted_Territories_of_Language_md.ajson deleted file mode 100644 index 2641cea..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_fast_ai_-_GPT_4_and_the_Uncharted_Territories_of_Language_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/fast.ai - GPT 4 and the Uncharted Territories of Language.md": {"path":"000-inbox/clippings/2023/04/fast.ai - GPT 4 and the Uncharted Territories of Language.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"193ixke","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681095479401,"size":7362,"at":1766986878957,"hash":"193ixke"},"blocks":{"#---frontmatter---":[1,5],"##Beyond Wittgenstein’s Walls[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#beyond-wittgensteins-walls)":[6,29],"##Beyond Wittgenstein’s Walls[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#beyond-wittgensteins-walls)#{1}":[8,29],"##I didn’t write that[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that)":[30,37],"##I didn’t write that[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that)#{1}":[32,37],"##Conclusion[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#conclusion)":[38,43],"##Conclusion[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#conclusion)#{1}":[40,43],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)":[44,61],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{1}":[46,49],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{2}":[50,50],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{3}":[51,51],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{4}":[52,52],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{5}":[53,54],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{6}":[55,60],"##I didn’t write that either[](https://www.fast.ai/posts/2023-03-20-wittgenstein.html#i-didnt-write-that-either)#{7}":[61,61]},"outlinks":[{"title":"1","target":"https://www.fast.ai/posts/2023-03-20-wittgenstein.html#fn1","line":50},{"title":"↩︎","target":"https://www.fast.ai/posts/2023-03-20-wittgenstein.html#fnref1","line":61}],"metadata":{"page-title":"fast.ai - GPT 4 and the Uncharted Territories of Language","url":"https://www.fast.ai/posts/2023-03-20-wittgenstein.html","date":"2023-04-10 10:57:57"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_matrixgptmatrix-chatgpt-bot_Talk_to_ChatGPT_via_any_Matrix_client!_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_matrixgptmatrix-chatgpt-bot_Talk_to_ChatGPT_via_any_Matrix_client!_md.ajson deleted file mode 100644 index eda3fe7..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_matrixgptmatrix-chatgpt-bot_Talk_to_ChatGPT_via_any_Matrix_client!_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/matrixgptmatrix-chatgpt-bot Talk to ChatGPT via any Matrix client!.md": {"path":"000-inbox/clippings/2023/04/matrixgptmatrix-chatgpt-bot Talk to ChatGPT via any Matrix client!.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"72zcof","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681796071000,"size":8766,"at":1766986878957,"hash":"72zcof"},"blocks":{"#---frontmatter---":[1,5],"##Matrix ChatGPT Bot":[6,13],"##Matrix ChatGPT Bot#{1}":[8,13],"##Warning for users upgrading from version 2.x":[14,17],"##Warning for users upgrading from version 2.x#{1}":[16,17],"##Usage":[18,23],"##Usage#{1}":[20,20],"##Usage#{2}":[21,21],"##Usage#{3}":[22,23],"##Features":[24,29],"##Features#{1}":[26,26],"##Features#{2}":[27,27],"##Features#{3}":[28,29],"##Configure":[30,35],"##Configure#{1}":[32,35],"##Prerequsistes":[36,51],"##Prerequsistes#Matrix":[38,45],"##Prerequsistes#Matrix#{1}":[40,40],"##Prerequsistes#Matrix#{2}":[41,41],"##Prerequsistes#Matrix#{3}":[42,42],"##Prerequsistes#Matrix#{4}":[43,43],"##Prerequsistes#Matrix#{5}":[44,45],"##Prerequsistes#OpenAI / ChatGPT":[46,51],"##Prerequsistes#OpenAI / ChatGPT#{1}":[48,48],"##Prerequsistes#OpenAI / ChatGPT#{2}":[49,49],"##Prerequsistes#OpenAI / ChatGPT#{3}":[50,51],"##Setup":[52,66],"##Setup#{1}":[54,54],"##Setup#{2}":[55,55],"##Setup#{3}":[56,56],"##Setup#{4}":[57,57],"##Setup#{5}":[58,59],"##Setup#{6}":[60,61],"##Setup#{7}":[62,62],"##Setup#{8}":[63,63],"##Setup#{9}":[64,64],"##Setup#{10}":[65,66],"##Run":[67,70],"##Run#{1}":[69,70],"##with Docker":[71,89],"##with Docker#{1}":[73,89],"##with Docker Compose":[90,107],"##with Docker Compose#{1}":[92,107],"##without Docker":[108,115],"##without Docker#{1}":[110,111],"##without Docker#{2}":[112,112],"##without Docker#{3}":[113,113],"##without Docker#{4}":[114,115],"##in Development":[116,122],"##in Development#{1}":[118,119],"##in Development#{2}":[120,120],"##in Development#{3}":[121,122],"##Good to know":[123,132],"##Good to know#{1}":[125,125],"##Good to know#{2}":[126,126],"##Good to know#{3}":[127,127],"##Good to know#{4}":[128,132],"##FAQ":[133,134],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"":[135,153],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{1}":[137,138],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{2}":[139,140],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{3}":[141,141],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{4}":[142,142],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{5}":[143,143],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{6}":[144,145],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{7}":[146,147],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{8}":[148,148],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{9}":[149,149],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{10}":[150,150],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{11}":[151,151],"##I get \"\\[Error: decryption failed because the room key is missing\\]\"#{12}":[152,153],"##I want to chat with the bot without dealing with encryption problems":[154,157],"##I want to chat with the bot without dealing with encryption problems#{1}":[156,157],"##I get \"{ errcode: 'M\\_NOT\\_FOUND', error: 'Event not found.' }\"":[158,161],"##I get \"{ errcode: 'M\\_NOT\\_FOUND', error: 'Event not found.' }\"#{1}":[160,161],"##How do I know that the bot is running succesfully?":[162,169],"##How do I know that the bot is running succesfully?#{1}":[164,165],"##How do I know that the bot is running succesfully?#{2}":[166,166],"##How do I know that the bot is running succesfully?#{3}":[167,167],"##How do I know that the bot is running succesfully?#{4}":[168,169],"##I use Docker but I don't see any console output":[170,173],"##I use Docker but I don't see any console output#{1}":[172,173],"##Reporting issues":[174,179],"##Reporting issues#{1}":[176,179],"##Discussion":[180,185],"##Discussion#{1}":[182,185],"##License":[186,188],"##License#{1}":[188,188]},"outlinks":[{"title":"![Screenshot of Element iOS app showing conversation with bot","target":"https://github.com/matrixgpt/matrix-chatgpt-bot/raw/main/img/matrix-chatgpt.png","line":10},{"title":"waylaidwanderer/node-chatgpt-api","target":"https://github.com/waylaidwanderer/node-chatgpt-api","line":12},{"title":"official API for ChatGPT","target":"https://openai.com/blog/introducing-chatgpt-and-whisper-apis","line":16},{"title":"OpenAI website","target":"https://platform.openai.com/account/billing","line":16},{"title":"Matrix.org","target":"https://matrix.org/","line":40},{"title":"openai.com","target":"https://openai.com/","line":48},{"title":"API Key","target":"https://platform.openai.com/account/api-keys","line":49},{"title":"Keyv","target":"https://github.com/jaredwray/keyv","line":126},{"title":"#matrix-chatgpt-bot:matrix.org","target":"https://matrix.to/#/#matrix-chatgpt-bot:matrix.org","line":182}],"metadata":{"page-title":"matrixgpt/matrix-chatgpt-bot: Talk to ChatGPT via any Matrix client!","url":"https://github.com/matrixgpt/matrix-chatgpt-bot","date":"2023-04-18 13:34:30","tags":["#matrix-chatgpt-bot"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[75,77],[81,84],[96,106]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_prmpts_AI_-_Prompt_sandbox_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_prmpts_AI_-_Prompt_sandbox_md.ajson deleted file mode 100644 index 150d5fa..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_prmpts_AI_-_Prompt_sandbox_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/prmpts.AI - Prompt sandbox.md": {"path":"000-inbox/clippings/2023/04/prmpts.AI - Prompt sandbox.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"p3hk6m","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1682224873000,"size":816,"at":1766986878957,"hash":"p3hk6m"},"blocks":{"#---frontmatter---":[1,5],"#":[6,11],"####Prompt":[12,23],"####Prompt#{1}":[14,23],"####Inputs":[24,27],"####Inputs#{1}":[26,27],"####Preview":[28,46],"####Preview#{1}":[30,46]},"outlinks":[{"title":"![logo","target":"https://prmpts.ai/_next/static/media/logo.72d4dbf5.svg","line":6},{"title":"Read our blog post","target":"https://prmpts.ai/blog/what-is-prompt-engineering","line":10},{"title":"![logo","target":"https://prmpts.ai/_next/static/media/logo-icon.881a4e0e.svg","line":46}],"metadata":{"page-title":"prmpts.AI - Prompt sandbox","url":"https://prmpts.ai/","date":"2023-04-23 12:41:12"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_04_yarmodelightful-matrix_A_curated_list_of_delightful_Matrix_resources,_implementations_and_clients__-_delightful-matrix_-_Codeberg_org_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_04_yarmodelightful-matrix_A_curated_list_of_delightful_Matrix_resources,_implementations_and_clients__-_delightful-matrix_-_Codeberg_org_md.ajson deleted file mode 100644 index b07c100..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_04_yarmodelightful-matrix_A_curated_list_of_delightful_Matrix_resources,_implementations_and_clients__-_delightful-matrix_-_Codeberg_org_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/04/yarmodelightful-matrix A curated list of delightful Matrix resources, implementations and clients. - delightful-matrix - Codeberg.org.md": {"path":"000-inbox/clippings/2023/04/yarmodelightful-matrix A curated list of delightful Matrix resources, implementations and clients. - delightful-matrix - Codeberg.org.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"n3bkv6","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1681828790000,"size":13341,"at":1766986878957,"hash":"n3bkv6"},"blocks":{"#---frontmatter---":[1,5],"##[](https://codeberg.org/yarmo/delightful-matrix#delightful-matrix-delightful-https-codeberg-org-teaserbot-labs-delightful-media-branch-master-assets-delightful-badge-png-https-codeberg-org-teaserbot-labs-delightful)delightful matrix [![delightful](https://codeberg.org/teaserbot-labs/delightful/media/branch/master/assets/delightful-badge.png)](https://codeberg.org/teaserbot-labs/delightful)":[6,9],"##[](https://codeberg.org/yarmo/delightful-matrix#delightful-matrix-delightful-https-codeberg-org-teaserbot-labs-delightful-media-branch-master-assets-delightful-badge-png-https-codeberg-org-teaserbot-labs-delightful)delightful matrix [![delightful](https://codeberg.org/teaserbot-labs/delightful/media/branch/master/assets/delightful-badge.png)](https://codeberg.org/teaserbot-labs/delightful)#{1}":[8,9],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents":[10,24],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{1}":[12,12],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{2}":[13,13],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{3}":[14,14],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{4}":[15,15],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{5}":[16,16],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{6}":[17,17],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{7}":[18,18],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{8}":[19,20],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{9}":[21,22],"##[](https://codeberg.org/yarmo/delightful-matrix#table-of-contents)Table of contents#{10}":[23,24],"##[](https://codeberg.org/yarmo/delightful-matrix#general-resources)General resources":[25,28],"##[](https://codeberg.org/yarmo/delightful-matrix#general-resources)General resources#{1}":[27,28],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations":[29,37],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{1}":[31,31],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{2}":[32,32],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{3}":[33,33],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{4}":[34,34],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{5}":[35,35],"##[](https://codeberg.org/yarmo/delightful-matrix#server-implementations)Server implementations#{6}":[36,37],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients":[38,65],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{1}":[40,40],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{2}":[41,41],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{3}":[42,42],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{4}":[43,43],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{5}":[44,44],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{6}":[45,45],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{7}":[46,46],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{8}":[47,47],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{9}":[48,48],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{10}":[49,49],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{11}":[50,50],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{12}":[51,51],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{13}":[52,52],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{14}":[53,53],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{15}":[54,54],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{16}":[55,55],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{17}":[56,56],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{18}":[57,57],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{19}":[58,58],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{20}":[59,59],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{21}":[60,60],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{22}":[61,61],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{23}":[62,62],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{24}":[63,63],"##[](https://codeberg.org/yarmo/delightful-matrix#clients)Clients#{25}":[64,65],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs":[66,120],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript":[68,77],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{1}":[70,70],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{2}":[71,71],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{3}":[72,72],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{4}":[73,73],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{5}":[74,74],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{6}":[75,75],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#typescript-javascript)TypeScript & JavaScript#{7}":[76,77],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#python)Python":[78,84],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#python)Python#{1}":[80,80],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#python)Python#{2}":[81,81],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#python)Python#{3}":[82,82],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#python)Python#{4}":[83,84],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#kotlin)Kotlin":[85,90],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#kotlin)Kotlin#{1}":[87,87],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#kotlin)Kotlin#{2}":[88,88],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#kotlin)Kotlin#{3}":[89,90],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#rust)Rust":[91,95],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#rust)Rust#{1}":[93,93],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#rust)Rust#{2}":[94,95],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c)C++":[96,100],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c)C++#{1}":[98,98],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c)C++#{2}":[99,100],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c-1)C#":[101,105],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c-1)C##{1}":[103,103],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#c-1)C##{2}":[104,105],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#go)Go":[106,110],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#go)Go#{1}":[108,108],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#go)Go#{2}":[109,110],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages":[111,120],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{1}":[113,113],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{2}":[114,114],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{3}":[115,115],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{4}":[116,116],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{5}":[117,117],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{6}":[118,118],"##[](https://codeberg.org/yarmo/delightful-matrix#client-sdks)Client SDKs#[](https://codeberg.org/yarmo/delightful-matrix#other-languages)Other languages#{7}":[119,120],"##[](https://codeberg.org/yarmo/delightful-matrix#projects-based-on-matrix)Projects based on Matrix":[121,124],"##[](https://codeberg.org/yarmo/delightful-matrix#projects-based-on-matrix)Projects based on Matrix#{1}":[123,124],"##[](https://codeberg.org/yarmo/delightful-matrix#maintainers)Maintainers":[125,130],"##[](https://codeberg.org/yarmo/delightful-matrix#maintainers)Maintainers#{1}":[127,128],"##[](https://codeberg.org/yarmo/delightful-matrix#maintainers)Maintainers#{2}":[129,130],"##[](https://codeberg.org/yarmo/delightful-matrix#contributors)Contributors":[131,134],"##[](https://codeberg.org/yarmo/delightful-matrix#contributors)Contributors#{1}":[133,134],"##[](https://codeberg.org/yarmo/delightful-matrix#license)License":[135,137],"##[](https://codeberg.org/yarmo/delightful-matrix#license)License#{1}":[137,137]},"outlinks":[{"title":"![delightful","target":"https://codeberg.org/teaserbot-labs/delightful/media/branch/master/assets/delightful-badge.png","line":6},{"title":"General resourcess","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-general-resources","line":12},{"title":"Server implementations","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-server-implementations","line":13},{"title":"Clients","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-clients","line":14},{"title":"Client SDKs","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-client-sdks","line":15},{"title":"Projects based on Matrix","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-projects-based-on-matrix","line":16},{"title":"Maintainers","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-maintainers","line":17},{"title":"Contributors","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-contributors","line":18},{"title":"License","target":"https://codeberg.org/yarmo/delightful-matrix#user-content-license","line":19},{"title":"Matrix Spec","target":"https://spec.matrix.org/latest/","line":27},{"title":"site","target":"https://conduit.rs/","line":31},{"title":"Conduit","target":"https://gitlab.com/famedly/conduit","line":31},{"title":"Construct","target":"https://github.com/matrix-construct/construct","line":32},{"title":"Dendrite","target":"https://github.com/matrix-org/dendrite","line":33},{"title":"site","target":"https://matrix.org/docs/projects/server/dendrite","line":33},{"title":"Synapse","target":"https://github.com/matrix-org/synapse","line":34},{"title":"site","target":"https://matrix.org/docs/projects/server/synapse","line":34},{"title":"Ligase","target":"https://github.com/finogeeks/Ligase","line":35},{"title":"Maelstrom","target":"https://github.com/maelstrom-rs/maelstrom","line":36},{"title":"app","target":"https://chat.adb.sh/","line":40},{"title":"site","target":"https://cinny.in/","line":41},{"title":"Cinny","target":"https://github.com/ajbura/cinny","line":41},{"title":"Ditto Chat","target":"https://gitlab.com/ditto-chat/ditto","line":42},{"title":"site","target":"https://www.dittochat.org/","line":42},{"title":"site","target":"https://element.io/","line":43},{"title":"Element","target":"https://github.com/vector-im","line":43},{"title":"site","target":"https://fluffychat.im/","line":44},{"title":"FluffyChat","target":"https://gitlab.com/famedly/fluffychat","line":44},{"title":"Fractal","target":"https://gitlab.gnome.org/GNOME/fractal","line":45},{"title":"site","target":"https://wiki.gnome.org/Apps/Fractal","line":45},{"title":"gomuks","target":"https://github.com/tulir/gomuks","line":46},{"title":"site","target":"https://matrix.org/docs/projects/client/gomuks","line":46},{"title":"Hydrogen","target":"https://github.com/vector-im/hydrogen-web","line":47},{"title":"app","target":"https://hydrogen.element.io/","line":47},{"title":"kazv","target":"https://lily-is.land/kazv/kazv","line":48},{"title":"matrix-commander","target":"https://github.com/8go/matrix-commander","line":49},{"title":"matrix-static","target":"https://github.com/matrix-org/matrix-static","line":50},{"title":"NeoChat","target":"https://invent.kde.org/network/neochat","line":51},{"title":"Nheko","target":"https://github.com/Nheko-Reborn/nheko","line":52},{"title":"site","target":"https://nheko-reborn.github.io/","line":52},{"title":"Nio","target":"https://github.com/niochat/nio","line":53},{"title":"site","target":"https://nio.chat/","line":53},{"title":"Quaternion","target":"https://github.com/quotient-im/Quaternion","line":54},{"title":"QuickMedia","target":"https://git.dec05eba.com/QuickMedia/about","line":55},{"title":"SchildiChat","target":"https://github.com/SchildiChat","line":56},{"title":"site","target":"https://schildi.chat/","line":56},{"title":"Syphon","target":"https://github.com/syphon-org/syphon","line":57},{"title":"site","target":"https://syphon.org/","line":57},{"title":"AgentSmith","target":"https://github.com/nilsding/AgentSmith","line":58},{"title":"Koma","target":"https://github.com/koma-im/continuum-desktop","line":59},{"title":"matrix-client.el","target":"https://github.com/alphapapa/matrix-client.el","line":60},{"title":"matrix-ircd","target":"https://github.com/matrix-org/matrix-ircd","line":61},{"title":"Mirage","target":"https://github.com/mirukana/mirage","line":62},{"title":"Scylla","target":"https://github.com/DanilaFe/Scylla","line":63},{"title":"app","target":"https://scylla.danilafe.com/","line":63},{"title":"Rambox","target":"https://github.com/ramboxapp/community-edition","line":64},{"title":"site","target":"https://rambox.app/","line":64},{"title":"matrix-appservice-bridge","target":"https://github.com/matrix-org/matrix-appservice-bridge","line":70},{"title":"matrix-appservice-node","target":"https://github.com/matrix-org/matrix-appservice-node","line":71},{"title":"matrix-bot-sdk","target":"https://github.com/turt2live/matrix-bot-sdk","line":72},{"title":"matrix-js-sdk","target":"https://github.com/matrix-org/matrix-js-sdk","line":73},{"title":"matrix-react-sdk","target":"https://github.com/matrix-org/matrix-react-sdk","line":74},{"title":"smallbot-matrix","target":"https://github.com/enimatek-nl/small-bot-matrix","line":75},{"title":"botkit-matrix","target":"https://github.com/frankgerhardt/botkit-matrix","line":76},{"title":"mautrix-python","target":"https://github.com/mautrix/python","line":80},{"title":"simple-matrix-bot-lib","target":"https://github.com/KrazyKirby99999/simple-matrix-bot-lib","line":81},{"title":"µtrix","target":"https://edugit.org/Teckids/hacknfun/libs/mytrix","line":82},{"title":"matrix-python-sdk","target":"https://github.com/matrix-org/matrix-python-sdk","line":83},{"title":"dial-phone","target":"https://github.com/mtorials/dial-phone","line":87},{"title":"matrix-kt","target":"https://github.com/Dominaezzz/matrix-kt","line":88},{"title":"Trixnity","target":"https://gitlab.com/benkuly/trixnity","line":89},{"title":"matrix-rust-sdk","target":"https://github.com/matrix-org/matrix-rust-sdk","line":93},{"title":"ruma","target":"https://github.com/ruma/ruma","line":94},{"title":"site","target":"https://www.ruma.io/","line":94},{"title":"libkazb","target":"https://lily-is.land/kazv/libkazv","line":98},{"title":"libQuotient","target":"https://github.com/quotient-im/libQuotient","line":99},{"title":"Matrix .NET SDK","target":"https://github.com/baking-bad/matrix-dotnet-sdk","line":103},{"title":"MatrixAPI","target":"https://github.com/VRocker/MatrixAPI","line":104},{"title":"mautrix-go","target":"https://github.com/mautrix/go","line":108},{"title":"site","target":"https://maunium.net/go/mautrix/","line":108},{"title":"gomatrix","target":"https://github.com/matrix-org/gomatrix","line":109},{"title":"dart-matrix-sdk","target":"https://gitlab.com/famedly/company/frontend/famedlysdk","line":113},{"title":"Matrix::Client","target":"https://github.com/matiaslina/Matrix-Client","line":114},{"title":"Matrix-ClientServer-API-java","target":"https://github.com/JojiiOfficial/Matrix-ClientServer-API-java","line":115},{"title":"matrix-ios-sdk","target":"https://github.com/matrix-org/matrix-ios-sdk","line":116},{"title":"matrix-nio","target":"https://github.com/poljar/matrix-nio","line":117},{"title":"site","target":"https://matrix-nio.readthedocs.io/en/latest/","line":117},{"title":"ruby-matrix-sdk","target":"https://github.com/ananace/ruby-matrix-sdk","line":118},{"title":"haxe-matrix-im","target":"https://notabug.org/Tamaimo/haxe-matrix-im","line":119},{"title":"site","target":"https://cactus.chat/","line":123},{"title":"Cactus Comments","target":"https://gitlab.com/cactus-comments","line":123},{"title":"Issue","target":"https://codeberg.org/yarmo/delightful-matrix/issues","line":127},{"title":"`@yarmo`","target":"https://codeberg.org/yarmo","line":129},{"title":"add yourself","target":"https://codeberg.org/teaserbot-labs/delightful/src/branch/master/delight-us.md#attribution-of-contributors","line":133},{"title":"delightful contributors","target":"https://codeberg.org/yarmo/delightful-matrix/src/branch/main/delightful-contributors.md","line":133},{"title":"![CC0 Public domain. This work is free of known copyright restrictions.","target":"https://i.creativecommons.org/p/mark/1.0/88x31.png","line":137}],"metadata":{"page-title":"yarmo/delightful-matrix: A curated list of delightful Matrix resources, implementations and clients. - delightful-matrix - Codeberg.org","url":"https://codeberg.org/yarmo/delightful-matrix","date":"2023-04-18 22:39:48"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_05_Creating_user_accounts__Dendrite_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_05_Creating_user_accounts__Dendrite_md.ajson deleted file mode 100644 index 1fb1210..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_05_Creating_user_accounts__Dendrite_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/05/Creating user accounts Dendrite.md": {"path":"000-inbox/clippings/2023/05/Creating user accounts Dendrite.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"38sh3s","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1683340555000,"size":2401,"at":1766986878359,"hash":"38sh3s"},"blocks":{"#---frontmatter---":[1,5],"##[](https://matrix-org.github.io/dendrite/administration/createusers#creating-user-accounts)Creating user accounts":[6,9],"##[](https://matrix-org.github.io/dendrite/administration/createusers#creating-user-accounts)Creating user accounts#{1}":[8,9],"##[](https://matrix-org.github.io/dendrite/administration/createusers#from-the-command-line)From the command line":[10,58],"##[](https://matrix-org.github.io/dendrite/administration/createusers#from-the-command-line)From the command line#{1}":[12,58]},"outlinks":[{"title":"Synapse documentation","target":"https://matrix-org.github.io/synapse/latest/admin_api/register_api.html","line":56}],"metadata":{"page-title":"Creating user accounts | Dendrite","url":"https://matrix-org.github.io/dendrite/administration/createusers","date":"2023-05-06 10:35:52"},"task_lines":[],"tasks":{},"codeblock_ranges":[[18,20],[26,28],[32,34],[38,40],[42,44],[50,54]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_05_How_to_Set_Up_a_Mail_Server_with_PostfixAdmin_on_Debian_11_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_05_How_to_Set_Up_a_Mail_Server_with_PostfixAdmin_on_Debian_11_md.ajson deleted file mode 100644 index d44efb2..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_05_How_to_Set_Up_a_Mail_Server_with_PostfixAdmin_on_Debian_11_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/05/How to Set Up a Mail Server with PostfixAdmin on Debian 11.md": {"path":"000-inbox/clippings/2023/05/How to Set Up a Mail Server with PostfixAdmin on Debian 11.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ck8k0b","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1685317835000,"size":9457,"at":1766986878359,"hash":"1ck8k0b"},"blocks":{"#---frontmatter---":[1,5],"###On this page":[6,20],"###On this page#{1}":[8,8],"###On this page#{2}":[9,9],"###On this page#{3}":[10,10],"###On this page#{4}":[11,11],"###On this page#{5}":[12,12],"###On this page#{6}":[13,13],"###On this page#{7}":[14,14],"###On this page#{8}":[15,16],"###On this page#{9}":[17,20],"##Prerequisites":[21,26],"##Prerequisites#{1}":[23,23],"##Prerequisites#{2}":[24,24],"##Prerequisites#{3}":[25,26],"##Getting Started":[27,42],"##Getting Started#{1}":[29,42],"##Install Nginx, MariaDB and PHP":[43,50],"##Install Nginx, MariaDB and PHP#{1}":[45,50],"##Create a PostfixAdmin Database":[51,68],"##Create a PostfixAdmin Database#{1}":[53,68],"##Install PostfixAdmin":[69,163],"##Install PostfixAdmin#{1}":[71,163],"##Configure Nginx for PostfixAdmin":[164,226],"##Configure Nginx for PostfixAdmin#{1}":[166,226],"##Access PostfixAdmin":[227,236],"##Access PostfixAdmin#{1}":[229,236],"##Conclusion":[237,239],"##Conclusion#{1}":[239,239]},"outlinks":[{"title":"Prerequisites","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#prerequisites","line":8},{"title":"Getting Started","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#getting-started","line":9},{"title":"Install Nginx, MariaDB and PHP","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#install-nginx-mariadb-and-php","line":10},{"title":"Create a PostfixAdmin Database","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#create-a-postfixadmin-database","line":11},{"title":"Install PostfixAdmin","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#install-postfixadmin","line":12},{"title":"Configure Nginx for PostfixAdmin","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#configure-nginx-for-postfixadmin","line":13},{"title":"Access PostfixAdmin","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#access-postfixadmin","line":14},{"title":"Conclusion","target":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/#conclusion","line":15},{"title":"![PostfixAdmin","target":"https://www.howtoforge.com/images/how_to_set_up_a_mail_server_with_postfixadmin_on_debian_11/p1.png?ezimgfmt=rs:750x425/rscb10/ng:webp/ngcb9","line":231},{"title":"![PostfixAdmin dashboard","target":"https://www.howtoforge.com/images/how_to_set_up_a_mail_server_with_postfixadmin_on_debian_11/p2.png?ezimgfmt=rs:750x390/rscb10/ng:webp/ngcb9","line":235}],"metadata":{"page-title":"How to Set Up a Mail Server with PostfixAdmin on Debian 11","url":"https://www.howtoforge.com/how-to-set-up-a-mail-server-with-postfixadmin-on-debian-11/","date":"2023-05-29 07:50:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_05_N26开户教程__Mutou_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_05_N26开户教程__Mutou_md.ajson deleted file mode 100644 index 732ae62..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_05_N26开户教程__Mutou_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/05/N26开户教程 Mutou.md": {"path":"000-inbox/clippings/2023/05/N26开户教程 Mutou.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"13hzg2a","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1685439923000,"size":2650,"at":1766986878359,"hash":"13hzg2a"},"blocks":{"#---frontmatter---":[1,5],"##一、下载N26 app":[6,15],"##一、下载N26 app#{1}":[8,15],"##二、视频验证":[16,19],"##二、视频验证#{1}":[18,19],"##1.开户确认":[20,59],"##1.开户确认#{1}":[22,59],"##2 验证护照":[60,83],"##2 验证护照#{1}":[62,83],"##3.合上护照回答个人信息":[84,103],"##3.合上护照回答个人信息#{1}":[86,103],"##4\\. 填写短信验证码":[104,106],"##4\\. 填写短信验证码#{1}":[106,106]},"outlinks":[{"title":"注册地址","target":"https://n26.com/r/haihuaw4351","line":8},{"title":"直接选NO","target":"https://files.mutou.men/2023/05/7321bd654e5f4f77731bea5178711471.png","line":10,"embedded":true}],"metadata":{"page-title":"N26开户教程 | Mutou","url":"https://www.mutou.men/posts/n26%E5%BC%80%E6%88%B7%E6%95%99%E7%A8%8B/","date":"2023-05-30 17:45:21"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_05_PostfixAmavisNew_-_Community_Help_Wiki_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_05_PostfixAmavisNew_-_Community_Help_Wiki_md.ajson deleted file mode 100644 index 08340f2..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_05_PostfixAmavisNew_-_Community_Help_Wiki_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/05/PostfixAmavisNew - Community Help Wiki.md": {"path":"000-inbox/clippings/2023/05/PostfixAmavisNew - Community Help Wiki.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vk1tgf","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1684978951000,"size":10611,"at":1766986878359,"hash":"vk1tgf"},"blocks":{"#---frontmatter---":[1,5],"##Introduction":[6,23],"##Introduction#{1}":[8,9],"##Introduction#{2}":[10,10],"##Introduction#{3}":[11,11],"##Introduction#{4}":[12,12],"##Introduction#{5}":[13,17],"##Introduction#{6}":[18,18],"##Introduction#{7}":[19,19],"##Introduction#{8}":[20,21],"##Introduction#{9}":[22,23],"##Prerequisite":[24,27],"##Prerequisite#{1}":[26,27],"##Installation":[28,43],"##Installation#{1}":[30,43],"##Configuration":[44,45],"##Clamav":[46,56],"##Clamav#{1}":[48,56],"##Spamassassin":[57,69],"##Spamassassin#{1}":[59,69],"##Amavis":[70,94],"##Amavis#{1}":[72,94],"##Postfix integration":[95,156],"##Postfix integration#{1}":[97,156],"##Test":[157,178],"##Test#{1}":[159,178],"##Troubleshooting":[179,209],"##Troubleshooting#{1}":[181,209],"##Amavis Performance":[210,217],"##Amavis Performance#{1}":[212,217],"#------------ Do not modify anything below this line -------------":[218,244],"#------------ Do not modify anything below this line -------------#{1}":[220,244]},"outlinks":[{"title":"Introduction","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Introduction","line":10},{"title":"Prerequisite","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Prerequisite","line":11},{"title":"Installation","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Installation","line":12},{"title":"Configuration","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Configuration","line":13},{"title":"Clamav","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Clamav","line":14},{"title":"Spamassassin","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Spamassassin","line":15},{"title":"Amavis","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Amavis","line":16},{"title":"Postfix integration","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Postfix_integration","line":17},{"title":"Test","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Test","line":18},{"title":"Troubleshooting","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Troubleshooting","line":19},{"title":"Amavis Performance","target":"https://help.ubuntu.com/community/PostfixAmavisNew#Amavis_Performance","line":20},{"title":"Postfix","target":"https://help.ubuntu.com/community/Postfix","line":26},{"title":"InstallingSoftware","target":"https://help.ubuntu.com/community/InstallingSoftware","line":30},{"title":"rather high memory","target":"http://unix.stackexchange.com/questions/114709/how-to-reduce-clamav-memory-usage","line":55},{"title":"\"README.postfix from amavisd-new\"","target":"http://www.ijs.si/software/amavisd/README.postfix.txt","line":149},{"title":"\"D.J.Fan\"","target":"http://www200.pair.com/mecham/spam/spamfilter20060701.html","line":149},{"title":"here","target":"http://www.ijs.si/software/amavisd/#faq-spam","line":185},{"title":"http://www.ijs.si/software/amavisd/amavisd-new-magdeburg-20050519.pdf","target":"http://www.ijs.si/software/amavisd/amavisd-new-magdeburg-20050519.pdf","line":239}],"metadata":{"page-title":"PostfixAmavisNew - Community Help Wiki","url":"https://help.ubuntu.com/community/PostfixAmavisNew","date":"2023-05-25 09:42:29","tags":["#------------"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_05_Setting_Up_Amavis_and_ClamAV_on_Ubuntu_Mail_Server_-_LinuxBabe_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_05_Setting_Up_Amavis_and_ClamAV_on_Ubuntu_Mail_Server_-_LinuxBabe_md.ajson deleted file mode 100644 index 4ebcd0e..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_05_Setting_Up_Amavis_and_ClamAV_on_Ubuntu_Mail_Server_-_LinuxBabe_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/05/Setting Up Amavis and ClamAV on Ubuntu Mail Server - LinuxBabe.md": {"path":"000-inbox/clippings/2023/05/Setting Up Amavis and ClamAV on Ubuntu Mail Server - LinuxBabe.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mzyazz","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1684983402000,"size":24331,"at":1766986878359,"hash":"1mzyazz"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##{1}":[14,14],"##{2}":[15,15],"##{3}":[16,17],"##Prerequisites":[18,23],"##Prerequisites#{1}":[20,23],"##Step 1: Install Amavis on Ubuntu":[24,86],"##Step 1: Install Amavis on Ubuntu#{1}":[26,86],"#$myhostname = \"mail.example.com\";":[87,224],"#$myhostname = \"mail.example.com\";#{1}":[89,96],"#$myhostname = \"mail.example.com\";#Step 2: Integrate Postfix SMTP Server With Amavis":[97,158],"#$myhostname = \"mail.example.com\";#Step 2: Integrate Postfix SMTP Server With Amavis#{1}":[99,158],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV":[159,224],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{1}":[161,168],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{2}":[169,169],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{3}":[170,171],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{4}":[172,189],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{5}":[190,190],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{6}":[191,191],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{7}":[192,193],"#$myhostname = \"mail.example.com\";#Step 3: Integrate Amavis with ClamAV#{8}":[194,224],"#@bypass\\_virus\\_checks\\_maps = (":[225,225],"#\\\\%bypass\\_virus\\_checks, \\\\@bypass\\_virus\\_checks\\_acl, \\\\$bypass\\_virus\\_checks\\_re);":[226,272],"#\\\\%bypass\\_virus\\_checks, \\\\@bypass\\_virus\\_checks\\_acl, \\\\$bypass\\_virus\\_checks\\_re);#{1}":[228,252],"#\\\\%bypass\\_virus\\_checks, \\\\@bypass\\_virus\\_checks\\_acl, \\\\$bypass\\_virus\\_checks\\_re);#Step 4: Use A Dedicated Port for Email Submissions":[253,272],"#\\\\%bypass\\_virus\\_checks, \\\\@bypass\\_virus\\_checks\\_acl, \\\\$bypass\\_virus\\_checks\\_re);#Step 4: Use A Dedicated Port for Email Submissions#{1}":[255,272],"#notify administrator of locally originating malware":[273,277],"#notify administrator of locally originating malware#{1}":[274,277],"#force MTA conversion to 7-bit (e.g. before DKIM signing)":[278,334],"#force MTA conversion to 7-bit (e.g. before DKIM signing)#{1}":[279,316],"#force MTA conversion to 7-bit (e.g. before DKIM signing)#Step 5: Receive Virus Alert":[317,320],"#force MTA conversion to 7-bit (e.g. before DKIM signing)#Step 5: Receive Virus Alert#{1}":[319,320],"#force MTA conversion to 7-bit (e.g. before DKIM signing)#Spam Filtering in Amavis":[321,334],"#force MTA conversion to 7-bit (e.g. before DKIM signing)#Spam Filtering in Amavis#{1}":[323,334],"#@bypass\\_spam\\_checks\\_maps = (":[335,335],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);":[336,529],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#{1}":[338,341],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#DKIM in Amavis":[342,359],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#DKIM in Amavis#{1}":[344,359],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Improving Amavis Performance":[360,406],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Improving Amavis Performance#{1}":[362,406],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Skip Virus-Checking for Your Newsletters":[407,440],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Skip Virus-Checking for Your Newsletters#{1}":[409,440],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Troubleshooting":[441,464],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Troubleshooting#{1}":[443,464],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Using ClamAV to Scan Virus for the Linux File System":[465,526],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Using ClamAV to Scan Virus for the Linux File System#{1}":[467,526],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Wrapping Up":[527,529],"#\\\\%bypass\\_spam\\_checks, \\\\@bypass\\_spam\\_checks\\_acl, \\\\$bypass\\_spam\\_checks\\_re);#Wrapping Up#{1}":[529,529]},"outlinks":[{"title":"Set Up Amavis and ClamAV on Ubuntu Mail Server","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/Set-Up-Amavis-and-ClamAV-on-Ubuntu-Mail-Server.jpg","line":10,"embedded":true},{"title":"Modoboa","target":"https://www.linuxbabe.com/mail-server/email-server-ubuntu-18-04-modoboa","line":20},{"title":"part 2 (Dovecot IMAP server)","target":"https://www.linuxbabe.com/mail-server/secure-email-server-ubuntu-postfix-dovecot","line":20},{"title":"part 1 (Postfix SMTP server)","target":"https://www.linuxbabe.com/mail-server/setup-basic-postfix-mail-sever-ubuntu","line":20},{"title":"iRedMail","target":"https://www.linuxbabe.com/mail-server/ubuntu-20-04-iredmail-server-installation","line":20},{"title":"amavis listening port","target":"https://www.linuxbabe.com/wp-content/uploads/2020/01/amavis-listening-port.png","line":59,"embedded":true},{"title":"clamav-freshclam-ubuntu-20.04","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/clamav-freshclam-ubuntu-20.04.png","line":176,"embedded":true},{"title":"ClamAV virus database updater","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/ClamAV-virus-database-updater.png","line":184,"embedded":true},{"title":"clamav-daemon ubuntu 20.04","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/clamav-daemon-ubuntu-20.04.png","line":200,"embedded":true},{"title":"clamav-daemon.service ubuntu 20.04","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/clamav-daemon.service-ubuntu-20.04.png","line":215,"embedded":true},{"title":"ubuntu amavis turn on virus checking","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/ubuntu-amavis-turn-on-virus-checking.png","line":228,"embedded":true},{"title":"ubuntu postfix submissions amavis port 10026","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/ubuntu-postfix-submissions-amavis-port-10026.png","line":303,"embedded":true},{"title":"SpamAssassin tutorial","target":"https://www.linuxbabe.com/mail-server/block-email-spam-check-header-body-with-postfix-spamassassin","line":323},{"title":"OpenDMARC","target":"https://www.linuxbabe.com/mail-server/opendmarc-postfix-ubuntu","line":344},{"title":"OpenDKIM","target":"https://www.linuxbabe.com/mail-server/setting-up-dkim-and-spf","line":344},{"title":"sudo amavisd-nanny","target":"https://www.linuxbabe.com/wp-content/uploads/2020/08/sudo-amavisd-nanny.png","line":403,"embedded":true},{"title":"use your mail server to send newsletters","target":"https://www.linuxbabe.com/ubuntu/install-mautic-self-hosted-email-marketing-ubuntu-20-04","line":409},{"title":"subscribe to our free newsletter","target":"https://newsletter.linuxbabe.com/subscription/wkeY5d6pg","line":529}],"metadata":{"page-title":"Setting Up Amavis and ClamAV on Ubuntu Mail Server - LinuxBabe","url":"https://www.linuxbabe.com/mail-server/postfix-amavis-spamassassin-clamav-ubuntu","date":"2023-05-25 10:56:40"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_06_50_AIChatGPT_Prompts_for_Fitness_Professionals_-_IDEA_Health_&_Fitness_Association_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_06_50_AIChatGPT_Prompts_for_Fitness_Professionals_-_IDEA_Health_&_Fitness_Association_md.ajson deleted file mode 100644 index bb9f7d5..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_06_50_AIChatGPT_Prompts_for_Fitness_Professionals_-_IDEA_Health_&_Fitness_Association_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/06/50 AIChatGPT Prompts for Fitness Professionals - IDEA Health & Fitness Association.md": {"path":"000-inbox/clippings/2023/06/50 AIChatGPT Prompts for Fitness Professionals - IDEA Health & Fitness Association.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vjtbok","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1687937022257,"size":18606,"at":1766986878359,"hash":"vjtbok"},"blocks":{"#---frontmatter---":[1,5],"#":[7,28],"##What is a ChatGPT Prompt?":[29,34],"##What is a ChatGPT Prompt?#{1}":[31,34],"##50 Al/ChatGPT Prompts":[35,42],"##50 Al/ChatGPT Prompts#{1}":[37,42],"##Al/ChatGPT Prompts for Personal Trainers":[43,74],"##Al/ChatGPT Prompts for Personal Trainers#{1}":[45,45],"##Al/ChatGPT Prompts for Personal Trainers#{2}":[46,46],"##Al/ChatGPT Prompts for Personal Trainers#{3}":[47,47],"##Al/ChatGPT Prompts for Personal Trainers#{4}":[48,48],"##Al/ChatGPT Prompts for Personal Trainers#{5}":[49,49],"##Al/ChatGPT Prompts for Personal Trainers#{6}":[50,50],"##Al/ChatGPT Prompts for Personal Trainers#{7}":[51,51],"##Al/ChatGPT Prompts for Personal Trainers#{8}":[52,52],"##Al/ChatGPT Prompts for Personal Trainers#{9}":[53,53],"##Al/ChatGPT Prompts for Personal Trainers#{10}":[54,54],"##Al/ChatGPT Prompts for Personal Trainers#{11}":[55,55],"##Al/ChatGPT Prompts for Personal Trainers#{12}":[56,56],"##Al/ChatGPT Prompts for Personal Trainers#{13}":[57,57],"##Al/ChatGPT Prompts for Personal Trainers#{14}":[58,58],"##Al/ChatGPT Prompts for Personal Trainers#{15}":[59,59],"##Al/ChatGPT Prompts for Personal Trainers#{16}":[60,60],"##Al/ChatGPT Prompts for Personal Trainers#{17}":[61,61],"##Al/ChatGPT Prompts for Personal Trainers#{18}":[62,62],"##Al/ChatGPT Prompts for Personal Trainers#{19}":[63,63],"##Al/ChatGPT Prompts for Personal Trainers#{20}":[64,64],"##Al/ChatGPT Prompts for Personal Trainers#{21}":[65,65],"##Al/ChatGPT Prompts for Personal Trainers#{22}":[66,66],"##Al/ChatGPT Prompts for Personal Trainers#{23}":[67,67],"##Al/ChatGPT Prompts for Personal Trainers#{24}":[68,68],"##Al/ChatGPT Prompts for Personal Trainers#{25}":[69,70],"##Al/ChatGPT Prompts for Personal Trainers#{26}":[71,74],"##Al/ChatGPT Prompts for Group Fitness Instructors":[75,107],"##Al/ChatGPT Prompts for Group Fitness Instructors#{1}":[77,77],"##Al/ChatGPT Prompts for Group Fitness Instructors#{2}":[78,78],"##Al/ChatGPT Prompts for Group Fitness Instructors#{3}":[79,79],"##Al/ChatGPT Prompts for Group Fitness Instructors#{4}":[80,80],"##Al/ChatGPT Prompts for Group Fitness Instructors#{5}":[81,81],"##Al/ChatGPT Prompts for Group Fitness Instructors#{6}":[82,82],"##Al/ChatGPT Prompts for Group Fitness Instructors#{7}":[83,83],"##Al/ChatGPT Prompts for Group Fitness Instructors#{8}":[84,84],"##Al/ChatGPT Prompts for Group Fitness Instructors#{9}":[85,85],"##Al/ChatGPT Prompts for Group Fitness Instructors#{10}":[86,86],"##Al/ChatGPT Prompts for Group Fitness Instructors#{11}":[87,87],"##Al/ChatGPT Prompts for Group Fitness Instructors#{12}":[88,88],"##Al/ChatGPT Prompts for Group Fitness Instructors#{13}":[89,89],"##Al/ChatGPT Prompts for Group Fitness Instructors#{14}":[90,90],"##Al/ChatGPT Prompts for Group Fitness Instructors#{15}":[91,91],"##Al/ChatGPT Prompts for Group Fitness Instructors#{16}":[92,92],"##Al/ChatGPT Prompts for Group Fitness Instructors#{17}":[93,93],"##Al/ChatGPT Prompts for Group Fitness Instructors#{18}":[94,94],"##Al/ChatGPT Prompts for Group Fitness Instructors#{19}":[95,95],"##Al/ChatGPT Prompts for Group Fitness Instructors#{20}":[96,96],"##Al/ChatGPT Prompts for Group Fitness Instructors#{21}":[97,97],"##Al/ChatGPT Prompts for Group Fitness Instructors#{22}":[98,98],"##Al/ChatGPT Prompts for Group Fitness Instructors#{23}":[99,99],"##Al/ChatGPT Prompts for Group Fitness Instructors#{24}":[100,100],"##Al/ChatGPT Prompts for Group Fitness Instructors#{25}":[101,102],"##Al/ChatGPT Prompts for Group Fitness Instructors#{26}":[103,107]},"outlinks":[{"title":"Artificial Intelligence","target":"https://en.wikipedia.org/wiki/Artificial_intelligence","line":11},{"title":"*Use IDEA’s educational library to further customize your programs and classes.*","target":"https://pro.ideafit.com/fitness-products?_gl=1*c4unvn*_gcl_aw*R0NMLjE2ODAxMDM3ODMuQ2owS0NRand3NC1oQmhDdEFSSXNBQzlnUjNhRFRlUXRJUE5rS2tlTlF1ajJZRWtHQ05rMzZPVERYV3REanFQZlBvRXJzNWZDcXh0SmdQQWFBako2RUFMd193Y0I.&","line":27},{"title":"free account","target":"https://chat.openai.com/","line":33},{"title":"See also: Can an AI App Help us Eat Better?","target":"https://www.ideafit.com/nutrition/can-an-ai-app-help-us-eat-better-fitgenie-wants-to-try/","line":71},{"title":"See also: Providing Great Customer Service in the Digital Age.","target":"https://www.ideafit.com/personal-training/providing-excellent-customer-service-in-the-digital-age/","line":103},{"title":"continuing education credits","target":"https://pro.ideafit.com/fitness-products?_gl=1*3tmdon*_gcl_aw*R0NMLjE2ODAxMDM3ODMuQ2owS0NRand3NC1oQmhDdEFSSXNBQzlnUjNhRFRlUXRJUE5rS2tlTlF1ajJZRWtHQ05rMzZPVERYV3REanFQZlBvRXJzNWZDcXh0SmdQQWFBako2RUFMd193Y0I.&","line":105},{"title":"Terms & Conditions","target":"https://pro.ideafit.com/terms-conditions? \"https://pro.ideafit.com/terms-conditions\"","line":107},{"title":"Privacy Policy","target":"https://www.ideafit.com/privacy-policy/ \"https://www.ideafit.com/privacy-policy/\"","line":107}],"metadata":{"page-title":"50 AI/ChatGPT Prompts for Fitness Professionals - IDEA Health & Fitness Association","url":"https://www.ideafit.com/group-fitness/50-ai-chatgpt-prompts-for-fitness-professionals/","date":"2023-06-28 15:23:38"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_06_8_Best_ChatGPT_Uses_for_Cyclists_Next_Level_Cycling_AI_Assistant_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_06_8_Best_ChatGPT_Uses_for_Cyclists_Next_Level_Cycling_AI_Assistant_md.ajson deleted file mode 100644 index 4a835cc..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_06_8_Best_ChatGPT_Uses_for_Cyclists_Next_Level_Cycling_AI_Assistant_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/06/8 Best ChatGPT Uses for Cyclists Next Level Cycling AI Assistant.md": {"path":"000-inbox/clippings/2023/06/8 Best ChatGPT Uses for Cyclists Next Level Cycling AI Assistant.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"kyfju6","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1687937252118,"size":16491,"at":1766986878359,"hash":"kyfju6"},"blocks":{"#---frontmatter---":[1,5],"#":[6,19],"##What Is ChatGPT and How Does It Work?":[20,65],"##What Is ChatGPT and How Does It Work?#{1}":[22,33],"##What Is ChatGPT and How Does It Work?#What Are the Practical Uses of ChatGPT?":[34,43],"##What Is ChatGPT and How Does It Work?#What Are the Practical Uses of ChatGPT?#{1}":[36,43],"##What Is ChatGPT and How Does It Work?#How to Use ChatGPT: Formulating and Refining Prompts":[44,53],"##What Is ChatGPT and How Does It Work?#How to Use ChatGPT: Formulating and Refining Prompts#{1}":[46,53],"##What Is ChatGPT and How Does It Work?#Chat GPT’s Limitations":[54,65],"##What Is ChatGPT and How Does It Work?#Chat GPT’s Limitations#{1}":[56,65],"##8 Best Ways Cyclists Can Use ChatGPT":[66,193],"##8 Best Ways Cyclists Can Use ChatGPT#{1}":[68,75],"##8 Best Ways Cyclists Can Use ChatGPT#1\\. ChatGPT Can Create Cycling Training Programs":[76,99],"##8 Best Ways Cyclists Can Use ChatGPT#1\\. ChatGPT Can Create Cycling Training Programs#{1}":[78,95],"##8 Best Ways Cyclists Can Use ChatGPT#1\\. ChatGPT Can Create Cycling Training Programs#{2}":[96,96],"##8 Best Ways Cyclists Can Use ChatGPT#1\\. ChatGPT Can Create Cycling Training Programs#{3}":[97,97],"##8 Best Ways Cyclists Can Use ChatGPT#1\\. ChatGPT Can Create Cycling Training Programs#{4}":[98,99],"##8 Best Ways Cyclists Can Use ChatGPT#2\\. ChatGPT Can Review and Compare Bikes and Cycling Gear":[100,115],"##8 Best Ways Cyclists Can Use ChatGPT#2\\. ChatGPT Can Review and Compare Bikes and Cycling Gear#{1}":[102,115],"##8 Best Ways Cyclists Can Use ChatGPT#3\\. Create a Cycling Nutrition Plan with ChatGPT":[116,131],"##8 Best Ways Cyclists Can Use ChatGPT#3\\. Create a Cycling Nutrition Plan with ChatGPT#{1}":[118,131],"##8 Best Ways Cyclists Can Use ChatGPT#4\\. Create a Bike Touring Travel Plan with Chat GPT":[132,143],"##8 Best Ways Cyclists Can Use ChatGPT#4\\. Create a Bike Touring Travel Plan with Chat GPT#{1}":[134,143],"##8 Best Ways Cyclists Can Use ChatGPT#5\\. Get Instructions for Maintenance, Repairs, and Adjustments":[144,153],"##8 Best Ways Cyclists Can Use ChatGPT#5\\. Get Instructions for Maintenance, Repairs, and Adjustments#{1}":[146,153],"##8 Best Ways Cyclists Can Use ChatGPT#6\\. Get Injury Recovery Advice":[154,167],"##8 Best Ways Cyclists Can Use ChatGPT#6\\. Get Injury Recovery Advice#{1}":[156,167],"##8 Best Ways Cyclists Can Use ChatGPT#7\\. Connect with Other Cyclists in Your Area":[168,179],"##8 Best Ways Cyclists Can Use ChatGPT#7\\. Connect with Other Cyclists in Your Area#{1}":[170,179],"##8 Best Ways Cyclists Can Use ChatGPT#8\\. Get Cycling Safety Tips":[180,193],"##8 Best Ways Cyclists Can Use ChatGPT#8\\. Get Cycling Safety Tips#{1}":[182,193],"##In Conclusion":[194,206],"##In Conclusion#{1}":[196,206]},"outlinks":[{"title":"Read More...","target":"https://www.bicycle-guider.com/about-and-contact/#affiliate","line":6},{"title":"![chatgpt uses for cycling weather forecast","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/chatgpt-weather-1-1.jpg","line":22},{"title":"OpenAI’s website","target":"https://chat.openai.com/","line":46},{"title":"cycling training plan","target":"https://www.bicycle-guider.com/cycling-advice/training-plans/","line":78},{"title":"![chatgpt cycling training program","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/gpt-training-plan.jpg","line":84},{"title":"![chatgpt use for cyclists to compare bikes","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/bike-comparison-2.jpg","line":106},{"title":"![screenshot of cycling nutrition plan generated by chatgpt","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/meal-plan-1-1024x697.jpg","line":122},{"title":"![chatgpt cycling meal plan","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/meal.jpg","line":128},{"title":"![cycling touring plan created by chatgpt","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/travel-itinerary.jpg","line":134},{"title":"changing a chain","target":"https://www.bicycle-guider.com/cycling-advice/bike-chain/","line":146},{"title":"bike maintenance","target":"https://www.bicycle-guider.com/cycling-advice/bike-maintenance/","line":146},{"title":"![screenshot of cycling advice generated with chatgpt","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/repair-and-maintenance.jpg","line":146},{"title":"![injury recovery advice from chatgpt","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/injury.jpg","line":156},{"title":"training too much","target":"https://www.bicycle-guider.com/cycling-advice/overtraining-in-cycling/","line":160},{"title":"![chatgpt used to find cycling clubs","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/group.jpg","line":170},{"title":"cycling safety and security tips","target":"https://www.bicycle-guider.com/cycling-advice/bicycle-safety/","line":182},{"title":"![cycling safety tips generated with chatgpt","target":"https://www.bicycle-guider.com/wp-content/uploads/2023/03/safety.jpg","line":190}],"metadata":{"page-title":"8 Best ChatGPT Uses for Cyclists: Next Level Cycling AI Assistant","url":"https://www.bicycle-guider.com/chat-gpt-uses-for-cyclists/","date":"2023-06-28 15:27:30"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_06_API_Design_Practice__A_practical_guide_to_API_QA_and_the…__by_TRGoodwill__API_Central__May,_2023__Medium_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_06_API_Design_Practice__A_practical_guide_to_API_QA_and_the…__by_TRGoodwill__API_Central__May,_2023__Medium_md.ajson deleted file mode 100644 index a6a0cb3..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_06_API_Design_Practice__A_practical_guide_to_API_QA_and_the…__by_TRGoodwill__API_Central__May,_2023__Medium_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/06/API Design Practice. A practical guide to API QA and the… by TRGoodwill API Central May, 2023 Medium.md": {"path":"000-inbox/clippings/2023/06/API Design Practice. A practical guide to API QA and the… by TRGoodwill API Central May, 2023 Medium.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"csq4z6","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1685692327665,"size":17334,"at":1766986878359,"hash":"csq4z6"},"blocks":{"#---frontmatter---":[1,5],"##API Design Practice":[6,7],"##A practical guide to API QA and the design of stable, coherent and composable business resource APIs":[8,23],"##A practical guide to API QA and the design of stable, coherent and composable business resource APIs#{1}":[10,23],"##Introduction":[24,27],"##Introduction#{1}":[26,27],"##API Design Goals":[28,35],"##API Design Goals#{1}":[30,35],"##Align Resource APIs with your Business Domain":[36,39],"##Align Resource APIs with your Business Domain#{1}":[38,39],"##Design for Composability":[40,47],"##Design for Composability#{1}":[42,47],"##Early and Continuous Stakeholder Engagement":[48,62],"##Early and Continuous Stakeholder Engagement#{1}":[50,53],"##Early and Continuous Stakeholder Engagement#{2}":[54,54],"##Early and Continuous Stakeholder Engagement#{3}":[55,55],"##Early and Continuous Stakeholder Engagement#{4}":[56,56],"##Early and Continuous Stakeholder Engagement#{5}":[57,57],"##Early and Continuous Stakeholder Engagement#{6}":[58,58],"##Early and Continuous Stakeholder Engagement#{7}":[59,60],"##Early and Continuous Stakeholder Engagement#{8}":[61,62],"##Plan the process":[63,66],"##Plan the process#{1}":[65,66],"##Remember that the process is iterative":[67,70],"##Remember that the process is iterative#{1}":[69,70],"##Preparation":[71,78],"##Preparation#{1}":[73,78],"##1\\. Conduct Design Workshops":[79,97],"##1\\. Conduct Design Workshops#{1}":[81,88],"##1\\. Conduct Design Workshops#{2}":[89,89],"##1\\. Conduct Design Workshops#{3}":[90,90],"##1\\. Conduct Design Workshops#{4}":[91,91],"##1\\. Conduct Design Workshops#{5}":[92,93],"##1\\. Conduct Design Workshops#{6}":[94,97],"##2\\. Model the Data & Continuously Validate":[98,111],"##2\\. Model the Data & Continuously Validate#{1}":[100,111],"##3\\. Generate and Refine your API Specifications":[112,117],"##3\\. Generate and Refine your API Specifications#{1}":[114,117],"##Validation and Refinement of your API Specification":[118,127],"##Validation and Refinement of your API Specification#{1}":[120,127],"##Model Driven, API-First Development":[128,139],"##Model Driven, API-First Development#{1}":[130,139],"##Legacy and Proprietary COTS/SaaS APIs":[140,147],"##Legacy and Proprietary COTS/SaaS APIs#{1}":[142,143],"##Legacy and Proprietary COTS/SaaS APIs#{2}":[144,144],"##Legacy and Proprietary COTS/SaaS APIs#{3}":[145,145],"##Legacy and Proprietary COTS/SaaS APIs#{4}":[146,147],"##API Design Tooling":[148,149],"##Design Workshop Tools":[150,155],"##Design Workshop Tools#{1}":[152,155],"##Domain Data Modelling & Model Driven Design tooling":[156,174],"##Domain Data Modelling & Model Driven Design tooling#{1}":[158,167],"##Domain Data Modelling & Model Driven Design tooling#{2}":[168,168],"##Domain Data Modelling & Model Driven Design tooling#{3}":[169,169],"##Domain Data Modelling & Model Driven Design tooling#{4}":[170,170],"##Domain Data Modelling & Model Driven Design tooling#{5}":[171,171],"##Domain Data Modelling & Model Driven Design tooling#{6}":[172,172],"##Domain Data Modelling & Model Driven Design tooling#{7}":[173,174],"##API Specification Technical Validation Tooling":[175,183],"##API Specification Technical Validation Tooling#{1}":[177,178],"##API Specification Technical Validation Tooling#{2}":[179,179],"##API Specification Technical Validation Tooling#{3}":[180,180],"##API Specification Technical Validation Tooling#{4}":[181,181],"##API Specification Technical Validation Tooling#{5}":[182,183],"##Code Generation Tools":[184,191],"##Code Generation Tools#{1}":[186,187],"##Code Generation Tools#{2}":[188,188],"##Code Generation Tools#{3}":[189,189],"##Code Generation Tools#{4}":[190,191],"##Test Generation":[192,197],"##Test Generation#{1}":[194,197],"##Wrap-up":[198,202],"##Wrap-up#{1}":[200,202]},"outlinks":[{"title":"\n\n![TRGoodwill","target":"https://miro.medium.com/v2/resize:fill:88:88/1*6Q4eKm3wVU3RGBzw3WMy4g.jpeg","line":10},{"title":"\n\n![API Central","target":"https://miro.medium.com/v2/resize:fill:48:48/1*WZyu5LNOiNeYH9wNC9YCUw.png","line":16},{"title":"Fowler, M 2014, BoundedContext","target":"https://martinfowler.com/bliki/BoundedContext.html","line":34},{"title":"*Ubiquitous Language*","target":"https://martinfowler.com/bliki/UbiquitousLanguage.html","line":34},{"title":"modeled as sub-resources","target":"https://medium.com/@trgoodwill/api-design-pattern-for-business-resource-apis-6f25afd2b2df","line":46},{"title":"API design standards","target":"https://medium.com/api-center/writing-api-design-standards-84cb7cbb3fd7","line":73},{"title":"Event Storming","target":"https://www.eventstorming.com/","line":81},{"title":"Miro Event Storming Template","target":"https://miro.com/miroverse/event-storming/","line":94},{"title":"Enterprise Naming Conventions","target":"https://medium.com/api-center/api-bites-payload-conventions-76ffde7f5eb2","line":100},{"title":"REST Modelling Guidance","target":"https://medium.com/@trgoodwill/api-design-pattern-for-business-resource-apis-6f25afd2b2df","line":108},{"title":"Enterprise API Path Conventions","target":"https://medium.com/api-center/api-bites-7373b2127ed1","line":108},{"title":"HTTP Request and Response Protocols","target":"https://medium.com/api-center/api-bites-request-and-response-protocols-1f3a4f34cecf","line":108},{"title":"***major version increments***","target":"https://medium.com/api-center/api-bites-1af949efdd1b","line":116},{"title":"Spectral OpenAPI rules","target":"https://github.com/stoplightio/spectral/blob/develop/docs/reference/openapi-rules.md","line":124},{"title":"Event Storming template for Mural","target":"https://app.mural.co/template/15ae8c65-6f71-44bf-bb6f-7db5d166de29/2e2cb128-5afb-450c-9a32-05db14b57f60","line":152},{"title":"Event Storming","target":"https://docs.firstdecode.com/architecture/domain-driven-design/event-storming/","line":152},{"title":"Judith Birmoser’s Event Storming template","target":"https://miro.com/miroverse/event-storming/","line":152},{"title":"Jargon","target":"https://jargon.sh/","line":162},{"title":"Jargon Domain Data Modelling Platform","target":"https://jargon.sh/","line":168},{"title":"Stoplight Studio Enterprise","target":"https://stoplight.io/enterprise","line":169},{"title":"Visual Paradigm","target":"https://www.visual-paradigm.com/solution/rest-api-design-tool/","line":170},{"title":"Mendix Low-Code Platform","target":"https://docs.mendix.com/refguide/domain-model/","line":171},{"title":"Hackolade Studio","target":"https://hackolade.com/help/OpenAPI.html","line":172},{"title":"OpenAPI plugin","target":"https://inteca.com/enterprise-architect-plugins/","line":173},{"title":"Sparx EA","target":"https://www.sparxsystems.de/","line":173},{"title":"Spectral","target":"https://stoplight.io/open-source/spectral","line":177},{"title":"**Jargon platform**","target":"https://jargon.sh/","line":179},{"title":"**Visual Studio Code**","target":"https://code.visualstudio.com/","line":180},{"title":"‘Spectral’ extension by Stoplight","target":"https://marketplace.visualstudio.com/items?itemName=stoplight.spectral","line":180},{"title":"**Stoplight Studio**","target":"https://stoplight.io/studio","line":181},{"title":"OpenAPI Design & Documentation Tools | Swagger","target":"https://swagger.io/tools/","line":188},{"title":"https://github.com/OpenAPITools/openapi-generator","target":"https://github.com/OpenAPITools/openapi-generator","line":189},{"title":"https://openapi-generator.tech/docs/generators/","target":"https://openapi-generator.tech/docs/generators/","line":189},{"title":"https://openapi.tools/","target":"https://openapi.tools/","line":190},{"title":"Pact (pact.io)","target":"https://docs.pact.io/","line":196},{"title":"Tcases","target":"https://github.com/Cornutum/tcases/blob/master/tcases-openapi/README.md#tcases-for-openapi-from-rest-ful-to-test-ful","line":196},{"title":"karatelabs/karate","target":"https://github.com/karatelabs/karate","line":196},{"title":"REST-Assured","target":"https://github.com/rest-assured/rest-assured","line":196},{"title":"Insomnia API Dev Platform","target":"https://insomnia.rest/","line":196},{"title":"Katalon Quality Management","target":"https://katalon.com/","line":196},{"title":"Postman API Platform","target":"https://www.postman.com/","line":196},{"title":"SOAPUI","target":"https://www.soapui.org/docs/rest-testing/","line":196},{"title":"Thunder Client — Extension for VS Code","target":"https://www.thunderclient.com/","line":196}],"metadata":{"page-title":"API Design Practice. A practical guide to API QA and the… | by TRGoodwill | API Central | May, 2023 | Medium","url":"https://medium.com/api-center/api-design-practice-7fce69e6336c","date":"2023-06-02 15:52:06"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_06_Building_Your_Own_DevSecOps_Knowledge_Base_with_OpenAI,_LangChain,_and_LlamaIndex__by_Wenqi_Glantz__May,_2023__Better_Programming_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_06_Building_Your_Own_DevSecOps_Knowledge_Base_with_OpenAI,_LangChain,_and_LlamaIndex__by_Wenqi_Glantz__May,_2023__Better_Programming_md.ajson deleted file mode 100644 index 36a7d96..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_06_Building_Your_Own_DevSecOps_Knowledge_Base_with_OpenAI,_LangChain,_and_LlamaIndex__by_Wenqi_Glantz__May,_2023__Better_Programming_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/06/Building Your Own DevSecOps Knowledge Base with OpenAI, LangChain, and LlamaIndex by Wenqi Glantz May, 2023 Better Programming.md": {"path":"000-inbox/clippings/2023/06/Building Your Own DevSecOps Knowledge Base with OpenAI, LangChain, and LlamaIndex by Wenqi Glantz May, 2023 Better Programming.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1off565","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1685680731679,"size":18804,"at":1766986878359,"hash":"1off565"},"blocks":{"#---frontmatter---":[1,5],"##Building Your Own DevSecOps Knowledge Base with OpenAI, LangChain, and LlamaIndex":[6,7],"##Building your custom knowledge base chatbot":[8,31],"##Building your custom knowledge base chatbot#{1}":[10,31],"##High-Level Architecture":[32,47],"##High-Level Architecture#{1}":[34,47],"##Prerequisites":[48,56],"##Prerequisites#{1}":[50,51],"##Prerequisites#{2}":[52,53],"##Prerequisites#{3}":[54,54],"##Prerequisites#{4}":[55,56],"##Installation of Libraries":[57,66],"##Installation of Libraries#{1}":[59,66],"##OpenAI library":[67,73],"##OpenAI library#{1}":[69,70],"##OpenAI library#{2}":[71,71],"##OpenAI library#{3}":[72,73],"##LangChain":[74,79],"##LangChain#{1}":[76,79],"##LlamaIndex":[80,90],"##LlamaIndex#{1}":[82,85],"##LlamaIndex#{2}":[86,86],"##LlamaIndex#{3}":[87,87],"##LlamaIndex#{4}":[88,88],"##LlamaIndex#{5}":[89,90],"##pypdf + PyCryptodome":[91,94],"##pypdf + PyCryptodome#{1}":[93,94],"##Gradio":[95,98],"##Gradio#{1}":[97,98],"##How to Add Data Source":[99,104],"##How to Add Data Source#{1}":[101,104],"##Implement Python Code":[105,271],"##Implement Python Code#{1}":[107,116],"##Implement Python Code#{2}":[117,117],"##Implement Python Code#{3}":[118,118],"##Implement Python Code#{4}":[119,119],"##Implement Python Code#{5}":[120,121],"##Implement Python Code#{6}":[122,160],"##Implement Python Code#{7}":[161,161],"##Implement Python Code#{8}":[162,162],"##Implement Python Code#{9}":[163,163],"##Implement Python Code#{10}":[164,165],"##Implement Python Code#{11}":[166,180],"##Implement Python Code#{12}":[181,181],"##Implement Python Code#{13}":[182,182],"##Implement Python Code#{14}":[183,183],"##Implement Python Code#{15}":[184,185],"##Implement Python Code#{16}":[186,192],"##Implement Python Code#{17}":[193,193],"##Implement Python Code#{18}":[194,194],"##Implement Python Code#{19}":[195,195],"##Implement Python Code#{20}":[196,197],"##Implement Python Code#{21}":[198,271],"##Launch DevSecOps Knowledge Base":[272,303],"##Launch DevSecOps Knowledge Base#{1}":[274,303],"##Does This AI Bot Expose My Private Data to OpenAI?":[304,311],"##Does This AI Bot Expose My Private Data to OpenAI?#{1}":[306,311],"##A Note on Cost":[312,324],"##A Note on Cost#{1}":[314,315],"##A Note on Cost#{2}":[316,316],"##A Note on Cost#{3}":[317,318],"##A Note on Cost#{4}":[319,324],"##Summary":[325,331],"##Summary#{1}":[327,331]},"outlinks":[{"title":"\n\n![Wenqi Glantz","target":"https://miro.medium.com/v2/resize:fill:88:88/1*Ce4jOl6gjeebSiHsknN2-A.jpeg","line":10},{"title":"\n\n![Better Programming","target":"https://miro.medium.com/v2/resize:fill:48:48/1*QNoA3XlXLHz22zQazc0syg.png","line":16},{"title":"download","target":"https://www.python.org/downloads/","line":50},{"title":"API Keys","target":"https://platform.openai.com/account/api-keys","line":54},{"title":"Usage Limits","target":"https://platform.openai.com/account/billing/limits","line":54},{"title":"another blog","target":"https://betterprogramming.pub/a-glimpse-into-the-mechanics-of-llamaindex-apps-through-the-lens-of-observability-9e7c49f4cb32?sk=6bb0a3a8dc496e1f58523991f063550e","line":63},{"title":"OpenAI","target":"https://openai.com/","line":69},{"title":"LangChain","target":"https://python.langchain.com/en/latest/index.html","line":76},{"title":"LlamaIndex","target":"https://gpt-index.readthedocs.io/en/latest/","line":82},{"title":"outlined","target":"https://github.com/jerryjliu/llama_index","line":84},{"title":"Jerry Liu","target":"https://twitter.com/jerryjliu0","line":84},{"title":"pypdf","target":"https://pypi.org/project/pypdf/","line":93},{"title":"Gradio","target":"https://gradio.app/","line":97},{"title":"The Path to DevOps Self-Service: A Five-Part Series","target":"https://medium.com/@wenqiglantz/the-path-to-devops-self-service-a-five-part-series-5ea5d4552f9e","line":101},{"title":"Troubleshooting Tips for GitHub Actions Workflows","target":"https://medium.com/better-programming/17-troubleshooting-tips-for-github-actions-workflows-43394e4f1a8a","line":101},{"title":"LlamaIndex Usage Pattern","target":"https://github.com/jerryjliu/llama_index/blob/main/docs/guides/primer/usage_pattern.md","line":107},{"title":"http://127.0.0.1:7860/","target":"http://127.0.0.1:7860/","line":278},{"title":"one of my articles on DevOps self-service model","target":"https://medium.com/better-programming/devops-self-service-pipeline-architecture-and-its-3-2-1-rule-517dc0bbcb4a","line":280},{"title":"Harden Runner","target":"https://www.stepsecurity.io/products/harden-runner","line":288},{"title":"OpenAI privacy policy on API","target":"https://help.openai.com/en/articles/5722486-how-your-data-is-used-to-improve-model-performance","line":306},{"title":"Usage Limit page","target":"https://platform.openai.com/account/billing/limits","line":323},{"title":"my GitHub repo","target":"https://github.com/wenqiglantz/DevSecOpsKB-LlamaIndex-LangChain-OpenAI/tree/main/DevSecOpsKB","line":329}],"metadata":{"page-title":"Building Your Own DevSecOps Knowledge Base with OpenAI, LangChain, and LlamaIndex | by Wenqi Glantz | May, 2023 | Better Programming","url":"https://betterprogramming.pub/building-your-own-devsecops-knowledge-base-with-openai-langchain-and-llamaindex-b28cda15abb7","date":"2023-06-02 12:38:49"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_06_How_we_built_the_Tinder_API_Gateway__by_Tinder__Tinder_Tech_Blog__Medium_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_06_How_we_built_the_Tinder_API_Gateway__by_Tinder__Tinder_Tech_Blog__Medium_md.ajson deleted file mode 100644 index 8f8cae0..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_06_How_we_built_the_Tinder_API_Gateway__by_Tinder__Tinder_Tech_Blog__Medium_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/06/How we built the Tinder API Gateway by Tinder Tinder Tech Blog Medium.md": {"path":"000-inbox/clippings/2023/06/How we built the Tinder API Gateway by Tinder Tinder Tech Blog Medium.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5fh1pc","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1685689050393,"size":14202,"at":1766986878359,"hash":"5fh1pc"},"blocks":{"#---frontmatter---":[1,5],"##How we built the Tinder API Gateway":[6,28],"##How we built the Tinder API Gateway#{1}":[8,23],"##How we built the Tinder API Gateway#{2}":[24,24],"##How we built the Tinder API Gateway#{3}":[25,25],"##How we built the Tinder API Gateway#{4}":[26,26],"##How we built the Tinder API Gateway#{5}":[27,28],"##Introduction":[29,38],"##Introduction#{1}":[31,38],"##Challenges Before TAG":[39,60],"##Challenges Before TAG#{1}":[41,50],"##Challenges Before TAG#{2}":[51,51],"##Challenges Before TAG#{3}":[52,52],"##Challenges Before TAG#{4}":[53,53],"##Challenges Before TAG#{5}":[54,54],"##Challenges Before TAG#{6}":[55,55],"##Challenges Before TAG#{7}":[56,56],"##Challenges Before TAG#{8}":[57,58],"##Challenges Before TAG#{9}":[59,60],"##Existing API Gateway Solutions":[61,71],"##Existing API Gateway Solutions#{1}":[63,64],"##Existing API Gateway Solutions#{2}":[65,65],"##Existing API Gateway Solutions#{3}":[66,66],"##Existing API Gateway Solutions#{4}":[67,67],"##Existing API Gateway Solutions#{5}":[68,69],"##Existing API Gateway Solutions#{6}":[70,71],"##Let’s Explore TAG":[72,95],"##Let’s Explore TAG#{1}":[74,77],"##Let’s Explore TAG#{2}":[78,78],"##Let’s Explore TAG#{3}":[79,79],"##Let’s Explore TAG#{4}":[80,81],"##Let’s Explore TAG#{5}":[82,87],"##Let’s Explore TAG#{6}":[88,88],"##Let’s Explore TAG#{7}":[89,89],"##Let’s Explore TAG#{8}":[90,90],"##Let’s Explore TAG#{9}":[91,91],"##Let’s Explore TAG#{10}":[92,92],"##Let’s Explore TAG#{11}":[93,93],"##Let’s Explore TAG#{12}":[94,95],"##A Deeper Look Inside TAG":[96,129],"##A Deeper Look Inside TAG#{1}":[98,103],"##A Deeper Look Inside TAG#{2}":[104,104],"##A Deeper Look Inside TAG#{3}":[105,105],"##A Deeper Look Inside TAG#{4}":[106,106],"##A Deeper Look Inside TAG#{5}":[107,107],"##A Deeper Look Inside TAG#{6}":[108,108],"##A Deeper Look Inside TAG#{7}":[109,109],"##A Deeper Look Inside TAG#{8}":[110,129],"##Real World Usage of TAG at Tinder":[130,173],"##Real World Usage of TAG at Tinder#{1}":[132,170],"##Real World Usage of TAG at Tinder#{2}":[171,171],"##Real World Usage of TAG at Tinder#{3}":[172,173],"##API Gateway at Tinder Today":[174,183],"##API Gateway at Tinder Today#{1}":[176,183],"##References:":[184,194],"##References:#{1}":[186,186],"##References:#{2}":[187,187],"##References:#{3}":[188,188],"##References:#{4}":[189,189],"##References:#{5}":[190,190],"##References:#{6}":[191,191],"##References:#{7}":[192,192],"##References:#{8}":[193,193],"##References:#{9}":[194,194]},"outlinks":[{"title":"\n\n![Tinder","target":"https://miro.medium.com/v2/resize:fill:88:88/1*hIcGX7_ZFDhlazoqjwaguQ.jpeg","line":8},{"title":"\n\n![Tinder Tech Blog","target":"https://miro.medium.com/v2/resize:fill:48:48/1*sWH63grDO1g2vl4_IAmrQA.png","line":14},{"title":"https://spring.io/projects/spring-cloud-gateway","target":"https://spring.io/projects/spring-cloud-gateway","line":186},{"title":"https://cloud.spring.io/spring-cloud-gateway/reference/html/","target":"https://cloud.spring.io/spring-cloud-gateway/reference/html/","line":187},{"title":"https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html","target":"https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html","line":188},{"title":"https://cloud.google.com/apigee/docs","target":"https://cloud.google.com/apigee/docs","line":189},{"title":"https://tyk.io/blog/what-do-we-mean-by-batteries-included/","target":"https://tyk.io/blog/what-do-we-mean-by-batteries-included/","line":190},{"title":"https://tyk.io/docs/plugins/supported-languages/","target":"https://tyk.io/docs/plugins/supported-languages/","line":191},{"title":"https://docs.konghq.com/gateway/latest/","target":"https://docs.konghq.com/gateway/latest/","line":192},{"title":"https://www.express-gateway.io/docs/","target":"https://www.express-gateway.io/docs/","line":193},{"title":"https://www.krakend.io/docs/overview/","target":"https://www.krakend.io/docs/overview/","line":194}],"metadata":{"page-title":"How we built the Tinder API Gateway | by Tinder | Tinder Tech Blog | Medium","url":"https://medium.com/tinder/how-we-built-the-tinder-api-gateway-831c6ca5ceca","date":"2023-06-02 14:57:26"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_08_Unblockit_-_Proxies_to_access_your_favourite_blocked_sites_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_08_Unblockit_-_Proxies_to_access_your_favourite_blocked_sites_md.ajson deleted file mode 100644 index 94159c0..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_08_Unblockit_-_Proxies_to_access_your_favourite_blocked_sites_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/08/Unblockit - Proxies to access your favourite blocked sites.md": {"path":"000-inbox/clippings/2023/08/Unblockit - Proxies to access your favourite blocked sites.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"15c0giu","at":1766986878043},"class_name":"SmartSource","last_import":{"mtime":1691115721769,"size":388,"at":1766986878359,"hash":"15c0giu"},"blocks":{"#---frontmatter---":[1,5],"#":[6,8]},"outlinks":[{"title":"Books","target":"https://unblockit.rsvp/#books","line":8},{"title":"Direct","target":"https://unblockit.rsvp/#ddl","line":8},{"title":"Music","target":"https://unblockit.rsvp/#music","line":8},{"title":"Sports","target":"https://unblockit.rsvp/#sports","line":8},{"title":"Streams","target":"https://unblockit.rsvp/#streams","line":8},{"title":"Torrents","target":"https://unblockit.rsvp/#torrents","line":8}],"metadata":{"page-title":"Unblockit - Proxies to access your favourite blocked sites","url":"https://unblockit.rsvp/","date":"2023-08-04 10:21:59"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_09_一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案?_-_董川民_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_09_一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案?_-_董川民_md.ajson deleted file mode 100644 index fee2f92..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_09_一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案?_-_董川民_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/09/一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案? - 董川民.md": {"path":"000-inbox/clippings/2023/09/一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案? - 董川民.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"17r5xbz","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1693993439102,"size":3743,"at":1766986878957,"hash":"17r5xbz"},"blocks":{"#---frontmatter---":[1,5],"#":[6,112]},"outlinks":[],"metadata":{"page-title":"一张数据量很大的表,SQL分页查询特别耗时,你有什么优化方案? - 董川民","url":"https://www.dongchuanmin.com/mysql/2101.html","date":"2023-09-06 17:43:56"},"task_lines":[],"tasks":{},"codeblock_ranges":[[10,19],[25,30],[40,44],[52,57],[63,68],[86,91],[103,108]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2023_10_用UBNT_EdgeRouter_X实现PPPoE拨号与IPv6_-_Minaduki's_Blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2023_10_用UBNT_EdgeRouter_X实现PPPoE拨号与IPv6_-_Minaduki's_Blog_md.ajson deleted file mode 100644 index 4b81fb1..0000000 --- a/.smart-env/multi/000-inbox_clippings_2023_10_用UBNT_EdgeRouter_X实现PPPoE拨号与IPv6_-_Minaduki's_Blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2023/10/用UBNT EdgeRouter X实现PPPoE拨号与IPv6 - Minaduki's Blog.md": {"path":"000-inbox/clippings/2023/10/用UBNT EdgeRouter X实现PPPoE拨号与IPv6 - Minaduki's Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1sitk0r","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1697546263000,"size":6892,"at":1766986878957,"hash":"1sitk0r"},"blocks":{"#---frontmatter---":[1,5],"##Step 0:前言":[6,15],"##Step 0:前言#{1}":[8,15],"##Step 1:光猫改桥接":[16,28],"##Step 1:光猫改桥接#{1}":[18,28],"##Step 2:配置主路由":[29,38],"##Step 2:配置主路由#{1}":[31,38],"##Step 3:配置UPnP和硬件加速":[39,92],"##Step 3:配置UPnP和硬件加速#{1}":[41,92],"##Step -1:尾声":[93,95],"##Step -1:尾声#{1}":[95,95]},"outlinks":[{"title":"再发一次友华PT622光猫里面的密码,方便外面的人查找","target":"https://www.right.com.cn/FORUM/forum.php?mod=viewthread&tid=934706#pid9110653 \"再发一次友华PT622光猫里面的密码,方便外面的人查找\"","line":27},{"title":"七海网络教学 1: EdgeRouter 启用IPv6","target":"https://www.bilibili.com/video/av90572075 \"七海网络教学 1: EdgeRouter 启用IPv6\"","line":37},{"title":"UPnP with EdgeRouter: Don’t do it! · GitHub","target":"https://gist.github.com/plembo/c7f596ce6e690c6c022a6153c674f471 \"UPnP with EdgeRouter: Don't do it! · GitHub\"","line":76},{"title":"Ubiquiti EdgeRouter 配置 UPnP2 啟用方法","target":"https://www.sakamoto.blog/ubiquiti-edgerouter-upnp2/ \"Ubiquiti EdgeRouter 配置 UPnP2 啟用方法\"","line":77},{"title":"EdgeMax – 如何开启 IP offload 进行硬件加速","target":"https://help.ui.com.cn/articles/115000117142/ \"EdgeMax - 如何开启 IP offload 进行硬件加速\"","line":90},{"title":"EdgeRouter拨号200M宽带一定务必打开PPPoE offload","target":"https://www.chiphell.com/thread-1233957-1-1.html \"EdgeRouter拨号200M宽带一定务必打开PPPoE offload\"","line":91}],"metadata":{"page-title":"用UBNT EdgeRouter X实现PPPoE拨号与IPv6 - Minaduki's Blog","url":"https://www.minaduki.cn/2022/04/16/ubnt-edgerouter-x-pppoe-and-ipv6/","date":"2023-10-17 20:37:41"},"task_lines":[],"tasks":{},"codeblock_ranges":[[50,56],[60,69],[81,86]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_02_OpenDKIM_on_Postfix_with_virtual_domains_[rigacci_org]_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_02_OpenDKIM_on_Postfix_with_virtual_domains_[rigacci_org]_md.ajson deleted file mode 100644 index 74a036e..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_02_OpenDKIM_on_Postfix_with_virtual_domains_[rigacci_org]_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/02/OpenDKIM on Postfix with virtual domains [rigacci.org].md": {"path":"000-inbox/clippings/2024/02/OpenDKIM on Postfix with virtual domains [rigacci.org].md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"dlp92q","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1706831362000,"size":7680,"at":1766986878957,"hash":"dlp92q"},"blocks":{"#---frontmatter---":[1,5],"###**−**Table of Contents":[6,7],"##OpenDKIM on Postfix with virtual domains":[8,23],"##OpenDKIM on Postfix with virtual domains#{1}":[10,23],"##Create the keys in /etc/dkimkeys/":[24,43],"##Create the keys in /etc/dkimkeys/#{1}":[26,38],"##Create the keys in /etc/dkimkeys/#{2}":[39,40],"##Create the keys in /etc/dkimkeys/#{3}":[41,43],"##Add the private key in /etc/dkimkeys/keytable":[44,49],"##Add the private key in /etc/dkimkeys/keytable#{1}":[46,49],"##Add the public key into the DNS zone":[50,57],"##Add the public key into the DNS zone#{1}":[52,57],"##Add the domain (or single sender) to be signed":[58,69],"##Add the domain (or single sender) to be signed#{1}":[60,69],"##Configure OpenDKIM":[70,77],"##Configure OpenDKIM#{1}":[72,77],"#Match a list of hosts whose messages will be signed.":[78,78],"#By default, only localhost is considered as internal host.":[79,79],"#InternalHosts refile:/etc/dkimkeys/trustedhosts":[80,81],"#Socket for the MTA connection (required).":[82,125],"#Socket for the MTA connection (required).#{1}":[83,86],"#Socket for the MTA connection (required).#Test the OpenDKIM configuration":[87,97],"#Socket for the MTA connection (required).#Test the OpenDKIM configuration#{1}":[89,97],"#Socket for the MTA connection (required).#Signing message test":[98,102],"#Socket for the MTA connection (required).#Signing message test#{1}":[100,102],"#Socket for the MTA connection (required).#Configure Postfix":[103,125],"#Socket for the MTA connection (required).#Configure Postfix#{1}":[105,125],"#Mails received via SMTP protocol are filtered with OpenDKIM;":[126,126],"#messages created using SoGO webmail go through this milter.":[127,129],"#messages created using SoGO webmail go through this milter.#{1}":[128,129],"#Filters applied (as smtpd\\_milters) to messages received via SUMBISSION/587;":[130,150],"#Filters applied (as smtpd\\_milters) to messages received via SUMBISSION/587;#{1}":[131,138],"#Filters applied (as smtpd\\_milters) to messages received via SUMBISSION/587;#Logging":[139,149],"#Filters applied (as smtpd\\_milters) to messages received via SUMBISSION/587;#Logging#{1}":[141,149],"#Filters applied (as smtpd\\_milters) to messages received via SUMBISSION/587;#Web References":[150,150]},"outlinks":[{"title":"OpenDKIM","target":"http://www.opendkim.org/ \"http://www.opendkim.org/\"","line":10},{"title":"Quick Mail Queuing Protocol","target":"https://en.wikipedia.org/wiki/Quick%20Mail%20Queuing%20Protocol \"https://en.wikipedia.org/wiki/Quick Mail Queuing Protocol\"","line":107}],"metadata":{"page-title":"OpenDKIM on Postfix with virtual domains [rigacci.org]","url":"https://rigacci.org/wiki/doku.php/doc/appunti/linux/sa/postfix_opendkim","date":"2024-02-02 07:49:12","tags":["#InternalHosts"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_05_Fedora_Root_on_ZFS_—_OpenZFS_documentation_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_05_Fedora_Root_on_ZFS_—_OpenZFS_documentation_md.ajson deleted file mode 100644 index eacc753..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_05_Fedora_Root_on_ZFS_—_OpenZFS_documentation_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/05/Fedora Root on ZFS — OpenZFS documentation.md": {"path":"000-inbox/clippings/2024/05/Fedora Root on ZFS — OpenZFS documentation.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1s4mxra","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1716963754589,"size":13987,"at":1766986878957,"hash":"1s4mxra"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Fedora Root on ZFS[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#fedora-root-on-zfs \"Permalink to this heading\")":[11,12],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")":[13,379],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#{1}":[15,17],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#{2}":[18,33],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")":[34,111],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{1}":[36,37],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{2}":[38,39],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{3}":[40,45],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{4}":[46,47],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{5}":[48,49],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{6}":[50,58],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{7}":[59,60],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{8}":[61,62],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{9}":[63,68],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{10}":[69,70],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{11}":[71,72],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{12}":[73,74],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{13}":[75,76],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{14}":[77,78],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{15}":[79,82],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{16}":[83,84],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{17}":[85,96],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{18}":[97,98],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{19}":[99,100],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{20}":[101,104],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{21}":[105,106],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{22}":[107,108],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Preparation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\")#{23}":[109,111],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")":[112,192],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{1}":[114,115],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{2}":[116,137],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{3}":[138,139],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{4}":[140,145],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{5}":[146,147],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{6}":[148,151],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{7}":[152,169],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{8}":[170,171],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{9}":[172,180],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{10}":[181,182],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Installation[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\")#{11}":[183,192],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")":[193,336],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{1}":[195,196],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{2}":[197,221],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{3}":[222,223],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{4}":[224,226],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{5}":[227,228],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{6}":[229,234],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{7}":[235,236],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{8}":[237,240],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{9}":[241,242],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{10}":[243,244],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{11}":[245,246],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{12}":[247,248],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{13}":[249,253],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{14}":[254,255],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{15}":[256,282],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{16}":[283,284],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{17}":[285,287],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{18}":[288,289],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{19}":[290,296],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{20}":[297,298],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{21}":[299,306],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{22}":[307,308],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{23}":[309,310],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{24}":[311,312],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{25}":[313,314],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{26}":[315,316],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{27}":[317,318],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{28}":[319,320],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{29}":[321,322],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{30}":[323,331],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{31}":[332,333],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#System Configuration[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\")#{32}":[334,336],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")":[337,369],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{1}":[339,340],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{2}":[341,351],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{3}":[352,353],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{4}":[354,357],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{5}":[358,359],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{6}":[360,361],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{7}":[362,364],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{8}":[365,366],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Bootloader[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\")#{9}":[367,369],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Post installaion[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\")":[370,379],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Post installaion[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\")#{1}":[372,373],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Post installaion[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\")#{2}":[374,376],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Post installaion[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\")#{3}":[377,378],"##Notes[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\")#Post installaion[](https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\")#{4}":[379,379]},"outlinks":[{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#fedora-root-on-zfs \"Permalink to this heading\"","line":11},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#notes \"Permalink to this heading\"","line":13},{"title":"fedora-on-zfs","target":"https://github.com/gregory-lee-bartholomew/fedora-on-zfs","line":15},{"title":"ZFSBootMenu","target":"https://zfsbootmenu.org/","line":20},{"title":"this comment","target":"https://github.com/openzfs/openzfs-docs/pull/464#issuecomment-1776918481","line":28},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#preparation \"Permalink to this heading\"","line":34},{"title":"Alpine Linux live image","target":"https://dl-cdn.alpinelinux.org/alpine/v3.19/releases/x86_64/alpine-extended-3.19.0-x86_64.iso","line":40},{"title":"checksum","target":"https://dl-cdn.alpinelinux.org/alpine/v3.19/releases/x86_64/alpine-extended-3.19.0-x86_64.iso.asc","line":40},{"title":"Alpine Linux wiki","target":"https://wiki.alpinelinux.org/wiki/Wi-Fi#wpa_supplicant","line":59},{"title":"this page","target":"https://bugzilla.redhat.com/show_bug.cgi?id=1245013","line":87},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-installation \"Permalink to this heading\"","line":112},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#system-configuration \"Permalink to this heading\"","line":193},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#bootloader \"Permalink to this heading\"","line":337},{"title":"Root on ZFS maintenance page","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/zfs_root_maintenance.html","line":360},{"title":"","target":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html#post-installaion \"Permalink to this heading\"","line":370}],"metadata":{"page-title":"Fedora Root on ZFS — OpenZFS documentation","url":"https://openzfs.github.io/openzfs-docs/Getting%20Started/Fedora/Root%20on%20ZFS.html","date":"2024-05-29 14:22:28"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_05_Overview_—_ZFSBootMenu_2_3_0_documentation_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_05_Overview_—_ZFSBootMenu_2_3_0_documentation_md.ajson deleted file mode 100644 index 15fb162..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_05_Overview_—_ZFSBootMenu_2_3_0_documentation_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/05/Overview — ZFSBootMenu 2.3.0 documentation.md": {"path":"000-inbox/clippings/2024/05/Overview — ZFSBootMenu 2.3.0 documentation.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jbwyzq","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1716964377803,"size":15447,"at":1766986878957,"hash":"1jbwyzq"},"blocks":{"#---frontmatter---":[1,5],"##Overview":[6,7],"##Contents":[8,30],"##Contents#{1}":[10,10],"##Contents#{2}":[11,13],"##Contents#{3}":[14,15],"##Contents#{4}":[16,16],"##Contents#{5}":[17,18],"##Contents#{6}":[19,30],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")":[31,78],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{1}":[33,34],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{2}":[35,40],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{3}":[41,44],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{4}":[45,46],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{5}":[47,49],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{6}":[50,51],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{7}":[52,53],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{8}":[54,55],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{9}":[56,65],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{10}":[66,67],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{11}":[68,69],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{12}":[70,71],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{13}":[72,74],"##Overview[#](https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\")#{14}":[75,78],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")":[79,103],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{1}":[81,82],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{2}":[83,84],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{3}":[85,86],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{4}":[87,88],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{5}":[89,90],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{6}":[91,92],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{7}":[93,94],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{8}":[95,96],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{9}":[97,99],"##Distribution Agnostic[#](https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\")#{10}":[100,103],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")":[104,155],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#{1}":[106,109],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")":[110,151],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{1}":[112,135],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{2}":[136,137],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{3}":[138,140],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{4}":[141,142],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{5}":[143,144],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{6}":[145,146],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{7}":[147,149],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Local Installation[#](https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\")#{8}":[150,151],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Building in a Container[#](https://docs.zfsbootmenu.org/en/v2.3.x/#building-in-a-container \"Link to this heading\")":[152,155],"##Easily Deployed and Extensively Configurable[#](https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\")#Building in a Container[#](https://docs.zfsbootmenu.org/en/v2.3.x/#building-in-a-container \"Link to this heading\")#{1}":[154,155],"##ZFS Boot Environments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments \"Link to this heading\")":[156,185],"##ZFS Boot Environments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments \"Link to this heading\")#{1}":[158,159],"##ZFS Boot Environments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments \"Link to this heading\")#Command-Line Arguments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#command-line-arguments \"Link to this heading\")":[160,185],"##ZFS Boot Environments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments \"Link to this heading\")#Command-Line Arguments[#](https://docs.zfsbootmenu.org/en/v2.3.x/#command-line-arguments \"Link to this heading\")#{1}":[162,185],"##Signature Verification and Prebuilt EFI Executables[#](https://docs.zfsbootmenu.org/en/v2.3.x/#signature-verification-and-prebuilt-efi-executables \"Link to this heading\")":[186,201],"##Signature Verification and Prebuilt EFI Executables[#](https://docs.zfsbootmenu.org/en/v2.3.x/#signature-verification-and-prebuilt-efi-executables \"Link to this heading\")#{1}":[188,201]},"outlinks":[{"title":"Distribution Agnostic","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic","line":10},{"title":"Easily Deployed and Extensively Configurable","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable","line":11},{"title":"Local Installation","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation","line":12},{"title":"Building in a Container","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#building-in-a-container","line":13},{"title":"ZFS Boot Environments","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments","line":14},{"title":"Command-Line Arguments","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#command-line-arguments","line":15},{"title":"Run-time Configuration of ZFSBootMenu","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#run-time-configuration-of-zfsbootmenu","line":16},{"title":"Signature Verification and Prebuilt EFI Executables","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#signature-verification-and-prebuilt-efi-executables","line":17},{"title":"ZFSBootMenu logo","target":"https://docs.zfsbootmenu.org/en/v2.3.x/_images/logo-header.svg","line":19,"embedded":true},{"title":"x86\\_64 EFI Image","target":"https://get.zfsbootmenu.org/efi","line":21},{"title":"x86\\_64 Recovery Image","target":"https://get.zfsbootmenu.org/efi/recovery","line":21},{"title":"View on GitHub","target":"https://github.com/zbm-dev/zfsbootmenu","line":21},{"title":"![Build check","target":"https://github.com/zbm-dev/zfsbootmenu/actions/workflows/build.yml/badge.svg?branch=master","line":23},{"title":"![latest packaged version(s)","target":"https://repology.org/badge/latest-versions/zfsbootmenu.svg","line":23},{"title":"ZFSBootMenu screenshot","target":"https://docs.zfsbootmenu.org/en/v2.3.x/_images/screenshot.png","line":29,"embedded":true},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#overview \"Link to this heading\"","line":31},{"title":"Distribution Agnostic","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic","line":33},{"title":"Easily Deployed and Extensively Configurable","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable","line":35},{"title":"Local Installation","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation","line":37},{"title":"Building in a Container","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#building-in-a-container","line":39},{"title":"ZFS Boot Environments","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments","line":41},{"title":"Command-Line Arguments","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#command-line-arguments","line":43},{"title":"Run-time Configuration of ZFSBootMenu","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#run-time-configuration-of-zfsbootmenu","line":45},{"title":"Signature Verification and Prebuilt EFI Executables","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#signature-verification-and-prebuilt-efi-executables","line":47},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#distribution-agnostic \"Link to this heading\"","line":79},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#easily-deployed-and-extensively-configurable \"Link to this heading\"","line":104},{"title":"options for launching ZFSBootmenu","target":"https://docs.zfsbootmenu.org/en/v2.3.x/general/uefi-booting.html","line":108},{"title":"syslinux guide for Void Linux","target":"https://docs.zfsbootmenu.org/en/v2.3.x/guides/void-linux/syslinux-mbr.html","line":108},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#local-installation \"Link to this heading\"","line":110},{"title":"generate-zbm","target":"https://docs.zfsbootmenu.org/en/v2.3.x/man/generate-zbm.8.html","line":112},{"title":"Makefile","target":"https://github.com/zbm-dev/zfsbootmenu/blob/v2.3.0/Makefile","line":112},{"title":"fzf","target":"https://github.com/junegunn/fzf","line":114},{"title":"kexec-tools","target":"https://github.com/horms/kexec-tools","line":116},{"title":"mbuffer","target":"http://www.maier-komor.de/mbuffer.html","line":118},{"title":"perl Sort::Versions","target":"https://metacpan.org/pod/Sort::Versions","line":123},{"title":"perl YAML::PP","target":"https://metacpan.org/pod/YAML::PP","line":125},{"title":"perl boolean","target":"https://metacpan.org/pod/boolean","line":127},{"title":"gummiboot","target":"https://pkgs.alpinelinux.org/package/edge/main/x86/gummiboot","line":130},{"title":"systemd-boot","target":"https://www.freedesktop.org/wiki/Software/systemd/systemd-boot/","line":130},{"title":"dracut","target":"https://github.com/dracutdevs/dracut","line":136},{"title":"mkinitcpio","target":"https://github.com/archlinux/mkinitcpio","line":138},{"title":"YAML configuration file","target":"https://docs.zfsbootmenu.org/en/v2.3.x/man/generate-zbm.5.html","line":150},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#building-in-a-container \"Link to this heading\"","line":152},{"title":"ZFSBootMenu container guide","target":"https://docs.zfsbootmenu.org/en/v2.3.x/general/container-building.html","line":154},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#zfs-boot-environments \"Link to this heading\"","line":156},{"title":"primer","target":"https://docs.zfsbootmenu.org/en/v2.3.x/general/bootenvs-and-you.html","line":158},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#command-line-arguments \"Link to this heading\"","line":160},{"title":"property","target":"https://docs.zfsbootmenu.org/en/v2.3.x/man/zfsbootmenu.7.html#zfs-properties","line":162},{"title":"zbm-kcl","target":"https://docs.zfsbootmenu.org/en/v2.3.x/man/zbm-kcl.8.html","line":184},{"title":"#","target":"https://docs.zfsbootmenu.org/en/v2.3.x/#signature-verification-and-prebuilt-efi-executables \"Link to this heading\"","line":186},{"title":"signify","target":"https://flak.tedunangst.com/post/signify","line":188},{"title":"ZFSBootMenu release page","target":"https://github.com/zbm-dev/zfsbootmenu/releases","line":188},{"title":"releng/keys/zfsbootmenu.pub","target":"https://github.com/zbm-dev/zfsbootmenu/blob/v2.3.0/releng/keys/zfsbootmenu.pub","line":190},{"title":"personal key from @ahesford","target":"https://github.com/ahesford.gpg","line":194},{"title":"releng/keys/zfsbootmenu.pub.gpg","target":"https://github.com/zbm-dev/zfsbootmenu/blob/v2.3.0/releng/keys/zfsbootmenu.pub.gpg","line":194}],"metadata":{"page-title":"Overview — ZFSBootMenu 2.3.0 documentation","url":"https://docs.zfsbootmenu.org/en/v2.3.x/","date":"2024-05-29 14:32:53"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_05_Reliably_boot_Fedora_with_root_on_ZFS_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_05_Reliably_boot_Fedora_with_root_on_ZFS_md.ajson deleted file mode 100644 index 9568476..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_05_Reliably_boot_Fedora_with_root_on_ZFS_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/05/Reliably boot Fedora with root on ZFS.md": {"path":"000-inbox/clippings/2024/05/Reliably boot Fedora with root on ZFS.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1h7ymu9","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1716963730652,"size":32080,"at":1766986878957,"hash":"1h7ymu9"},"blocks":{"#---frontmatter---":[1,5],"###Reliably boot Fedora with root on ZFS":[6,1014],"###Reliably boot Fedora with root on ZFS##Revised 2022-10-28, Corrections/complaints contact [*Hugh Sparks*](mailto:hugh@csparks.com)":[8,9],"###Reliably boot Fedora with root on ZFS#What's all this?":[10,75],"###Reliably boot Fedora with root on ZFS#What's all this?#{1}":[12,60],"###Reliably boot Fedora with root on ZFS#What's all this?#Prior art":[61,67],"###Reliably boot Fedora with root on ZFS#What's all this?#Prior art#{1}":[63,64],"###Reliably boot Fedora with root on ZFS#What's all this?#Prior art#{2}":[65,65],"###Reliably boot Fedora with root on ZFS#What's all this?#Prior art#{3}":[66,67],"###Reliably boot Fedora with root on ZFS#What's all this?#Success with BLS":[68,71],"###Reliably boot Fedora with root on ZFS#What's all this?#Success with BLS#{1}":[70,71],"###Reliably boot Fedora with root on ZFS#What's all this?#Fear, Uncertainty and Doubt":[72,75],"###Reliably boot Fedora with root on ZFS#What's all this?#Fear, Uncertainty and Doubt#{1}":[74,75],"###Reliably boot Fedora with root on ZFS#Quick links":[76,87],"###Reliably boot Fedora with root on ZFS#Quick links#{1}":[78,78],"###Reliably boot Fedora with root on ZFS#Quick links#{2}":[79,79],"###Reliably boot Fedora with root on ZFS#Quick links#{3}":[80,80],"###Reliably boot Fedora with root on ZFS#Quick links#{4}":[81,81],"###Reliably boot Fedora with root on ZFS#Quick links#{5}":[82,82],"###Reliably boot Fedora with root on ZFS#Quick links#{6}":[83,83],"###Reliably boot Fedora with root on ZFS#Quick links#{7}":[84,84],"###Reliably boot Fedora with root on ZFS#Quick links#{8}":[85,85],"###Reliably boot Fedora with root on ZFS#Quick links#{9}":[86,87],"###Reliably boot Fedora with root on ZFS#Followup":[88,99],"###Reliably boot Fedora with root on ZFS#Followup#{1}":[90,90],"###Reliably boot Fedora with root on ZFS#Followup#{2}":[91,91],"###Reliably boot Fedora with root on ZFS#Followup#{3}":[92,92],"###Reliably boot Fedora with root on ZFS#Followup#{4}":[93,93],"###Reliably boot Fedora with root on ZFS#Followup#{5}":[94,94],"###Reliably boot Fedora with root on ZFS#Followup#{6}":[95,95],"###Reliably boot Fedora with root on ZFS#Followup#{7}":[96,96],"###Reliably boot Fedora with root on ZFS#Followup#{8}":[97,97],"###Reliably boot Fedora with root on ZFS#Followup#{9}":[98,99],"###Reliably boot Fedora with root on ZFS#Preliminaries":[100,221],"###Reliably boot Fedora with root on ZFS#Preliminaries#Hardware":[102,105],"###Reliably boot Fedora with root on ZFS#Preliminaries#Hardware#{1}":[104,105],"###Reliably boot Fedora with root on ZFS#Preliminaries#Installer system":[106,111],"###Reliably boot Fedora with root on ZFS#Preliminaries#Installer system#{1}":[108,111],"###Reliably boot Fedora with root on ZFS#Preliminaries#Helper script":[112,147],"###Reliably boot Fedora with root on ZFS#Preliminaries#Helper script#{1}":[114,147],"###Reliably boot Fedora with root on ZFS#Preliminaries#Variables":[148,161],"###Reliably boot Fedora with root on ZFS#Preliminaries#Variables#{1}":[150,161],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[RH\\] Variables for working with a real storage device":[162,174],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[RH\\] Variables for working with a real storage device#{1}":[164,174],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Variables for working with a virtual machine":[175,186],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Variables for working with a virtual machine#{1}":[177,186],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Create a virtual disk":[187,192],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Create a virtual disk#{1}":[189,192],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Mount the virtual disk in the host file system":[193,199],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[VM\\] Mount the virtual disk in the host file system#{1}":[195,199],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[RH\\] Deal with old ZFS residue":[200,221],"###Reliably boot Fedora with root on ZFS#Preliminaries#\\[RH\\] Deal with old ZFS residue#{1}":[202,221],"###Reliably boot Fedora with root on ZFS#Partition the target":[222,258],"###Reliably boot Fedora with root on ZFS#Partition the target#{1}":[224,225],"###Reliably boot Fedora with root on ZFS#Partition the target#Erase the existing partition table":[226,231],"###Reliably boot Fedora with root on ZFS#Partition the target#Erase the existing partition table#{1}":[228,231],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a 200MB EFI partition (PART1)":[232,237],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a 200MB EFI partition (PART1)#{1}":[234,237],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a 500MB boot partition (PART2)":[238,243],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a 500MB boot partition (PART2)#{1}":[240,243],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a ZFS partition (PART3) using the rest of the disk:":[244,249],"###Reliably boot Fedora with root on ZFS#Partition the target#Create a ZFS partition (PART3) using the rest of the disk:#{1}":[246,249],"###Reliably boot Fedora with root on ZFS#Partition the target#Format EFI and boot partitions":[250,258],"###Reliably boot Fedora with root on ZFS#Partition the target#Format EFI and boot partitions#{1}":[252,258],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets":[259,358],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create a pool":[261,274],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create a pool#{1}":[263,274],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Set pool properties":[275,281],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Set pool properties#{1}":[277,281],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Re-import the pool so devices are identified by UUIDs":[282,289],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Re-import the pool so devices are identified by UUIDs#{1}":[284,289],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets":[290,313],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{1}":[292,306],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{2}":[307,307],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{3}":[308,308],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{4}":[309,309],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{5}":[310,310],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{6}":[311,311],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Create datasets#{7}":[312,313],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Set ZFS mountpoints":[314,327],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Set ZFS mountpoints#{1}":[316,327],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Don't snapshot volitile directories":[328,338],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Don't snapshot volitile directories#{1}":[330,338],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Mount the boot partition":[339,346],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Mount the boot partition#{1}":[341,346],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Mount the EFI partition":[347,358],"###Reliably boot Fedora with root on ZFS#Create the ZFS pool and datasets#Mount the EFI partition#{1}":[349,358],"###Reliably boot Fedora with root on ZFS#Install the operating system":[359,388],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install a minimal Fedora system":[361,373],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install a minimal Fedora system#{1}":[363,373],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install the ZFS repository":[374,380],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install the ZFS repository#{1}":[376,380],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install ZFS":[381,388],"###Reliably boot Fedora with root on ZFS#Install the operating system#Install ZFS#{1}":[383,388],"###Reliably boot Fedora with root on ZFS#Configure the target":[389,574],"###Reliably boot Fedora with root on ZFS#Configure the target#Configure name resolver":[391,403],"###Reliably boot Fedora with root on ZFS#Configure the target#Configure name resolver#{1}":[393,403],"###Reliably boot Fedora with root on ZFS#Configure the target#Show full path names in \"zpool status\"":[404,411],"###Reliably boot Fedora with root on ZFS#Configure the target#Show full path names in \"zpool status\"#{1}":[406,411],"###Reliably boot Fedora with root on ZFS#Configure the target#\\[VM\\] Tell dracut to include the virtio\\_blk device":[412,421],"###Reliably boot Fedora with root on ZFS#Configure the target#\\[VM\\] Tell dracut to include the virtio\\_blk device#{1}":[414,421],"###Reliably boot Fedora with root on ZFS#Configure the target#Don't use zfs.cache":[422,430],"###Reliably boot Fedora with root on ZFS#Configure the target#Don't use zfs.cache#{1}":[424,430],"###Reliably boot Fedora with root on ZFS#Configure the target#Set grub parameters":[431,448],"###Reliably boot Fedora with root on ZFS#Configure the target#Set grub parameters#{1}":[433,448],"###Reliably boot Fedora with root on ZFS#Configure the target#Disable selinux":[449,454],"###Reliably boot Fedora with root on ZFS#Configure the target#Disable selinux#{1}":[451,454],"###Reliably boot Fedora with root on ZFS#Configure the target#Create a hostid file":[455,460],"###Reliably boot Fedora with root on ZFS#Configure the target#Create a hostid file#{1}":[457,460],"###Reliably boot Fedora with root on ZFS#Configure the target#Add user+password":[461,467],"###Reliably boot Fedora with root on ZFS#Configure the target#Add user+password#{1}":[463,467],"###Reliably boot Fedora with root on ZFS#Configure the target#Prepare for first boot":[468,478],"###Reliably boot Fedora with root on ZFS#Configure the target#Prepare for first boot#{1}":[470,478],"###Reliably boot Fedora with root on ZFS#Configure the target#Create fstab for legacy mountpoints":[479,495],"###Reliably boot Fedora with root on ZFS#Configure the target#Create fstab for legacy mountpoints#{1}":[481,495],"###Reliably boot Fedora with root on ZFS#Configure the target#Switch to legacy mountpoints":[496,504],"###Reliably boot Fedora with root on ZFS#Configure the target#Switch to legacy mountpoints#{1}":[498,504],"###Reliably boot Fedora with root on ZFS#Configure the target#Chroot into the target":[505,511],"###Reliably boot Fedora with root on ZFS#Configure the target#Chroot into the target#{1}":[507,511],"###Reliably boot Fedora with root on ZFS#Configure the target#Prepare for grub2-mkconfig":[512,519],"###Reliably boot Fedora with root on ZFS#Configure the target#Prepare for grub2-mkconfig#{1}":[514,519],"###Reliably boot Fedora with root on ZFS#Configure the target#Configure boot loader":[520,526],"###Reliably boot Fedora with root on ZFS#Configure the target#Configure boot loader#{1}":[522,526],"###Reliably boot Fedora with root on ZFS#Configure the target#Use import scanning instead of zfs cache:":[527,533],"###Reliably boot Fedora with root on ZFS#Configure the target#Use import scanning instead of zfs cache:#{1}":[529,533],"###Reliably boot Fedora with root on ZFS#Configure the target#Collect kernel and zfs version strings":[534,540],"###Reliably boot Fedora with root on ZFS#Configure the target#Collect kernel and zfs version strings#{1}":[536,540],"###Reliably boot Fedora with root on ZFS#Configure the target#If using the zfs testing repository, strip off the \"-rcN\" suffix:":[541,546],"###Reliably boot Fedora with root on ZFS#Configure the target#If using the zfs testing repository, strip off the \"-rcN\" suffix:#{1}":[543,546],"###Reliably boot Fedora with root on ZFS#Configure the target#Build and install zfs modules":[547,552],"###Reliably boot Fedora with root on ZFS#Configure the target#Build and install zfs modules#{1}":[549,552],"###Reliably boot Fedora with root on ZFS#Configure the target#Add zfs modules to initrd":[553,558],"###Reliably boot Fedora with root on ZFS#Configure the target#Add zfs modules to initrd#{1}":[555,558],"###Reliably boot Fedora with root on ZFS#Configure the target#Exit the chroot":[559,566],"###Reliably boot Fedora with root on ZFS#Configure the target#Exit the chroot#{1}":[561,566],"###Reliably boot Fedora with root on ZFS#Configure the target#Export the pool":[567,574],"###Reliably boot Fedora with root on ZFS#Configure the target#Export the pool#{1}":[569,574],"###Reliably boot Fedora with root on ZFS#Boot the target":[575,617],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[RH\\] Reboot and select the new UEFI disk":[577,582],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[RH\\] Reboot and select the new UEFI disk#{1}":[579,582],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Disconnect the virtual disk":[583,590],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Disconnect the virtual disk#{1}":[585,590],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Create a virtual machine":[591,608],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Create a virtual machine#{1}":[593,608],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Startup":[609,617],"###Reliably boot Fedora with root on ZFS#Boot the target#\\[VM\\] Startup#{1}":[611,617],"###Reliably boot Fedora with root on ZFS#Additional configuration":[618,636],"###Reliably boot Fedora with root on ZFS#Additional configuration#{1}":[620,621],"###Reliably boot Fedora with root on ZFS#Additional configuration#Set the timezone":[622,628],"###Reliably boot Fedora with root on ZFS#Additional configuration#Set the timezone#{1}":[624,628],"###Reliably boot Fedora with root on ZFS#Additional configuration#Give your system a nice name":[629,636],"###Reliably boot Fedora with root on ZFS#Additional configuration#Give your system a nice name#{1}":[631,636],"###Reliably boot Fedora with root on ZFS#Complaints and suggestions":[637,642],"###Reliably boot Fedora with root on ZFS#Complaints and suggestions#{1}":[639,642],"###Reliably boot Fedora with root on ZFS#References":[643,657],"###Reliably boot Fedora with root on ZFS#References#{1}":[645,645],"###Reliably boot Fedora with root on ZFS#References#{2}":[646,646],"###Reliably boot Fedora with root on ZFS#References#{3}":[647,647],"###Reliably boot Fedora with root on ZFS#References#{4}":[648,648],"###Reliably boot Fedora with root on ZFS#References#{5}":[649,649],"###Reliably boot Fedora with root on ZFS#References#{6}":[650,650],"###Reliably boot Fedora with root on ZFS#References#{7}":[651,651],"###Reliably boot Fedora with root on ZFS#References#{8}":[652,652],"###Reliably boot Fedora with root on ZFS#References#{9}":[653,653],"###Reliably boot Fedora with root on ZFS#References#{10}":[654,655],"###Reliably boot Fedora with root on ZFS#References#{11}":[656,657],"###Reliably boot Fedora with root on ZFS#Appendix - Deal with updates and upgrades":[658,672],"###Reliably boot Fedora with root on ZFS#Appendix - Deal with updates and upgrades#{1}":[660,672],"###Reliably boot Fedora with root on ZFS#Appendix - Pure ZFS systems":[673,690],"###Reliably boot Fedora with root on ZFS#Appendix - Pure ZFS systems#{1}":[675,690],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems":[691,810],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Prevention":[693,720],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Prevention#{1}":[695,720],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Disaster recovery":[721,726],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Disaster recovery#{1}":[723,726],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Import the pool":[727,732],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Import the pool#{1}":[729,732],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Chroot into the system":[733,739],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Chroot into the system#{1}":[735,739],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Rebuild the zfs modules":[740,747],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Rebuild the zfs modules#{1}":[742,747],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Rebuild the EFI partition":[748,762],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Rebuild the EFI partition#{1}":[750,762],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Reinstall BLS":[763,779],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Reinstall BLS#{1}":[765,779],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Delete the Abominable Cache File":[780,787],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Delete the Abominable Cache File#{1}":[782,787],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Update initrd":[788,794],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Update initrd#{1}":[790,794],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#After any or all of these interventions, exit with:":[795,802],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#After any or all of these interventions, exit with:#{1}":[797,802],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Reboot":[803,804],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Learn from others":[805,810],"###Reliably boot Fedora with root on ZFS#Appendix - Fix boot problems#Learn from others#{1}":[807,810],"###Reliably boot Fedora with root on ZFS#Appendix - A script to build zfs modules":[811,852],"###Reliably boot Fedora with root on ZFS#Appendix - A script to build zfs modules#{1}":[813,852],"###Reliably boot Fedora with root on ZFS#Appendix - Freeze kernel updates":[853,886],"###Reliably boot Fedora with root on ZFS#Appendix - Freeze kernel updates#{1}":[855,886],"###Reliably boot Fedora with root on ZFS#Appendix - Stuck in the emergency shell":[887,935],"###Reliably boot Fedora with root on ZFS#Appendix - Stuck in the emergency shell#{1}":[889,935],"###Reliably boot Fedora with root on ZFS#Appendix - Work-around for a race condition":[936,958],"###Reliably boot Fedora with root on ZFS#Appendix - Work-around for a race condition#{1}":[938,958],"###Reliably boot Fedora with root on ZFS#Appendix - Stuck in grub":[959,972],"###Reliably boot Fedora with root on ZFS#Appendix - Stuck in grub#{1}":[961,972],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping":[973,1014],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping#{1}":[975,978],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping#Create a swap dataset":[979,993],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping#Create a swap dataset#{1}":[981,993],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping#Add the swap volume to fstab:":[994,1014],"###Reliably boot Fedora with root on ZFS#Appendix - Enable swapping#Add the swap volume to fstab:#{1}":[996,1014]},"outlinks":[{"title":"*Hugh Sparks*","target":"mailto:hugh@csparks.com","line":8},{"title":"the patch","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_patch-zfs-for-kernel-5-8-x","line":44},{"title":"Boot ZFS on Fedora 25","target":"https://www.csparks.com/BootFedoraZFS/fedora25.md","line":65},{"title":"Boot ZFS on Fedora 29","target":"https://www.csparks.com/BootFedoraZFS/fedora30.md","line":66},{"title":"ZFS Issue Tracker","target":"https://github.com/openzfs/zfs/issues","line":74},{"title":"Preliminaries","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_preliminaries","line":78},{"title":"Partition the target","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_partition-the-target","line":79},{"title":"Create the ZFS pool and datasets","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_create-the-zfs-pool-and-datasets","line":80},{"title":"Install the operating system","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_install-the-operating-system","line":81},{"title":"Configure the target","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_configure-the-target","line":82},{"title":"Boot the target","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_boot-the-target","line":83},{"title":"Additional configuration","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_additional-configuration","line":84},{"title":"Complaints and suggestions","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_complaints-and-suggestions","line":85},{"title":"References","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_references","line":86},{"title":"Appendix - A script to build ZFS modules","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---a-script-to-build-zfs-modules","line":90},{"title":"Appendix - Deal with updates and upgrades","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---deal-with-updates-and-upgrades","line":91},{"title":"Appendix - Pure ZFS systems","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---pure-zfs-systems","line":92},{"title":"Appendix - Fix boot problems","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---fix-boot-problems","line":93},{"title":"Appendix - Stuck in the emergency shell","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---stuck-in-the-emergency-shell","line":94},{"title":"Appendix - Work-around for a race condition","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---work-around-for-a-race-condition","line":95},{"title":"Appendix - Stuck in grub","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---stuck-in-grub","line":96},{"title":"Appendix - Freeze kernel updates","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---freeze-kernel-updates","line":97},{"title":"Appendix - Enable swapping","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---enable-swapping","line":98},{"title":"fedora linux system","target":"https://getfedora.org/en/workstation/download","line":108},{"title":"ZFS on Linux","target":"https://zfsonlinux.org/","line":108},{"title":"download zenter here.","target":"https://www.csparks.com/BootFedoraZFS/zenter.sh","line":116},{"title":"ZFS Without Tears","target":"https://www.csparks.com/ZFS%20Without%20Tears.md","line":267},{"title":"share your thoughts.","target":"mailto:hugh@csparks.com","line":639},{"title":"Download Fedora Workstation","target":"https://getfedora.org/en/workstation/download","line":645},{"title":"Minimal Fedora Installation via Chroot","target":"https://glacion.com/2019/06/16/Fedora.html","line":646},{"title":"Managing partitions with sgdisk","target":"https://fedoramagazine.org/managing-partitions-with-sgdisk","line":647},{"title":"ZFS on Linux","target":"https://zfsonlinux.org/","line":648},{"title":"ZFS documentation for ArchLinux","target":"https://wiki.archlinux.org/index.php/ZFS","line":649},{"title":"ZFS Without Tears","target":"https://www.csparks.com/ZFS%20Without%20Tears.md","line":650},{"title":"The Linux Sysadmins Guide to Virtual Disks","target":"http://scribesguides.com/books/vdg/latest/Virtual-Disk-Operations.pdf","line":651},{"title":"The Boot Loader Specification","target":"https://systemd.io/BOOT_LOADER_SPECIFICATION","line":652},{"title":"ZFS Issue Tracker","target":"https://github.com/openzfs/zfs/issues","line":653},{"title":"Grub-compatible pool creation","target":"https://wiki.archlinux.org/index.php/ZFS#GRUB-compatible_pool_creation","line":654},{"title":"this script","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---a-script-to-build-zfs-modules","line":667},{"title":"Appendix - Freeze kernel updates","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---freeze-kernel-updates","line":669},{"title":"Grub-compatible pool creation.","target":"https://wiki.archlinux.org/index.php/ZFS#GRUB-compatible_pool_creation","line":675},{"title":"run this script","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---a-script-to-build-zfs-modules","line":719},{"title":"ZFS Issue Tracker","target":"https://github.com/openzfs/zfs/issues","line":807},{"title":"Appendix - Fix boot problems.","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---fix-boot-problems","line":906},{"title":"Appendix - Fix boot problems.","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---fix-boot-problems","line":930},{"title":"ZOL 0.8 Not Loading Modules or ZPools on Boot #8885.","target":"https://github.com/openzfs/zfs/issues/8885","line":945},{"title":"Grub Expressions.","target":"https://www.csparks.com/BootFedoraZFS/GrubExpressions.md","line":969},{"title":"Appendix - Fix boot problems.","target":"https://www.csparks.com/BootFedoraZFS/index.md#toc_appendix---fix-boot-problems","line":969},{"title":"swap deadlock thread.","target":"https://github.com/openzfs/zfs/issues/7734","line":975}],"metadata":{"page-title":"Reliably boot Fedora with root on ZFS","url":"https://www.csparks.com/BootFedoraZFS/index.md#toc_preliminaries","date":"2024-05-29 14:21:24"},"task_lines":[],"tasks":{},"codeblock_ranges":[[14,40],[50,53],[118,140],[144,146],[152,158],[164,169],[177,183],[189,191],[195,198],[204,206],[210,212],[216,218],[228,230],[234,236],[240,242],[246,248],[252,255],[263,265],[271,273],[277,280],[284,288],[292,303],[316,322],[330,333],[341,345],[349,353],[363,368],[376,379],[383,385],[393,398],[406,410],[414,418],[424,429],[433,445],[451,453],[457,459],[463,466],[470,477],[481,494],[498,503],[507,510],[514,516],[522,525],[529,532],[536,539],[543,545],[549,551],[555,557],[561,565],[569,571],[579,581],[585,587],[593,605],[613,616],[624,627],[631,633],[662,665],[681,685],[699,702],[706,709],[713,715],[729,731],[735,738],[742,744],[752,754],[758,761],[767,771],[775,778],[782,784],[790,793],[797,801],[815,849],[859,866],[870,872],[876,883],[891,894],[902,904],[910,914],[918,922],[926,928],[940,943],[949,955],[963,965],[981,992],[996,1000],[1004,1006]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_06_Comparison_to_alternatives_—_Meilisearch_documentation_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_06_Comparison_to_alternatives_—_Meilisearch_documentation_md.ajson deleted file mode 100644 index e68b677..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_06_Comparison_to_alternatives_—_Meilisearch_documentation_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/06/Comparison to alternatives — Meilisearch documentation.md": {"path":"000-inbox/clippings/2024/06/Comparison to alternatives — Meilisearch documentation.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1qztffa","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1719280427000,"size":24105,"at":1766986878957,"hash":"1qztffa"},"blocks":{"#---frontmatter---":[1,5],"##Comparison to alternatives":[6,22],"##Comparison to alternatives#{1}":[8,9],"##Comparison to alternatives#{2}":[10,11],"##Comparison to alternatives#{3}":[12,13],"##Comparison to alternatives#{4}":[14,16],"##Comparison to alternatives###NOTE":[17,22],"##Comparison to alternatives###NOTE#{1}":[19,22],"##Comparison table":[23,827],"##Comparison table#{1}":[25,26],"##Comparison table#General overview":[27,74],"##Comparison table#General overview#{1}":[29,74],"##Comparison table#Features":[75,677],"##Comparison table#Features#{1}":[77,78],"##Comparison table#Features#Integrations and SDKs":[79,88],"##Comparison table#Features#Integrations and SDKs#{1}":[81,88],"##Comparison table#Features#Configuration":[89,571],"##Comparison table#Features#Configuration#{1}":[91,92],"##Comparison table#Features#Configuration#Document schema":[93,168],"##Comparison table#Features#Configuration#Document schema#{1}":[95,168],"##Comparison table#Features#Configuration#Relevancy":[169,275],"##Comparison table#Features#Configuration#Relevancy#{1}":[171,275],"##Comparison table#Features#Configuration#Security":[276,311],"##Comparison table#Features#Configuration#Security#{1}":[278,311],"##Comparison table#Features#Configuration#Search":[312,425],"##Comparison table#Features#Configuration#Search#{1}":[314,425],"##Comparison table#Features#Configuration#AI-powered search":[426,518],"##Comparison table#Features#Configuration#AI-powered search#{1}":[428,518],"##Comparison table#Features#Configuration#Visualize":[519,571],"##Comparison table#Features#Configuration#Visualize#{1}":[521,571],"##Comparison table#Features#Deployment":[572,677],"##Comparison table#Features#Deployment#{1}":[574,677],"##Comparison table#Limits":[678,771],"##Comparison table#Limits#{1}":[680,771],"##Comparison table#Support":[772,827],"##Comparison table#Support#{1}":[774,827],"##Approach comparison":[828,896],"##Approach comparison#{1}":[830,831],"##Approach comparison#Meilisearch vs Elasticsearch":[832,849],"##Approach comparison#Meilisearch vs Elasticsearch#{1}":[834,849],"##Approach comparison#Meilisearch vs Algolia":[850,896],"##Approach comparison#Meilisearch vs Algolia#{1}":[852,861],"##Approach comparison#Meilisearch vs Algolia#Key similarities":[862,876],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{1}":[864,867],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{2}":[868,868],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{3}":[869,869],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{4}":[870,870],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{5}":[871,871],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{6}":[872,872],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{7}":[873,874],"##Approach comparison#Meilisearch vs Algolia#Key similarities#{8}":[875,876],"##Approach comparison#Meilisearch vs Algolia#Key differences":[877,886],"##Approach comparison#Meilisearch vs Algolia#Key differences#{1}":[879,886],"##Approach comparison#Meilisearch vs Algolia#Pricing":[887,896],"##Approach comparison#Meilisearch vs Algolia#Pricing#{1}":[889,896],"##A quick look at the search engine landscape":[897,1004],"##A quick look at the search engine landscape#{1}":[899,900],"##A quick look at the search engine landscape#Open source":[901,960],"##A quick look at the search engine landscape#Open source#{1}":[903,904],"##A quick look at the search engine landscape#Open source#Lucene":[905,920],"##A quick look at the search engine landscape#Open source#Lucene#{1}":[907,912],"##A quick look at the search engine landscape#Open source#Lucene#{2}":[913,913],"##A quick look at the search engine landscape#Open source#Lucene#{3}":[914,914],"##A quick look at the search engine landscape#Open source#Lucene#{4}":[915,916],"##A quick look at the search engine landscape#Open source#Lucene#{5}":[917,920],"##A quick look at the search engine landscape#Open source#Sonic":[921,930],"##A quick look at the search engine landscape#Open source#Sonic#{1}":[923,930],"##A quick look at the search engine landscape#Open source#Typesense":[931,938],"##A quick look at the search engine landscape#Open source#Typesense#{1}":[933,938],"##A quick look at the search engine landscape#Open source#Lucene derivatives":[939,942],"##A quick look at the search engine landscape#Open source#Lucene derivatives#{1}":[941,942],"##A quick look at the search engine landscape#Open source#Lucene-Solr":[943,952],"##A quick look at the search engine landscape#Open source#Lucene-Solr#{1}":[945,952],"##A quick look at the search engine landscape#Open source#Bleve & Tantivy":[953,960],"##A quick look at the search engine landscape#Open source#Bleve & Tantivy#{1}":[955,960],"##A quick look at the search engine landscape#Source available":[961,974],"##A quick look at the search engine landscape#Source available#{1}":[963,964],"##A quick look at the search engine landscape#Source available#Elasticsearch":[965,974],"##A quick look at the search engine landscape#Source available#Elasticsearch#{1}":[967,974],"##A quick look at the search engine landscape#Closed source":[975,1004],"##A quick look at the search engine landscape#Closed source#{1}":[977,978],"##A quick look at the search engine landscape#Closed source#Algolia":[979,988],"##A quick look at the search engine landscape#Closed source#Algolia#{1}":[981,988],"##A quick look at the search engine landscape#Closed source#Swiftype":[989,996],"##A quick look at the search engine landscape#Closed source#Swiftype#{1}":[991,996],"##A quick look at the search engine landscape#Closed source#Doofinder":[997,1004],"##A quick look at the search engine landscape#Closed source#Doofinder#{1}":[999,1004],"##Conclusions":[1005,1033],"##Conclusions#{1}":[1007,1030],"##Conclusions#Was this helpful?":[1031,1033],"##Conclusions#Was this helpful?#{1}":[1033,1033]},"outlinks":[{"title":"comparison table","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#comparison-table","line":10},{"title":"approach comparison","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#approach-comparison","line":12},{"title":"Algolia","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#meilisearch-vs-algolia","line":12},{"title":"ElasticSearch","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#meilisearch-vs-elasticsearch","line":12},{"title":"an in-depth analysis of the broader search engine landscape","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#a-quick-look-at-the-search-engine-landscape","line":14},{"title":"issue or pull request","target":"https://github.com/meilisearch/documentation","line":19},{"title":"\n\n## Comparison table\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#comparison-table","line":21},{"title":"\n\n### General overview\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#general-overview","line":25},{"title":"MIT","target":"https://choosealicense.com/licenses/mit/","line":41},{"title":"GPL-3","target":"https://choosealicense.com/licenses/gpl-3.0/","line":46},{"title":"Not open-source","target":"https://opensource.org/node/1099","line":50},{"title":"Check out why we believe in Rust","target":"https://www.abetterinternet.org/docs/memory-safety/","line":55},{"title":"\n\n### Features\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#features","line":73},{"title":"\n\n#### Integrations and SDKs\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#integrations-and-sdks","line":77},{"title":"Submit your idea or vote for it","target":"https://roadmap.meilisearch.com/tabs/1-under-consideration","line":85},{"title":"\n\n#### Configuration\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#configuration","line":87},{"title":"\n\n##### Document schema\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#document-schema","line":91},{"title":"\n\n##### Relevancy\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#relevancy","line":167},{"title":"\n\n##### Security\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#security","line":274},{"title":"Multitenancy support","target":"https://www.meilisearch.com/docs/learn/security/multitenancy_tenant_tokens","line":301},{"title":"\n\n##### Search\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#search","line":310},{"title":"\n\n##### AI-powered search\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#ai-powered-search","line":424},{"title":"\n\n##### Visualize\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#visualize","line":517},{"title":"Mini Dashboard","target":"https://github.com/meilisearch/mini-dashboard","line":531},{"title":"Cloud product","target":"https://www.meilisearch.com/cloud","line":546},{"title":"Cloud product","target":"https://www.meilisearch.com/docs/learn/cloud/monitoring","line":559},{"title":"\n\n#### Deployment\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#deployment","line":570},{"title":"DigitalOcean","target":"https://marketplace.digitalocean.com/apps/meilisearch","line":613},{"title":"Platform.sh","target":"https://console.platform.sh/projects/create-project?template=https://raw.githubusercontent.com/platformsh/template-builder/master/templates/meilisearch/.platform.template.yaml","line":614},{"title":"Azure","target":"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fcmaneu%2Fmeilisearch-on-azure%2Fmain%2Fmain.json","line":615},{"title":"Railway","target":"https://railway.app/new/template/TXxa09?referralCode=YltNo3","line":616},{"title":"Koyeb","target":"https://app.koyeb.com/deploy?type=docker&image=getmeili/meilisearch&name=meilisearch-on-koyeb&ports=7700;http;/&env%5BMEILI_MASTER_KEY%5D=REPLACE_ME_WITH_A_STRONG_KEY","line":617},{"title":"Meilisearch Cloud","target":"https://www.meilisearch.com/cloud?utm_campaign=oss&utm_source=docs&utm_medium=comparison-table","line":628},{"title":"Meilisearch Cloud","target":"https://www.meilisearch.com/cloud?utm_campaign=oss&utm_source=docs&utm_medium=comparison-table","line":638},{"title":"\n\n### Limits\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#limits","line":676},{"title":"\n\n### Support\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#support","line":770},{"title":"\n\n## Approach comparison\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#approach-comparison","line":826},{"title":"\n\n### Meilisearch vs Elasticsearch\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#meilisearch-vs-elasticsearch","line":830},{"title":"blog post on Elasticsearch","target":"https://blog.meilisearch.com/meilisearch-vs-elasticsearch/?utm_campaign=oss&utm_source=docs&utm_medium=comparison","line":846},{"title":"\n\n### Meilisearch vs Algolia\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#meilisearch-vs-algolia","line":848},{"title":"migration guide","target":"https://www.meilisearch.com/docs/learn/update_and_migration/algolia_migration","line":858},{"title":"\n\n#### Key similarities\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#key-similarities","line":860},{"title":"Features","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/overview#features","line":868},{"title":"\n\n#### Key differences\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#key-differences","line":875},{"title":"Lambda@Edge","target":"https://aws.amazon.com/lambda/edge/","line":883},{"title":"\n\n#### Pricing\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#pricing","line":885},{"title":"pricing model for Algolia","target":"https://www.algolia.com/pricing/","line":891},{"title":"Meilisearch Cloud","target":"https://meilisearch.com/cloud?utm_campaign=oss&utm_source=docs&utm_medium=comparison","line":893},{"title":"Meilisearch pricing","target":"https://www.meilisearch.com/pricing?utm_campaign=oss&utm_source=docs&utm_medium=comparison","line":893},{"title":"\n\n## A quick look at the search engine landscape\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#a-quick-look-at-the-search-engine-landscape","line":895},{"title":"\n\n### Open source\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#open-source","line":899},{"title":"\n\n#### Lucene\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#lucene","line":903},{"title":"\n\n#### Sonic\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#sonic","line":919},{"title":"\n\n#### Typesense\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#typesense","line":929},{"title":"blog post on Typesense","target":"https://blog.meilisearch.com/meilisearch-vs-typesense/?utm_campaign=oss&utm_source=docs&utm_medium=comparison","line":935},{"title":"\n\n#### Lucene derivatives\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#lucene-derivatives","line":937},{"title":"\n\n#### Lucene-Solr\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#lucene-solr","line":941},{"title":"\n\n#### Bleve & Tantivy\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#bleve--tantivy","line":951},{"title":"\n\n### Source available\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#source-available","line":959},{"title":"\n\n#### Elasticsearch\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#elasticsearch","line":963},{"title":"\n\n### Closed source\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#closed-source","line":973},{"title":"\n\n#### Algolia\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#algolia","line":977},{"title":"\n\n#### Swiftype\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#swiftype","line":987},{"title":"\n\n#### Doofinder\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#doofinder","line":995},{"title":"\n\n## Conclusions\n\n","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives#conclusions","line":1003},{"title":"\n\nEdit this page\n\n","target":"https://github.com/meilisearch/documentation/edit/main/learn/what_is_meilisearch/comparison_to_alternatives.mdx","line":1023},{"title":"Official SDKs/libraries","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/sdks","line":1029},{"title":"Telemetry","target":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/telemetry","line":1029},{"title":"Raise an issue","target":"https://github.com/meilisearch/documentation/issues/new","line":1033}],"metadata":{"page-title":"Comparison to alternatives — Meilisearch documentation","url":"https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives","date":"2024-06-25 09:53:37"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_06_The_rEFInd_Boot_Manager_Getting_rEFInd_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_06_The_rEFInd_Boot_Manager_Getting_rEFInd_md.ajson deleted file mode 100644 index 1be2482..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_06_The_rEFInd_Boot_Manager_Getting_rEFInd_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/06/The rEFInd Boot Manager Getting rEFInd.md": {"path":"000-inbox/clippings/2024/06/The rEFInd Boot Manager Getting rEFInd.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"s2wdgp","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1717553384004,"size":12067,"at":1766986878957,"hash":"s2wdgp"},"blocks":{"#---frontmatter---":[1,5],"#":[6,18],"##Getting rEFInd from Sourceforge":[19,34],"##Getting rEFInd from Sourceforge#{1}":[21,22],"##Getting rEFInd from Sourceforge#{2}":[23,23],"##Getting rEFInd from Sourceforge#{3}":[24,24],"##Getting rEFInd from Sourceforge#{4}":[25,25],"##Getting rEFInd from Sourceforge#{5}":[26,26],"##Getting rEFInd from Sourceforge#{6}":[27,27],"##Getting rEFInd from Sourceforge#{7}":[28,28],"##Getting rEFInd from Sourceforge#{8}":[29,30],"##Getting rEFInd from Sourceforge#{9}":[31,34],"##Getting rEFInd from Your OS's Repositories":[35,72],"##Getting rEFInd from Your OS's Repositories#{1}":[37,38],"##Getting rEFInd from Your OS's Repositories#{2}":[39,39],"##Getting rEFInd from Your OS's Repositories#{3}":[40,42],"##Getting rEFInd from Your OS's Repositories#{4}":[43,47],"##Getting rEFInd from Your OS's Repositories#{5}":[48,48],"##Getting rEFInd from Your OS's Repositories#{6}":[49,49],"##Getting rEFInd from Your OS's Repositories#{7}":[50,50],"##Getting rEFInd from Your OS's Repositories#{8}":[51,51],"##Getting rEFInd from Your OS's Repositories#{9}":[52,52],"##Getting rEFInd from Your OS's Repositories#{10}":[53,53],"##Getting rEFInd from Your OS's Repositories#{11}":[54,55],"##Getting rEFInd from Your OS's Repositories#{12}":[56,72]},"outlinks":[{"title":"rodsmith@rodsbooks.com","target":"mailto:rodsmith@rodsbooks.com","line":6},{"title":"main page.","target":"https://www.rodsbooks.com/refind/index.html","line":13},{"title":"its SourceForge page.","target":"http://www.sourceforge.net/projects/refind/","line":21},{"title":"A binary zip file","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-bin-0.14.2.zip/download","line":23},{"title":"variant package","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-bin-gnuefi-0.14.2.zip/download","line":23},{"title":"Installing and Uninstalling rEFInd","target":"https://www.rodsbooks.com/refind/installing.html","line":23},{"title":"source RPM file","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-0.14.2-1.src.rpm/download","line":24},{"title":"A binary RPM file","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-0.14.2-1.x86_64.rpm/download","line":24},{"title":"Installing and Uninstalling rEFInd","target":"https://www.rodsbooks.com/refind/installing.html","line":24},{"title":"A binary Debian package","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind_0.14.2-1_amd64.deb/download","line":25},{"title":"Ubuntu PPA","target":"https://www.rodsbooks.com/refind/getting.html#ppa","line":25},{"title":"A CD-R image file","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-cd-0.14.2.zip/download","line":26},{"title":"A USB flash drive image file","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-flashdrive-0.14.2.zip/download","line":27},{"title":"GNU-EFI","target":"http://sourceforge.net/projects/gnu-efi","line":28},{"title":"A source code tarball","target":"http://sourceforge.net/projects/refind/files/0.14.2/refind-src-0.14.2.tar.gz/download","line":28},{"title":"TianoCore EFI Development Kit 2 (EDK2)","target":"https://sourceforge.net/projects/tianocore/","line":28},{"title":"Source code via git","target":"https://sourceforge.net/p/refind/code/ci/master/tree/","line":29},{"title":"7-Zip.","target":"http://www.7-zip.org/","line":33},{"title":"PKZIP","target":"http://www.pkware.com/software/pkzip/","line":33},{"title":"here.","target":"https://packages.debian.org/unstable/admin/refind","line":39},{"title":"rEFInd PPA","target":"https://launchpad.net/~rodsmith/+archive/refind","line":41},{"title":"this page","target":"http://packages.altlinux.org/en/Sisyphus/srpms/refind","line":50},{"title":"here","target":"https://packages.gentoo.org/packages/sys-boot/refind","line":51},{"title":"here","target":"https://wiki.gentoo.org/wiki/Refind","line":51},{"title":"Slackware package from SlackBuilds","target":"https://www.slackbuilds.org/result/?search=refind&sv=","line":52},{"title":"Fat Dog","target":"http://distro.ibiblio.org/fatdog/web/","line":53},{"title":"Nix Packages collection","target":"http://nixos.org/nixpkgs/","line":54},{"title":"drop me a line.","target":"mailto:rodsmith@rodsbooks.com","line":58},{"title":"GNU Free Documentation License (FDL), version 1.3.","target":"https://www.rodsbooks.com/refind/FDL-1.3.txt","line":64},{"title":"rodsmith@rodsbooks.com.","target":"mailto:rodsmith@rodsbooks.com","line":66},{"title":"Go to the main rEFInd page","target":"https://www.rodsbooks.com/refind/index.html","line":68},{"title":"Learn how to install rEFInd","target":"https://www.rodsbooks.com/refind/installing.html","line":70},{"title":"Return","target":"https://www.rodsbooks.com/","line":72}],"metadata":{"page-title":"The rEFInd Boot Manager: Getting rEFInd","url":"https://www.rodsbooks.com/refind/getting.html","date":"2024-06-05 10:09:10"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_06_机场推荐与机场评测SSRV2rayTrojan订阅(2024_6)_-_机场推荐与机场评测_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_06_机场推荐与机场评测SSRV2rayTrojan订阅(2024_6)_-_机场推荐与机场评测_md.ajson deleted file mode 100644 index 54a7e95..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_06_机场推荐与机场评测SSRV2rayTrojan订阅(2024_6)_-_机场推荐与机场评测_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/06/机场推荐与机场评测SSRV2rayTrojan订阅(2024.6) - 机场推荐与机场评测.md": {"path":"000-inbox/clippings/2024/06/机场推荐与机场评测SSRV2rayTrojan订阅(2024.6) - 机场推荐与机场评测.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"dtjfid","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1719546195209,"size":91382,"at":1766986878957,"hash":"dtjfid"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话":[18,63],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{1}":[20,20],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{2}":[21,27],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{3}":[28,29],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{4}":[30,32],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{5}":[33,34],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{6}":[35,36],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{7}":[37,38],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{8}":[39,40],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{9}":[41,42],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{10}":[43,43],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{11}":[44,53],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{12}":[54,55],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%AF%B4%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E8%AF%9D \"说在前面的话\")说在前面的话#{13}":[56,63],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%80%E3%80%81BoostNet-39-%E6%9C%88200G \"一、BoostNet(39/月200G)\")一、BoostNet(39/月200G)":[64,123],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%80%E3%80%81BoostNet-39-%E6%9C%88200G \"一、BoostNet(39/月200G)\")一、BoostNet(39/月200G)#{1}":[66,123],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E3%80%81%E6%82%A0%E5%85%94-150%E5%B9%B4-200G \"二、悠兔(150年/200G)\")二、悠兔(150年/200G)":[124,194],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E3%80%81%E6%82%A0%E5%85%94-150%E5%B9%B4-200G \"二、悠兔(150年/200G)\")二、悠兔(150年/200G)#{1}":[126,194],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%89%E3%80%81WgetCloud-49-%E6%9C%88120G \"三、WgetCloud(49/月120G)\")三、WgetCloud(49/月120G)":[195,266],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%89%E3%80%81WgetCloud-49-%E6%9C%88120G \"三、WgetCloud(49/月120G)\")三、WgetCloud(49/月120G)#{1}":[197,266],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%9B%9B%E3%80%81TAG-154%E5%B9%B4-200G \"四、TAG(154年/200G)\")四、TAG(154年/200G)":[267,354],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%9B%9B%E3%80%81TAG-154%E5%B9%B4-200G \"四、TAG(154年/200G)\")四、TAG(154年/200G)#{1}":[269,354],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%94%E3%80%81%E8%B4%9D%E8%B4%9D%E4%BA%91-9-9-%E6%9C%8880G \"五、贝贝云(9.9/月80G)\")五、贝贝云(9.9/月80G)":[355,417],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%94%E3%80%81%E8%B4%9D%E8%B4%9D%E4%BA%91-9-9-%E6%9C%8880G \"五、贝贝云(9.9/月80G)\")五、贝贝云(9.9/月80G)#{1}":[357,417],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%85%AD%E3%80%81Kycloud-150-%E5%B9%B4120G \"六、Kycloud(150/年120G)\")六、Kycloud(150/年120G)":[418,514],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%85%AD%E3%80%81Kycloud-150-%E5%B9%B4120G \"六、Kycloud(150/年120G)\")六、Kycloud(150/年120G)#{1}":[420,514],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%83%E3%80%81Cyanmori-20-%E6%9C%88160G \"七、Cyanmori(20/月160G)\")七、Cyanmori(20/月160G)":[515,616],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B8%83%E3%80%81Cyanmori-20-%E6%9C%88160G \"七、Cyanmori(20/月160G)\")七、Cyanmori(20/月160G)#{1}":[517,616],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%85%AB%E3%80%81%E6%B5%B7%E7%8D%AD-8-99-%E6%9C%8850G \"八、海獭(8.99/月50G)\")八、海獭(8.99/月50G)":[617,657],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%85%AB%E3%80%81%E6%B5%B7%E7%8D%AD-8-99-%E6%9C%8850G \"八、海獭(8.99/月50G)\")八、海獭(8.99/月50G)#{1}":[619,657],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B9%9D%E3%80%81%E8%80%81%E7%8C%AB%E4%BA%91-15-%E6%9C%8850G \"九、老猫云(15/月50G)\")九、老猫云(15/月50G)":[658,700],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%B9%9D%E3%80%81%E8%80%81%E7%8C%AB%E4%BA%91-15-%E6%9C%8850G \"九、老猫云(15/月50G)\")九、老猫云(15/月50G)#{1}":[660,700],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)":[701,745],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{1}":[703,734],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{2}":[735,735],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{3}":[736,736],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{4}":[737,737],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{5}":[738,738],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{6}":[739,739],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{7}":[740,741],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E3%80%81SpeedCAT-20-%E6%9C%88100G \"十、SpeedCAT(20/月100G)\")十、SpeedCAT(20/月100G)#{8}":[742,745],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%80%E3%80%81%E4%B8%80%E4%BA%91%E6%A2%AF-15-%E6%9C%88100G \"十一、一云梯(15/月100G)\")十一、一云梯(15/月100G)":[746,779],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%80%E3%80%81%E4%B8%80%E4%BA%91%E6%A2%AF-15-%E6%9C%88100G \"十一、一云梯(15/月100G)\")十一、一云梯(15/月100G)#{1}":[748,779],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%BA%8C%E3%80%81Flyingbird-15-%E6%9C%88100G \"十二、Flyingbird(15/月100G)\")十二、Flyingbird(15/月100G)":[780,823],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%BA%8C%E3%80%81Flyingbird-15-%E6%9C%88100G \"十二、Flyingbird(15/月100G)\")十二、Flyingbird(15/月100G)#{1}":[782,823],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%89%E3%80%81%E9%BE%99%E7%8C%AB%E4%BA%91-15-%E6%9C%88100G \"十三、龙猫云(15/月100G)\")十三、龙猫云(15/月100G)":[824,870],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%89%E3%80%81%E9%BE%99%E7%8C%AB%E4%BA%91-15-%E6%9C%88100G \"十三、龙猫云(15/月100G)\")十三、龙猫云(15/月100G)#{1}":[826,870],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%9B%9B%E3%80%81Arisaka-16-%E6%9C%8880G \"十四、Arisaka(16/月80G)\")十四、Arisaka(16/月80G)":[871,896],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%9B%9B%E3%80%81Arisaka-16-%E6%9C%8880G \"十四、Arisaka(16/月80G)\")十四、Arisaka(16/月80G)#{1}":[873,896],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%BA%94%E3%80%81STC-SERVER-88-%E6%9C%88100G \"十五、STC-SERVER(88/月100G)\")十五、STC-SERVER(88/月100G)":[897,985],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%BA%94%E3%80%81STC-SERVER-88-%E6%9C%88100G \"十五、STC-SERVER(88/月100G)\")十五、STC-SERVER(88/月100G)#{1}":[899,985],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AD%E3%80%81%E8%B7%91%E8%B7%AF%E4%BA%91-17-9-%E6%9C%88125G \"十六、跑路云(17.9/月125G)\")十六、跑路云(17.9/月125G)":[986,1041],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AD%E3%80%81%E8%B7%91%E8%B7%AF%E4%BA%91-17-9-%E6%9C%88125G \"十六、跑路云(17.9/月125G)\")十六、跑路云(17.9/月125G)#{1}":[988,1026],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AD%E3%80%81%E8%B7%91%E8%B7%AF%E4%BA%91-17-9-%E6%9C%88125G \"十六、跑路云(17.9/月125G)\")十六、跑路云(17.9/月125G)#{2}":[1027,1027],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AD%E3%80%81%E8%B7%91%E8%B7%AF%E4%BA%91-17-9-%E6%9C%88125G \"十六、跑路云(17.9/月125G)\")十六、跑路云(17.9/月125G)#{3}":[1028,1029],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AD%E3%80%81%E8%B7%91%E8%B7%AF%E4%BA%91-17-9-%E6%9C%88125G \"十六、跑路云(17.9/月125G)\")十六、跑路云(17.9/月125G)#{4}":[1030,1041],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%83%E3%80%81Catnet-25-%E6%9C%88100G \"十七、Catnet(25/月100G)\")十七、Catnet(25/月100G)":[1042,1081],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%83%E3%80%81Catnet-25-%E6%9C%88100G \"十七、Catnet(25/月100G)\")十七、Catnet(25/月100G)#{1}":[1044,1074],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%83%E3%80%81Catnet-25-%E6%9C%88100G \"十七、Catnet(25/月100G)\")十七、Catnet(25/月100G)#{2}":[1075,1075],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%83%E3%80%81Catnet-25-%E6%9C%88100G \"十七、Catnet(25/月100G)\")十七、Catnet(25/月100G)#{3}":[1076,1077],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B8%83%E3%80%81Catnet-25-%E6%9C%88100G \"十七、Catnet(25/月100G)\")十七、Catnet(25/月100G)#{4}":[1078,1081],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AB%E3%80%81Sayss-33-%E6%9C%88100G \"十八、Sayss(33/月100G)\")十八、Sayss(33/月100G)":[1082,1144],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E5%85%AB%E3%80%81Sayss-33-%E6%9C%88100G \"十八、Sayss(33/月100G)\")十八、Sayss(33/月100G)#{1}":[1084,1144],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B9%9D%E3%80%81TaiShan-60-%E5%B9%B4 \"十九、TaiShan(60/年)\")十九、TaiShan(60/年)":[1145,1212],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E5%8D%81%E4%B9%9D%E3%80%81TaiShan-60-%E5%B9%B4 \"十九、TaiShan(60/年)\")十九、TaiShan(60/年)#{1}":[1147,1212],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E3%80%81%E7%96%BE%E9%A3%8E-9-99-%E6%9C%8850G \"二十、疾风(9.99/月50G)\")二十、疾风(9.99/月50G)":[1213,1316],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E3%80%81%E7%96%BE%E9%A3%8E-9-99-%E6%9C%8850G \"二十、疾风(9.99/月50G)\")二十、疾风(9.99/月50G)#{1}":[1215,1316],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%B8%80%E3%80%81Just-my-sock-5-8%E5%88%80-%E6%9C%88108G \"二十一、Just my sock(5.8刀/月108G)\")二十一、Just my sock(5.8刀/月108G)":[1317,1395],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%B8%80%E3%80%81Just-my-sock-5-8%E5%88%80-%E6%9C%88108G \"二十一、Just my sock(5.8刀/月108G)\")二十一、Just my sock(5.8刀/月108G)#{1}":[1319,1395],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%8C%E3%80%81EdNovas%E4%BA%91-10-%E6%9C%8850G \"二十二、EdNovas云(10/月50G)\")二十二、EdNovas云(10/月50G)":[1396,1472],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%8C%E3%80%81EdNovas%E4%BA%91-10-%E6%9C%8850G \"二十二、EdNovas云(10/月50G)\")二十二、EdNovas云(10/月50G)#{1}":[1398,1472],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%B8%89%E3%80%81%E8%8A%AC%E8%BE%BE-18-%E6%9C%88158G \"二十三、芬达(18/月158G)\")二十三、芬达(18/月158G)":[1473,1540],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%B8%89%E3%80%81%E8%8A%AC%E8%BE%BE-18-%E6%9C%88158G \"二十三、芬达(18/月158G)\")二十三、芬达(18/月158G)#{1}":[1475,1540],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E5%9B%9B%E3%80%81%E7%BF%BC%E6%B8%B8-12-%E6%9C%8850G \"二十四、翼游(12/月50G)\")二十四、翼游(12/月50G)":[1541,1620],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E5%9B%9B%E3%80%81%E7%BF%BC%E6%B8%B8-12-%E6%9C%8850G \"二十四、翼游(12/月50G)\")二十四、翼游(12/月50G)#{1}":[1543,1620],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)":[1621,1661],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{1}":[1623,1649],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{2}":[1650,1650],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{3}":[1651,1651],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{4}":[1652,1652],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{5}":[1653,1654],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E4%BA%8C%E5%8D%81%E4%BA%94%E3%80%81%E6%B3%A1%E6%B3%A1%E7%8B%97-8-8-%E6%9C%8870G \"二十五、泡泡狗(8.8/月70G)\")二十五、泡泡狗(8.8/月70G)#{6}":[1655,1661],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠":[1662,1680],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#BossetNet \"BossetNet\")BossetNet":[1664,1668],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#BossetNet \"BossetNet\")BossetNet#{1}":[1666,1668],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%82%A0%E5%85%94 \"悠兔\")悠兔":[1669,1674],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%82%A0%E5%85%94 \"悠兔\")悠兔#{1}":[1671,1674],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%9D%E8%B4%9D%E4%BA%91 \"贝贝云\")贝贝云":[1675,1680],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E6%9C%BA%E5%9C%BA%E4%BC%98%E6%83%A0 \"机场优惠\")机场优惠#[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%9D%E8%B4%9D%E4%BA%91 \"贝贝云\")贝贝云#{1}":[1677,1680],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选":[1681,1849],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{1}":[1683,1686],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{2}":[1687,1688],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{3}":[1689,1708],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{4}":[1709,1709],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{5}":[1710,1717],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{6}":[1718,1718],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{7}":[1719,1722],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{8}":[1723,1724],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{9}":[1725,1726],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{10}":[1727,1728],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{11}":[1729,1730],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{12}":[1731,1732],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{13}":[1733,1734],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{14}":[1735,1736],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{15}":[1737,1738],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{16}":[1739,1740],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{17}":[1741,1742],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{18}":[1743,1744],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{19}":[1745,1747],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{20}":[1748,1760],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{21}":[1761,1762],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{22}":[1763,1764],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{23}":[1765,1766],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{24}":[1767,1768],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{25}":[1769,1770],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{26}":[1771,1771],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{27}":[1772,1781],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{28}":[1782,1783],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{29}":[1784,1785],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{30}":[1786,1787],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{31}":[1788,1790],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{32}":[1791,1794],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{33}":[1795,1796],"##[](https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html#%E8%B4%AD%E4%B9%B0%E6%8C%87%E5%AF%BC%E6%80%BB%E7%BB%93-%E5%BF%AB%E9%80%9F%E7%AD%9B%E9%80%89 \"购买指导总结,快速筛选\")购买指导总结,快速筛选#{34}":[1797,1849]},"outlinks":[{"title":"科学上网观察与机场测速TG频道","target":"https://t.me/jichangtj","line":10},{"title":"科学上网与机场观察推特","target":"https://twitter.com/jichangtj","line":12},{"title":"本博客备份地址,同步更新","target":"https://sites.google.com/view/honven/%E9%A6%96%E9%A1%B5/%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90","line":14},{"title":"Github备份地址,同步更新,欢迎Star","target":"https://github.com/hwanz/SSR-V2ray-Trojan/blob/main/README.md","line":16},{"title":"![三色图","target":"https://jichangtuijian.com/uploads/vpn/0.webp","line":24},{"title":"三色图","target":"https://jichangtuijian.com/uploads/vpn/0.webp \"三色图\"","line":26},{"title":"最新翻墙协议Reality自建教程","target":"https://jichangtuijian.com/Reality%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%84%9A%E6%9C%AC%E5%92%8C%E5%90%84%E4%B8%AA%E7%B3%BB%E7%BB%9F%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%94%B6%E9%9B%86%E6%8E%A8%E8%8D%90.html","line":30},{"title":"适合建站与自建梯子国外VPS推荐","target":"https://jichangtuijian.com/%E5%9B%BD%E5%A4%96VPS%E4%B8%BB%E6%9C%BA%E6%8E%A8%E8%8D%90.html","line":33},{"title":"币安和欧易使用教程","target":"https://jichangtuijian.com/%E5%B8%81%E5%AE%89%E5%92%8C%E6%AC%A7%E6%98%93OKX%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":41},{"title":"Windows安卓Mac和ios代理客户端软件整理推荐和使用教程","target":"https://jichangtuijian.com/proxyclient.html","line":43},{"title":"果果商店","target":"https://appleidbook.top/","line":44},{"title":"机场小白新手使用教程和常见问题,不会买机场的也可以看","target":"https://jichangtuijian.com/%E6%9C%BA%E5%9C%BA%E4%BD%BF%E7%94%A8%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98.html","line":54},{"title":"![机场线路图,图中可能有点问题但是整体是对的","target":"https://jichangtuijian.com/uploads/vpn/1.webp","line":58},{"title":"机场线路图,图中可能有点问题但是整体是对的","target":"https://jichangtuijian.com/uploads/vpn/1.webp \"机场线路图,图中可能有点问题但是整体是对的\"","line":60},{"title":"BoostNet机场官网地址1","target":"https://boostqz.com/?path=register&code=Pj4Wrfai","line":68},{"title":"BoostNet机场官网地址2","target":"https://boostnet.top/#/register?code=Pj4Wrfai","line":70},{"title":"BoostNet机场官网地址3","target":"https://boostnet2.top/#/register?code=Pj4Wrfai","line":72},{"title":"BoostNet使用教程、拓扑结构、ChatGPT解锁和流媒体检测和历史测速结果合集","target":"https://jichangtuijian.com/boostnet.html","line":96},{"title":"![机场推荐之BoostNet机场测速","target":"https://jichangtuijian.com/uploads/vpn/boostnet.webp","line":120},{"title":"机场推荐之BoostNet机场测速","target":"https://jichangtuijian.com/uploads/vpn/boostnet.webp \"机场推荐之BoostNet机场测速\"","line":122},{"title":"悠兔机场官网地址1","target":"https://youtunice.com/?path=register&code=3CxiqyOc","line":128},{"title":"悠兔机场官网地址2","target":"https://youtu0.com/?path=register&code=3CxiqyOc","line":130},{"title":"悠兔机场官网地址3","target":"https://link2.yootu.shop/register?aff=3CxiqyOc","line":132},{"title":"悠兔机场官网地址4","target":"https://youtu6.shop/register?aff=3CxiqyOc","line":134},{"title":"悠兔机场官网地址5-福建可打开","target":"https://xn--h5qt68a.xn--sjqr9mozc.com/register?aff=3CxiqyOc","line":136},{"title":"使用教程、ChatGPT、流媒体历史测速结果合集","target":"https://jichangtuijian.com/%E4%BE%BF%E5%AE%9CSS%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90%E4%B9%8B%E6%82%A0%E5%85%94.html","line":163},{"title":"![机场推荐之悠兔机场测速","target":"https://jichangtuijian.com/uploads/vpn/youtu.webp","line":191},{"title":"机场推荐之悠兔机场测速","target":"https://jichangtuijian.com/uploads/vpn/youtu.webp \"机场推荐之悠兔机场测速\"","line":193},{"title":"WgetCloud机场官网","target":"https://reurl.cc/dmamKD","line":204},{"title":"WgetCloud机场官网2","target":"https://suo.st/18C0SJx","line":206},{"title":"WgetCloud官网链接3","target":"https://invite.wgetcloud.ltd/auth/register?code=n7z3","line":207},{"title":"WgetCloud拓使用教程、扑结构流媒体检测和历史测速结果合集与用户评价","target":"https://jichangtuijian.com/%E9%98%BF%E9%87%8C%E4%BA%91ss%E7%BA%BF%E8%B7%AF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90GaCloud.html","line":233},{"title":"![机场推荐之WgetCloud机场晚高峰测速","target":"https://jichangtuijian.com/uploads/vpn/gacloud.webp","line":263},{"title":"机场推荐之WgetCloud机场晚高峰测速","target":"https://jichangtuijian.com/uploads/vpn/gacloud.webp \"机场推荐之WgetCloud机场晚高峰测速\"","line":265},{"title":"TAG机场官网","target":"https://reurl.cc/v0EEMj","line":279},{"title":"TAG机场官网","target":"https://suo.st/NubJ1Lm","line":281},{"title":"TAG机场官网","target":"https://tagss04.pro/#/auth/AJCjBhsw","line":283},{"title":"TAG使用教程、拓扑结构检测和流媒体、历史测速结果合集,可查看过去两年的高清测速图与用户评价","target":"https://jichangtuijian.com/tag%E6%B5%8B%E9%80%9F%E6%95%B4%E5%90%88.html","line":307},{"title":"![机场推荐之TAG机场晚高峰电信1000M家宽测速","target":"https://jichangtuijian.com/uploads/vpn/tag.webp","line":349},{"title":"贝贝云机场官网地址1","target":"https://beibei.cloud/?path=register&code=qwqDFEUW","line":359},{"title":"贝贝云机场官网地址2","target":"https://beibeilink.top/#/register?code=qwqDFEUW","line":361},{"title":"贝贝云机场官网地址3","target":"https://beibeicloud.shop/#/register?code=qwqDFEUW","line":363},{"title":"贝贝云使用教程、拓扑结构、ChatGPT解锁和流媒体检测和历史测速结果合集","target":"https://jichangtuijian.com/beibeicloud.html","line":386},{"title":"![机场推荐之贝贝云机场测速","target":"https://jichangtuijian.com/uploads/vpn/beibei.webp","line":414},{"title":"机场推荐之贝贝云机场测速","target":"https://jichangtuijian.com/uploads/vpn/beibei.webp \"机场推荐之贝贝云机场测速\"","line":416},{"title":"kycloud机场官网1","target":"https://reurl.cc/QeGMyo","line":425},{"title":"kycloud机场官网2","target":"https://suo.st/27wgsFR","line":427},{"title":"kycloud机场官网3","target":"https://my.cloudn.cc/aff.php?aff=40961","line":429},{"title":"kycloud使用教程、拓扑结构、ChatGPT解锁和流媒体检测和历史测速结果合集与用户评价","target":"https://jichangtuijian.com/IEPL%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BAkycloud%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":453},{"title":"![机场推荐之kycloud机场测速","target":"https://jichangtuijian.com/uploads/vpn/kycloud.webp","line":511},{"title":"机场推荐之kycloud机场测速","target":"https://jichangtuijian.com/uploads/vpn/kycloud.webp \"机场推荐之kycloud机场测速\"","line":513},{"title":"Cyanmori机场官网1","target":"https://reurl.cc/gax4GX","line":519},{"title":"Cyanmori机场官网2","target":"https://suo.st/zmRxFTq","line":521},{"title":"Cyanmori机场官网3","target":"https://sub.cccc.gg/auth/register?code=Z2ljGK","line":523},{"title":"使用教程、拓扑结构、ChatGPT解锁和流媒体检测和历史测速结果合集","target":"https://jichangtuijian.com/cyanmori%E9%9D%92%E6%A3%AE%E4%BA%91%E6%9C%BA%E5%9C%BA%E6%80%8E%E4%B9%88%E6%A0%B7.html","line":545},{"title":"![机场推荐之cyanmori机场测速","target":"https://jichangtuijian.com/uploads/vpn/cyanmori.webp","line":613},{"title":"机场推荐之cyanmori机场测速","target":"https://jichangtuijian.com/uploads/vpn/cyanmori.webp \"机场推荐之cyanmori机场测速\"","line":615},{"title":"Haita机场官网地址","target":"https://haita.io/register?aff=VQq8ZO5j","line":623},{"title":"海獭机场使用教程、拓扑结构和测速","target":"https://jichangtuijian.com/%E6%B5%B7%E7%8D%AD%E6%9C%BA%E5%9C%BA%E6%80%8E%E4%B9%88%E6%A0%B7.html","line":642},{"title":"![haita机场晚高峰测速","target":"https://jichangtuijian.com/uploads/vpn/haita.webp","line":654},{"title":"haita机场晚高峰测速","target":"https://jichangtuijian.com/uploads/vpn/haita.webp \"haita机场晚高峰测速\"","line":656},{"title":"官网1","target":"https://reurl.cc/orgVV5","line":662},{"title":"官网1","target":"https://suo.st/t1mfXFF","line":664},{"title":"官网3","target":"https://laomao.biz/?path=register&code=i0Vv9N5R","line":666},{"title":"使用教程、拓扑结构检测和流媒体、历史测速结果合集","target":"https://jichangtuijian.com/%E8%80%81%E7%8C%AB%E4%BA%91%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":686},{"title":"![机场推荐之老猫云机场测速","target":"https://jichangtuijian.com/uploads/vpn/laomao.webp","line":697},{"title":"机场推荐之老猫云机场测速","target":"https://jichangtuijian.com/uploads/vpn/laomao.webp \"机场推荐之老猫云机场测速\"","line":699},{"title":"SpeedCAT机场官网1","target":"https://reurl.cc/lQLKvj","line":705},{"title":"SpeedCAT机场官网2","target":"https://suo.st/5sm3ntL","line":707},{"title":"SpeedCAT机场官网3","target":"https://webinv01.sc-aff.cc/auth/register?code=52q2","line":709},{"title":"使用教程、拓扑结构、流媒体和ChatGPT解锁情况与历史测速","target":"https://jichangtuijian.com/SpeedCAT%E6%9C%BA%E5%9C%BA%E6%B5%8B%E9%80%9F%E8%A7%82%E5%AF%9F.html","line":731},{"title":"![机场推荐之Speedcat机场测速","target":"https://jichangtuijian.com/uploads/vpn/speedcat.webp","line":742},{"title":"机场推荐之Speedcat机场测速","target":"https://jichangtuijian.com/uploads/vpn/speedcat.webp \"机场推荐之Speedcat机场测速\"","line":744},{"title":"一云梯官网","target":"https://1ytcom01.1yunti.net/register?aff=5LY6r9cJ","line":750},{"title":"使用教程、拓扑结构检测和流媒体、历史测速结果合集","target":"https://jichangtuijian.com/yiyunti.html","line":768},{"title":"![机场推荐之一云梯机场测速","target":"https://jichangtuijian.com/uploads/vpn/yiyunti.webp","line":776},{"title":"机场推荐之一云梯机场测速","target":"https://jichangtuijian.com/uploads/vpn/yiyunti.webp \"机场推荐之一云梯机场测速\"","line":778},{"title":"Flyingbird机场官网","target":"https://fba01.fbva-ho0.cc/auth/register?code=f34i","line":786},{"title":"使用教程、拓扑结构、流媒体和ChatGPT解锁情况与历史测速与用户评价","target":"https://jichangtuijian.com/%E9%A3%9E%E9%B8%9F%E6%9C%BA%E5%9C%BA%E4%BE%BF%E5%AE%9CBGP%E4%B8%93%E7%BA%BFSS%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html","line":807},{"title":"![机场推荐之flyingbird机场测速","target":"https://jichangtuijian.com/uploads/vpn/flyingbird.webp","line":820},{"title":"机场推荐之flyingbird机场测速","target":"https://jichangtuijian.com/uploads/vpn/flyingbird.webp \"机场推荐之flyingbird机场测速\"","line":822},{"title":"龙猫云机场官网地址1","target":"https://suo.st/gbKtosX","line":830},{"title":"龙猫云机场官网地址2","target":"https://jichangtj.lmvipaff.com/#/register?code=Qb502cPh","line":832},{"title":"totorocloud使用教程、拓扑结构、ChatGPT解锁和流媒体检测和历史测速结果合集","target":"https://jichangtuijian.com/totorocloud.html","line":855},{"title":"![机场推荐之totorocloud机场测速","target":"https://jichangtuijian.com/uploads/vpn/totorocloud.webp","line":865},{"title":"机场推荐之totorocloud机场测速","target":"https://jichangtuijian.com/uploads/vpn/totorocloud.webp \"机场推荐之totorocloud机场测速\"","line":867},{"title":"Arisaka官网1","target":"https://reurl.cc/XG68o7","line":875},{"title":"Arisaka官网2","target":"https://arisaka.io/#/register?code=eYgRRmM3","line":876},{"title":"![机场推荐之arisaka机场测速","target":"https://jichangtuijian.com/uploads/vpn/arisaka.webp","line":893},{"title":"机场推荐之arisaka机场测速","target":"https://jichangtuijian.com/uploads/vpn/arisaka.webp \"机场推荐之arisaka机场测速\"","line":895},{"title":"STC机场官网1","target":"https://reurl.cc/kaoraG","line":908},{"title":"STC机场官网2","target":"https://suo.yt/IbfZGmY","line":910},{"title":"STC机场官网3","target":"https://www2.gardenparty.me/auth/register?code=4k1L","line":912},{"title":"stc使用教程、拓扑结构、流媒体、ChatGPT解锁和历史测速结果合集","target":"https://jichangtuijian.com/stc%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":932},{"title":"![机场推荐之stc机场测速","target":"https://jichangtuijian.com/uploads/vpn/stc.webp","line":982},{"title":"机场推荐之stc机场测速","target":"https://jichangtuijian.com/uploads/vpn/stc.webp \"机场推荐之stc机场测速\"","line":984},{"title":"跑路云机场官网","target":"https://xn--28juc.xn--xckg4b3b5ctcl.com/auth/register?code=He5q","line":998},{"title":"跑路云历史测速结果整合","target":"https://jichangtuijian.com/%E8%B7%91%E8%B7%AF%E4%BA%91%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":1023},{"title":"![机场推荐之跑路云机场测速","target":"https://jichangtuijian.com/uploads/vpn/paolu.webp","line":1030},{"title":"机场推荐之跑路云机场测速","target":"https://jichangtuijian.com/uploads/vpn/paolu.webp \"机场推荐之跑路云机场测速\"","line":1032},{"title":"![机场推荐之跑路云机场测速","target":"https://jichangtuijian.com/uploads/jichang/paolu/paoluzhilian.webp","line":1036},{"title":"Catnet机场官网链接1","target":"https://suo.st/4aMdzcZ","line":1046},{"title":"Catnet机场官网链接2,需要代理","target":"https://reurl.cc/2EQExv","line":1048},{"title":"Catnet机场官网链接3","target":"https://www.58catnet.com/#/register?code=3yC7AZHo","line":1050},{"title":"catnet使用教程、拓扑结构检测、流媒体、ChatGPT和历史测速结果合集","target":"https://jichangtuijian.com/catnet%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":1071},{"title":"![机场推荐之catnet机场测速","target":"https://jichangtuijian.com/uploads/vpn/catnet.webp","line":1078},{"title":"机场推荐之catnet机场测速","target":"https://jichangtuijian.com/uploads/vpn/catnet.webp \"机场推荐之catnet机场测速\"","line":1080},{"title":"Sayss机场官网","target":"https://www.sayss.net/#/login?code=yv7SoTwk","line":1086},{"title":"使用教程、拓扑结构检测和流媒体、历史测速结果合集","target":"https://jichangtuijian.com/Sayss%E6%9C%BA%E5%9C%BA%E6%80%8E%E4%B9%88%E6%A0%B7.html","line":1109},{"title":"![机场推荐之Sayss机场测速","target":"https://jichangtuijian.com/uploads/vpn/sayss.webp","line":1141},{"title":"机场推荐之Sayss机场测速","target":"https://jichangtuijian.com/uploads/vpn/sayss.webp \"机场推荐之Sayss机场测速\"","line":1143},{"title":"taishan官网地址1","target":"https://jp.taishan.pro/#/register?code=HgVGfDEz","line":1153},{"title":"taishan官网地址2","target":"https://ru.taishan.pro/#/register?code=HgVGfDEz","line":1155},{"title":"taishan官网地址3","target":"https://hk.taishan.pro/#/register?code=HgVGfDEz","line":1157},{"title":"TaiShan机场使用教程和历史测速","target":"https://jichangtuijian.com/taishan%E6%9C%BA%E5%9C%BA%E6%80%8E%E4%B9%88%E6%A0%B7.html","line":1180},{"title":"![taishan晚高峰电信1000M家宽测速","target":"https://jichangtuijian.com/uploads/vpn/taishan.webp","line":1209},{"title":"taishan晚高峰电信1000M家宽测速","target":"https://jichangtuijian.com/uploads/vpn/taishan.webp \"taishan晚高峰电信1000M家宽测速\"","line":1211},{"title":"机场官网1","target":"https://jifeng468.xyz/auth/register?code=nvzC","line":1219},{"title":"机场官网2","target":"https://jifeng3267.xyz/auth/register?code=nvzC","line":1221},{"title":"![机场推荐之疾风机场测速","target":"https://jichangtuijian.com/uploads/vpn/jifeng.webp","line":1313},{"title":"机场推荐之疾风机场测速","target":"https://jichangtuijian.com/uploads/vpn/jifeng.webp \"机场推荐之疾风机场测速\"","line":1315},{"title":"Just my sock机场官网注册地址1","target":"https://reurl.cc/RykW4e","line":1326},{"title":"Just my sock机场官网注册地址,需要代理或全局模式访问","target":"https://bit.ly/3weANGp","line":1328},{"title":"![机场推荐之Just My Socks-IPLC测速图","target":"https://jichangtuijian.com/uploads/vpn/jms.webp","line":1357},{"title":"搬瓦工机场官网","target":"https://bit.ly/3sDxUwC","line":1392},{"title":"适合翻墙建站国外VPS服务器主机推荐","target":"https://jichangtuijian.com/%E5%9B%BD%E5%A4%96VPS%E4%B8%BB%E6%9C%BA%E6%8E%A8%E8%8D%90.html","line":1394},{"title":"EdNovas云机场官网1","target":"https://cdn.ednovas.org/#/register?code=Ik0AHQqO","line":1406},{"title":"EdNovas云机场官网2","target":"https://cdn.ednovas.tech/#/register?code=Ik0AHQqO","line":1408},{"title":"EdNovas云机场官网3","target":"https://cdn.ednovas.world/#/register?code=Ik0AHQqO","line":1410},{"title":"回国机场EDCloud拓扑结构检测和流媒体chatGPT、历史测速结果合集与用户评价","target":"https://jichangtuijian.com/%E5%9B%9E%E5%9B%BD%E6%9C%BA%E5%9C%BAEDCloud%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":1433},{"title":"![机场推荐之EdNovas云机场套餐图","target":"https://jichangtuijian.com/uploads/vpn/edcloudtaocan.webp","line":1461},{"title":"![机场推荐之EdNovas云机场晚高峰家宽测速","target":"https://jichangtuijian.com/uploads/vpn/edcloud.webp","line":1467},{"title":"芬达机场官网1","target":"https://reurl.cc/dmaL0M","line":1477},{"title":"芬达机场官网2","target":"https://suo.yt/B9SCB5h","line":1479},{"title":"芬达机场官网3","target":"https://fenda.cloud/auth/register?code=BkFF","line":1481},{"title":"fenda拓扑结构检测和流媒体、OpenAI解锁、历史测速结果合集","target":"https://jichangtuijian.com/ss%E4%B8%AD%E8%BD%AC%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90-fenda.html","line":1501},{"title":"![机场推荐之芬达机场测速","target":"https://jichangtuijian.com/uploads/vpn/fenda.webp","line":1537},{"title":"机场推荐之芬达机场测速","target":"https://jichangtuijian.com/uploads/vpn/fenda.webp \"机场推荐之芬达机场测速\"","line":1539},{"title":"翼游Yiyo机场官网1","target":"https://suo.st/1fVDhxm","line":1546},{"title":"翼游Yiyo机场官网2,需要代理","target":"https://bit.ly/3Fpai71","line":1548},{"title":"翼游Yiyo机场官网3","target":"https://ddjppt.xyz/auth/register?code=KT8O","line":1550},{"title":"翼游Yiyo机场拓扑结构检测和流媒体和ChatGPT解锁情况、历史测速结果合集","target":"https://jichangtuijian.com/yiyo%E5%8E%86%E5%8F%B2%E6%B5%8B%E9%80%9F%E7%BB%93%E6%9E%9C%E6%95%B4%E5%90%88.html","line":1571},{"title":"![机场推荐之翼游Yiyo机场测速","target":"https://jichangtuijian.com/uploads/vpn/yiyo.webp","line":1617},{"title":"机场推荐之翼游Yiyo机场测速","target":"https://jichangtuijian.com/uploads/vpn/yiyo.webp \"机场推荐之翼游Yiyo机场测速\"","line":1619},{"title":"泡泡狗机场官网","target":"https://www.paopao.dog/#/register?code=XLZnckjD","line":1626},{"title":"泡泡狗机场拓扑结构检测和流媒体和ChatGPT解锁情况、历史测速结果合集","target":"https://jichangtuijian.com/%E4%BE%BF%E5%AE%9CIEPL%E4%B8%AD%E8%BD%AC%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90%E6%B3%A1%E6%B3%A1%E7%8B%97.html","line":1644},{"title":"![机场推荐之泡泡狗机测速","target":"https://jichangtuijian.com/uploads/vpn/paopaodog.webp","line":1658},{"title":"机场推荐之泡泡狗机测速","target":"https://jichangtuijian.com/uploads/vpn/paopaodog.webp \"机场推荐之泡泡狗机测速\"","line":1660},{"title":"迷雾通免翻墙链接","target":"https://waa.ai/xiazaimiwutong","line":1752},{"title":"迷雾通机场官网,需要翻墙才能打开","target":"https://geph.io/zhs/","line":1754},{"title":"https://appleidbook.top","target":"https://appleidbook.top/","line":1791},{"title":"银河录像局","target":"https://nf.video/Oxgmu","line":1793},{"title":"Telegram频道:科学上网观察与机场测速","target":"https://t.me/jichangtj","line":1799},{"title":"Twitter科学上网与机场观察频道","target":"https://twitter.com/jichangtj","line":1801},{"title":"备份链接1","target":"https://sites.google.com/view/honven/%E9%A6%96%E9%A1%B5/%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90?authuser=1","line":1803},{"title":"备份链接2,免代理访问","target":"https://ssjichang.pages.dev/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90","line":1805},{"title":"适合翻墙建站国外VPS服务器主机推荐","target":"https://jichangtuijian.com/%E5%9B%BD%E5%A4%96VPS%E4%B8%BB%E6%9C%BA%E6%8E%A8%E8%8D%90.html","line":1809},{"title":"Telegram频道推荐,新闻,NSFW开车等","target":"https://jichangtuijian.com/telegram%E7%94%B5%E6%8A%A5%E9%A2%91%E9%81%93%E7%BE%A4%E7%BB%84%E6%8E%A8%E8%8D%90.html","line":1811},{"title":"最新翻墙协议Reality一键安装脚本和各个系统客户端收集推荐","target":"https://jichangtuijian.com/Reality%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%84%9A%E6%9C%AC%E5%92%8C%E5%90%84%E4%B8%AA%E7%B3%BB%E7%BB%9F%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%94%B6%E9%9B%86%E6%8E%A8%E8%8D%90.html","line":1813},{"title":"ChatGPT套壳镜像,免代理使用ChatGPT","target":"https://jichangtuijian.com/chatgpt%E5%A5%97%E5%A3%B3%E9%95%9C%E5%83%8F.html","line":1815},{"title":"QuantumultX教程,机场订阅和去广告、会员破解、解锁tiktok脚本收集","target":"https://jichangtuijian.com/QuantumultX%E5%B0%8F%E7%99%BD%E7%AE%80%E5%8D%95%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1817},{"title":"Shadowrocket(小火箭)使用教程软件共享账号免费破解下载、去广告规则、解锁tiktok等","target":"https://jichangtuijian.com/IOS-Shadowrocket%E5%B0%8F%E7%81%AB%E7%AE%AD%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1819},{"title":"百度网盘不限速破解","target":"https://jichangtuijian.com/%E7%99%BE%E5%BA%A6%E7%BD%91%E7%9B%98%E4%B8%8D%E9%99%90%E9%80%9F%E7%A0%B4%E8%A7%A3.html","line":1821},{"title":"影视站收集,视频会员破解","target":"https://jichangtuijian.com/%E5%BD%B1%E8%A7%86%E7%AB%99%E6%94%B6%E9%9B%86.html","line":1823},{"title":"发卡网收集","target":"https://jichangtuijian.com/%E5%8F%91%E5%8D%A1%E7%BD%91%E6%94%B6%E9%9B%86.html","line":1825},{"title":"机场订阅链接转换收集与教程,支持机场ss/ssr/v2ray订阅转clash\\\\quantumultX订阅","target":"https://jichangtuijian.com/%E6%9C%BA%E5%9C%BA%E8%AE%A2%E9%98%85%E9%93%BE%E6%8E%A5%E8%BD%AC%E6%8D%A2%E6%95%99%E7%A8%8B.html","line":1827},{"title":"clash for windows使用教程、各个平台Clash客户端、高级进阶教程和规则等","target":"https://jichangtuijian.com/clash%E6%95%99%E7%A8%8B.html","line":1831},{"title":"netch使用教程,实现真·全局的代理","target":"https://jichangtuijian.com/netch%E6%95%99%E7%A8%8B.html","line":1834},{"title":"Clash for Android/CFA使用教程","target":"https://jichangtuijian.com/Android%E2%80%94Clash%20for%20Android%20%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1838},{"title":"安卓ssr-v2ray代理客户surfboard使用教程","target":"https://jichangtuijian.com/surfboard%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1840},{"title":"安卓ssr-v2ray-trojan代理客户端v2rayN使用教程","target":"https://jichangtuijian.com/%E5%AE%89%E5%8D%93ssr-v2ray-trojan%E4%BB%A3%E7%90%86%E5%AE%A2%E6%88%B7%E7%AB%AFv2rayN%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1842},{"title":"v2ray trojan ssr xray多协议安卓客户端收集","target":"https://jichangtuijian.com/v2raytrojanssrxray%E5%A4%9A%E5%8D%8F%E8%AE%AE%E5%AE%89%E5%8D%93%E5%AE%A2%E6%88%B7%E7%AB%AF.html","line":1844},{"title":"路由器老毛子Padavan固件ss/v2ray机场服务器订阅设置和clash配置","target":"https://jichangtuijian.com/%E8%80%81%E6%AF%9B%E5%AD%90Padavan%E5%9B%BA%E4%BB%B6ssv2ray%E6%9C%BA%E5%9C%BA%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%AE%A2%E9%98%85%E4%B8%8Eclash%E9%85%8D%E7%BD%AE.html","line":1846},{"title":"机场测速之stairspeedtest使用教程","target":"https://jichangtuijian.com/%E6%9C%BA%E5%9C%BA%E6%B5%8B%E9%80%9F%E4%B9%8Bstairspeedtest%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.html","line":1849}],"metadata":{"page-title":"机场推荐与机场评测SSR/V2ray/Trojan订阅(2024.6) - 机场推荐与机场评测","url":"https://jichangtuijian.com/ssr-v2ray%E4%B8%93%E7%BA%BF%E6%9C%BA%E5%9C%BA%E6%8E%A8%E8%8D%90.html","date":"2024-06-28 11:43:07"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_AFTN和SITA报文简介-CSDN博客_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_AFTN和SITA报文简介-CSDN博客_md.ajson deleted file mode 100644 index 1205fc9..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_AFTN和SITA报文简介-CSDN博客_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/AFTN和SITA报文简介-CSDN博客.md": {"path":"000-inbox/clippings/2024/07/AFTN和SITA报文简介-CSDN博客.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"mk3wtq","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1721482173000,"size":18180,"at":1766986878957,"hash":"mk3wtq"},"blocks":{"#---frontmatter---":[1,5],"#":[6,10],"###1.AFTN报文":[11,341],"###1.AFTN报文#{1}":[13,14],"###1.AFTN报文#{2}":[15,15],"###1.AFTN报文#{3}":[16,16],"###1.AFTN报文#{4}":[17,19],"###1.AFTN报文#{5}":[20,51],"###1.AFTN报文#{6}":[52,52],"###1.AFTN报文#{7}":[53,53],"###1.AFTN报文#{8}":[54,54],"###1.AFTN报文#{9}":[55,59],"###1.AFTN报文#{10}":[60,85],"###1.AFTN报文#1\\. PLN 飞行预报":[86,109],"###1.AFTN报文#1\\. PLN 飞行预报#{1}":[88,109],"###1.AFTN报文#2.领航计划报 FPL( filed flight plan message)":[110,134],"###1.AFTN报文#2.领航计划报 FPL( filed flight plan message)#{1}":[112,134],"###1.AFTN报文#3\\. 起飞报 DEP ( departure message)":[135,142],"###1.AFTN报文#3\\. 起飞报 DEP ( departure message)#{1}":[137,142],"###1.AFTN报文#4\\. 落地报 ARR(arrival message)":[143,150],"###1.AFTN报文#4\\. 落地报 ARR(arrival message)#{1}":[145,150],"###1.AFTN报文#5\\. 延误报 DLA( delay message)":[151,158],"###1.AFTN报文#5\\. 延误报 DLA( delay message)#{1}":[153,158],"###1.AFTN报文#6\\. 返航报 RTN(return message)":[159,168],"###1.AFTN报文#6\\. 返航报 RTN(return message)#{1}":[161,168],"###1.AFTN报文#7\\. 备降报 ALN(alternate message)":[169,178],"###1.AFTN报文#7\\. 备降报 ALN(alternate message)#{1}":[171,178],"###1.AFTN报文#8.其它电报":[179,190],"###1.AFTN报文#8.其它电报#{1}":[181,190],"###1.AFTN报文#FPL 和 RPL":[191,341],"###1.AFTN报文#FPL 和 RPL#{1}":[193,198],"###1.AFTN报文#FPL 和 RPL#1\\. 编组8:飞行规则及种类":[199,230],"###1.AFTN报文#FPL 和 RPL#1\\. 编组8:飞行规则及种类#{1}":[201,230],"###1.AFTN报文#FPL 和 RPL#2\\. 编组9航空器数目、机型和尾流等级":[231,244],"###1.AFTN报文#FPL 和 RPL#2\\. 编组9航空器数目、机型和尾流等级#{1}":[233,244],"###1.AFTN报文#FPL 和 RPL#3.编组10机载设备":[245,267],"###1.AFTN报文#FPL 和 RPL#3.编组10机载设备#{1}":[247,267],"###1.AFTN报文#FPL 和 RPL#4.编组13 起飞机场和时间(略)":[268,269],"###1.AFTN报文#FPL 和 RPL#5\\. 编组15航路":[270,289],"###1.AFTN报文#FPL 和 RPL#5\\. 编组15航路#{1}":[272,289],"###1.AFTN报文#FPL 和 RPL#6\\. 编组16目的地机场和预计经过总时间,备降机场":[290,291],"###1.AFTN报文#FPL 和 RPL#7\\. 编组18其他情报":[292,301],"###1.AFTN报文#FPL 和 RPL#7\\. 编组18其他情报#{1}":[294,301],"###1.AFTN报文#FPL 和 RPL#8.编组19补充情报":[302,341],"###1.AFTN报文#FPL 和 RPL#8.编组19补充情报#{1}":[304,341],"###2.SITA报文":[342,541],"###2.SITA报文#{1}":[344,345],"###2.SITA报文#{2}":[346,347],"###2.SITA报文#{3}":[348,352],"###2.SITA报文#{4}":[353,354],"###2.SITA报文#{5}":[355,357],"###2.SITA报文#{6}":[358,359],"###2.SITA报文#{7}":[360,360],"###2.SITA报文#{8}":[361,361],"###2.SITA报文#{9}":[362,362],"###2.SITA报文#{10}":[363,378],"###2.SITA报文#1\\. 起飞报(AD)":[379,398],"###2.SITA报文#1\\. 起飞报(AD)#{1}":[381,398],"###2.SITA报文#2\\. 降落报(AA)":[399,416],"###2.SITA报文#2\\. 降落报(AA)#{1}":[401,416],"###2.SITA报文#3\\. 延误报(DL、ED、NI)":[417,468],"###2.SITA报文#3\\. 延误报(DL、ED、NI)#{1}":[419,430],"###2.SITA报文#3\\. 延误报(DL、ED、NI)#{2}":[431,432],"###2.SITA报文#3\\. 延误报(DL、ED、NI)#{3}":[433,468],"###2.SITA报文#4\\. 取消报(CNL)":[469,480],"###2.SITA报文#4\\. 取消报(CNL)#{1}":[471,480],"###2.SITA报文#5\\. 飞行预报(PLN)":[481,541],"###2.SITA报文#5\\. 飞行预报(PLN)#{1}":[483,537],"###2.SITA报文#5\\. 飞行预报(PLN)#{2}":[538,538],"###2.SITA报文#5\\. 飞行预报(PLN)#{3}":[539,539],"###2.SITA报文#5\\. 飞行预报(PLN)#{4}":[540,540],"###2.SITA报文#5\\. 飞行预报(PLN)#{5}":[541,541]},"outlinks":[{"title":"AFTN和SITA报文简介","target":"https://blog.csdn.net/lejuo/article/details/46546191","line":532}],"metadata":{"page-title":"AFTN和SITA报文简介-CSDN博客","url":"https://blog.csdn.net/qq_35318838/article/details/88950025","date":"2024-07-16 10:30:51"},"task_lines":[],"tasks":{},"codeblock_ranges":[[88,94],[100,102],[106,108],[112,119],[125,127],[131,133],[139,141],[147,149],[155,157],[163,165],[173,175],[181,189],[367,372],[381,387],[391,397],[401,406],[410,415],[419,429],[435,441],[445,451],[455,461],[471,479],[485,493],[497,504],[520,528]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_Getting_started_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_Getting_started_md.ajson deleted file mode 100644 index 1605f82..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_Getting_started_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/Getting started.md": {"path":"000-inbox/clippings/2024/07/Getting started.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16pzyk3","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1720452816000,"size":33929,"at":1766986878957,"hash":"16pzyk3"},"blocks":{"#---frontmatter---":[1,5],"#":[7,24],"##{1}":[11,11],"##{2}":[12,12],"##{3}":[13,13],"##{4}":[14,14],"##{5}":[15,15],"##{6}":[16,16],"##{7}":[17,17],"##{8}":[18,18],"##{9}":[19,19],"##{10}":[20,20],"##{11}":[21,21],"##{12}":[22,22],"##{13}":[23,24],"###What is Watermill?":[25,32],"###What is Watermill?#{1}":[27,32],"###Why use Watermill?":[33,40],"###Why use Watermill?#{1}":[35,40],"###Install":[41,46],"###Install#{1}":[43,46],"###One Minute Background":[47,66],"###One Minute Background#{1}":[49,66],"###Subscribing for Messages":[67,613],"###Subscribing for Messages#{1}":[69,84],"###Subscribing for Messages#{2}":[85,85],"###Subscribing for Messages#{3}":[86,86],"###Subscribing for Messages#{4}":[87,87],"###Subscribing for Messages#{5}":[88,88],"###Subscribing for Messages#{6}":[89,89],"###Subscribing for Messages#{7}":[90,91],"###Subscribing for Messages#{8}":[92,137],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#docker)":[138,245],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#docker)#{1}":[140,245],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#nats-streaming-docker)":[246,339],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#nats-streaming-docker)#{1}":[248,339],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#gcloud-streaming-docker)":[340,432],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#gcloud-streaming-docker)#{1}":[342,432],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#amqp-docker)":[433,519],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#amqp-docker)#{1}":[435,519],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#sql-docker)":[520,613],"###Subscribing for Messages#[Running in Docker  ▾](https://watermill.io/docs/getting-started/#sql-docker)#{1}":[522,613],"###Creating Messages":[614,623],"###Creating Messages#{1}":[616,623],"###Publishing Messages":[624,836],"###Publishing Messages#{1}":[626,634],"###Publishing Messages#{2}":[635,635],"###Publishing Messages#{3}":[636,636],"###Publishing Messages#{4}":[637,637],"###Publishing Messages#{5}":[638,638],"###Publishing Messages#{6}":[639,639],"###Publishing Messages#{7}":[640,641],"###Publishing Messages#{8}":[642,836],"###Using *Message Router*":[837,844],"###Using *Message Router*#{1}":[839,844],"###Example application of *Message Router*":[845,1029],"###Example application of *Message Router*#{1}":[847,848],"###Example application of *Message Router*#{2}":[849,849],"###Example application of *Message Router*#{3}":[850,850],"###Example application of *Message Router*#{4}":[851,851],"###Example application of *Message Router*#{5}":[852,853],"###Example application of *Message Router*#Router configuration":[854,965],"###Example application of *Message Router*#Router configuration#{1}":[856,965],"###Example application of *Message Router*#Incoming messages":[966,990],"###Example application of *Message Router*#Incoming messages#{1}":[968,990],"###Example application of *Message Router*#Handlers":[991,1023],"###Example application of *Message Router*#Handlers#{1}":[993,994],"###Example application of *Message Router*#Handlers#{2}":[995,995],"###Example application of *Message Router*#Handlers#{3}":[996,997],"###Example application of *Message Router*#Handlers#{4}":[998,1023],"###Example application of *Message Router*#Done!":[1024,1029],"###Example application of *Message Router*#Done!#{1}":[1026,1029],"###Logging":[1030,1033],"###Logging#{1}":[1032,1033],"###Testing":[1034,1037],"###Testing#{1}":[1036,1037],"###Deployment":[1038,1041],"###Deployment#{1}":[1040,1041],"###What’s next?":[1042,1060],"###What’s next?#{1}":[1044,1045],"###What’s next?#Examples":[1046,1057],"###What’s next?#Examples#{1}":[1048,1057],"###What’s next?#Support":[1058,1060],"###What’s next?#Support#{1}":[1060,1060]},"outlinks":[{"title":"What is Watermill?","target":"https://watermill.io/docs/getting-started/#what-is-watermill","line":11},{"title":"Why use Watermill?","target":"https://watermill.io/docs/getting-started/#why-use-watermill","line":12},{"title":"Install","target":"https://watermill.io/docs/getting-started/#install","line":13},{"title":"One Minute Background","target":"https://watermill.io/docs/getting-started/#one-minute-background","line":14},{"title":"Subscribing for Messages","target":"https://watermill.io/docs/getting-started/#subscribing-for-messages","line":15},{"title":"Creating Messages","target":"https://watermill.io/docs/getting-started/#creating-messages","line":16},{"title":"Publishing Messages","target":"https://watermill.io/docs/getting-started/#publishing-messages","line":17},{"title":"Using Message Router","target":"https://watermill.io/docs/getting-started/#using-message-router","line":18},{"title":"Example application of Message Router","target":"https://watermill.io/docs/getting-started/#example-application-of-message-router","line":19},{"title":"Logging","target":"https://watermill.io/docs/getting-started/#logging","line":20},{"title":"Testing","target":"https://watermill.io/docs/getting-started/#testing","line":21},{"title":"Deployment","target":"https://watermill.io/docs/getting-started/#deployment","line":22},{"title":"What’s next?","target":"https://watermill.io/docs/getting-started/#whats-next","line":23},{"title":"publishers and subscribers","target":"https://watermill.io/pubsubs/","line":49},{"title":"*Message*","target":"https://watermill.io/docs/message/","line":51},{"title":"Go Channel","target":"https://watermill.io/docs/getting-started/#subscribing_go-channel","line":85},{"title":"Kafka","target":"https://watermill.io/docs/getting-started/#subscribing_kafka","line":86},{"title":"NATS Streaming","target":"https://watermill.io/docs/getting-started/#subscribing_nats-streaming","line":87},{"title":"Google Cloud Pub/Sub","target":"https://watermill.io/docs/getting-started/#subscribing_gcloud","line":88},{"title":"RabbitMQ (AMQP)","target":"https://watermill.io/docs/getting-started/#subscribing_amqp","line":89},{"title":"SQL","target":"https://watermill.io/docs/getting-started/#subscribing_sql","line":90},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/go-channel/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/go-channel/main.go#L2","line":92},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/go-channel/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/go-channel/main.go#L42","line":123},{"title":"Running in Docker  ▾","target":"https://watermill.io/docs/getting-started/#docker","line":138},{"title":"\\_examples/pubsubs/kafka/docker-compose.yml","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/kafka/docker-compose.yml","line":142},{"title":"*Go Docker dev environment* article","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":184},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/kafka/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/kafka/main.go#L2","line":186},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/kafka/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/kafka/main.go#L67","line":231},{"title":"Running in Docker  ▾","target":"https://watermill.io/docs/getting-started/#nats-streaming-docker","line":246},{"title":"\\_examples/pubsubs/nats-streaming/docker-compose.yml","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/nats-streaming/docker-compose.yml","line":250},{"title":"*Go Docker dev environment* article","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":275},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/nats-streaming/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/nats-streaming/main.go#L2","line":277},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/nats-streaming/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/nats-streaming/main.go#L74","line":325},{"title":"Running in Docker  ▾","target":"https://watermill.io/docs/getting-started/#gcloud-streaming-docker","line":340},{"title":"\\_examples/pubsubs/googlecloud/docker-compose.yml","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/googlecloud/docker-compose.yml","line":344},{"title":"*Go Docker dev environment* article","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":373},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/googlecloud/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/googlecloud/main.go#L2","line":375},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/googlecloud/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/googlecloud/main.go#L61","line":418},{"title":"Running in Docker  ▾","target":"https://watermill.io/docs/getting-started/#amqp-docker","line":433},{"title":"\\_examples/pubsubs/amqp/docker-compose.yml","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/amqp/docker-compose.yml","line":435},{"title":"*Go Docker dev environment* article","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":460},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/amqp/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/amqp/main.go#L2","line":462},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/amqp/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/amqp/main.go#L59","line":505},{"title":"Running in Docker  ▾","target":"https://watermill.io/docs/getting-started/#sql-docker","line":520},{"title":"\\_examples/pubsubs/sql/docker-compose.yml","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/sql/docker-compose.yml","line":522},{"title":"*Go Docker dev environment* article","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":552},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/sql/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/sql/main.go#L2","line":554},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/sql/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/sql/main.go#L87","line":599},{"title":"Go Channel","target":"https://watermill.io/docs/getting-started/#publishing_go-channel","line":635},{"title":"Kafka","target":"https://watermill.io/docs/getting-started/#publishing_kafka","line":636},{"title":"NATS Streaming","target":"https://watermill.io/docs/getting-started/#publishing_nats-streaming","line":637},{"title":"Google Cloud Pub/Sub","target":"https://watermill.io/docs/getting-started/#publishing_gcloud","line":638},{"title":"RabbitMQ (AMQP)","target":"https://watermill.io/docs/getting-started/#publishing_amqp","line":639},{"title":"SQL","target":"https://watermill.io/docs/getting-started/#publishing_sql","line":640},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/go-channel/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/go-channel/main.go#L25","line":642},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/kafka/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/kafka/main.go#L39","line":663},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/nats-streaming/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/nats-streaming/main.go#L42","line":695},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/googlecloud/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/googlecloud/main.go#L37","line":731},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/amqp/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/amqp/main.go#L37","line":759},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/pubsubs/sql/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/pubsubs/sql/main.go#L39","line":785},{"title":"correlation, metrics, poison queue, retrying, throttling, etc.","target":"https://watermill.io/docs/messages-router/#middleware","line":839},{"title":"*Publishers and subscribers*","target":"https://watermill.io/docs/pub-sub/","line":839},{"title":"*Router*","target":"https://watermill.io/docs/messages-router/","line":843},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/basic/3-router/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/basic/3-router/main.go#L2","line":858},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/basic/3-router/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/basic/3-router/main.go#L103","line":970},{"title":"github.com/ThreeDotsLabs/watermill/\\_examples/basic/3-router/main.go","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/basic/3-router/main.go#L118","line":1000},{"title":"/\\_examples/basic/3-router/main.go","target":"https://github.com/ThreeDotsLabs/watermill/blob/master/_examples/basic/3-router/main.go","line":1028},{"title":"LoggerAdapter","target":"https://github.com/ThreeDotsLabs/watermill/blob/master/log.go","line":1032},{"title":"a set of test scenarios","target":"https://github.com/ThreeDotsLabs/watermill/blob/master/pubsub/tests/test_pubsub.go","line":1036},{"title":"documentation topics","target":"https://watermill.io/docs/","line":1044},{"title":"examples","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples","line":1048},{"title":"Your first Watermill application","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/basic/1-your-first-app","line":1050},{"title":"Realtime feed","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/basic/2-realtime-feed","line":1052},{"title":"receiving-webhooks","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/real-world-examples/receiving-webhooks","line":1054},{"title":"README","target":"https://github.com/ThreeDotsLabs/watermill#examples","line":1056},{"title":"support channels","target":"https://watermill.io/support/","line":1060}],"metadata":{"page-title":"Getting started","url":"https://watermill.io/docs/getting-started/#subscribing_nats-streaming","date":"2024-07-08 23:33:34"},"task_lines":[],"tasks":{},"codeblock_ranges":[[43,45],[55,65],[71,81],[94,121],[125,136],[144,178],[188,229],[233,244],[252,269],[279,323],[327,338],[346,367],[377,416],[420,431],[437,454],[464,503],[507,518],[524,546],[556,597],[601,612],[620,622],[628,633],[644,661],[665,693],[697,729],[733,757],[761,783],[787,835],[860,964],[972,989],[1002,1022]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_How_to_Open_Port_for_a_Specific_IP_Address_in_Firewalld_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_How_to_Open_Port_for_a_Specific_IP_Address_in_Firewalld_md.ajson deleted file mode 100644 index 09be756..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_How_to_Open_Port_for_a_Specific_IP_Address_in_Firewalld_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/How to Open Port for a Specific IP Address in Firewalld.md": {"path":"000-inbox/clippings/2024/07/How to Open Port for a Specific IP Address in Firewalld.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"11xyuks","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1721914550000,"size":3990,"at":1766986878957,"hash":"11xyuks"},"blocks":{"#---frontmatter---":[1,5],"#":[6,11],"###Open Port for Specific IP Address in Firewalld":[12,20],"###Open Port for Specific IP Address in Firewalld#{1}":[14,20],"#firewall-cmd --get-zones":[21,29],"#firewall-cmd --get-zones#{1}":[23,29],"#firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent":[30,30],"#firewall-cmd --reload":[31,39],"#firewall-cmd --reload#{1}":[33,39],"#firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent":[40,40],"#firewall-cmd --reload[2]":[41,55],"#firewall-cmd --reload[2]#{1}":[43,50],"#firewall-cmd --reload[2]##Remove Port and Zone from Firewalld":[51,55],"#firewall-cmd --reload[2]##Remove Port and Zone from Firewalld#{1}":[53,55],"#firewall-cmd --reload[3]":[56,60],"#firewall-cmd --reload[3]#{1}":[58,60],"#firewall-cmd --reload[4]":[61,65],"#firewall-cmd --reload[4]#{1}":[63,65],"#firewall-cmd --reload[5]":[66,74],"#firewall-cmd --reload[5]#{1}":[68,74]},"outlinks":[{"title":"firewalld","target":"https://www.tecmint.com/configure-firewalld-in-centos-7/ \"CentOS Firewalld Configuration\"","line":6},{"title":"Check Firewalld Zone","target":"https://www.tecmint.com/wp-content/uploads/2020/09/reload-firewalld-settings-and-check-available-zones-again.png","line":23,"embedded":true},{"title":"Open Port for Specific IP in Firewalld","target":"https://www.tecmint.com/wp-content/uploads/2020/09/add-source-and-port-to-zone.png","line":33,"embedded":true},{"title":"View Firewalld Zone Details","target":"https://www.tecmint.com/wp-content/uploads/2020/09/view-details-of-new-zone.png","line":47,"embedded":true},{"title":"Using and Configuring firewalld","target":"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/using-and-configuring-firewalld_configuring-and-managing-networking \"Using and Configuring firewalld\"","line":72}],"metadata":{"page-title":"How to Open Port for a Specific IP Address in Firewalld","url":"https://www.tecmint.com/open-port-for-specific-ip-address-in-firewalld/","date":"2024-07-25 21:35:48"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_How_to_build_a_fullstack_application_with_Go,_Templ,_and_HTMX_-_DEV_Community_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_How_to_build_a_fullstack_application_with_Go,_Templ,_and_HTMX_-_DEV_Community_md.ajson deleted file mode 100644 index 6230725..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_How_to_build_a_fullstack_application_with_Go,_Templ,_and_HTMX_-_DEV_Community_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/How to build a fullstack application with Go, Templ, and HTMX - DEV Community.md": {"path":"000-inbox/clippings/2024/07/How to build a fullstack application with Go, Templ, and HTMX - DEV Community.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5gbets","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1719928364000,"size":23796,"at":1766986878957,"hash":"5gbets"},"blocks":{"#---frontmatter---":[1,5],"#":[6,11],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#technology-overview)Technology Overview":[12,19],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#technology-overview)Technology Overview#{1}":[14,19],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#prerequisites)Prerequisites":[20,27],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#prerequisites)Prerequisites#{1}":[22,23],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#prerequisites)Prerequisites#{2}":[24,24],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#prerequisites)Prerequisites#{3}":[25,25],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#prerequisites)Prerequisites#{4}":[26,27],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#getting-started)Getting started":[28,67],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#getting-started)Getting started#{1}":[30,67],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#structuring-the-application)Structuring the application":[68,77],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#structuring-the-application)Structuring the application#{1}":[70,77],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#setup-the-database-on-xata)Setup the database on Xata":[78,83],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#setup-the-database-on-xata)Setup the database on Xata#{1}":[80,83],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#get-the-database-url-and-set-up-the-api-key)Get the Database URL and set up the API Key":[84,101],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#get-the-database-url-and-set-up-the-api-key)Get the Database URL and set up the API Key#{1}":[86,101],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#build-the-application-frontend)Build the application Frontend":[102,105],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#build-the-application-frontend)Build the application Frontend#{1}":[104,105],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-components)Create the application components":[106,248],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-components)Create the application components#{1}":[108,244],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-components)Create the application components#{2}":[245,245],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-components)Create the application components#{3}":[246,246],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-components)Create the application components#{4}":[247,248],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#generating-go-files-from-the-templ-files)Generating Go files from the Templ files":[249,264],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#generating-go-files-from-the-templ-files)Generating Go files from the Templ files#{1}":[251,264],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-together-and-building-the-backend)Putting it together and building the backend":[265,268],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-together-and-building-the-backend)Putting it together and building the backend#{1}":[267,268],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-models-and-helper-function)Create the API models and helper function":[269,315],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-models-and-helper-function)Create the API models and helper function#{1}":[271,315],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-and-api-routes)Create the application and API routes":[316,341],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-and-api-routes)Create the application and API routes#{1}":[318,337],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-and-api-routes)Create the application and API routes#{2}":[338,338],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-and-api-routes)Create the application and API routes#{3}":[339,339],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-application-and-api-routes)Create the application and API routes#{4}":[340,341],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services":[342,475],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services#{1}":[344,385],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services#{2}":[386,386],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services#{3}":[387,387],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services#{4}":[388,389],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-services)Create the API services#{5}":[390,475],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers":[476,569],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers#{1}":[478,564],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers#{2}":[565,565],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers#{3}":[566,566],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers#{4}":[567,567],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#create-the-api-handlers)Create the API handlers#{5}":[568,569],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#update-the-api-routes-to-use-handlers)Update the API routes to use handlers":[570,596],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#update-the-api-routes-to-use-handlers)Update the API routes to use handlers#{1}":[572,596],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together":[597,642],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{1}":[599,625],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{2}":[626,626],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{3}":[627,627],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{4}":[628,628],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{5}":[629,630],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#putting-it-all-together)Putting it all together#{6}":[631,642],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion":[643,652],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion#{1}":[645,648],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion#{2}":[649,649],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion#{3}":[650,650],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion#{4}":[651,651],"##[](https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444#conclusion)Conclusion#{5}":[652,652]},"outlinks":[{"title":"Go version 1.20 or higher installed","target":"https://go.dev/dl/","line":24},{"title":"Signup is free","target":"https://app.xata.io/signin?mode=signup?utm_source=fullstackwriter&utm_medium=fullstackwriter-blog","line":26},{"title":"Xata workspace","target":"https://app.xata.io/workspaces","line":80},{"title":"![create project","target":"https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsnohlapfqs2x519j2klo.png","line":82},{"title":"![","target":"https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpgs4uphc5u9sewh2wf86.png","line":88},{"title":"![","target":"https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffhi01luxfz88eh9hy5cm.png","line":89},{"title":"![Generated files","target":"https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0n91b8w6mchs03qq761h.png","line":261},{"title":"GitHub","target":"https://github.com/Mr-Malomz/go_fullstack","line":641},{"title":"Xata documentation","target":"https://xata.io/docs?utm_source=fullstackwriter&utm_medium=fullstackwriter-blog","line":649},{"title":"Templ documentation","target":"https://templ.guide/?utm_source=fullstackwriter&utm_medium=fullstackwriter-blog","line":650},{"title":"HTMX documentation","target":"https://htmx.org/docs/?utm_source=fullstackwriter&utm_medium=fullstackwriter-blog","line":651},{"title":"Go + Xata","target":"https://fullstackwriter.dev/post/xata-go-a-getting-started-guide?category=Golang","line":652}],"metadata":{"page-title":"How to build a fullstack application with Go, Templ, and HTMX - DEV Community","url":"https://dev.to/hackmamba/how-to-build-a-fullstack-application-with-go-templ-and-htmx-4444","date":"2024-07-02 21:52:39"},"task_lines":[],"tasks":{},"codeblock_ranges":[[32,34],[40,42],[48,50],[56,58],[95,98],[110,126],[134,144],[150,239],[253,255],[273,288],[296,312],[320,332],[348,380],[392,472],[480,559],[574,593],[601,620],[633,635]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_Implementing_Graceful_Shutdown_in_Go__RudderStack_Blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_Implementing_Graceful_Shutdown_in_Go__RudderStack_Blog_md.ajson deleted file mode 100644 index 71ce07e..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_Implementing_Graceful_Shutdown_in_Go__RudderStack_Blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/Implementing Graceful Shutdown in Go RudderStack Blog.md": {"path":"000-inbox/clippings/2024/07/Implementing Graceful Shutdown in Go RudderStack Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"3k59zv","at":1766986878407},"class_name":"SmartSource","last_import":{"mtime":1720363265000,"size":24392,"at":1766986878957,"hash":"3k59zv"},"blocks":{"#---frontmatter---":[1,5],"#":[6,26],"##{1}":[10,10],"##{2}":[11,14],"##{3}":[15,15],"##{4}":[16,19],"##{5}":[20,20],"##{6}":[21,26],"##Anti-patterns":[27,44],"##Anti-patterns#Block artificially":[29,36],"##Anti-patterns#Block artificially#{1}":[31,36],"##Anti-patterns#os.Exit()":[37,44],"##Anti-patterns#os.Exit()#{1}":[39,44],"##How to make it graceful in Go":[45,96],"##How to make it graceful in Go#{1}":[47,48],"##How to make it graceful in Go#{2}":[49,49],"##How to make it graceful in Go#{3}":[50,51],"##How to make it graceful in Go#{4}":[52,53],"##How to make it graceful in Go#Wait for go-routines to finish":[54,96],"##How to make it graceful in Go#Wait for go-routines to finish#{1}":[56,57],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel":[58,73],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel#{1}":[60,61],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel#{2}":[62,62],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel#{3}":[63,63],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel#{4}":[64,65],"##How to make it graceful in Go#Wait for go-routines to finish#Using channel#{5}":[66,73],"##How to make it graceful in Go#Wait for go-routines to finish#With WaitGroup":[74,85],"##How to make it graceful in Go#Wait for go-routines to finish#With WaitGroup#{1}":[76,85],"##How to make it graceful in Go#Wait for go-routines to finish#With errgroup":[86,96],"##How to make it graceful in Go#Wait for go-routines to finish#With errgroup#{1}":[88,89],"##How to make it graceful in Go#Wait for go-routines to finish#With errgroup#{2}":[90,90],"##How to make it graceful in Go#Wait for go-routines to finish#With errgroup#{3}":[91,96],"##How to make it graceful in Go#Wait for go-routines to finish#With errgroup#{4}":[93,96],"##Terminating a process":[97,198],"##Terminating a process#{1}":[99,106],"##Terminating a process#Introducing signal handling":[107,118],"##Terminating a process#Introducing signal handling#{1}":[109,114],"##Terminating a process#Introducing signal handling#{2}":[115,115],"##Terminating a process#Introducing signal handling#{3}":[116,116],"##Terminating a process#Introducing signal handling#{4}":[117,118],"##Terminating a process#Breaking the loop":[119,140],"##Terminating a process#Breaking the loop#{1}":[121,122],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select":[123,140],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select#{1}":[125,128],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select#{2}":[129,129],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select#{3}":[130,130],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select#{4}":[131,132],"##Terminating a process#Breaking the loop#Non-Blocking Channel Select#{5}":[133,140],"##Terminating a process#How to do it using Context":[141,150],"##Terminating a process#How to do it using Context#{1}":[143,150],"##Terminating a process#Channel sharing issue":[151,180],"##Terminating a process#Channel sharing issue#{1}":[153,168],"##Terminating a process#Channel sharing issue#Using Context for termination":[169,180],"##Terminating a process#Channel sharing issue#Using Context for termination#{1}":[171,180],"##Terminating a process#NotifyContext":[181,198],"##Terminating a process#NotifyContext#{1}":[183,198],"##Common libraries":[199,315],"##Common libraries#HTTP server":[201,265],"##Common libraries#HTTP server#{1}":[203,206],"##Common libraries#HTTP server#{2}":[207,207],"##Common libraries#HTTP server#{3}":[208,208],"##Common libraries#HTTP server#{4}":[209,210],"##Common libraries#HTTP server#{5}":[211,222],"##Common libraries#HTTP server#{6}":[223,223],"##Common libraries#HTTP server#{7}":[224,225],"##Common libraries#HTTP server#{8}":[226,239],"##Common libraries#HTTP server#Canceling long running requests":[240,265],"##Common libraries#HTTP server#Canceling long running requests#{1}":[242,249],"##Common libraries#HTTP server#Canceling long running requests#{2}":[250,250],"##Common libraries#HTTP server#Canceling long running requests#{3}":[251,252],"##Common libraries#HTTP server#Canceling long running requests#{4}":[253,265],"##Common libraries#HTTP Client":[266,283],"##Common libraries#HTTP Client#{1}":[268,283],"##Common libraries#Draining Worker Channels":[284,315],"##Common libraries#Draining Worker Channels#{1}":[286,289],"##Common libraries#Draining Worker Channels#{2}":[290,290],"##Common libraries#Draining Worker Channels#{3}":[291,291],"##Common libraries#Draining Worker Channels#{4}":[292,293],"##Common libraries#Draining Worker Channels#{5}":[294,295],"##Common libraries#Draining Worker Channels#{6}":[296,301],"##Common libraries#Draining Worker Channels#{7}":[298,301],"##Common libraries#Draining Worker Channels#{8}":[302,307],"##Common libraries#Draining Worker Channels#{9}":[304,307],"##Common libraries#Draining Worker Channels#{10}":[308,313],"##Common libraries#Draining Worker Channels#{11}":[310,313],"##Common libraries#Draining Worker Channels#{12}":[314,315],"##Graceful methods":[316,352],"##Graceful methods#{1}":[318,319],"##Graceful methods#Blocking with ctx":[320,332],"##Graceful methods#Blocking with ctx#{1}":[322,323],"##Graceful methods#Blocking with ctx#{2}":[324,324],"##Graceful methods#Blocking with ctx#{3}":[325,325],"##Graceful methods#Blocking with ctx#{4}":[326,326],"##Graceful methods#Blocking with ctx#{5}":[327,332],"##Graceful methods#Blocking with ctx#{6}":[329,332],"##Graceful methods#Setup/Shutdown":[333,352],"##Graceful methods#Setup/Shutdown#{1}":[335,336],"##Graceful methods#Setup/Shutdown#Use case":[337,346],"##Graceful methods#Setup/Shutdown#Use case#{1}":[339,346],"##Graceful methods#Setup/Shutdown#Implementation example":[347,352],"##Graceful methods#Setup/Shutdown#Implementation example#{1}":[349,352],"##Final Thoughts":[353,357],"##Final Thoughts#{1}":[355,357]},"outlinks":[{"title":"Rudder Server","target":"https://github.com/rudderlabs/rudder-server/","line":18},{"title":"sync.WaitGroup","target":"https://pkg.go.dev/sync#WaitGroup/","line":78},{"title":"example of waitgroups","target":"https://gobyexample.com/waitgroups/","line":80},{"title":"sync/errgroup","target":"https://pkg.go.dev/golang.org/x/sync/errgroup/","line":88},{"title":"modified","target":"https://docs.docker.com/engine/reference/builder/#stopsignal/","line":116},{"title":"docker","target":"https://docs.docker.com/engine/reference/commandline/stop/","line":116},{"title":"kubernetes","target":"https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination/","line":116},{"title":"go by example","target":"https://gobyexample.com/signals/","line":117},{"title":"package documentation","target":"https://pkg.go.dev/os/signal/","line":117},{"title":"https://gobyexample.com/non-blocking-channel-operations","target":"https://gobyexample.com/non-blocking-channel-operations/","line":129},{"title":"https://tour.golang.org/concurrency/5","target":"https://tour.golang.org/concurrency/5/","line":130},{"title":"https://gobyexample.com/timeouts","target":"https://gobyexample.com/timeouts/","line":131},{"title":"https://go.dev/blog/context","target":"https://go.dev/blog/context/","line":149},{"title":"context.WithCancel","target":"https://pkg.go.dev/context#WithCancel/","line":171},{"title":"singal.NotifyContext","target":"https://pkg.go.dev/os/signal#NotifyContext/","line":183},{"title":"example repo","target":"https://github.com/rudderlabs/graceful-shutdown-examples/tree/main/signal/","line":197},{"title":"BaseContext","target":"https://pkg.go.dev/net/http#Server/","line":251},{"title":"example repo","target":"https://github.com/rudderlabs/graceful-shutdown-examples/tree/main/httpserver/","line":264},{"title":"NewRequestWithContext","target":"https://pkg.go.dev/net/http#NewRequestWithContext/","line":268},{"title":"advanced article","target":"https://go101.org/article/channel-closing.html/","line":286},{"title":"closing channels","target":"https://gobyexample.com/closing-channels/","line":286},{"title":"Careers page","target":"https://boards.greenhouse.io/embed/job_board?for=rudderstack&b=https%3A%2F%2Frudderstack.com%2Fcareers/","line":357}],"metadata":{"page-title":"Implementing Graceful Shutdown in Go | RudderStack Blog","url":"https://www.rudderstack.com/blog/implementing-graceful-shutdown-in-go/","date":"2024-07-07 22:41:03"},"task_lines":[],"tasks":{},"codeblock_ranges":[[33,35],[41,43],[68,70],[82,84],[93,95],[103,105],[111,113],[135,137],[157,159],[173,175],[185,187],[193,195],[217,219],[260,262],[272,274],[278,280],[298,300],[304,306],[310,312],[329,331],[343,345],[349,351]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_Live_website_updates_with_Go,_SSE,_and_htmx_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_Live_website_updates_with_Go,_SSE,_and_htmx_md.ajson deleted file mode 100644 index 6f5c5b1..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_Live_website_updates_with_Go,_SSE,_and_htmx_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/Live website updates with Go, SSE, and htmx.md": {"path":"000-inbox/clippings/2024/07/Live website updates with Go, SSE, and htmx.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"3dg9iw","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1721692784000,"size":36005,"at":1766986878957,"hash":"3dg9iw"},"blocks":{"#---frontmatter---":[1,5],"#":[6,13],"##Server-Sent Events":[14,88],"##Server-Sent Events#{1}":[16,63],"##Server-Sent Events#{2}":[64,64],"##Server-Sent Events#{3}":[65,66],"##Server-Sent Events#{4}":[67,88],"##Go With The Domain Three Dots Labs":[89,96],"##Go With The Domain Three Dots Labs#{1}":[93,96],"##The Microblog Example":[97,118],"##The Microblog Example#{1}":[99,104],"##The Microblog Example#JSON API Example":[105,108],"##The Microblog Example#JSON API Example#{1}":[107,108],"##The Microblog Example#Tools used":[109,118],"##The Microblog Example#Tools used#{1}":[111,112],"##The Microblog Example#Tools used#{2}":[113,113],"##The Microblog Example#Tools used#{3}":[114,114],"##The Microblog Example#Tools used#{4}":[115,115],"##The Microblog Example#Tools used#{5}":[116,116],"##The Microblog Example#Tools used#{6}":[117,118],"##Deciding what and when to push":[119,148],"##Deciding what and when to push#{1}":[121,122],"##Deciding what and when to push#What":[123,126],"##Deciding what and when to push#What#{1}":[125,126],"##Deciding what and when to push#When":[127,134],"##Deciding what and when to push#When#{1}":[129,134],"##Deciding what and when to push#To Whom":[135,148],"##Deciding what and when to push#To Whom#{1}":[137,142],"##Deciding what and when to push#To Whom#{2}":[143,143],"##Deciding what and when to push#To Whom#{3}":[144,144],"##Deciding what and when to push#To Whom#{4}":[145,146],"##Deciding what and when to push#To Whom#{5}":[147,148],"##Implementing SSE Endpoints":[149,190],"##Implementing SSE Endpoints#{1}":[151,154],"##Implementing SSE Endpoints#Watermill Primer":[155,190],"##Implementing SSE Endpoints#Watermill Primer#{1}":[157,190],"##High-level architecture overview":[191,201],"##High-level architecture overview#{1}":[193,196],"##High-level architecture overview#{2}":[197,197],"##High-level architecture overview#{3}":[198,199],"##High-level architecture overview#{4}":[200,201],"##Publishing events":[202,257],"##Publishing events#{1}":[204,257],"##Subscribing to events":[258,416],"##Subscribing to events#{1}":[260,338],"##Subscribing to events#Be careful when refactoring":[339,355],"##Subscribing to events#Be careful when refactoring#{1}":[341,355],"##Subscribing to events#Publishing PostStatsUpdated":[356,416],"##Subscribing to events#Publishing PostStatsUpdated#{1}":[358,416],"##SSE Router":[417,591],"##SSE Router#{1}":[419,564],"##SSE Router#Configuring the Subscriber":[565,591],"##SSE Router#Configuring the Subscriber#{1}":[567,591],"##htmx":[592,630],"##htmx#{1}":[594,615],"##htmx#Animations":[616,630],"##htmx#Animations#{1}":[618,630],"##Other things to consider":[631,653],"##Other things to consider#Two kinds of SSE endpoints":[633,639],"##Other things to consider#Two kinds of SSE endpoints#{1}":[635,636],"##Other things to consider#Two kinds of SSE endpoints#{2}":[637,637],"##Other things to consider#Two kinds of SSE endpoints#{3}":[638,639],"##Other things to consider#At-least-once delivery":[640,647],"##Other things to consider#At-least-once delivery#{1}":[642,647],"##Other things to consider#Watch out for HTTP/1.1":[648,653],"##Other things to consider#Watch out for HTTP/1.1#{1}":[650,653],"##Local environment tricks":[654,685],"##Local environment tricks#{1}":[656,657],"##Local environment tricks#Mounting /go/pkg and go cache":[658,674],"##Local environment tricks#Mounting /go/pkg and go cache#{1}":[660,674],"##Local environment tricks#Reflex for regenerating templ and rebuilding the server":[675,685],"##Local environment tricks#Reflex for regenerating templ and rebuilding the server#{1}":[677,685],"##Go build something!":[686,692],"##Go build something!#{1}":[688,692]},"outlinks":[{"title":"here","target":"https://sse-example.threedots.tech/","line":12},{"title":"**free e-book**","target":"https://threedots.tech/go-with-the-domain/","line":83},{"title":"\n\n![Cover","target":"https://threedots.tech/img/go-with-domain-cover-retina_hu7b716367e1ec5d427a88b8765e593fda_120136_300x424_resize_q80_h2_lanczos.webp","line":85},{"title":"GitHub","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/real-world-examples/server-sent-events-htmx","line":103},{"title":"server-sent-events","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/real-world-examples/server-sent-events","line":107},{"title":"**Echo**","target":"https://echo.labstack.com/","line":113},{"title":"**templ**","target":"https://templ.guide/","line":114},{"title":"**htmx**","target":"https://htmx.org/","line":115},{"title":"**Watermill**","target":"https://watermill.io/","line":116},{"title":"Event to SSE","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/events-1_hue94f4a6bd5ed2a1c3a38d6ed99cae4ff_88612_508x547_resize_q80_h2_lanczos_3.webp","line":133,"embedded":true},{"title":"Event to single SSE","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/events-2_hu3889ca070725fe23178ca4697a0575f4_75189_505x564_resize_q80_h2_lanczos_3.webp","line":139,"embedded":true},{"title":"Architecture","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/architecture_huc02c536378643281bc081fe58296d1c5_172188_976x1030_resize_q80_h2_lanczos_3.webp","line":147,"embedded":true},{"title":"Watermill","target":"https://watermill.io/","line":153},{"title":"documentation","target":"https://watermill.io/","line":159},{"title":"Watermill on one picture","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/watermill-1_hub0fa5a7eb204e5c9b5d8bdcd543f227e_105482_1309x546_resize_q80_h2_lanczos_3.webp","line":181,"embedded":true},{"title":"Architecture","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/architecture_huc02c536378643281bc081fe58296d1c5_172188_976x1030_resize_q80_h2_lanczos_3.webp","line":193,"embedded":true},{"title":"another supported Pub/Sub","target":"https://watermill.io/pubsubs/","line":206},{"title":"Events Routing","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/routing-1_hue2d6422d41dfd900a23623d04b2ccb4e_97194_1317x638_resize_q80_h2_lanczos_3.webp","line":314,"embedded":true},{"title":"CPU load","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/cpu_hu2f252e2cda18585e8ba58d3dddf4827a_89125_1228x646_resize_q80_h2_lanczos_3.webp","line":370,"embedded":true},{"title":"GitHub","target":"https://github.com/ThreeDotsLabs/watermill/commit/0ea2d2de47d9c83ef85791a17822cc058ea54de2","line":372},{"title":"SSE Router","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/sse-router_hu54e0885851217062437a9788e35cec19_56751_852x639_resize_q80_h2_lanczos_3.webp","line":423,"embedded":true},{"title":"watermill-http","target":"https://github.com/ThreeDotsLabs/watermill-http","line":425},{"title":"Events Routing","target":"https://threedots.tech/post/live-website-updates-go-sse-htmx/images/routing-2_hua29ca1401efa2fade3c6aea16f52bdb6_108232_1463x588_resize_q80_h2_lanczos_3.webp","line":569,"embedded":true},{"title":"Go Event-Driven training","target":"https://threedots.tech/event-driven/","line":590},{"title":"Reflex","target":"https://github.com/cespare/reflex","line":677},{"title":"my post on the dev environment setup","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":677},{"title":"GitHub","target":"https://github.com/ThreeDotsLabs/watermill/tree/master/_examples/real-world-examples/server-sent-events-htmx","line":690}],"metadata":{"page-title":"Live website updates with Go, SSE, and htmx","url":"https://threedots.tech/post/live-website-updates-go-sse-htmx/","date":"2024-07-23 07:59:41"},"task_lines":[],"tasks":{},"codeblock_ranges":[[20,27],[35,60],[69,76],[165,175],[185,187],[208,217],[223,234],[240,244],[250,256],[268,270],[274,276],[280,302],[318,337],[347,354],[360,366],[376,415],[431,446],[450,455],[465,484],[488,516],[522,524],[530,538],[542,549],[557,563],[575,588],[598,600],[606,614],[624,629],[662,673],[681,684]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_07_The_Go_libraries_that_never_failed_us_22_libraries_you_need_to_know_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_07_The_Go_libraries_that_never_failed_us_22_libraries_you_need_to_know_md.ajson deleted file mode 100644 index 760c20f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_07_The_Go_libraries_that_never_failed_us_22_libraries_you_need_to_know_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/07/The Go libraries that never failed us 22 libraries you need to know.md": {"path":"000-inbox/clippings/2024/07/The Go libraries that never failed us 22 libraries you need to know.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1nho6xf","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1721692865000,"size":59206,"at":1766986878957,"hash":"1nho6xf"},"blocks":{"#---frontmatter---":[1,5],"#":[6,90],"##{1}":[20,30],"##{2}":[31,35],"##{3}":[36,42],"##{4}":[43,48],"##{5}":[49,53],"##{6}":[54,56],"##{7}":[57,63],"##{8}":[64,70],"##{9}":[71,83],"##{10}":[84,88],"##{11}":[89,90],"##HTTP":[91,347],"##HTTP#Routers":[93,175],"##HTTP#Routers#{1}":[95,106],"##HTTP#Routers#✅ Echo [\\[GitHub\\]](https://github.com/labstack/echo) [\\[Docs\\]](https://echo.labstack.com/guide/) [\\[Examples\\]](https://echo.labstack.com/cookbook/)":[107,143],"##HTTP#Routers#✅ Echo [\\[GitHub\\]](https://github.com/labstack/echo) [\\[Docs\\]](https://echo.labstack.com/guide/) [\\[Examples\\]](https://echo.labstack.com/cookbook/)#{1}":[109,143],"##HTTP#Routers#✅ chi [\\[GitHub\\]](https://github.com/go-chi/chi) [\\[Docs\\]](https://pkg.go.dev/github.com/go-chi/chi) [\\[Examples\\]](https://github.com/go-chi/chi/tree/master/_examples)":[144,175],"##HTTP#Routers#✅ chi [\\[GitHub\\]](https://github.com/go-chi/chi) [\\[Docs\\]](https://pkg.go.dev/github.com/go-chi/chi) [\\[Examples\\]](https://github.com/go-chi/chi/tree/master/_examples)#{1}":[146,175],"##HTTP#Middlewares":[176,213],"##HTTP#Middlewares#{1}":[178,181],"##HTTP#Middlewares#{2}":[182,182],"##HTTP#Middlewares#{3}":[183,184],"##HTTP#Middlewares#{4}":[185,213],"##HTTP#Serving static content":[214,266],"##HTTP#Serving static content#{1}":[216,266],"##HTTP#OpenAPI":[267,272],"##HTTP#OpenAPI#{1}":[269,272],"##HTTP#Generating Go server and clients":[273,325],"##HTTP#Generating Go server and clients#{1}":[275,284],"##HTTP#Generating Go server and clients#✅ deepmap/oapi-codegen [\\[GitHub\\]](https://github.com/deepmap/oapi-codegen) [\\[Docs\\]](https://github.com/deepmap/oapi-codegen#readme) [\\[Example\\]](https://threedots.tech/post/serverless-cloud-run-firebase-modern-go-application/#public-http-api)":[285,325],"##HTTP#Generating Go server and clients#✅ deepmap/oapi-codegen [\\[GitHub\\]](https://github.com/deepmap/oapi-codegen) [\\[Docs\\]](https://github.com/deepmap/oapi-codegen#readme) [\\[Example\\]](https://threedots.tech/post/serverless-cloud-run-firebase-modern-go-application/#public-http-api)#{1}":[287,325],"##HTTP#Bonus: Client for JavaScript/TypeScript":[326,347],"##HTTP#Bonus: Client for JavaScript/TypeScript#{1}":[328,329],"##HTTP#Bonus: Client for JavaScript/TypeScript#✅ openapi-generator-cli [\\[GitHub\\]](https://github.com/OpenAPITools/openapi-generator-cli) [\\[Docs\\]](https://github.com/OpenAPITools/openapi-generator-cli#readme)":[330,347],"##HTTP#Bonus: Client for JavaScript/TypeScript#✅ openapi-generator-cli [\\[GitHub\\]](https://github.com/OpenAPITools/openapi-generator-cli) [\\[Docs\\]](https://github.com/OpenAPITools/openapi-generator-cli#readme)#{1}":[332,347],"##Alternative types of communication":[348,404],"##Alternative types of communication#gRPC":[350,365],"##Alternative types of communication#gRPC#{1}":[352,359],"##Alternative types of communication#gRPC#✅ protoc [\\[Docs\\]](https://grpc.io/docs/)":[360,365],"##Alternative types of communication#gRPC#✅ protoc [\\[Docs\\]](https://grpc.io/docs/)#{1}":[362,365],"##Alternative types of communication#Messaging":[366,404],"##Alternative types of communication#Messaging#✅ Watermill [\\[GitHub\\]](https://github.com/ThreeDotsLabs/watermill) [\\[Docs\\]](https://watermill.io/) [\\[Examples\\]](https://github.com/ThreeDotsLabs/watermill/tree/master/_examples)":[368,404],"##Alternative types of communication#Messaging#✅ Watermill [\\[GitHub\\]](https://github.com/ThreeDotsLabs/watermill) [\\[Docs\\]](https://watermill.io/) [\\[Examples\\]](https://github.com/ThreeDotsLabs/watermill/tree/master/_examples)#{1}":[370,404],"##Go With The Domain Three Dots Labs":[405,412],"##Go With The Domain Three Dots Labs#{1}":[409,412],"##Database":[413,507],"##Database#SQL":[415,458],"##Database#SQL#{1}":[417,434],"##Database#SQL#✅ sqlx [\\[GitHub\\]](https://github.com/jmoiron/sqlx) [\\[Docs\\]](http://jmoiron.github.io/sqlx/)":[435,440],"##Database#SQL#✅ sqlx [\\[GitHub\\]](https://github.com/jmoiron/sqlx) [\\[Docs\\]](http://jmoiron.github.io/sqlx/)#{1}":[437,440],"##Database#SQL#✅ SQLBoiler [\\[GitHub\\]](https://github.com/volatiletech/sqlboiler) [\\[Docs\\]](https://github.com/volatiletech/sqlboiler#table-of-contents) [\\[Examples\\]](https://github.com/volatiletech/sqlboiler#features--examples)":[441,458],"##Database#SQL#✅ SQLBoiler [\\[GitHub\\]](https://github.com/volatiletech/sqlboiler) [\\[Docs\\]](https://github.com/volatiletech/sqlboiler#table-of-contents) [\\[Examples\\]](https://github.com/volatiletech/sqlboiler#features--examples)#{1}":[443,458],"##Database#Migrations":[459,507],"##Database#Migrations#{1}":[461,464],"##Database#Migrations#✅ sql-migrate [\\[GitHub\\]](https://github.com/rubenv/sql-migrate) [\\[Docs\\]](https://github.com/rubenv/sql-migrate#readme)":[465,466],"##Database#Migrations#✅ goose [\\[GitHub\\]](https://github.com/pressly/goose) [\\[Docs\\]](https://pkg.go.dev/github.com/pressly/goose)":[467,507],"##Database#Migrations#✅ goose [\\[GitHub\\]](https://github.com/pressly/goose) [\\[Docs\\]](https://pkg.go.dev/github.com/pressly/goose)#{1}":[469,507],"##Observability":[508,537],"##Observability#Logging":[510,529],"##Observability#Logging#{1}":[512,525],"##Observability#Logging#✅ Logrus [\\[GitHub\\]](https://github.com/sirupsen/logrus) [\\[Docs\\]](https://pkg.go.dev/github.com/sirupsen/logrus)":[526,527],"##Observability#Logging#✅ zap [\\[GitHub\\]](https://github.com/uber-go/zap) [\\[Docs\\]](http://pkg.go.dev/github.com/uber-go/zap)":[528,529],"##Observability#Metrics and tracing":[530,537],"##Observability#Metrics and tracing#✅ opencensus-go [\\[GitHub\\]](https://github.com/census-instrumentation/opencensus-go) [\\[Docs\\]](https://opencensus.io/)":[532,537],"##Observability#Metrics and tracing#✅ opencensus-go [\\[GitHub\\]](https://github.com/census-instrumentation/opencensus-go) [\\[Docs\\]](https://opencensus.io/)#{1}":[534,537],"##Configuration":[538,563],"##Configuration#{1}":[540,541],"##Configuration#Env variables":[542,563],"##Configuration#Env variables#✅ caarlos0/env [\\[GitHub\\]](https://github.com/caarlos0/env) [\\[Docs\\]](https://pkg.go.dev/github.com/caarlos0/env)":[544,553],"##Configuration#Env variables#✅ caarlos0/env [\\[GitHub\\]](https://github.com/caarlos0/env) [\\[Docs\\]](https://pkg.go.dev/github.com/caarlos0/env)#{1}":[546,553],"##Configuration#Env variables#Multi-format configuration":[554,555],"##Configuration#Env variables#✅ koanf [\\[GitHub\\]](https://github.com/knadh/koanf) [\\[Docs\\]](https://pkg.go.dev/github.com/knadh/koanf)":[556,563],"##Configuration#Env variables#✅ koanf [\\[GitHub\\]](https://github.com/knadh/koanf) [\\[Docs\\]](https://pkg.go.dev/github.com/knadh/koanf)#{1}":[558,563],"##Building CLI":[564,573],"##Building CLI#Building CLI libraries":[566,573],"##Building CLI#Building CLI libraries#✅ urfave/cli [\\[GitHub\\]](https://github.com/urfave/cli/) [\\[Docs\\]](https://cli.urfave.org/) [\\[Examples\\]](https://cli.urfave.org/v2/examples/greet/)":[568,573],"##Building CLI#Building CLI libraries#✅ urfave/cli [\\[GitHub\\]](https://github.com/urfave/cli/) [\\[Docs\\]](https://cli.urfave.org/) [\\[Examples\\]](https://cli.urfave.org/v2/examples/greet/)#{1}":[570,573],"##Testing":[574,747],"##Testing#Assertions":[576,705],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)":[578,664],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{1}":[580,583],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{2}":[584,584],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{3}":[585,586],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{4}":[587,588],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{5}":[589,589],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{6}":[590,590],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{7}":[591,591],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{8}":[592,592],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{9}":[593,593],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{10}":[594,594],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{11}":[595,596],"##Testing#Assertions#✅ testify [\\[GitHub\\]](https://github.com/stretchr/testify) [\\[Docs\\]](https://pkg.go.dev/github.com/stretchr/testify)#{12}":[597,664],"##Testing#Assertions#✅ go-cmp [\\[GitHub\\]](https://github.com/google/go-cmp) [\\[Docs\\]](https://pkg.go.dev/github.com/google/go-cmp) [\\[Examples 1\\]](https://github.com/google/go-cmp/blob/master/cmp/example_test.go) [\\[Examples 2\\]](https://github.com/google/go-cmp/blob/master/cmp/cmpopts/example_test.go)":[665,701],"##Testing#Assertions#✅ go-cmp [\\[GitHub\\]](https://github.com/google/go-cmp) [\\[Docs\\]](https://pkg.go.dev/github.com/google/go-cmp) [\\[Examples 1\\]](https://github.com/google/go-cmp/blob/master/cmp/example_test.go) [\\[Examples 2\\]](https://github.com/google/go-cmp/blob/master/cmp/cmpopts/example_test.go)#{1}":[667,701],"##Testing#Assertions#✅ gofakeit [\\[GitHub\\]](https://github.com/brianvoe/gofakeit) [\\[Docs\\]](https://pkg.go.dev/github.com/brianvoe/gofakeit)":[702,705],"##Testing#Assertions#✅ gofakeit [\\[GitHub\\]](https://github.com/brianvoe/gofakeit) [\\[Docs\\]](https://pkg.go.dev/github.com/brianvoe/gofakeit)#{1}":[704,705],"##Testing#Mocking":[706,747],"##Testing#Mocking#Writing mocks by hand":[708,747],"##Testing#Mocking#Writing mocks by hand#{1}":[710,747],"##Misc":[748,912],"##Misc##✅ google/uuid [\\[GitHub\\]](https://github.com/google/uuid) [\\[Docs\\]](https://pkg.go.dev/github.com/google/uuid)":[750,753],"##Misc##✅ google/uuid [\\[GitHub\\]](https://github.com/google/uuid) [\\[Docs\\]](https://pkg.go.dev/github.com/google/uuid)#{1}":[752,753],"##Misc##✅ oklog/ulid [\\[GitHub\\]](https://github.com/oklog/ulid) [\\[Docs\\]](https://pkg.go.dev/github.com/oklog/ulid)":[754,759],"##Misc##✅ oklog/ulid [\\[GitHub\\]](https://github.com/oklog/ulid) [\\[Docs\\]](https://pkg.go.dev/github.com/oklog/ulid)#{1}":[756,759],"##Misc##✅ shopspring/decimal [\\[GitHub\\]](https://github.com/shopspring/decimal) [\\[Docs\\]](https://pkg.go.dev/github.com/shopspring/decimal)":[760,779],"##Misc##✅ shopspring/decimal [\\[GitHub\\]](https://github.com/shopspring/decimal) [\\[Docs\\]](https://pkg.go.dev/github.com/shopspring/decimal)#{1}":[762,779],"##Misc#Errors":[780,822],"##Misc#Errors#✅ hashicorp/go-multierror [\\[GitHub\\]](https://github.com/hashicorp/go-multierror) [\\[Docs\\]](https://threedots.tech/post/list-of-recommended-libraries/github.com/hashicorp/go-multierror)":[782,822],"##Misc#Errors#✅ hashicorp/go-multierror [\\[GitHub\\]](https://github.com/hashicorp/go-multierror) [\\[Docs\\]](https://threedots.tech/post/list-of-recommended-libraries/github.com/hashicorp/go-multierror)#{1}":[784,822],"##Misc#Misc":[823,870],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)":[825,855],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{1}":[827,830],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{2}":[831,831],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{3}":[832,832],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{4}":[833,833],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{5}":[834,834],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{6}":[835,835],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{7}":[836,836],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{8}":[837,838],"##Misc#Misc#✅ samber/lo [\\[GitHub\\]](https://github.com/samber/lo) [\\[Docs\\]](https://pkg.go.dev/github.com/samber/lo)#{9}":[839,855],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)":[856,870],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{1}":[858,861],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{2}":[862,862],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{3}":[863,863],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{4}":[864,864],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{5}":[865,865],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{6}":[866,866],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{7}":[867,868],"##Misc#Misc#✅ Task [\\[GitHub\\]](https://github.com/go-task/task) [\\[Docs\\]](https://taskfile.dev/)#{8}":[869,870],"##Misc#Live code reloading":[871,878],"##Misc#Live code reloading#✅ reflex [\\[GitHub\\]](https://github.com/cespare/reflex) [\\[Docs\\]](https://pkg.go.dev/github.com/cespare/reflex) \\[[Example](https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/)\\]":[873,878],"##Misc#Live code reloading#✅ reflex [\\[GitHub\\]](https://github.com/cespare/reflex) [\\[Docs\\]](https://pkg.go.dev/github.com/cespare/reflex) \\[[Example](https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/)\\]#{1}":[875,878],"##Misc#Linter":[879,890],"##Misc#Linter#✅ golangci-lint [\\[GitHub\\]](https://github.com/golangci/golangci-lint) [\\[Docs\\]](https://golangci-lint.run/)":[881,886],"##Misc#Linter#✅ golangci-lint [\\[GitHub\\]](https://github.com/golangci/golangci-lint) [\\[Docs\\]](https://golangci-lint.run/)#{1}":[883,886],"##Misc#Linter#✅ go-cleanarch [\\[GitHub\\]](https://github.com/roblaszczak/go-cleanarch) [\\[Docs\\]](https://pkg.go.dev/github.com/roblaszczak/go-cleanarch#section-readme)":[887,890],"##Misc#Linter#✅ go-cleanarch [\\[GitHub\\]](https://github.com/roblaszczak/go-cleanarch) [\\[Docs\\]](https://pkg.go.dev/github.com/roblaszczak/go-cleanarch#section-readme)#{1}":[889,890],"##Misc#Formatters":[891,912],"##Misc#Formatters#✅ go fmt":[893,896],"##Misc#Formatters#✅ go fmt#{1}":[895,896],"##Misc#Formatters#✅ goimports [\\[Docs\\]](https://pkg.go.dev/golang.org/x/tools/cmd/goimports)":[897,906],"##Misc#Formatters#✅ goimports [\\[Docs\\]](https://pkg.go.dev/golang.org/x/tools/cmd/goimports)#{1}":[899,906],"##Misc#Formatters#✅ gofumpt [\\[GitHub\\]](https://github.com/mvdan/gofumpt) [\\[Docs\\]](https://pkg.go.dev/mvdan.cc/gofumpt#section-readme)":[907,912],"##Misc#Formatters#✅ gofumpt [\\[GitHub\\]](https://github.com/mvdan/gofumpt) [\\[Docs\\]](https://pkg.go.dev/mvdan.cc/gofumpt#section-readme)#{1}":[909,912],"##Example projects":[913,934],"##Example projects#DDD & Clean Architecture":[915,928],"##Example projects#DDD & Clean Architecture#✅ Wild Workouts Go DDD Example application [\\[GitHub\\]](https://github.com/ThreeDotsLabs/wild-workouts-go-ddd-example)":[917,928],"##Example projects#DDD & Clean Architecture#✅ Wild Workouts Go DDD Example application [\\[GitHub\\]](https://github.com/ThreeDotsLabs/wild-workouts-go-ddd-example)#{1}":[919,928],"##Example projects#General purpose":[929,934],"##Example projects#General purpose#✅ Modern Go Application by Márk Sági-Kazár [\\[GitHub\\]](https://github.com/sagikazarmark/modern-go-application)":[931,934],"##Example projects#General purpose#✅ Modern Go Application by Márk Sági-Kazár [\\[GitHub\\]](https://github.com/sagikazarmark/modern-go-application)#{1}":[933,934],"##Summary":[935,937],"##Summary#{1}":[937,937]},"outlinks":[{"title":"Awesome Go","target":"https://github.com/avelino/awesome-go","line":6},{"title":"Frankenstein Gopher","target":"https://threedots.tech/post/list-of-recommended-libraries/library-gopher.svg","line":8,"embedded":true},{"title":"HTTP","target":"https://threedots.tech/post/list-of-recommended-libraries/#http","line":20},{"title":"Routers","target":"https://threedots.tech/post/list-of-recommended-libraries/#routers","line":21},{"title":"Echo","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-echo-githubhttpsgithubcomlabstackecho-docshttpsecholabstackcomguide-exampleshttpsecholabstackcomcookbook","line":22},{"title":"chi","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-chi-githubhttpsgithubcomgo-chichi-docshttpspkggodevgithubcomgo-chichi-exampleshttpsgithubcomgo-chichitreemaster_examples","line":23},{"title":"Middlewares","target":"https://threedots.tech/post/list-of-recommended-libraries/#middlewares","line":24},{"title":"Serving static content","target":"https://threedots.tech/post/list-of-recommended-libraries/#serving-static-content","line":25},{"title":"OpenAPI","target":"https://threedots.tech/post/list-of-recommended-libraries/#openapi","line":26},{"title":"Generating Go server and clients","target":"https://threedots.tech/post/list-of-recommended-libraries/#generating-go-server-and-clients","line":27},{"title":"deepmap/oapi-codegen","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-deepmapoapi-codegen-githubhttpsgithubcomdeepmapoapi-codegen-docshttpsgithubcomdeepmapoapi-codegenreadme-examplehttpsthreedotstechpostserverless-cloud-run-firebase-modern-go-applicationpublic-http-api","line":28},{"title":"Bonus: Client for JavaScript/TypeScript","target":"https://threedots.tech/post/list-of-recommended-libraries/#bonus-client-for-javascripttypescript","line":29},{"title":"openapi-generator-cli","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-openapi-generator-cli-githubhttpsgithubcomopenapitoolsopenapi-generator-cli-docshttpsgithubcomopenapitoolsopenapi-generator-clireadme","line":30},{"title":"Alternative types of communication","target":"https://threedots.tech/post/list-of-recommended-libraries/#alternative-types-of-communication","line":31},{"title":"gRPC","target":"https://threedots.tech/post/list-of-recommended-libraries/#grpc","line":32},{"title":"protoc","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-protoc-docshttpsgrpciodocs","line":33},{"title":"Messaging","target":"https://threedots.tech/post/list-of-recommended-libraries/#messaging","line":34},{"title":"Watermill","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-watermill-githubhttpsgithubcomthreedotslabswatermill-docshttpswatermillio-exampleshttpsgithubcomthreedotslabswatermilltreemaster_examples","line":35},{"title":"Database","target":"https://threedots.tech/post/list-of-recommended-libraries/#database","line":36},{"title":"SQL","target":"https://threedots.tech/post/list-of-recommended-libraries/#sql","line":37},{"title":"sqlx","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-sqlx-githubhttpsgithubcomjmoironsqlx-docshttpjmoirongithubiosqlx","line":38},{"title":"SQLBoiler","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-sqlboiler-githubhttpsgithubcomvolatiletechsqlboiler-docshttpsgithubcomvolatiletechsqlboilertable-of-contents-exampleshttpsgithubcomvolatiletechsqlboilerfeatures--examples","line":39},{"title":"Migrations","target":"https://threedots.tech/post/list-of-recommended-libraries/#migrations","line":40},{"title":"sql-migrate","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-sql-migrate-githubhttpsgithubcomrubenvsql-migrate-docshttpsgithubcomrubenvsql-migratereadme","line":41},{"title":"goose","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-goose-githubhttpsgithubcompresslygoose-docshttpspkggodevgithubcompresslygoose","line":42},{"title":"Observability","target":"https://threedots.tech/post/list-of-recommended-libraries/#observability","line":43},{"title":"Logging","target":"https://threedots.tech/post/list-of-recommended-libraries/#logging","line":44},{"title":"Logrus","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-logrus-githubhttpsgithubcomsirupsenlogrus-docshttpspkggodevgithubcomsirupsenlogrus","line":45},{"title":"zap","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-zap-githubhttpsgithubcomuber-gozap-docshttppkggodevgithubcomuber-gozap","line":46},{"title":"Metrics and tracing","target":"https://threedots.tech/post/list-of-recommended-libraries/#metrics-and-tracing","line":47},{"title":"opencensus-go","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-opencensus-go-githubhttpsgithubcomcensus-instrumentationopencensus-go-docshttpsopencensusio","line":48},{"title":"Configuration","target":"https://threedots.tech/post/list-of-recommended-libraries/#configuration","line":49},{"title":"Env variables","target":"https://threedots.tech/post/list-of-recommended-libraries/#env-variables","line":50},{"title":"caarlos0/env","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-caarlos0env-githubhttpsgithubcomcaarlos0env-docshttpspkggodevgithubcomcaarlos0env","line":51},{"title":"Multi-format configuration","target":"https://threedots.tech/post/list-of-recommended-libraries/#multi-format-configuration","line":52},{"title":"koanf","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-koanf-githubhttpsgithubcomknadhkoanf-docshttpspkggodevgithubcomknadhkoanf","line":53},{"title":"Building CLI","target":"https://threedots.tech/post/list-of-recommended-libraries/#building-cli","line":54},{"title":"Building CLI libraries","target":"https://threedots.tech/post/list-of-recommended-libraries/#building-cli-libraries","line":55},{"title":"urfave/cli","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-urfavecli-githubhttpsgithubcomurfavecli-docshttpscliurfaveorg-exampleshttpscliurfaveorgv2examplesgreet","line":56},{"title":"Testing","target":"https://threedots.tech/post/list-of-recommended-libraries/#testing","line":57},{"title":"Assertions","target":"https://threedots.tech/post/list-of-recommended-libraries/#assertions","line":58},{"title":"testify","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-testify-githubhttpsgithubcomstretchrtestify-docshttpspkggodevgithubcomstretchrtestify","line":59},{"title":"go-cmp","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-go-cmp-githubhttpsgithubcomgooglego-cmp-docshttpspkggodevgithubcomgooglego-cmp-examples-1httpsgithubcomgooglego-cmpblobmastercmpexample_testgo-examples-2httpsgithubcomgooglego-cmpblobmastercmpcmpoptsexample_testgo","line":60},{"title":"gofakeit","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-gofakeit-githubhttpsgithubcombrianvoegofakeit-docshttpspkggodevgithubcombrianvoegofakeit","line":61},{"title":"Mocking","target":"https://threedots.tech/post/list-of-recommended-libraries/#mocking","line":62},{"title":"Writing mocks by hand","target":"https://threedots.tech/post/list-of-recommended-libraries/#writing-mocks-by-hand","line":63},{"title":"Misc","target":"https://threedots.tech/post/list-of-recommended-libraries/#misc","line":64},{"title":"Extra types support","target":"https://threedots.tech/post/list-of-recommended-libraries/#extra-types-support","line":65},{"title":"google/uuid","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-googleuuid-githubhttpsgithubcomgoogleuuid-docshttpspkggodevgithubcomgoogleuuid","line":66},{"title":"oklog/ulid","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-oklogulid-githubhttpsgithubcomoklogulid-docshttpspkggodevgithubcomoklogulid","line":67},{"title":"shopspring/decimal","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-shopspringdecimal-githubhttpsgithubcomshopspringdecimal-docshttpspkggodevgithubcomshopspringdecimal","line":68},{"title":"Errors","target":"https://threedots.tech/post/list-of-recommended-libraries/#errors","line":69},{"title":"hashicorp/go-multierror","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-hashicorpgo-multierror-githubhttpsgithubcomhashicorpgo-multierror-docsgithubcomhashicorpgo-multierror","line":70},{"title":"Useful tools","target":"https://threedots.tech/post/list-of-recommended-libraries/#useful-tools","line":71},{"title":"Misc","target":"https://threedots.tech/post/list-of-recommended-libraries/#misc-1","line":72},{"title":"samber/lo","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-samberlo-githubhttpsgithubcomsamberlo-docshttpspkggodevgithubcomsamberlo","line":73},{"title":"Task","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-task-githubhttpsgithubcomgo-tasktask-docshttpstaskfiledev","line":74},{"title":"Live code reloading","target":"https://threedots.tech/post/list-of-recommended-libraries/#live-code-reloading","line":75},{"title":"[Example","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":76},{"title":"reflex","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-reflex-githubhttpsgithubcomcesparereflex-docshttpspkggodevgithubcomcesparereflex-examplehttpsthreedotstechpostgo-docker-dev-environment-with-go-modules-and-live-code-reloading","line":76},{"title":"Linter","target":"https://threedots.tech/post/list-of-recommended-libraries/#linter","line":77},{"title":"golangci-lint","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-golangci-lint-githubhttpsgithubcomgolangcigolangci-lint-docshttpsgolangci-lintrun","line":78},{"title":"go-cleanarch","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-go-cleanarch-githubhttpsgithubcomroblaszczakgo-cleanarch-docshttpspkggodevgithubcomroblaszczakgo-cleanarchsection-readme","line":79},{"title":"Formatters","target":"https://threedots.tech/post/list-of-recommended-libraries/#formatters","line":80},{"title":"go fmt","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-go-fmt","line":81},{"title":"goimports","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-goimports-docshttpspkggodevgolangorgxtoolscmdgoimports","line":82},{"title":"gofumpt","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-gofumpt-githubhttpsgithubcommvdangofumpt-docshttpspkggodevmvdanccgofumptsection-readme","line":83},{"title":"Example projects","target":"https://threedots.tech/post/list-of-recommended-libraries/#example-projects","line":84},{"title":"DDD & Clean Architecture","target":"https://threedots.tech/post/list-of-recommended-libraries/#ddd--clean-architecture","line":85},{"title":"Wild Workouts Go DDD Example application","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-wild-workouts-go-ddd-example-application-githubhttpsgithubcomthreedotslabswild-workouts-go-ddd-example","line":86},{"title":"General purpose","target":"https://threedots.tech/post/list-of-recommended-libraries/#general-purpose","line":87},{"title":"Modern Go Application by Márk Sági-Kazár","target":"https://threedots.tech/post/list-of-recommended-libraries/#white_check_mark-modern-go-application-by-m%C3%A1rk-s%C3%A1gi-kaz%C3%A1r-githubhttpsgithubcomsagikazarmarkmodern-go-application","line":88},{"title":"Summary","target":"https://threedots.tech/post/list-of-recommended-libraries/#summary","line":89},{"title":"http","target":"https://pkg.go.dev/net/http","line":95},{"title":"previous article","target":"https://threedots.tech/post/best-go-framework/","line":95},{"title":"previous article","target":"https://threedots.tech/post/best-go-framework/","line":101},{"title":"section on middlewares","target":"https://threedots.tech/post/list-of-recommended-libraries/#middlewares","line":103},{"title":"OpenAPI","target":"https://threedots.tech/post/list-of-recommended-libraries/#openapi","line":105},{"title":"error handler","target":"https://echo.labstack.com/guide/error-handling/","line":140},{"title":"defining routes and grouping","target":"https://github.com/go-chi/chi/blob/0fe6bf1ba3ac601700b7993bc4c62f6c5f707932/_examples/rest/main.go#L83","line":148},{"title":"Echo middlewares","target":"https://echo.labstack.com/middleware/","line":182},{"title":"chi middlewares","target":"https://github.com/go-chi/chi/tree/master/middleware","line":183},{"title":"the Awesome Go list","target":"https://github.com/avelino/awesome-go#middlewares","line":212},{"title":"embed static files into your Go binary","target":"https://pkg.go.dev/embed","line":216},{"title":"![Go In One Evening","target":"https://threedots.tech/img/sidebar/course.svg","line":263},{"title":"Learn Go hands-on by building real projects.","target":"https://threedots.tech/go-in-one-evening/?utm_source=blog-content","line":265},{"title":"example specification","target":"https://github.com/ThreeDotsLabs/wild-workouts-go-ddd-example/tree/a0a41253db96d46d75e7ff4c7e7f95848f47dcc3/api/openapi","line":271},{"title":"previous article","target":"https://threedots.tech/post/serverless-cloud-run-firebase-modern-go-application/#openapi-swagger-client","line":271},{"title":"chi","target":"https://threedots.tech/post/list-of-recommended-libraries/#chi","line":287},{"title":"Echo","target":"https://threedots.tech/post/list-of-recommended-libraries/#echo","line":287},{"title":"router","target":"https://threedots.tech/post/list-of-recommended-libraries/#routers","line":287},{"title":"Wild Workouts project","target":"https://github.com/ThreeDotsLabs/wild-workouts-go-ddd-example","line":324},{"title":"worth using gRPC for internal communication","target":"https://threedots.tech/post/robust-grpc-google-cloud-run/","line":354},{"title":"protoc","target":"https://grpc.io/docs/protoc-installation/","line":362},{"title":"protoc Go Plugin","target":"https://grpc.io/docs/quickstart/go/","line":362},{"title":"Well-Known Types list","target":"https://developers.google.com/protocol-buffers/docs/reference/google.protobuf","line":364},{"title":"Protocol Buffers Version 3 Language Specification","target":"https://developers.google.com/protocol-buffers/docs/reference/proto3-spec#fields","line":364},{"title":"CQRS support","target":"https://watermill.io/docs/cqrs/","line":394},{"title":"event-forwarder","target":"https://watermill.io/docs/forwarder/","line":394},{"title":"middlewares","target":"https://watermill.io/docs/middlewares/","line":394},{"title":"RabbitMQ","target":"https://watermill.io/pubsubs/amqp/","line":396},{"title":"BoltDB","target":"https://watermill.io/pubsubs/bolt/","line":396},{"title":"Firestore","target":"https://watermill.io/pubsubs/firestore/","line":396},{"title":"Go-channel based Pub/Sub","target":"https://watermill.io/pubsubs/gochannel/","line":396},{"title":"GCP Pub/Sub","target":"https://watermill.io/pubsubs/googlecloud/","line":396},{"title":"HTTP hooks","target":"https://watermill.io/pubsubs/http/","line":396},{"title":"Kafka","target":"https://watermill.io/pubsubs/kafka/","line":396},{"title":"NATS","target":"https://watermill.io/pubsubs/nats/","line":396},{"title":"MySQL/Postgres","target":"https://watermill.io/pubsubs/sql/","line":396},{"title":"**free e-book**","target":"https://threedots.tech/go-with-the-domain/","line":399},{"title":"\n\n![Cover","target":"https://threedots.tech/img/go-with-domain-cover-retina_hu7b716367e1ec5d427a88b8765e593fda_120136_300x424_resize_q80_h2_lanczos.webp","line":401},{"title":"Things to know about DRY","target":"https://threedots.tech/post/things-to-know-about-dry/","line":429},{"title":"“Common Anti-Patterns in Go Web Applications”","target":"https://threedots.tech/post/common-anti-patterns-in-go-web-applications/","line":457},{"title":"“Business Applications in Go: Things to know about DRY” article","target":"https://threedots.tech/post/things-to-know-about-dry/","line":457},{"title":"zap’s readme","target":"https://github.com/uber-go/zap#performance","line":516},{"title":"SQL databases","target":"https://pkg.go.dev/github.com/opencensus-integrations/ocsql","line":534},{"title":"MongoDB","target":"https://pkg.go.dev/github.com/orijtech/mongo-go-driver","line":534},{"title":"gRPC endpoints","target":"https://pkg.go.dev/go.opencensus.io/plugin/ocgrpc","line":534},{"title":"HTTP endpoints","target":"https://pkg.go.dev/go.opencensus.io/plugin/ochttp","line":534},{"title":"flag package","target":"https://pkg.go.dev/flag","line":540},{"title":"more popular libraries","target":"https://github.com/knadh/koanf#alternative-to-viper","line":560},{"title":"Equal","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#Equal","line":589},{"title":"Eventually","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#Eventually","line":590},{"title":"ElementsMatch","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#ElementsMatch","line":591},{"title":"WithinDuration","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#WithinDuration","line":592},{"title":"ErrorIs","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#ErrorIs","line":593},{"title":"JSONEq","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#JSONEq","line":594},{"title":"Panics","target":"https://pkg.go.dev/github.com/stretchr/testify/assert#Panics","line":595},{"title":"this article on testing microservices","target":"https://threedots.tech/post/microservices-test-architecture/#keeping-integration-tests-stable-and-fast","line":663},{"title":"`cmp`","target":"https://pkg.go.dev/github.com/google/go-cmp/cmp","line":698},{"title":"`cmpopts`","target":"https://pkg.go.dev/github.com/google/go-cmp/cmp/cmpopts","line":698},{"title":"the interface segregation principle","target":"https://en.wikipedia.org/wiki/Interface_segregation_principle","line":744},{"title":"may be slow to store","target":"https://www.percona.com/blog/2014/12/19/store-uuid-optimized-way/","line":756},{"title":"github.com/gofrs/uuid","target":"https://github.com/gofrs/uuid/blob/e1079f31cfcadf78856b9866d15574dd6546e29b/uuid.go#L66","line":758},{"title":"will introduce","target":"https://github.com/golang/go/issues/53435","line":821},{"title":"Filter","target":"https://pkg.go.dev/github.com/samber/lo#Filter","line":831},{"title":"Map","target":"https://pkg.go.dev/github.com/samber/lo#Map","line":832},{"title":"Keys","target":"https://pkg.go.dev/github.com/samber/lo#Keys","line":833},{"title":"Values","target":"https://pkg.go.dev/github.com/samber/lo#Values","line":834},{"title":"Find","target":"https://pkg.go.dev/github.com/samber/lo#Find","line":835},{"title":"Max","target":"https://pkg.go.dev/github.com/samber/lo#Max","line":836},{"title":"Must","target":"https://pkg.go.dev/github.com/samber/lo#Must","line":837},{"title":"ORM","target":"https://threedots.tech/post/list-of-recommended-libraries/#sql","line":839},{"title":"task dependencies","target":"https://taskfile.dev/usage/#task-dependencies","line":862},{"title":"unnecessary work","target":"https://taskfile.dev/usage/#prevent-unnecessary-work","line":863},{"title":"Loading .env","target":"https://taskfile.dev/usage/#env-files","line":864},{"title":"Dynamic variables","target":"https://taskfile.dev/usage/#dynamic-variables","line":865},{"title":"Forwarding CLI arguments","target":"https://taskfile.dev/usage/#forwarding-cli-arguments-to-commands","line":866},{"title":"Templating","target":"https://taskfile.dev/usage/#gos-template-engine","line":867},{"title":"[Example","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":873},{"title":"local environment with Docker and reflex","target":"https://threedots.tech/post/go-docker-dev-environment-with-go-modules-and-live-code-reloading/","line":877},{"title":"an example configuration","target":"https://github.com/ThreeDotsLabs/wild-workouts-go-ddd-example/blob/b519c611e9d1248a149c89db9bcf879fd78b1e35/internal/trainer/.golangci.yml","line":885},{"title":"Clean/Hexagonal Architecture","target":"https://threedots.tech/post/introducing-clean-architecture/","line":889},{"title":"comments","target":"https://threedots.tech/post/list-of-recommended-libraries/#disqus_thread","line":937}],"metadata":{"page-title":"The Go libraries that never failed us: 22 libraries you need to know","url":"https://threedots.tech/post/list-of-recommended-libraries/","date":"2024-07-23 08:01:03"},"task_lines":[],"tasks":{},"codeblock_ranges":[[113,123],[127,138],[150,166],[189,210],[220,251],[291,294],[300,303],[309,322],[336,342],[376,378],[382,392],[473,504],[603,605],[609,615],[629,631],[635,655],[669,696],[718,736],[770,774],[790,803],[807,819],[843,852],[903,905]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_08_CORS_the_ultimate_guide__Devsecurely_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_08_CORS_the_ultimate_guide__Devsecurely_md.ajson deleted file mode 100644 index 5d6d490..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_08_CORS_the_ultimate_guide__Devsecurely_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/08/CORS the ultimate guide Devsecurely.md": {"path":"000-inbox/clippings/2024/08/CORS the ultimate guide Devsecurely.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"e7b6vk","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1724661418295,"size":23378,"at":1766986878957,"hash":"e7b6vk"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##Asynchronous JavaScript And XML (AJAX)":[8,15],"##Asynchronous JavaScript And XML (AJAX)#{1}":[10,15],"##Why is the Internet not a jungle?":[16,34],"##Why is the Internet not a jungle?#{1}":[18,27],"##Why is the Internet not a jungle?#{2}":[28,28],"##Why is the Internet not a jungle?#{3}":[29,29],"##Why is the Internet not a jungle?#{4}":[30,30],"##Why is the Internet not a jungle?#{5}":[31,32],"##Why is the Internet not a jungle?#{6}":[33,34],"##**With credentials vs without credentials**":[35,44],"##**With credentials vs without credentials**#{1}":[37,44],"##**CORS rule definition**":[45,48],"##**CORS rule definition**#{1}":[47,48],"##**Cross Origin Request processing**":[49,118],"##**Cross Origin Request processing**#{1}":[51,54],"##**Cross Origin Request processing**#{2}":[55,55],"##**Cross Origin Request processing**#{3}":[56,57],"##**Cross Origin Request processing**#{4}":[58,59],"##**Cross Origin Request processing**#**To request or not to request?**":[60,83],"##**Cross Origin Request processing**#**To request or not to request?**#{1}":[62,69],"##**Cross Origin Request processing**#**To request or not to request?**#{2}":[70,70],"##**Cross Origin Request processing**#**To request or not to request?**#{3}":[71,72],"##**Cross Origin Request processing**#**To request or not to request?**#{4}":[73,74],"##**Cross Origin Request processing**#**To request or not to request?**#{5}":[75,75],"##**Cross Origin Request processing**#**To request or not to request?**#{6}":[76,77],"##**Cross Origin Request processing**#**To request or not to request?**#{7}":[78,79],"##**Cross Origin Request processing**#**To request or not to request?**#{8}":[80,80],"##**Cross Origin Request processing**#**To request or not to request?**#{9}":[81,81],"##**Cross Origin Request processing**#**To request or not to request?**#{10}":[82,83],"##**Cross Origin Request processing**#**To allow access or deny?**":[84,91],"##**Cross Origin Request processing**#**To allow access or deny?**#{1}":[86,91],"##**Cross Origin Request processing**#**CORS policy check**":[92,118],"##**Cross Origin Request processing**#**CORS policy check**#{1}":[94,95],"##**Cross Origin Request processing**#**CORS policy check**#{2}":[96,96],"##**Cross Origin Request processing**#**CORS policy check**#{3}":[97,98],"##**Cross Origin Request processing**#**CORS policy check**#{4}":[99,100],"##**Cross Origin Request processing**#**CORS policy check**#{5}":[101,103],"##**Cross Origin Request processing**#**CORS policy check**#{6}":[104,104],"##**Cross Origin Request processing**#**CORS policy check**#{7}":[105,105],"##**Cross Origin Request processing**#**CORS policy check**#{8}":[106,107],"##**Cross Origin Request processing**#**CORS policy check**#{9}":[108,109],"##**Cross Origin Request processing**#**CORS policy check**#{10}":[110,110],"##**Cross Origin Request processing**#**CORS policy check**#{11}":[111,112],"##**Cross Origin Request processing**#**CORS policy check**#{12}":[113,118],"##**What are the dangers of a misconfigured CORS policy?**":[119,174],"##**What are the dangers of a misconfigured CORS policy?**#{1}":[121,130],"##**What are the dangers of a misconfigured CORS policy?**#{2}":[131,131],"##**What are the dangers of a misconfigured CORS policy?**#{3}":[132,132],"##**What are the dangers of a misconfigured CORS policy?**#{4}":[133,134],"##**What are the dangers of a misconfigured CORS policy?**#{5}":[135,174],"##**Demonstration**":[175,233],"##**Demonstration**#{1}":[177,226],"##**Demonstration**#{2}":[227,227],"##**Demonstration**#{3}":[228,228],"##**Demonstration**#{4}":[229,229],"##**Demonstration**#{5}":[230,231],"##**Demonstration**#{6}":[232,233],"##**How to define a secure CORS policy?**":[234,253],"##**How to define a secure CORS policy?**#{1}":[236,237],"##**How to define a secure CORS policy?**#{2}":[238,242],"##**How to define a secure CORS policy?**#{3}":[243,244],"##**How to define a secure CORS policy?**#{4}":[245,246],"##**How to define a secure CORS policy?**#{5}":[247,249],"##**How to define a secure CORS policy?**#{6}":[250,253],"##**CORS configuration as a CSRF protection**":[254,272],"##**CORS configuration as a CSRF protection**#{1}":[256,263],"##**CORS configuration as a CSRF protection**#{2}":[264,264],"##**CORS configuration as a CSRF protection**#{3}":[265,266],"##**CORS configuration as a CSRF protection**#{4}":[267,272],"##Don’t shoot yourself in the foot":[273,279],"##Don’t shoot yourself in the foot#{1}":[275,279]},"outlinks":[{"title":"SOP","target":"https://en.wikipedia.org/wiki/Same-origin_policy","line":6},{"title":"AJAX","target":"https://en.wikipedia.org/wiki/Ajax_\\(programming\\","line":10},{"title":"Illustration of an AJAX request with credentials","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/06/exported_image-1-1024x350.png","line":14,"embedded":true},{"title":"https://www.devsecurely.com/","target":"https://www.devsecurely.com/","line":26},{"title":"Wikipedia","target":"https://en.wikipedia.org/wiki/Cross-origin_resource_sharing","line":64},{"title":"Cross Origin Request decision chart - CORS","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/06/CORS.png","line":66,"embedded":true},{"title":"CORS request decision tree","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/07/recap3-1024x623.png","line":115,"embedded":true},{"title":"Exploiting CORS misconfiguration to retrieve users' data","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/06/exported_image2-1024x341.png","line":171,"embedded":true},{"title":"https://demo.devsecurely.com/demo\\_cors","target":"https://demo.devsecurely.com/demo_cors","line":177},{"title":"Simple GET request","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/06/request1.png","line":219,"embedded":true},{"title":"CORS policy in the reply","target":"https://www.devsecurely.com/blog/wp-content/uploads/2024/06/response1.png","line":223,"embedded":true},{"title":"https://www.devsecurely.com","target":"https://www.devsecurely.com/","line":227}],"metadata":{"page-title":"CORS: the ultimate guide | Devsecurely","url":"https://www.devsecurely.com/blog/2024/06/cors-the-ultimate-guide","date":"2024-08-26 16:36:56"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_08_DockerHub_国内镜像源列表(2024_年_6_月_18_日_亲测可用)_-_V2EX_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_08_DockerHub_国内镜像源列表(2024_年_6_月_18_日_亲测可用)_-_V2EX_md.ajson deleted file mode 100644 index dd8e8f3..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_08_DockerHub_国内镜像源列表(2024_年_6_月_18_日_亲测可用)_-_V2EX_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/08/DockerHub 国内镜像源列表(2024 年 6 月 18 日 亲测可用) - V2EX.md": {"path":"000-inbox/clippings/2024/08/DockerHub 国内镜像源列表(2024 年 6 月 18 日 亲测可用) - V2EX.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ide4gh","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1724992526802,"size":2700,"at":1766986878957,"hash":"ide4gh"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##DockerHub 国内镜像源列表":[11,64],"##DockerHub 国内镜像源列表#{1}":[13,31],"##DockerHub 国内镜像源列表#使用教程":[32,64],"##DockerHub 国内镜像源列表#使用教程#{1}":[34,35],"##DockerHub 国内镜像源列表#使用教程#{2}":[36,55],"##DockerHub 国内镜像源列表#使用教程#{3}":[56,64],"##DockerHub 国内镜像源列表#使用教程#{4}":[58,64]},"outlinks":[{"title":"Docker 镜像加速站","target":"https://hub.uuuadc.top/","line":19},{"title":"DockerHub 镜像加速代理","target":"https://docker.anyhub.us.kg/","line":22},{"title":"https://docker.anyhub.us.kg","target":"https://docker.anyhub.us.kg/","line":22},{"title":"https://docker.chenby.cn","target":"https://docker.chenby.cn/","line":23},{"title":"https://dockerhub.jobcher.com/","target":"https://dockerhub.jobcher.com/","line":24},{"title":"镜像使用说明","target":"https://dockerhub.icu/","line":25},{"title":"Docker 镜像加速站","target":"https://docker.ckyl.me/","line":26},{"title":"https://docker.ckyl.me","target":"https://docker.ckyl.me/","line":26},{"title":"镜像使用说明","target":"https://docker.awsl9527.cn/","line":27},{"title":"https://docker.awsl9527.cn","target":"https://docker.awsl9527.cn/","line":27},{"title":"镜像使用说明","target":"https://docker.hpcloud.cloud/","line":28},{"title":"AtomHub 可信镜像仓库平台","target":"https://atomhub.openatom.cn/","line":29},{"title":"https://atomhub.openatom.cn","target":"https://atomhub.openatom.cn/","line":29},{"title":"https://docker.m.daocloud.io","target":"https://docker.m.daocloud.io/","line":30},{"title":"DaoCloud 镜像站","target":"https://github.com/DaoCloud/public-image-mirror","line":30},{"title":"https://www.wangdu.site/course/2109.html","target":"https://www.wangdu.site/course/2109.html","line":64}],"metadata":{"page-title":"DockerHub 国内镜像源列表(2024 年 6 月 18 日 亲测可用) - V2EX","url":"https://www.v2ex.com/t/1050454","date":"2024-08-30 12:35:25"},"task_lines":[],"tasks":{},"codeblock_ranges":[[38,54],[58,60]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_08_Documenting_Software_Architectures_-_by_Dr_Milan_Milanović_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_08_Documenting_Software_Architectures_-_by_Dr_Milan_Milanović_md.ajson deleted file mode 100644 index c0e0b55..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_08_Documenting_Software_Architectures_-_by_Dr_Milan_Milanović_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/08/Documenting Software Architectures - by Dr Milan Milanović.md": {"path":"000-inbox/clippings/2024/08/Documenting Software Architectures - by Dr Milan Milanović.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"im7r3f","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1723430861465,"size":21626,"at":1766986878957,"hash":"im7r3f"},"blocks":{"#---frontmatter---":[1,5],"#":[6,298],"##{1}":[8,9],"##{2}":[10,11],"##{3}":[12,13],"##{4}":[14,40],"##{5}":[41,42],"##{6}":[43,44],"##{7}":[45,63],"##{8}":[64,65],"##{9}":[66,86],"##{10}":[87,88],"##{11}":[89,90],"##{12}":[91,92],"##{13}":[93,94],"##{14}":[95,96],"##{15}":[97,98],"##{16}":[99,100],"##{17}":[101,102],"##{18}":[103,104],"##{19}":[105,106],"##{20}":[107,108],"##{21}":[109,127],"##{22}":[128,129],"##{23}":[130,131],"##{24}":[132,168],"##{25}":[169,170],"##{26}":[171,172],"##{27}":[173,174],"##{28}":[175,176],"##{29}":[177,191],"##{30}":[192,193],"##{31}":[194,195],"##{32}":[196,197],"##{33}":[198,208],"##{34}":[209,210],"##{35}":[211,212],"##{36}":[213,214],"##{37}":[215,216],"##{38}":[217,255],"##{39}":[256,257],"##{40}":[258,259],"##{41}":[260,261],"##{42}":[262,263],"##{43}":[264,284],"##{44}":[285,286],"##{45}":[287,288],"##{46}":[289,290],"##{47}":[291,292],"##{48}":[293,295],"##{49}":[296,297],"##{50}":[298,298]},"outlinks":[{"title":"\n\n![Open Package Library","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5452b120-a952-4559-9197-40c8f949ba5a_1610x522.jpeg \"Open Package Library\"","line":21},{"title":"Check it out!","target":"https://learning.postman.com/docs/tests-and-scripts/write-scripts/package-library/","line":27},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0061714-037b-4ab7-a119-47f3871f3027_1280x720.png","line":52},{"title":"arc42 documentation template","target":"https://arc42.org/","line":60},{"title":"The arc42","target":"https://arc42.org/","line":62},{"title":"\n\n![Architecture documentation with ARC42 | by Parser | Medium","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7c2e043-d002-46fa-98c7-015f40c171da_1400x587.png \"Architecture documentation with ARC42 | by Parser | Medium\"","line":77},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06c56c83-1a9e-4c77-bc93-1b0e0cfe21f9_768x384.png","line":112},{"title":"arc42 Documentation Template","target":"https://arc42.org/download","line":128},{"title":"arc42 by Real-World Example","target":"https://arc42.org/examples","line":130},{"title":"Software Architecture Documentation with arc42 (Book).","target":"https://leanpub.com/arc42byexample","line":132},{"title":"C4 model","target":"https://c4model.com/","line":135},{"title":"Simon Brown","target":"https://simonbrown.je/","line":135},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba27630f-0fb3-4e50-9d65-15c417262f07_2480x1748.png","line":141},{"title":"source","target":"https://c4model.com/#SystemContextDiagram","line":147},{"title":"Structurizr DSL","target":"https://www.structurizr.com/","line":165},{"title":"StructurizrDSL","target":"https://docs.structurizr.com/dsl","line":180},{"title":"C4 model","target":"https://c4model.com/","line":192},{"title":"Structurizr","target":"https://docs.structurizr.com/","line":194},{"title":"The C4 model for visualizing software architecture","target":"https://leanpub.com/visualising-software-architecture","line":196},{"title":"Software Architecture for Developers","target":"https://leanpub.com/software-architecture-for-developers","line":198},{"title":"Docs for Developers","target":"https://amzn.to/3VjYri8","line":203},{"title":"Docs like Code","target":"https://amzn.to/3Vk1qHa","line":203},{"title":"Documenting Software Architectures: Views and Beyond","target":"https://amzn.to/3xjIUXx","line":203},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21470b4a-6e85-40a9-bd35-356fd171ef85_2633x2219.png","line":220},{"title":"AsciiDoc","target":"https://asciidoc.org/","line":226},{"title":"available","target":"https://github.com/arc42/arc42-template","line":226},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1bfe63b-3737-4fee-8888-ea7c9213d4a9_5265x668.png","line":228},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12f0e4cc-5eb6-42e4-a689-35f83c8f862c_1081x404.png","line":236},{"title":"The AsciiDoc file (.adoc)","target":"https://docs.asciidoctor.org/asciidoc/latest/syntax-quick-reference/","line":244},{"title":"VSCode extension for AsciiDoc","target":"https://marketplace.visualstudio.com/items?itemName=asciidoctor.asciidoctor-vscode","line":246},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ad36bd2-d5a3-47ac-9fe1-dadc95eab428_1318x3466.png","line":248},{"title":"Asciidoctor","target":"https://asciidoctor.org/","line":266},{"title":"GitHub Actions","target":"https://github.com/features/actions","line":268},{"title":"docToolChain","target":"https://doctoolchain.org/docToolchain/v2.0.x/015_tasks/03_task_publishToConfluence.html","line":270},{"title":"\n\n![","target":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d90e-8681-4fc4-a6c0-23d0412b25d6_1650x1919.png","line":273},{"title":"GitHub repository","target":"https://github.com/milanm/architecture-docs","line":281},{"title":"Sphinx","target":"https://www.sphinx-doc.org/en/master/","line":285},{"title":"Docusaurus","target":"https://docusaurus.io/","line":287},{"title":"Jekyll","target":"https://jekyllrb.com/","line":289},{"title":"ReadTheDocs","target":"https://about.readthedocs.com/","line":291},{"title":"docsify","target":"https://docsify.js.org/#/","line":293},{"title":"Book a working session with me","target":"https://newsletter.techworld-with-milan.com/p/coaching-services","line":296},{"title":"Promote yourself to 32,000+ subscribers","target":"https://newsletter.techworld-with-milan.com/p/sponsorship-of-tech-world-with-milan","line":298}],"metadata":{"page-title":"Documenting Software Architectures - by Dr Milan Milanović","url":"https://newsletter.techworld-with-milan.com/p/documenting-software-architectures?ref=dailydev","date":"2024-08-12 10:47:39"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_08_My_Obsidian_Note-Taking_Workflow__ssp_sh_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_08_My_Obsidian_Note-Taking_Workflow__ssp_sh_md.ajson deleted file mode 100644 index 4442871..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_08_My_Obsidian_Note-Taking_Workflow__ssp_sh_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/08/My Obsidian Note-Taking Workflow ssp.sh.md": {"path":"000-inbox/clippings/2024/08/My Obsidian Note-Taking Workflow ssp.sh.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"8o5eqt","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1724652641249,"size":20566,"at":1766986878957,"hash":"8o5eqt"},"blocks":{"#---frontmatter---":[1,5],"#":[6,125],"##{1}":[30,30],"##{2}":[31,31],"##{3}":[32,32],"##{4}":[33,36],"##{5}":[37,37],"##{6}":[38,40],"##{7}":[41,41],"##{8}":[42,42],"##{9}":[43,70],"##{10}":[71,71],"##{11}":[72,72],"##{12}":[73,73],"##{13}":[74,91],"##{14}":[92,92],"##{15}":[93,94],"##{16}":[95,95],"##{17}":[96,96],"##{18}":[97,97],"##{19}":[98,99],"##{20}":[100,100],"##{21}":[101,101],"##{22}":[102,102],"##{23}":[103,103],"##{24}":[104,104],"##{25}":[105,105],"##{26}":[106,106],"##{27}":[107,107],"##{28}":[108,108],"##{29}":[109,109],"##{30}":[110,125],"###[](https://www.ssp.sh/blog/obsidian-note-taking-workflow/#feedback-loop-how-sharing-and-feedback-helps-me-to-learn-more)Feedback Loop: How Sharing and feedback helps me to learn more":[126,150],"###[](https://www.ssp.sh/blog/obsidian-note-taking-workflow/#feedback-loop-how-sharing-and-feedback-helps-me-to-learn-more)Feedback Loop: How Sharing and feedback helps me to learn more#{1}":[128,147],"###[](https://www.ssp.sh/blog/obsidian-note-taking-workflow/#feedback-loop-how-sharing-and-feedback-helps-me-to-learn-more)Feedback Loop: How Sharing and feedback helps me to learn more#{2}":[148,148],"###[](https://www.ssp.sh/blog/obsidian-note-taking-workflow/#feedback-loop-how-sharing-and-feedback-helps-me-to-learn-more)Feedback Loop: How Sharing and feedback helps me to learn more#{3}":[149,149],"###[](https://www.ssp.sh/blog/obsidian-note-taking-workflow/#feedback-loop-how-sharing-and-feedback-helps-me-to-learn-more)Feedback Loop: How Sharing and feedback helps me to learn more#{4}":[150,150]},"outlinks":[{"title":"My Obsidian Note-Taking Workflow","target":"https://www.ssp.sh/blog/obsidian-note-taking-workflow/featured-image.jpg","line":6,"embedded":true},{"title":"Obsidian","target":"http://ssp.sh/brain/obsidian","line":8},{"title":"my notes","target":"https://brain.ssp.sh/","line":8},{"title":"my book","target":"https://dedp.online/","line":8},{"title":"Why Vim Is More Than Just An Editor","target":"http://ssp.sh/blog/why-using-neovim-data-engineer-and-writer-2023/","line":12},{"title":"My Vim-verse","target":"https://www.ssp.sh/blog/my-vimverse/","line":12},{"title":"Personal Knowledge Management Workflow for a Deeper Life","target":"https://www.ssp.sh/blog/pkm-workflow-for-a-deeper-life/","line":12},{"title":"Vim with Obsidian (No Mouse 🖱️)","target":"https://youtu.be/LQasaw4MkqE?si=UKRpxwnzGKFHVPlN","line":16},{"title":"YouTube Video","target":"https://youtu.be/myHKHM2mIis","line":16},{"title":"Markdown","target":"http://ssp.sh/brain/markdown","line":22},{"title":"Plaintext Files","target":"http://ssp.sh/brain/plaintext-files","line":22},{"title":"Deeper Life","target":"http://ssp.sh/brain/deep-life","line":24},{"title":"Second Brain","target":"http://ssp.sh/brain/second-brain","line":24},{"title":"Microsoft OneNote","target":"http://ssp.sh/blog/tools-i-use-onenote-part-ii/","line":26},{"title":"Second Brain","target":"http://ssp.sh/brain/second-brain","line":38},{"title":"Vim","target":"http://ssp.sh/brain/vim","line":41},{"title":"motions","target":"http://ssp.sh/brain/vim-language-and-motions","line":41},{"title":"Quartz","target":"http://ssp.sh/brain/quartz-publish-obsidian-vault","line":42},{"title":"MdBook","target":"https://github.com/rust-lang/mdBook","line":43},{"title":"book","target":"https://www.dedp.online/","line":43},{"title":"Python","target":"https://github.com/sspaeti/second-brain-public/blob/hugo/utils/find-publish-notes.py","line":45},{"title":"Rust","target":"https://github.com/sspaeti/second-brain-public/blob/hugo/utils/obsidian-quartz/src/main.rs","line":45},{"title":"how to take notes","target":"https://ssp.sh/blog/how-to-take-notes-in-2021/","line":45},{"title":"PARA","target":"http://ssp.sh/brain/para","line":51},{"title":"Zettelkasten","target":"http://ssp.sh/brain/zettelkasten","line":53},{"title":"Vim motions","target":"http://ssp.sh/brain/vim-language-and-motions","line":57},{"title":"Plaintext Files","target":"http://ssp.sh/brain/plaintext-files","line":59},{"title":"Local First","target":"http://ssp.sh/brain/plaintext-files","line":59},{"title":"Map of Content (MOC)","target":"http://ssp.sh/brain/map-of-content-moc","line":67},{"title":"Airbyte","target":"https://ssp.sh/brain/Airbyte","line":67},{"title":"BI-Tools","target":"https://ssp.sh/brain/bi-tools","line":67},{"title":"Literature Notes","target":"http://ssp.sh/brain/literature-notes","line":73},{"title":"Permanent Notes","target":"http://ssp.sh/brain/permanent-notes","line":73},{"title":"Zettelkasten","target":"http://ssp.sh/brain/zettelkasten","line":74},{"title":"Taxonomy of note types","target":"http://ssp.sh/brain/taxonomy-of-note-types","line":76},{"title":"Literature Notes","target":"http://ssp.sh/brain/literature-notes","line":78},{"title":"Permanent Notes","target":"http://ssp.sh/brain/permanent-notes","line":78},{"title":"![/blog/obsidian-note-taking-workflow/images/my-template-list.png","target":"https://www.ssp.sh/blog/obsidian-note-taking-workflow/images/my-template-list.png \"/blog/obsidian-note-taking-workflow/images/my-template-list.png\"","line":82},{"title":"Obsidian Smart Connections","target":"http://ssp.sh/brain/obsidian-smart-connections","line":94},{"title":"Second Brain Assistant with Obsidian (NoteGPT)","target":"http://ssp.sh/brain/second-brain-assistant-with-obsidian-notegpt","line":94},{"title":"Admonition (Call-outs)","target":"http://ssp.sh/brain/admonition-call-outs","line":96},{"title":"Mermaid","target":"http://ssp.sh/brain/mermaid","line":99},{"title":"dotfiles","target":"https://github.com/sspaeti/dotfiles/blob/master/obsidian/.vimrc","line":104},{"title":"ReadWise","target":"http://ssp.sh/brain/readwise","line":107},{"title":"dotfiles","target":"https://github.com/sspaeti/dotfiles/blob/master/obsidian/","line":112},{"title":"brain","target":"http://ssp.sh/brain/","line":114},{"title":"Quartz","target":"http://ssp.sh/brain/quartz-publish-obsidian-vault","line":116},{"title":"Obsidian Publish","target":"https://obsidian.md/publish","line":116},{"title":"open-source alternative","target":"https://www.ssp.sh/brain/open-source-obsidian-publish-alternatives/","line":116},{"title":"Public Second Brain with Quartz","target":"http://ssp.sh/brain/public-second-brain-with-quartz","line":118},{"title":"Digital Garden","target":"http://ssp.sh/brain/digital-garden","line":120},{"title":"continuous notes","target":"http://ssp.sh/brain/continuous-notes","line":122},{"title":"Future of Blogging","target":"http://ssp.sh/brain/future-of-blogging","line":122},{"title":"Public Second Brain","target":"https://brain.ssp.sh/","line":124},{"title":"deep work","target":"https://www.ssp.sh/brain/deep-work","line":136},{"title":"Personal Knowledge Management Workflow for a Deeper Life — as a Computer Scientist","target":"http://ssp.sh/blog/pkm-workflow-for-a-deeper-life/","line":142},{"title":"Why Vim Is More Than Just An Editor","target":"http://ssp.sh/blog/why-using-neovim-data-engineer-and-writer-2023/","line":144},{"title":"Vim for Obsidian","target":"http://ssp.sh/brain/vim-for-obsidian","line":144},{"title":"My Vim-verse","target":"https://www.ssp.sh/blog/my-vimverse/","line":144},{"title":"Video on YouTube","target":"https://youtu.be/LQasaw4MkqE?si=awDwQt160Wd4COGv","line":144},{"title":"Markdown vs Rich Text","target":"http://ssp.sh/brain/markdown-vs-rich-text","line":146},{"title":"Local First","target":"http://ssp.sh/brain/plaintext-files","line":146},{"title":"Optimal Note Taking Framework for all subjects using Obsidian","target":"https://youtu.be/LyOIvoHtRCM","line":148},{"title":"The Rise of Obsidian as a Second Brain","target":"https://youtu.be/nz99I7apNLI","line":149},{"title":"Hack Your Brain With Obsidian.md","target":"https://youtu.be/DbsAQSIKQXk","line":150}],"metadata":{"page-title":"My Obsidian Note-Taking Workflow | ssp.sh","url":"https://www.ssp.sh/blog/obsidian-note-taking-workflow/","date":"2024-08-26 14:10:37","tags":["#publish"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_Docker安装__达梦技术文档_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_Docker安装__达梦技术文档_md.ajson deleted file mode 100644 index ab21ae3..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_Docker安装__达梦技术文档_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/Docker安装 达梦技术文档.md": {"path":"000-inbox/clippings/2024/09/Docker安装 达梦技术文档.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1s4ojdj","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725496633000,"size":5422,"at":1766986878957,"hash":"1s4ojdj"},"blocks":{"#---frontmatter---":[1,5],"##一、安装前准备":[6,12],"##一、安装前准备#{1}":[8,12],"##二、下载 Docker 安装包":[13,16],"##二、下载 Docker 安装包#{1}":[15,16],"##三、导入安装包":[17,30],"##三、导入安装包#{1}":[19,30],"##四、启动容器":[31,88],"##四、启动容器#{1}":[33,88],"##五、启动/停止数据库":[89,108],"##五、启动/停止数据库#{1}":[91,108],"##六、进入 DM8 容器连接数据库":[109,124],"##六、进入 DM8 容器连接数据库#{1}":[111,124]},"outlinks":[{"title":"Docker 安装包","target":"https://eco.dameng.com/download/","line":15},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605162740LFE4UFKW64AWT76VSE","line":25,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605162830JB2SEQO5AVH7K30J38","line":29,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605163754QDMVF4UEWEVBIJZO6U","line":37,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605163359W1CPZI6J0UYORK0Y06","line":73,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605163938AGNELUN8AEPG6UFHYO","line":79,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164051R5HLUC2ID98BRD7VWY","line":87,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164211IBPCRFHSN61P6STTZY","line":95,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164328U82ZAVZHYRQA6A4PB5","line":101,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164511XCPBMKAU6ELEX2IRJR","line":107,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164756L6SL6885KS2QN7XTTZ","line":115,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240605164826Y1SPQ3HDDAS5B24MTS","line":119,"embedded":true}],"metadata":{"page-title":"Docker安装 | 达梦技术文档","url":"https://eco.dameng.com/document/dm/zh-cn/start/dm-install-docker.html","date":"2024-09-05 08:37:13"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_How_to_Upgrade_Ubuntu_from_20_04_to_22_04_(Step_by_Step)_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_How_to_Upgrade_Ubuntu_from_20_04_to_22_04_(Step_by_Step)_md.ajson deleted file mode 100644 index 735c028..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_How_to_Upgrade_Ubuntu_from_20_04_to_22_04_(Step_by_Step)_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step).md": {"path":"000-inbox/clippings/2024/09/How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step).md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"127i3f4","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1726039656880,"size":11663,"at":1766986878957,"hash":"127i3f4"},"blocks":{"#---frontmatter---":[1,5],"#":[6,23],"##{1}":[10,11],"##{2}":[12,13],"##{3}":[14,15],"##{4}":[16,17],"##{5}":[18,19],"##{6}":[20,21],"##{7}":[22,23],"##New Features in Ubuntu 22.04":[24,43],"##New Features in Ubuntu 22.04#{1}":[26,27],"##New Features in Ubuntu 22.04#{2}":[28,29],"##New Features in Ubuntu 22.04#{3}":[30,31],"##New Features in Ubuntu 22.04#{4}":[32,33],"##New Features in Ubuntu 22.04#{5}":[34,35],"##New Features in Ubuntu 22.04#{6}":[36,37],"##New Features in Ubuntu 22.04#{7}":[38,39],"##New Features in Ubuntu 22.04#{8}":[40,41],"##New Features in Ubuntu 22.04#{9}":[42,43],"##Types of Upgrade":[44,55],"##Types of Upgrade#{1}":[46,47],"##Types of Upgrade#Clean Upgrade":[48,51],"##Types of Upgrade#Clean Upgrade#{1}":[50,51],"##Types of Upgrade#Inline Upgrade":[52,55],"##Types of Upgrade#Inline Upgrade#{1}":[54,55],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)":[56,107],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#{1}":[58,61],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites":[62,73],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites#{1}":[64,65],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites#{2}":[66,67],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites#{3}":[68,69],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites#{4}":[70,71],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Prerequisites#{5}":[72,73],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Backup Your Important Data":[74,77],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Backup Your Important Data#{1}":[76,77],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Update and Upgrade Existing Packages":[78,91],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Update and Upgrade Existing Packages#{1}":[80,91],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Verify the Existing Server Version":[92,97],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Verify the Existing Server Version#{1}":[94,97],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Allow Port 1022 Through UFW":[98,107],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)#Allow Port 1022 Through UFW#{1}":[100,107],"##Upgrade Ubuntu 20.04 to Ubuntu 22.04":[108,161],"##Upgrade Ubuntu 20.04 to Ubuntu 22.04#{1}":[110,161],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step) Conclusion":[162,164],"##How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step) Conclusion#{1}":[164,164]},"outlinks":[{"title":"Canonical","target":"https://canonical.com/","line":8},{"title":"Ubuntu 22.04 LTS","target":"https://releases.ubuntu.com/jammy","line":8},{"title":"MySQL","target":"https://cloudinfrastructureservices.co.uk/how-to-setup-mysql-server-phpmyadmin-on-linux-in-azure-aws-gcp/","line":14},{"title":"PostgreSQL","target":"https://cloudinfrastructureservices.co.uk/how-to-setup-install-postgresql-server-on-azure-aws-gcp/","line":22},{"title":"GNOME 42","target":"https://release.gnome.org/42/","line":28},{"title":"Raspberry Pi","target":"https://www.raspberrypi.org/","line":40},{"title":"RDP protocol","target":"https://cloudinfrastructureservices.co.uk/how-does-remote-desktop-protocol-work-rdp-protocol-explained/","line":42},{"title":"ISO","target":"https://www.iso.org/home.html","line":50},{"title":"inline upgrade","target":"https://cloudinfrastructureservices.co.uk/ubuntu-vs-linux-whats-the-difference/","line":54},{"title":"![How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/elementor/thumbs/How-to-Upgrade-Ubuntu-from-20.04-to-22.04-Step-by-Step-q4629ljkvs8gi6gveokdul6tvp78mnf5gxpy9px470.png \"How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step","line":58},{"title":"SSH access","target":"https://cloudinfrastructureservices.co.uk/vpn-vs-ssh-whats-the-difference/","line":66},{"title":"snapshot","target":"https://snapshot.org/","line":76},{"title":"VPS","target":"https://www.ibm.com/in-en/topics/vps","line":76},{"title":"![check ubuntu 20.04 version","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/check-ubuntu-20.04-version-768x159.png","line":96},{"title":"SSH","target":"https://www.ucl.ac.uk/isd/what-ssh-and-how-do-i-use-it","line":100},{"title":"firewall","target":"https://cloudinfrastructureservices.co.uk/top-15-best-open-source-firewalls-for-linux-windows/","line":102},{"title":"UFW","target":"https://help.ubuntu.com/community/UFW","line":102},{"title":"![error getting upgrade release","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/error-getting-upgrade-release-768x97.png","line":120},{"title":"![ssh service notice","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/ssh-service-notice-768x243.png","line":124},{"title":"![How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step) installation summary","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/installation-summary-768x211.png","line":128},{"title":"![restart service notice","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/restart-service-notice-768x275.png","line":132},{"title":"![select keyboard","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/select-keyboard-768x386.png","line":136},{"title":"![select keyboard layout","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/select-keyboard-layout-768x408.png","line":140},{"title":"![keep current configuration","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/keep-current-configuration-768x145.png","line":144},{"title":"![remove obsolete packages","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/remove-obsolete-packages-768x168.png","line":148},{"title":"![How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step) reboot the system","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/reboot-the-system-768x105.png","line":152},{"title":"![verify ubuntu upgrade","target":"https://net.cloudinfrastructureservices.co.uk/wp-content/uploads/2023/03/verify-ubuntu-upgrade-768x93.png","line":160}],"metadata":{"page-title":"How to Upgrade Ubuntu from 20.04 to 22.04 (Step by Step)","url":"https://cloudinfrastructureservices.co.uk/how-to-upgrade-ubuntu-from-20-04-to-22-04-step-by-step/","date":"2024-09-11 15:27:35"},"task_lines":[],"tasks":{},"codeblock_ranges":[[112,114]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_Linux安装达梦数据库DM8_-_sowler_-_博客园_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_Linux安装达梦数据库DM8_-_sowler_-_博客园_md.ajson deleted file mode 100644 index 22c7aee..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_Linux安装达梦数据库DM8_-_sowler_-_博客园_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/Linux安装达梦数据库DM8 - sowler - 博客园.md": {"path":"000-inbox/clippings/2024/09/Linux安装达梦数据库DM8 - sowler - 博客园.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"llso12","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725506399000,"size":8507,"at":1766986878957,"hash":"llso12"},"blocks":{"#---frontmatter---":[1,5],"#":[6,212]},"outlinks":[{"title":"复制代码","target":"https://assets.cnblogs.com/images/copycode.gif","line":46,"embedded":true},{"title":"复制代码","target":"https://assets.cnblogs.com/images/copycode.gif","line":55,"embedded":true}],"metadata":{"page-title":"Linux安装达梦数据库DM8 - sowler - 博客园","url":"https://www.cnblogs.com/sowler/p/17693658.html","date":"2024-09-05 11:19:58"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_OpenXPKI_-_The_Open_Source_Trustcenter_Solution_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_OpenXPKI_-_The_Open_Source_Trustcenter_Solution_md.ajson deleted file mode 100644 index 7b2242a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_OpenXPKI_-_The_Open_Source_Trustcenter_Solution_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/OpenXPKI - The Open Source Trustcenter Solution.md": {"path":"000-inbox/clippings/2024/09/OpenXPKI - The Open Source Trustcenter Solution.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"6amlzz","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725809518000,"size":18590,"at":1766986878957,"hash":"6amlzz"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##PKI Made in Germany":[8,17],"##PKI Made in Germany#{1}":[10,17],"##Certificate Lifecycle":[18,23],"##Certificate Lifecycle#{1}":[20,23],"##Automation":[24,29],"##Automation#{1}":[26,29],"##Reporting":[30,33],"##Reporting#{1}":[32,33],"##OpenXPKI at a Glance":[34,85],"##OpenXPKI at a Glance#Modern WebUI":[36,39],"##OpenXPKI at a Glance#Modern WebUI#{1}":[38,39],"##OpenXPKI at a Glance#Automation":[40,43],"##OpenXPKI at a Glance#Automation#{1}":[42,43],"##OpenXPKI at a Glance#Configuration":[44,47],"##OpenXPKI at a Glance#Configuration#{1}":[46,47],"##OpenXPKI at a Glance#Flexible Crypto Layer":[48,51],"##OpenXPKI at a Glance#Flexible Crypto Layer#{1}":[50,51],"##OpenXPKI at a Glance#Multiple Backends":[52,55],"##OpenXPKI at a Glance#Multiple Backends#{1}":[54,55],"##OpenXPKI at a Glance#SubCAs and Rollover":[56,59],"##OpenXPKI at a Glance#SubCAs and Rollover#{1}":[58,59],"##OpenXPKI at a Glance#Integration":[60,63],"##OpenXPKI at a Glance#Integration#{1}":[62,63],"##OpenXPKI at a Glance#User Management":[64,67],"##OpenXPKI at a Glance#User Management#{1}":[66,67],"##OpenXPKI at a Glance#Workflow Driven":[68,71],"##OpenXPKI at a Glance#Workflow Driven#{1}":[70,71],"##OpenXPKI at a Glance#Easy Deployment":[72,75],"##OpenXPKI at a Glance#Easy Deployment#{1}":[74,75],"##OpenXPKI at a Glance#Free Open Source":[76,79],"##OpenXPKI at a Glance#Free Open Source#{1}":[78,79],"##OpenXPKI at a Glance#Enterprise Ready":[80,85],"##OpenXPKI at a Glance#Enterprise Ready#{1}":[82,85],"##OpenXPKI Mission: Empowering continuous PKI operation.":[86,93],"##OpenXPKI Mission: Empowering continuous PKI operation.#{1}":[88,93],"##Enterprise Ready: Mature, standard compliant, and future-proof.":[94,103],"##Enterprise Ready: Mature, standard compliant, and future-proof.#{1}":[96,103],"##Certificate Lifecycle Management: Getting back into power.":[104,115],"##Certificate Lifecycle Management: Getting back into power.#{1}":[106,115],"##PKI Realms: Run multiple logical CAs in one OpenXPKI instance.":[116,125],"##PKI Realms: Run multiple logical CAs in one OpenXPKI instance.#{1}":[118,125],"##Seamless Issuing CA Rollover: Effortless Certificate Authority rotation.":[126,133],"##Seamless Issuing CA Rollover: Effortless Certificate Authority rotation.#{1}":[128,133],"##Workflow Engine: Efficiently model and execute key management processes.":[134,141],"##Workflow Engine: Efficiently model and execute key management processes.#{1}":[136,141],"##Generic Web Frontend: Intuitive interface for workflow management.":[142,149],"##Generic Web Frontend: Intuitive interface for workflow management.#{1}":[144,149],"##Infrastructure Key Protection: Enhanced security with Hardware Security Modules.":[150,157],"##Infrastructure Key Protection: Enhanced security with Hardware Security Modules.#{1}":[152,157],"##Reporting: Efficiently collect and provide statistical data.":[158,165],"##Reporting: Efficiently collect and provide statistical data.#{1}":[160,165],"##Flexible Configuration: Manage system state auditably and verifiably.":[166,173],"##Flexible Configuration: Manage system state auditably and verifiably.#{1}":[168,173],"##Automation: Highly configurable certificate enrollment interfaces.":[174,185],"##Automation: Highly configurable certificate enrollment interfaces.#{1}":[176,185],"##Connectors: Accessing external data resources.":[186,195],"##Connectors: Accessing external data resources.#{1}":[188,195],"##Credential Protection: Avoiding sensitive data in configuration files.":[196,203],"##Credential Protection: Avoiding sensitive data in configuration files.#{1}":[198,203],"##Expose Any Workflow: Generic RPC interface.":[204,211],"##Expose Any Workflow: Generic RPC interface.#{1}":[206,211],"##Command Line Driven Operating: Auditable, reproducible runtime administration.":[212,219],"##Command Line Driven Operating: Auditable, reproducible runtime administration.#{1}":[214,219],"##OpenXPKI Resources":[220,221],"##Documentation":[222,227],"##Documentation#{1}":[224,227],"##Packages":[228,233],"##Packages#{1}":[230,233],"##Support":[234,239],"##Support#{1}":[236,239],"##Professional Services":[240,245],"##Professional Services#{1}":[242,245],"##OpenXPKI Editions, Support and Service Options Overview":[246,268],"##OpenXPKI Editions, Support and Service Options Overview#{1}":[248,248],"##OpenXPKI Editions, Support and Service Options Overview#{2}":[249,249],"##OpenXPKI Editions, Support and Service Options Overview#{3}":[250,250],"##OpenXPKI Editions, Support and Service Options Overview#{4}":[251,251],"##OpenXPKI Editions, Support and Service Options Overview#{5}":[252,252],"##OpenXPKI Editions, Support and Service Options Overview#{6}":[253,254],"##OpenXPKI Editions, Support and Service Options Overview#{7}":[255,255],"##OpenXPKI Editions, Support and Service Options Overview#{8}":[256,256],"##OpenXPKI Editions, Support and Service Options Overview#{9}":[257,257],"##OpenXPKI Editions, Support and Service Options Overview#{10}":[258,258],"##OpenXPKI Editions, Support and Service Options Overview#{11}":[259,260],"##OpenXPKI Editions, Support and Service Options Overview#{12}":[261,261],"##OpenXPKI Editions, Support and Service Options Overview#{13}":[262,262],"##OpenXPKI Editions, Support and Service Options Overview#{14}":[263,263],"##OpenXPKI Editions, Support and Service Options Overview#{15}":[264,264],"##OpenXPKI Editions, Support and Service Options Overview#{16}":[265,265],"##OpenXPKI Editions, Support and Service Options Overview#{17}":[266,266],"##OpenXPKI Editions, Support and Service Options Overview#{18}":[267,267],"##OpenXPKI Editions, Support and Service Options Overview#{19}":[268,268]},"outlinks":[{"title":"OpenXPKI Logo","target":"https://www.openxpki.org/img/openxpki.svg","line":6,"embedded":true},{"title":"OpenXPKI Community Edition","target":"https://github.com/openxpki/openxpki","line":88},{"title":"original architecture whitepaper","target":"https://www.openxpki.org/download/OpenXPKI-Architecture-Overview.pdf","line":88},{"title":"White Rabbit Security GmbH","target":"https://www.whiterabbitsecurity.com/","line":88},{"title":"Enterprise Edition","target":"https://www.whiterabbitsecurity.com/produkte/openxpki/","line":88},{"title":"OpenXPKI Status Screen","target":"https://www.openxpki.org/img/status.png","line":90,"embedded":true},{"title":"Lattice-Based Cryptography","target":"https://www.openxpki.org/img/SVP.svg.png","line":100,"embedded":true},{"title":"Control Lever","target":"https://www.openxpki.org/img/gustavo-sanchez-RwliW6b74Hw-unsplash-500.jpg","line":112,"embedded":true},{"title":"Skyscraper","target":"https://www.openxpki.org/img/simone-hutsch-eXBqaHUt994-unsplash-500.jpg","line":122,"embedded":true},{"title":"CA Rollover","target":"https://www.openxpki.org/img/parrish-freeman-lzNnMcqRITM-unsplash-500.jpg","line":130,"embedded":true},{"title":"Dominos","target":"https://www.openxpki.org/img/bradyn-trollip-pxVOztBa6mY-unsplash-500.jpg","line":138,"embedded":true},{"title":"Web Frontend","target":"https://www.openxpki.org/img/reviewcsr2.png","line":146,"embedded":true},{"title":"Hardware Security Module","target":"https://www.openxpki.org/img/NCipher_nShield_F3_Hardware_Security_Module.jpg","line":154,"embedded":true},{"title":"Statistics","target":"https://www.openxpki.org/img/certstats.png","line":162,"embedded":true},{"title":"File-based configuration","target":"https://www.openxpki.org/img/wfcondition1.png","line":170,"embedded":true},{"title":"Connector","target":"https://www.openxpki.org/#connector","line":176},{"title":"Enrollment Interface","target":"https://www.openxpki.org/img/enroll.png","line":182,"embedded":true},{"title":"Connector","target":"http://search.cpan.org/~mrscotty/Connector/lib/Connector.pm","line":188},{"title":"Connectors","target":"https://www.openxpki.org/img/connector.png","line":192,"embedded":true},{"title":"KeyNanny","target":"https://github.com/certnanny/KeyNanny","line":198},{"title":"KeyNanny Integration","target":"https://www.openxpki.org/img/secret.png","line":200,"embedded":true},{"title":"RPC Interface","target":"https://www.openxpki.org/img/rpc.png","line":208,"embedded":true},{"title":"CLI Tools","target":"https://www.openxpki.org/img/openxpkiadm.png","line":218,"embedded":true},{"title":"available online via Read the Docs","target":"https://openxpki.readthedocs.io/en/latest/","line":224},{"title":"quickstart manual","target":"https://openxpki.readthedocs.io/en/latest/quickstart.html","line":224},{"title":"Debian 12 \"Bookworm\" package repository","target":"https://packages.openxpki.org/v3/bookworm","line":230},{"title":"FreeBSD Port of OpenXPKI","target":"https://www.freshports.org/security/p5-openxpki/","line":230},{"title":"OpenXPKI Users Mailing List","target":"https://lists.sourceforge.net/lists/listinfo/openxpki-users","line":238},{"title":"White Rabbit Security","target":"https://www.whiterabbitsecurity.com/","line":244},{"title":"reach out to the core developers","target":"mailto:openxpki@whiterabbitsecurity.com","line":244}],"metadata":{"page-title":"OpenXPKI - The Open Source Trustcenter Solution","url":"https://www.openxpki.org/","date":"2024-09-08 23:31:57"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_Setting_Up_Elasticsearch_and_Kibana_Single-Node_with_Docker_Compose__by_Karthik_S__Medium_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_Setting_Up_Elasticsearch_and_Kibana_Single-Node_with_Docker_Compose__by_Karthik_S__Medium_md.ajson deleted file mode 100644 index b2eca74..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_Setting_Up_Elasticsearch_and_Kibana_Single-Node_with_Docker_Compose__by_Karthik_S__Medium_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/Setting Up Elasticsearch and Kibana Single-Node with Docker Compose by Karthik S Medium.md": {"path":"000-inbox/clippings/2024/09/Setting Up Elasticsearch and Kibana Single-Node with Docker Compose by Karthik S Medium.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"rfn0ps","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1727405607490,"size":9924,"at":1766986878957,"hash":"rfn0ps"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##Hardware Prerequisites":[18,27],"##Hardware Prerequisites#{1}":[20,21],"##Hardware Prerequisites#{2}":[22,22],"##Hardware Prerequisites#{3}":[23,23],"##Hardware Prerequisites#{4}":[24,25],"##Hardware Prerequisites#{5}":[26,27],"##Software Prerequisites":[28,31],"##Software Prerequisites#{1}":[30,31],"##Setting Up Instructions":[32,39],"##Setting Up Instructions#{1}":[34,35],"##Setting Up Instructions#{2}":[36,36],"##Setting Up Instructions#{3}":[37,37],"##Setting Up Instructions#{4}":[38,39],"##1\\. Adjust Kernel Settings":[40,66],"##1\\. Adjust Kernel Settings#{1}":[42,66],"##2\\. Prepare Environment Variables":[67,119],"##2\\. Prepare Environment Variables#{1}":[69,119],"##3\\. Create Docker Compose Configuration":[120,250],"##3\\. Create Docker Compose Configuration#{1}":[122,250],"##4\\. Start Docker Compose":[251,262],"##4\\. Start Docker Compose#{1}":[253,262],"##Conclusion":[263,267],"##Conclusion#{1}":[265,267]},"outlinks":[{"title":"\n\n![Karthik S","target":"https://miro.medium.com/v2/resize:fill:88:88/1*dP0eQAQnsoFVFnqaZgyClQ.jpeg","line":6},{"title":"Elastic Cloud Enterprise documentation","target":"https://www.elastic.co/guide/en/cloud-enterprise/current/ece-hardware-prereq.html#ece-hardware-prereq","line":26},{"title":"official website","target":"https://docs.docker.com/engine/install/","line":30},{"title":"more information","target":"https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#_set_vm_max_map_count_to_at_least_262144","line":44},{"title":"https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html","target":"https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html","line":267}],"metadata":{"page-title":"Setting Up Elasticsearch and Kibana Single-Node with Docker Compose | by Karthik S | Medium","url":"https://karthiksdevopsengineer.medium.com/setting-up-elasticsearch-and-kibana-single-node-with-docker-compose-329776fa3aee","date":"2024-09-27 10:53:26"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_Step-by-Step_Guide_Setting_Up_OpenXPKI_for_Secure_Digital_Certificates_in_Linux__by_Riski_Ilyas__Medium_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_Step-by-Step_Guide_Setting_Up_OpenXPKI_for_Secure_Digital_Certificates_in_Linux__by_Riski_Ilyas__Medium_md.ajson deleted file mode 100644 index 4468b4e..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_Step-by-Step_Guide_Setting_Up_OpenXPKI_for_Secure_Digital_Certificates_in_Linux__by_Riski_Ilyas__Medium_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/Step-by-Step Guide Setting Up OpenXPKI for Secure Digital Certificates in Linux by Riski Ilyas Medium.md": {"path":"000-inbox/clippings/2024/09/Step-by-Step Guide Setting Up OpenXPKI for Secure Digital Certificates in Linux by Riski Ilyas Medium.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1lp3qds","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725866202175,"size":10477,"at":1766986878957,"hash":"1lp3qds"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Step-by-Step Guide: Setting Up OpenXPKI for Secure Digital Certificates in Linux":[11,28],"##Step-by-Step Guide: Setting Up OpenXPKI for Secure Digital Certificates in Linux#{1}":[13,28],"##Why OpenXPKI?":[29,36],"##Why OpenXPKI?#{1}":[31,36],"##Docker Installation":[37,80],"##Docker Installation#{1}":[39,42],"##Docker Installation#{2}":[43,44],"##Docker Installation#{3}":[45,80],"##OpenXPKI Installation":[81,117],"##OpenXPKI Installation#{1}":[83,117],"##Using OpenXPKI as Certificate Authority (CA)":[118,133],"##Using OpenXPKI as Certificate Authority (CA)#{1}":[120,133],"##Using OpenXPKI as Registration Authority (RA)":[134,147],"##Using OpenXPKI as Registration Authority (RA)#{1}":[136,147],"##Using OpenXPKI as Common User":[148,188],"##Using OpenXPKI as Common User#{1}":[150,188]},"outlinks":[{"title":"\n\n![Riski Ilyas","target":"https://miro.medium.com/v2/resize:fill:88:88/1*iQikJtblKaToWMvJTcBYmg.jpeg","line":13},{"title":"https://github.com/openxpki","target":"https://github.com/openxpki","line":23},{"title":"https://localhost:8443/","target":"https://localhost:8443/","line":112}],"metadata":{"page-title":"Step-by-Step Guide: Setting Up OpenXPKI for Secure Digital Certificates in Linux | by Riski Ilyas | Medium","url":"https://medium.com/@riskiilyas03/step-by-step-guide-setting-up-openxpki-for-secure-digital-certificates-in-linux-107b06b2c0c1","date":"2024-09-09 15:16:40"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_elasticdumpelasticsearch-dump_-_Docker_Image__Docker_Hub_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_elasticdumpelasticsearch-dump_-_Docker_Image__Docker_Hub_md.ajson deleted file mode 100644 index 2be6406..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_elasticdumpelasticsearch-dump_-_Docker_Image__Docker_Hub_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/elasticdumpelasticsearch-dump - Docker Image Docker Hub.md": {"path":"000-inbox/clippings/2024/09/elasticdumpelasticsearch-dump - Docker Image Docker Hub.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ngb6mj","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1727320290000,"size":16390,"at":1766986878957,"hash":"ngb6mj"},"blocks":{"#---frontmatter---":[1,5],"#":[6,297]},"outlinks":[{"title":"searchBody Template","target":"#search-template","line":101},{"title":"Module Transform","target":"#module-transform","line":188},{"title":"standard","target":"https://aws.amazon.com/blogs/security/a-new-and-standardized-way-to-manage-credentials-in-the-aws-sdks/","line":190},{"title":"standard","target":"https://aws.amazon.com/blogs/security/a-new-and-standardized-way-to-manage-credentials-in-the-aws-sdks/","line":192}],"metadata":{"page-title":"elasticdump/elasticsearch-dump - Docker Image | Docker Hub","url":"https://hub.docker.com/r/elasticdump/elasticsearch-dump","date":"2024-09-26 11:11:29"},"task_lines":[],"tasks":{},"codeblock_ranges":[[16,297]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_安装前准备__达梦技术文档_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_安装前准备__达梦技术文档_md.ajson deleted file mode 100644 index f00eafe..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_安装前准备__达梦技术文档_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/安装前准备 达梦技术文档.md": {"path":"000-inbox/clippings/2024/09/安装前准备 达梦技术文档.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qchdn2","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725496313000,"size":3452,"at":1766986878957,"hash":"qchdn2"},"blocks":{"#---frontmatter---":[1,5],"##一、前言":[6,17],"##一、前言#{1}":[8,17],"##二、新建 dmdba 用户":[18,35],"##二、新建 dmdba 用户#{1}":[20,23],"##二、新建 dmdba 用户#{2}":[24,25],"##二、新建 dmdba 用户#{3}":[26,27],"##二、新建 dmdba 用户#{4}":[28,29],"##二、新建 dmdba 用户#{5}":[30,31],"##二、新建 dmdba 用户#{6}":[32,33],"##二、新建 dmdba 用户#{7}":[34,35],"##三、修改文件打开最大数":[36,77],"##三、修改文件打开最大数#{1}":[38,41],"##三、修改文件打开最大数#{2}":[42,43],"##三、修改文件打开最大数#{3}":[44,67],"##三、修改文件打开最大数#{4}":[68,69],"##三、修改文件打开最大数#{5}":[70,77],"##四、目录规划":[78,89],"##四、目录规划#{1}":[80,89],"##五、修改目录权限":[90,98],"##五、修改目录权限#{1}":[92,98]},"outlinks":[{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401240950366O2K7K5TONBNZZJDMA","line":52,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401240959260UW7J0C11OXTBOXWK9","line":66,"embedded":true}],"metadata":{"page-title":"安装前准备 | 达梦技术文档","url":"https://eco.dameng.com/document/dm/zh-cn/start/install-dm-linux-prepare.html","date":"2024-09-05 08:31:52"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_数据库安装__达梦技术文档_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_数据库安装__达梦技术文档_md.ajson deleted file mode 100644 index c8ae2ab..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_数据库安装__达梦技术文档_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/数据库安装 达梦技术文档.md": {"path":"000-inbox/clippings/2024/09/数据库安装 达梦技术文档.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1c1674d","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725496306000,"size":6749,"at":1766986878957,"hash":"1c1674d"},"blocks":{"#---frontmatter---":[1,5],"##一、前言":[6,9],"##一、前言#{1}":[8,9],"##二、挂载镜像":[10,17],"##二、挂载镜像#{1}":[12,17],"##三、命令行安装":[18,43],"##三、命令行安装#{1}":[20,43],"##四、图形化安装":[44,99],"##四、图形化安装#{1}":[46,99],"##五、配置环境变量":[100,128],"##五、配置环境变量#{1}":[102,128]},"outlinks":[{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240124111049S3S5NPD2F7DHJ0UQIQ","line":16,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240124111239KWYG082NT9KLK51C4T","line":24,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240124112650T19KGAG7IFVF7RE1JH","line":32,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/2024012411300992W9AYDO7OL5LIEXUO","line":36,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/2024012411312306SUH74CFZHSFOKGZU","line":40,"embedded":true},{"title":"配置实例","target":"https://eco.dameng.com/document/dm/zh-cn/start/dm-instance-linux","line":42},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251600524IA5FU3Q7JAJ6JUPO5","line":62,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160116518L84OK7RXAGNSM33","line":66,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251602118KJO9MLDQW4N3Z2A4X","line":70,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/2024012516023504QK0GICSTPO0KOA5T","line":74,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160311RYCJGCGO1AOI0HFO79","line":78,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251603334YNKW049Q3IBQ9N8O8","line":82,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160405BABOQ6NWMIXC3KYI00","line":86,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160517S5RSDT16OU6YJJL3KJ","line":90,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160632VQ3FSLTGRRX3ZDNJHI","line":94,"embedded":true},{"title":"完成安装","target":"https://download.dameng.com/eco/docs/asset/start/ui-install-success.png","line":98,"embedded":true},{"title":"环境变量","target":"https://download.dameng.com/eco/docs/asset/start/dm-home-path.png","line":112,"embedded":true}],"metadata":{"page-title":"数据库安装 | 达梦技术文档","url":"https://eco.dameng.com/document/dm/zh-cn/start/dm-install-linux.html","date":"2024-09-05 08:31:28"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_配置实例__达梦技术文档_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_配置实例__达梦技术文档_md.ajson deleted file mode 100644 index 05db261..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_配置实例__达梦技术文档_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/配置实例 达梦技术文档.md": {"path":"000-inbox/clippings/2024/09/配置实例 达梦技术文档.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"18clwml","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1725496530000,"size":10583,"at":1766986878957,"hash":"18clwml"},"blocks":{"#---frontmatter---":[1,5],"##一、前言":[6,9],"##一、前言#{1}":[8,9],"##二、命令行方式初始化实例":[10,56],"##二、命令行方式初始化实例#{1}":[12,27],"##二、命令行方式初始化实例#{2}":[28,28],"##二、命令行方式初始化实例#{3}":[29,29],"##二、命令行方式初始化实例#{4}":[30,30],"##二、命令行方式初始化实例#{5}":[31,31],"##二、命令行方式初始化实例#{6}":[32,32],"##二、命令行方式初始化实例#{7}":[33,34],"##二、命令行方式初始化实例#{8}":[35,56],"##三、图形化配置实例":[57,181],"##三、图形化配置实例#{1}":[59,66],"##三、图形化配置实例#3.1 手动打开配置助手":[67,84],"##三、图形化配置实例#3.1 手动打开配置助手#{1}":[69,84],"##三、图形化配置实例#3.2 创建数据库模板":[85,90],"##三、图形化配置实例#3.2 创建数据库模板#{1}":[87,90],"##三、图形化配置实例#3.3 选择数据库实例目录":[91,96],"##三、图形化配置实例#3.3 选择数据库实例目录#{1}":[93,96],"##三、图形化配置实例#3.4 输入数据库标识":[97,102],"##三、图形化配置实例#3.4 输入数据库标识#{1}":[99,102],"##三、图形化配置实例#3.5 数据库文件所在位置":[103,124],"##三、图形化配置实例#3.5 数据库文件所在位置#{1}":[105,124],"##三、图形化配置实例#3.6 数据库初始化参数":[125,140],"##三、图形化配置实例#3.6 数据库初始化参数#{1}":[127,134],"##三、图形化配置实例#3.6 数据库初始化参数#{2}":[135,135],"##三、图形化配置实例#3.6 数据库初始化参数#{3}":[136,136],"##三、图形化配置实例#3.6 数据库初始化参数#{4}":[137,137],"##三、图形化配置实例#3.6 数据库初始化参数#{5}":[138,138],"##三、图形化配置实例#3.6 数据库初始化参数#{6}":[139,140],"##三、图形化配置实例#3.7 口令管理":[141,148],"##三、图形化配置实例#3.7 口令管理#{1}":[143,148],"##三、图形化配置实例#3.8 选择创建示例库":[149,154],"##三、图形化配置实例#3.8 选择创建示例库#{1}":[151,154],"##三、图形化配置实例#3.9 创建数据库摘要":[155,160],"##三、图形化配置实例#3.9 创建数据库摘要#{1}":[157,160],"##三、图形化配置实例#3.10 创建实例":[161,181],"##三、图形化配置实例#3.10 创建实例#{1}":[163,181]},"outlinks":[{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401241420399ZZM2862TP9GJFY6CU","line":16,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/2024012414241040SGF7UCN0LOZQOZ6D","line":22,"embedded":true},{"title":"修改目录权限","target":"https://eco.dameng.com/document/dm/zh-cn/start/install-dm-linux-prepare#%E7%9B%AE%E5%BD%95%E8%A7%84%E5%88%92","line":41},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240124154410DGNZYDED81C3769XEG","line":51,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160752681RK92LR85BOZPJOP","line":61,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251608175AXW0M4HIRPSXLGMOW","line":65,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251657389PU9239YFE9XVF8FIA","line":79,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251608175AXW0M4HIRPSXLGMOW","line":83,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125160904XEH6RLPKBDBCEOWO1V","line":89,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251610192DX62DGPRJ9IZU4SWK","line":95,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161119AA7X8VDX2UI27T7AHJ","line":101,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161308N4LTJ1AG41C4R8PS8M","line":109,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161237H7J49UAX631BLBGF4T","line":113,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161443AJ4TAJG6BWHKEDIN11","line":117,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161552EBTTR6XY8V415U58P1","line":121,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/202401251617307FPALDNILL1UOZ669V","line":129,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161808ERV85UW7P4OORPIA02","line":145,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161836S8X0TPPY9B3O5OI2QP","line":153,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161911AH8AV4QKJOI2U34R4K","line":159,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125161950UYEBISPEV4QVDL0RCF","line":165,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125162144C455PIIOT84BSWYR6S","line":167,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125162705WZOUA7VNNW9X5ZN562","line":171,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125162726KX43U8ZAZBX85V311X","line":175,"embedded":true},{"title":"image.png","target":"https://eco.dameng.com/eco-file-server/file/eco/preview/20240125162842AEOQCTTULVUSN5SSYS","line":179,"embedded":true}],"metadata":{"page-title":"配置实例 | 达梦技术文档","url":"https://eco.dameng.com/document/dm/zh-cn/start/dm-instance-linux.html","date":"2024-09-05 08:35:28"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_09_麒麟V10(arm64aarch64)离线安装docker_–_Jason's_Blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_09_麒麟V10(arm64aarch64)离线安装docker_–_Jason's_Blog_md.ajson deleted file mode 100644 index bcfc3c3..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_09_麒麟V10(arm64aarch64)离线安装docker_–_Jason's_Blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/09/麒麟V10(arm64aarch64)离线安装docker – Jason's Blog.md": {"path":"000-inbox/clippings/2024/09/麒麟V10(arm64aarch64)离线安装docker – Jason's Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"i0jndd","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1727243025472,"size":3313,"at":1766986878957,"hash":"i0jndd"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##下载docker离线包":[8,14],"##下载docker离线包#{1}":[10,14],"##安装docker":[15,22],"##安装docker#{1}":[17,17],"##安装docker#{2}":[18,19],"##安装docker#{3}":[20,20],"##安装docker#{4}":[21,22],"##准备 docker.service系统配置文件":[23,64],"##准备 docker.service系统配置文件#{1}":[25,26],"##准备 docker.service系统配置文件#{2}":[27,28],"##准备 docker.service系统配置文件#{3}":[29,30],"##准备 docker.service系统配置文件#{4}":[31,31],"##准备 docker.service系统配置文件#{5}":[32,32],"##准备 docker.service系统配置文件#{6}":[33,33],"##准备 docker.service系统配置文件#{7}":[34,34],"##准备 docker.service系统配置文件#{8}":[35,36],"##准备 docker.service系统配置文件#{9}":[37,37],"##准备 docker.service系统配置文件#{10}":[38,38],"##准备 docker.service系统配置文件#{11}":[39,39],"##准备 docker.service系统配置文件#{12}":[40,40],"##准备 docker.service系统配置文件#{13}":[41,41],"##准备 docker.service系统配置文件#{14}":[42,42],"##准备 docker.service系统配置文件#{15}":[43,43],"##准备 docker.service系统配置文件#{16}":[44,44],"##准备 docker.service系统配置文件#{17}":[45,45],"##准备 docker.service系统配置文件#{18}":[46,46],"##准备 docker.service系统配置文件#{19}":[47,47],"##准备 docker.service系统配置文件#{20}":[48,48],"##准备 docker.service系统配置文件#{21}":[49,49],"##准备 docker.service系统配置文件#{22}":[50,50],"##准备 docker.service系统配置文件#{23}":[51,51],"##准备 docker.service系统配置文件#{24}":[52,52],"##准备 docker.service系统配置文件#{25}":[53,53],"##准备 docker.service系统配置文件#{26}":[54,54],"##准备 docker.service系统配置文件#{27}":[55,55],"##准备 docker.service系统配置文件#{28}":[56,56],"##准备 docker.service系统配置文件#{29}":[57,57],"##准备 docker.service系统配置文件#{30}":[58,58],"##准备 docker.service系统配置文件#{31}":[59,59],"##准备 docker.service系统配置文件#{32}":[60,61],"##准备 docker.service系统配置文件#{33}":[62,62],"##准备 docker.service系统配置文件#{34}":[63,64],"##将 docker.service 移到 /etc/systemd/system/ 目录":[65,70],"##将 docker.service 移到 /etc/systemd/system/ 目录#{1}":[67,67],"##将 docker.service 移到 /etc/systemd/system/ 目录#{2}":[68,68],"##将 docker.service 移到 /etc/systemd/system/ 目录#{3}":[69,70],"##启动docker":[71,81],"##启动docker#{1}":[73,73],"##启动docker#{2}":[74,75],"##启动docker#{3}":[76,76],"##启动docker#{4}":[77,78],"##启动docker#{5}":[79,79],"##启动docker#{6}":[80,81],"##验证安装是否成功":[82,85],"##验证安装是否成功#{1}":[84,85],"##国内加速":[86,89],"##国内加速#{1}":[88,89],"##安装docker-compose":[90,110],"##安装docker-compose#下载":[92,98],"##安装docker-compose#下载#{1}":[94,98],"##安装docker-compose#安装":[99,105],"##安装docker-compose#安装#{1}":[101,101],"##安装docker-compose#安装#{2}":[102,102],"##安装docker-compose#安装#{3}":[103,103],"##安装docker-compose#安装#{4}":[104,105],"##安装docker-compose#验证":[106,110],"##安装docker-compose#验证#{1}":[108,109],"##安装docker-compose#验证#{2}":[110,110]},"outlinks":[{"title":"跳至正文","target":"http://www.884358.com/kylinos-docker/#content","line":6},{"title":"https://download.docker.com/linux/static/stable/","target":"https://download.docker.com/linux/static/stable/ \"https://download.docker.com/linux/static/stable/\"","line":10}],"metadata":{"page-title":"麒麟V10(arm64/aarch64)离线安装docker – Jason's Blog","url":"http://www.884358.com/kylinos-docker/","date":"2024-09-25 13:43:43"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_10_Event-driven_architecture_on_the_modern_stack_of_Java_technologies_·_Roman_Kudryashov's_tech_blog_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_10_Event-driven_architecture_on_the_modern_stack_of_Java_technologies_·_Roman_Kudryashov's_tech_blog_md.ajson deleted file mode 100644 index ca19274..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_10_Event-driven_architecture_on_the_modern_stack_of_Java_technologies_·_Roman_Kudryashov's_tech_blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/10/Event-driven architecture on the modern stack of Java technologies · Roman Kudryashov's tech blog.md": {"path":"000-inbox/clippings/2024/10/Event-driven architecture on the modern stack of Java technologies · Roman Kudryashov's tech blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"yoc9ql","at":1766986879050},"class_name":"SmartSource","last_import":{"mtime":1728889536727,"size":223655,"at":1766986879321,"hash":"yoc9ql"},"blocks":{"#---frontmatter---":[1,5],"#":[6,31],"##{1}":[10,10],"##{2}":[11,16],"##{3}":[17,23],"##{4}":[24,24],"##{5}":[25,28],"##{6}":[29,29],"##{7}":[30,31],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)":[32,425],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{1}":[34,39],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{2}":[40,41],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{3}":[42,44],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{4}":[45,62],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{5}":[63,64],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{6}":[65,66],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{7}":[67,72],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{8}":[73,114],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{9}":[115,116],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{10}":[117,120],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{11}":[121,122],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{12}":[123,124],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{13}":[125,127],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{14}":[128,129],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{15}":[130,131],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{16}":[132,138],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{17}":[139,149],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{18}":[150,158],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{19}":[159,167],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{20}":[168,178],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{21}":[179,189],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{22}":[190,198],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{23}":[199,212],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{24}":[213,412],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{25}":[413,414],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{26}":[415,416],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{27}":[417,418],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{28}":[419,420],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{29}":[421,423],"##[Introduction](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction)#{30}":[424,425],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)":[426,1663],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#{1}":[428,431],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)":[432,454],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{1}":[434,435],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{2}":[436,437],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{3}":[438,443],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{4}":[444,445],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{5}":[446,449],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{6}":[450,451],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Common model](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model)#{7}":[452,454],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)":[455,892],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{1}":[457,458],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{2}":[459,460],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{3}":[461,462],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{4}":[463,464],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{5}":[465,466],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{6}":[467,469],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{7}":[470,490],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{8}":[491,494],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{9}":[495,501],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{10}":[502,504],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{11}":[505,541],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{12}":[542,550],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{13}":[551,552],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{14}":[553,600],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{15}":[601,602],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{16}":[603,604],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{17}":[605,606],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{18}":[607,609],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{19}":[610,611],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{20}":[612,613],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{21}":[614,616],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{22}":[617,618],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{23}":[619,620],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{24}":[621,622],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{25}":[623,625],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{26}":[626,659],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{27}":[660,661],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{28}":[662,664],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Book service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service)#{29}":[665,892],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)":[893,1339],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{1}":[895,896],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{2}":[897,898],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{3}":[899,900],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{4}":[901,902],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{5}":[903,904],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{6}":[905,907],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{7}":[908,975],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{8}":[976,977],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{9}":[978,980],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{10}":[981,984],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{11}":[985,986],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{12}":[987,989],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{13}":[990,1127],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{14}":[1128,1129],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{15}":[1130,1132],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{16}":[1133,1181],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{17}":[1182,1183],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{18}":[1184,1185],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{19}":[1186,1187],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{20}":[1188,1224],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{21}":[1225,1226],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{22}":[1227,1228],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{23}":[1229,1230],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{24}":[1231,1256],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{25}":[1257,1260],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{26}":[1261,1263],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{27}":[1264,1267],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{28}":[1268,1306],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{29}":[1307,1308],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{30}":[1309,1310],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{31}":[1311,1312],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{32}":[1313,1314],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{33}":[1315,1317],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[User service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service)#{34}":[1318,1339],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)":[1340,1506],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{1}":[1342,1343],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{2}":[1344,1345],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{3}":[1346,1348],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{4}":[1349,1352],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{5}":[1353,1354],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{6}":[1355,1361],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{7}":[1362,1364],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Notification service](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service)#{8}":[1365,1506],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)":[1507,1663],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{1}":[1509,1510],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{2}":[1511,1512],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{3}":[1513,1514],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{4}":[1515,1516],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{5}":[1517,1519],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{6}":[1520,1523],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{7}":[1524,1525],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{8}":[1526,1527],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{9}":[1528,1529],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{10}":[1530,1596],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{11}":[1597,1598],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{12}":[1599,1604],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{13}":[1605,1611],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{14}":[1612,1613],"##[Microservices implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation)#[Build](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build)#{15}":[1614,1663],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)":[1664,3069],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#{1}":[1666,1806],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)":[1807,2020],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{1}":[1809,1833],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{2}":[1834,1835],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{3}":[1836,1837],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{4}":[1838,1840],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{5}":[1841,1854],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{6}":[1855,1856],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{7}":[1857,1858],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{8}":[1859,1933],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{9}":[1934,1935],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{10}":[1936,1938],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{11}":[1939,1940],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{12}":[1941,1942],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{13}":[1943,1952],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{14}":[1953,1954],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{15}":[1955,1964],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{16}":[1965,1966],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{17}":[1967,1981],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{18}":[1982,1983],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{19}":[1984,1987],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{20}":[1988,1989],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{21}":[1990,1998],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{22}":[1999,2000],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{23}":[2001,2002],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{24}":[2003,2004],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Persistence layer](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer)#{25}":[2005,2020],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)":[2021,2768],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{1}":[2023,2024],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{2}":[2025,2026],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{3}":[2027,2028],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{4}":[2029,2030],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{5}":[2031,2032],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{6}":[2033,2034],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{7}":[2035,2036],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{8}":[2037,2038],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{9}":[2039,2040],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{10}":[2041,2043],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{11}":[2044,2073],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{12}":[2074,2075],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{13}":[2076,2077],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{14}":[2078,2079],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{15}":[2080,2081],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{16}":[2082,2083],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{17}":[2084,2085],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{18}":[2086,2088],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#{19}":[2089,2090],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)":[2091,2134],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{1}":[2093,2096],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{2}":[2097,2098],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{3}":[2099,2101],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{4}":[2102,2105],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{5}":[2106,2107],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{6}":[2108,2110],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Terms and key concepts](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts)#{7}":[2111,2134],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)":[2135,2252],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)#{1}":[2137,2218],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)#{2}":[2219,2230],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)#{3}":[2221,2230],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)#{4}":[2231,2252],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic deployment of a Kafka Connect connector using Kafka Connect REST API](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api)#{5}":[2233,2252],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic topic creation for a Kafka Connect connector](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_topic_creation_for_a_kafka_connect_connector)":[2253,2264],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Automatic topic creation for a Kafka Connect connector](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_topic_creation_for_a_kafka_connect_connector)#{1}":[2255,2264],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)":[2265,2768],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{1}":[2267,2268],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{2}":[2269,2275],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{3}":[2276,2284],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{4}":[2285,2291],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{5}":[2292,2299],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#{6}":[2300,2303],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)":[2304,2526],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{1}":[2306,2363],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{2}":[2364,2365],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{3}":[2366,2367],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{4}":[2368,2369],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{5}":[2370,2373],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{6}":[2374,2411],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{7}":[2412,2417],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{8}":[2418,2502],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{9}":[2503,2504],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{10}":[2505,2506],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{11}":[2507,2508],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{12}":[2509,2510],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{13}":[2511,2512],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{14}":[2513,2515],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Transactional outbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation)#{15}":[2516,2526],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)":[2527,2608],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{1}":[2529,2567],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{2}":[2568,2569],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{3}":[2570,2571],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{4}":[2572,2573],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{5}":[2574,2575],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{6}":[2576,2577],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{7}":[2578,2579],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{8}":[2580,2581],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{9}":[2582,2590],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{10}":[2591,2594],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for Inbox pattern implementation](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation)#{11}":[2595,2608],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)":[2609,2679],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)#{1}":[2611,2612],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)#{2}":[2613,2619],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)#{3}":[2620,2626],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)#{4}":[2627,2634],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues)#{5}":[2635,2679],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)":[2680,2768],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{1}":[2682,2725],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{2}":[2726,2727],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{3}":[2728,2729],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{4}":[2730,2731],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{5}":[2732,2733],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka Connect and Debezium connectors](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors)#[Connectors configuration](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration)#[Connectors for streaming data from one database to another](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another)#{6}":[2734,2768],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka)":[2769,2798],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Kafka](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka)#{1}":[2771,2798],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)":[2799,2954],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{1}":[2801,2802],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{2}":[2803,2804],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{3}":[2805,2813],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{4}":[2814,2815],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{5}":[2816,2918],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{6}":[2919,2920],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{7}":[2921,2922],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{8}":[2923,2924],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{9}":[2925,2927],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{10}":[2928,2947],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{11}":[2948,2949],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{12}":[2950,2952],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Schema registry](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry)#{13}":[2953,2954],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)":[2955,3046],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)#{1}":[2957,2958],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)#{2}":[2959,2960],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)#{3}":[2961,2962],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)#{4}":[2963,2965],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Reverse proxy](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy)#{5}":[2966,3046],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)":[3047,3069],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)#{1}":[3049,3058],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)#{2}":[3059,3060],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)#{3}":[3061,3062],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)#{4}":[3063,3065],"##[Infrastructure](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure)#[Monitoring tools](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools)#{5}":[3066,3069],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)":[3070,3123],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{1}":[3072,3073],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{2}":[3074,3075],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{3}":[3076,3078],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{4}":[3079,3080],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{5}":[3081,3082],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{6}":[3083,3100],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{7}":[3101,3102],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{8}":[3103,3109],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{9}":[3110,3118],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{10}":[3119,3121],"##[Local launch and CI/CD](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd)#{11}":[3122,3123],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)":[3124,3258],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#{1}":[3126,3127],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[REST API and user notifications testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_rest_api_and_user_notifications_testing)":[3128,3195],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[REST API and user notifications testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_rest_api_and_user_notifications_testing)#{1}":[3130,3195],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)":[3196,3228],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)#{1}":[3198,3219],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)#{2}":[3220,3221],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)#{3}":[3222,3223],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)#{4}":[3224,3225],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing messages from the `inbox` table](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table)#{5}":[3226,3228],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing invalid messages from dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_invalid_messages_from_dead_letter_queues)":[3229,3258],"##[Testing](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing)#[Testing of processing invalid messages from dead letter queues](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_invalid_messages_from_dead_letter_queues)#{1}":[3231,3258],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)":[3259,3347],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{1}":[3261,3262],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{2}":[3263,3264],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{3}":[3265,3267],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{4}":[3268,3271],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{5}":[3272,3277],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{6}":[3278,3288],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{7}":[3289,3292],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{8}":[3293,3320],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{9}":[3321,3322],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{10}":[3323,3324],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{11}":[3325,3326],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{12}":[3327,3328],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{13}":[3329,3330],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{14}":[3331,3333],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{15}":[3334,3337],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{16}":[3338,3339],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{17}":[3340,3341],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{18}":[3342,3344],"##[Conclusion](https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion)#{19}":[3345,3347]},"outlinks":[{"title":"Introduction","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction","line":10},{"title":"Microservices implementation","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation","line":11},{"title":"Common model","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model","line":12},{"title":"Book service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service","line":13},{"title":"User service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service","line":14},{"title":"Notification service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service","line":15},{"title":"Build","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build","line":16},{"title":"Infrastructure","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure","line":17},{"title":"Persistence layer","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer","line":18},{"title":"Kafka Connect and Debezium connectors","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors","line":19},{"title":"Kafka","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka","line":20},{"title":"Schema registry","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry","line":21},{"title":"Reverse proxy","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy","line":22},{"title":"Monitoring tools","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools","line":23},{"title":"Local launch and CI/CD","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd","line":24},{"title":"Testing","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing","line":25},{"title":"REST API and user notifications testing","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_rest_api_and_user_notifications_testing","line":26},{"title":"Testing of processing messages from the `inbox` table","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table","line":27},{"title":"Testing of processing invalid messages from dead letter queues","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_invalid_messages_from_dead_letter_queues","line":28},{"title":"Conclusion","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion","line":29},{"title":"Useful links","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_useful_links","line":30},{"title":"Introduction","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_introduction","line":32},{"title":"*Transactional outbox*","target":"https://microservices.io/patterns/data/transactional-outbox.html","line":38},{"title":"*Inbox*","target":"https://en.wikipedia.org/wiki/Inbox_and_outbox_pattern","line":47},{"title":"*Saga*","target":"https://microservices.io/patterns/data/saga.html","line":49},{"title":"*change data capture*","target":"https://en.wikipedia.org/wiki/Change_data_capture","line":53},{"title":"GitHub","target":"https://github.com/rkudryashov/event-driven-architecture","line":57},{"title":"architecture","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/architecture.png","line":59,"embedded":true},{"title":"connectors","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/kafka-connect/connectors","line":67},{"title":"`book.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.json","line":71},{"title":"`book.sink.streaming`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.streaming.json","line":75},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":79},{"title":"WAL","target":"https://en.wikipedia.org/wiki/Write-ahead_logging","line":81},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":86},{"title":"`user.sink.dlq-ce-json`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-ce-json.json","line":90},{"title":"`user.sink.dlq-unprocessed`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-unprocessed.json","line":94},{"title":"`user.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":98},{"title":"`user.source.streaming`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":102},{"title":"`notification.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/notification.sink.json","line":109},{"title":"KRaft","target":"https://docs.confluent.io/platform/current/kafka-metadata/kraft.html","line":117},{"title":"Kotlin","target":"https://kotlinlang.org/","line":236},{"title":"Spring Boot","target":"https://spring.io/projects/spring-boot","line":245},{"title":"GraalVM","target":"https://www.graalvm.org/","line":254},{"title":"Hibernate","target":"https://hibernate.org/","line":263},{"title":"Gradle","target":"https://gradle.org/","line":272},{"title":"Cloud Native Buildpacks","target":"https://buildpacks.io/","line":281},{"title":"OCI","target":"https://github.com/opencontainers/image-spec","line":285},{"title":"PostgreSQL","target":"https://www.postgresql.org/","line":295},{"title":"Kafka","target":"https://kafka.apache.org/","line":304},{"title":"Kafka Connect","target":"https://kafka.apache.org/","line":313},{"title":"Debezium","target":"https://debezium.io/","line":322},{"title":"CloudEvents","target":"https://cloudevents.io/","line":331},{"title":"Apache Avro","target":"https://avro.apache.org/","line":340},{"title":"Apicurio Registry","target":"https://www.apicur.io/registry","line":349},{"title":"Caddy","target":"https://caddyserver.com/","line":358},{"title":"Docker","target":"https://www.docker.com/","line":367},{"title":"Docker Compose","target":"https://docs.docker.com/compose","line":376},{"title":"UI for Apache Kafka","target":"https://github.com/provectus/kafka-ui","line":390},{"title":"pgAdmin","target":"https://www.pgadmin.org/","line":399},{"title":"a few books","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/db/migration/V1_0_1__data.sql","line":409},{"title":"domain entities","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/DataModel.kt","line":409},{"title":"Microservices implementation","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_microservices_implementation","line":426},{"title":"`gradle.properties`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/gradle.properties","line":430},{"title":"Common model","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_common_model","line":432},{"title":"`common-model`","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/common-model","line":434},{"title":"data model","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/DataModel.kt","line":436},{"title":"event model","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/EventModel.kt","line":444},{"title":"runtime hints","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/spring/CommonRuntimeHints.kt","line":450},{"title":"Book service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_book_service","line":455},{"title":"OpenAPI Generator Gradle Plugin","target":"https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator-gradle-plugin","line":467},{"title":"to deliver","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":470},{"title":"build script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/build.gradle.kts","line":489},{"title":"is described","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/openapi/api.yaml","line":489},{"title":"OpenAPI","target":"https://www.openapis.org/","line":489},{"title":"`BooksApiDelegateImpl`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/api/BooksApiDelegateImpl.kt","line":493},{"title":"`BooksApiDelegateLimitedImpl`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/api/BooksApiDelegateLimitedImpl.kt","line":497},{"title":"`test` profile","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/config/TestConfig.kt","line":499},{"title":"`AuthorsApiDelegateImpl`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/api/AuthorsApiDelegateImpl.kt","line":502},{"title":"The config","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/config/TestConfig.kt","line":507},{"title":"authors","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/converter/AuthorConverters.kt","line":507},{"title":"books","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/converter/BookConverters.kt","line":507},{"title":"https://localhost/book-service/books/3","target":"https://localhost/book-service/books/3","line":509},{"title":"Example","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/postman/testing.postman_collection.json","line":511},{"title":"`BookService.update()`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/BookServiceImpl.kt","line":521},{"title":"book","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/entity/Entities.kt","line":542},{"title":"`BookToSaveToEntityConverter`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/converter/BookConverters.kt","line":546},{"title":"`BookToSaveToEntityLimitedConverter`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/converter/BookConverters.kt","line":546},{"title":"`BookRepository`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/Repositories.kt","line":548},{"title":"outbox message","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/entity/Entities.kt","line":551},{"title":"OutboxMessageService","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/OutboxMessageServiceImpl.kt","line":557},{"title":"Creation","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/OutboxMessageServiceImpl.kt","line":590},{"title":"the source connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":603},{"title":"types","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/EventModel.kt","line":610},{"title":"`CurrentAndPreviousState`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/DataModel.kt","line":628},{"title":"CloudEvents converter","target":"https://debezium.io/documentation/reference/stable/integrations/cloudevents.html","line":630},{"title":"Outbox Event Router","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":630},{"title":"Storing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/OutboxMessageServiceImpl.kt","line":644},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":662},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":662},{"title":"sink connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.streaming.json","line":674},{"title":"source connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":674},{"title":"has more fields","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/db/migration/V1_0_0__structure.sql","line":674},{"title":"https://localhost/book-service/books/5/loans","target":"https://localhost/book-service/books/5/loans","line":676},{"title":"Example","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/postman/testing.postman_collection.json","line":678},{"title":"`BookLoan` entity","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/entity/Entities.kt","line":706},{"title":"active","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/UserReplicaServiceImpl.kt","line":706},{"title":"config","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/application.yaml","line":706},{"title":"`cancelBookLoan()`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/BookServiceImpl.kt","line":708},{"title":"is processed","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/InboxMessageServiceImpl.kt","line":708},{"title":"`book.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.json","line":708},{"title":"`user.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":708},{"title":"`BookLoan` entity","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/entity/Entities.kt","line":727},{"title":"`InboxMessageEntity`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/persistence/entity/Entities.kt","line":729},{"title":"method","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/BookServiceImpl.kt","line":729},{"title":"processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/InboxMessageServiceImpl.kt","line":729},{"title":"full list","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/OutboxMessageServiceImpl.kt","line":733},{"title":"full list","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/openapi/api.yaml","line":733},{"title":"Type","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/DataModel.kt","line":736},{"title":"Message type","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/EventModel.kt","line":736},{"title":"processed","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/IncomingEventServiceImpl.kt","line":891},{"title":"User service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_user_service","line":893},{"title":"`kotlinx-html`","target":"https://github.com/Kotlin/kotlinx.html","line":905},{"title":"to deliver","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":908},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":942},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":942},{"title":"`book-service`","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/book-service","line":942},{"title":"The mapping","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/persistence/entity/Entities.kt","line":944},{"title":"`InboxProcessingTask`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/task/InboxProcessingTask.kt","line":994},{"title":"5 seconds","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/application.yaml","line":994},{"title":"method","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/InboxMessageServiceImpl.kt","line":1034},{"title":"`InboxMessageRepository`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/persistence/Repositories.kt","line":1061},{"title":"method","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/persistence/Repositories.kt","line":1063},{"title":"Creation","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/config/Config.kt","line":1090},{"title":"Virtual Threads","target":"https://docs.oracle.com/en/java/javase/21/core/virtual-threads.html","line":1097},{"title":"Processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/InboxMessageServiceImpl.kt","line":1101},{"title":"`IncomingEventService`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/IncomingEventServiceImpl.kt","line":1135},{"title":"Processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/IncomingEventServiceImpl.kt","line":1137},{"title":"Processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/IncomingEventServiceImpl.kt","line":1161},{"title":"Saving","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/OutboxMessageServiceImpl.kt","line":1193},{"title":"`pg_logical_emit_message()`","target":"https://www.postgresql.org/docs/current/functions-admin.html","line":1231},{"title":"Repository","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/persistence/Repositories.kt","line":1236},{"title":"this blog post","target":"https://www.decodable.co/blog/the-wonders-of-postgres-logical-decoding-messages-for-cdc","line":1253},{"title":"columns","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":1276},{"title":"DTO","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/OutboxMessage.kt","line":1278},{"title":"appropriate connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":1291},{"title":"it can be either","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/OutboxMessageServiceImpl.kt","line":1291},{"title":"inbox concurrency","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/inbox-concurrency.png","line":1295,"embedded":true},{"title":"Outbox Event Router","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":1301},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":1301},{"title":"are processed","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/IncomingEventServiceImpl.kt","line":1305},{"title":"Processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/IncomingEventServiceImpl.kt","line":1320},{"title":"`kotlinx.html`","target":"https://github.com/Kotlin/kotlinx.html","line":1336},{"title":"to create","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/service/impl/NotificationServiceImpl.kt","line":1336},{"title":"Notification service","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_notification_service","line":1340},{"title":"WebSocket","target":"https://en.wikipedia.org/wiki/WebSocket","line":1349},{"title":"email delivery","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/notificationservice/service/impl/EmailServiceTestImpl.kt","line":1349},{"title":"`test` profile","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/notificationservice/config/TestConfig.kt","line":1353},{"title":"build script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/build.gradle.kts","line":1357},{"title":"testing environment config","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/application-test.yaml","line":1362},{"title":"STOMP","target":"https://en.wikipedia.org/wiki/Streaming_Text_Oriented_Messaging_Protocol","line":1365},{"title":"the build script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/build.gradle.kts","line":1367},{"title":"SockJS","target":"https://github.com/sockjs/sockjs-client","line":1386},{"title":"Processing","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/notificationservice/service/impl/IncomingEventServiceImpl.kt","line":1390},{"title":"Sending","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/notificationservice/service/impl/EmailServiceWebSocketStub.kt","line":1404},{"title":"`app.js`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/static/app.js","line":1434},{"title":"`/resources/static`","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/notification-service/src/main/resources/static","line":1434},{"title":"Logic","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/static/app.js","line":1436},{"title":"`index.html`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/static/index.html","line":1499},{"title":"websocket ui notification","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/websocket-ui-notification.png","line":1501,"embedded":true},{"title":"Build","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_build","line":1507},{"title":"GraalVM native images","target":"https://www.graalvm.org/latest/reference-manual/native-image","line":1520},{"title":"have limitations","target":"https://docs.spring.io/spring-boot/docs/current/reference/html/native-image.html","line":1526},{"title":"this","target":"https://github.com/rkudryashov/event-driven-architecture/actions","line":1530},{"title":"To provide","target":"https://docs.spring.io/spring-boot/reference/packaging/native-image/advanced-topics.html#packaging.native-image.advanced.custom-hints","line":1533},{"title":"Native Image","target":"https://www.graalvm.org/latest/reference-manual/native-image","line":1533},{"title":"*reachability metadata*","target":"https://www.graalvm.org/latest/reference-manual/native-image/metadata","line":1533},{"title":"Example","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/BookServiceApplication.kt","line":1556},{"title":"this script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/restart.bat","line":1567},{"title":"Cloud Native Buildpacks","target":"https://buildpacks.io/","line":1569},{"title":"OCI image","target":"https://github.com/opencontainers/image-spec","line":1569},{"title":"builder","target":"https://buildpacks.io/docs/for-app-developers/concepts/builder","line":1599},{"title":"buildpacks","target":"https://buildpacks.io/docs/for-app-developers/concepts/buildpack/","line":1599},{"title":"`java-native-image`","target":"https://github.com/paketo-buildpacks/java-native-image","line":1601},{"title":"`health-checker`","target":"https://github.com/paketo-buildpacks/health-checker","line":1603},{"title":"is","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/gradle.properties","line":1614},{"title":"docs","target":"https://docs.spring.io/spring-boot/docs/current/gradle-plugin/reference/htmlsingle/#build-image.customization","line":1626},{"title":"Spring profiles","target":"https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.profiles","line":1630},{"title":"have to set up the environment","target":"https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.aot.conditions","line":1630},{"title":"several beans","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/config/TestConfig.kt","line":1630},{"title":"beans","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/notificationservice/config/TestConfig.kt","line":1632},{"title":"application properties","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/application-test.yaml","line":1632},{"title":"file","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.override.yaml","line":1634},{"title":"`thc`","target":"https://github.com/dmikusa/tiny-health-checker","line":1645},{"title":"Usage","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":1649},{"title":"Infrastructure","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_infrastructure","line":1664},{"title":"file","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":1670},{"title":"Persistence layer","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_persistence_layer","line":1807},{"title":"the official Docker image","target":"https://hub.docker.com/_/postgres","line":1809},{"title":"logical decoding","target":"https://www.postgresql.org/docs/current/logicaldecoding-explanation.html","line":1836},{"title":"*write-ahead log*","target":"https://www.postgresql.org/docs/current/wal.html","line":1836},{"title":"replication","target":"https://www.postgresql.org/docs/current/runtime-config-replication.html","line":1841},{"title":"WAL","target":"https://www.postgresql.org/docs/current/runtime-config-wal.html","line":1841},{"title":"docs","target":"https://www.postgresql.org/docs/current/runtime-config.html","line":1841},{"title":"I decided","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":1843},{"title":"Write-ahead logging","target":"https://www.postgresql.org/docs/current/wal-intro.html","line":1845},{"title":"Debezium PostgreSQL connector","target":"https://debezium.io/documentation/reference/stable/connectors/postgresql.html","line":1847},{"title":"Protocol Buffers","target":"https://github.com/debezium/postgres-decoderbufs","line":1847},{"title":"*Logical decoding*","target":"https://www.postgresql.org/docs/current/logicaldecoding-explanation.html","line":1847},{"title":"*output plugin*","target":"https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html","line":1847},{"title":"*publication*","target":"https://www.postgresql.org/docs/current/logical-replication-publication.html","line":1849},{"title":"pgAdmin","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.override.yaml","line":1853},{"title":"PostgreSQL interactive terminal","target":"https://www.postgresql.org/docs/current/app-psql.html","line":1857},{"title":"`pg_waldump` command","target":"https://www.postgresql.org/docs/current/pgwaldump.html","line":1930},{"title":"source connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":1978},{"title":"the first","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":1978},{"title":"the second","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":1978},{"title":"`pg_recvlogical`","target":"https://www.postgresql.org/docs/current/app-pgrecvlogical.html","line":1980},{"title":"`test_decoding`","target":"https://www.postgresql.org/docs/current/test-decoding.html","line":1980},{"title":"wal test decoding","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/wal-test-decoding.webp","line":1995,"embedded":true},{"title":"the consumer","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2008},{"title":"considered connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2008},{"title":"Kafka Connect and Debezium connectors","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka_connect_and_debezium_connectors","line":2021},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2048},{"title":"exactly-once delivery","target":"https://debezium.io/blog/2023/06/22/towards-exactly-once-delivery/","line":2082},{"title":"here","target":"https://hub.docker.com/r/debezium/connect","line":2089},{"title":"Terms and key concepts","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_terms_and_key_concepts","line":2091},{"title":"terms and key concepts","target":"https://docs.confluent.io/platform/current/connect/index.html","line":2093},{"title":"connectors","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/kafka-connect/connectors","line":2093},{"title":"here","target":"https://debezium.io/documentation/reference/stable/connectors/index.html","line":2111},{"title":"Debezium connector for JDBC","target":"https://debezium.io/documentation/reference/stable/connectors/jdbc.html","line":2111},{"title":"Debezium connector for PostgreSQL","target":"https://debezium.io/documentation/reference/stable/connectors/postgresql.html","line":2111},{"title":"here","target":"https://docs.confluent.io/kafka-connectors/self-managed/kafka_connectors.html","line":2111},{"title":"here","target":"https://debezium.io/documentation/reference/stable/transformations/index.html","line":2129},{"title":"transformations","target":"https://kafka.apache.org/documentation/#connect_transforms","line":2129},{"title":"Automatic deployment of a Kafka Connect connector using Kafka Connect REST API","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_deployment_of_a_kafka_connect_connector_using_kafka_connect_rest_api","line":2135},{"title":"http://localhost:8083/connectors","target":"http://localhost:8083/connectors","line":2137},{"title":"REST API","target":"https://kafka.apache.org/documentation/#connect_rest","line":2137},{"title":"guide","target":"https://rmoff.net/2018/12/15/docker-tips-and-tricks-with-kafka-connect-ksqldb-and-kafka","line":2137},{"title":"file","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2139},{"title":"Script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/load-connectors.sh","line":2154},{"title":"http://localhost:8083/connectors","target":"http://localhost:8083/connectors","line":2199},{"title":"this","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/postman/testing.postman_collection.json","line":2199},{"title":"http://localhost:8083","target":"http://localhost:8083/","line":2219},{"title":"http://localhost:8083/connector-plugins","target":"http://localhost:8083/connector-plugins","line":2231},{"title":"Automatic topic creation for a Kafka Connect connector","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_automatic_topic_creation_for_a_kafka_connect_connector","line":2253},{"title":"Docker Compose file","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2255},{"title":"image","target":"https://hub.docker.com/r/bitnami/kafka","line":2255},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2257},{"title":"`user.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":2257},{"title":"`user.source.streaming`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":2257},{"title":"Debezium documentation","target":"https://debezium.io/documentation/reference/stable/configuration/topic-auto-create-config.html","line":2261},{"title":"you can only specify","target":"https://docs.confluent.io/platform/current/installation/configuration/connect/sink-connect-configs.html","line":2263},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":2263},{"title":"Connectors configuration","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_configuration","line":2265},{"title":"nine connectors","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/kafka-connect/connectors","line":2267},{"title":"`book.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2271},{"title":"`user.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":2273},{"title":"`book.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.json","line":2278},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":2280},{"title":"`notification.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/notification.sink.json","line":2282},{"title":"`user.sink.dlq-ce-json`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-ce-json.json","line":2287},{"title":"`user.sink.dlq-unprocessed`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-unprocessed.json","line":2289},{"title":"`user.source.streaming`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":2294},{"title":"`book.sink.streaming`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.streaming.json","line":2296},{"title":"Connectors for Transactional outbox pattern implementation","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_transactional_outbox_pattern_implementation","line":2304},{"title":"`PostgresConnector`","target":"https://debezium.io/documentation/reference/stable/connectors/postgresql.html","line":2364},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/connectors/postgresql.html","line":2364},{"title":"`postgres.properties`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/postgres.properties","line":2364},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/connectors/postgresql.html","line":2366},{"title":"Exactly-once delivery","target":"https://debezium.io/blog/2023/06/22/towards-exactly-once-delivery","line":2368},{"title":"`HeaderFrom`","target":"https://docs.confluent.io/platform/current/connect/transforms/headerfrom.html","line":2372},{"title":"to export messages in CloudEvents format","target":"https://debezium.io/documentation/reference/stable/integrations/cloudevents.html","line":2374},{"title":"Predicate","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2378},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/transformations/applying-transformations-selectively.html","line":2388},{"title":"`EventRouter`","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":2390},{"title":"`outbox` table","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/db/migration/V1_0_0__structure.sql","line":2402},{"title":"to preserve a fixed order of events","target":"https://www.confluent.io/blog/put-several-event-types-kafka-topic","line":2406},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":2409},{"title":"CloudEvents","target":"https://cloudevents.io/","line":2416},{"title":"specification","target":"https://github.com/cloudevents/spec","line":2418},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/integrations/cloudevents.html","line":2435},{"title":"`user.source`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":2443},{"title":"`DecodeLogicalDecodingMessageContent`","target":"https://debezium.io/documentation/reference/stable/transformations/decode-logical-decoding-message-content.html","line":2509},{"title":"Outbox Event Router SMT","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":2511},{"title":"By default","target":"https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html","line":2525},{"title":"`OutboxMessage` DTO","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/common-model/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/commonmodel/OutboxMessage.kt","line":2525},{"title":"Connectors for Inbox pattern implementation","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_inbox_pattern_implementation","line":2527},{"title":"`JdbcSinkConnector`","target":"https://debezium.io/documentation/reference/stable/connectors/jdbc.html","line":2568},{"title":"`postgres.properties`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/postgres.properties","line":2568},{"title":"table definition","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/db/migration/V1_0_0__structure.sql\\","line":2574},{"title":"`ConvertCloudEventToSaveableForm`","target":"https://debezium.io/documentation/reference/stable/transformations/convert-cloudevent-to-saveable-form.html","line":2580},{"title":"docs","target":"https://debezium.io/documentation/reference/stable/connectors/jdbc.html","line":2605},{"title":"Connectors for dead letter queues","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_dead_letter_queues","line":2609},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":2613},{"title":"`user.sink.dlq-ce-json`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-ce-json.json","line":2620},{"title":"`user.sink.dlq-unprocessed`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-unprocessed.json","line":2627},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-ce-json.json","line":2639},{"title":"`user.sink.dlq-unprocessed`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-unprocessed.json","line":2676},{"title":"Connectors for streaming data from one database to another","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_connectors_for_streaming_data_from_one_database_to_another","line":2680},{"title":"`lendBook`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/bookservice/service/impl/BookServiceImpl.kt","line":2682},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.streaming.json","line":2686},{"title":"message filtering","target":"https://debezium.io/documentation/reference/stable/transformations/filtering.html","line":2724},{"title":"these JARs","target":"https://github.com/rkudryashov/event-driven-architecture/tree/master/kafka-connect/filtering/groovy","line":2726},{"title":"Apache Groovy site","target":"https://groovy-lang.org/","line":2726},{"title":"mount the JARs","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2728},{"title":"environment variable","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2730},{"title":"two users of the library","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/db/migration/V1_0_1__data.sql","line":2739},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.sink.streaming.json","line":2743},{"title":"contains","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/db/migration/V1_0_0__structure.sql","line":2767},{"title":"Kafka","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_kafka","line":2769},{"title":"image","target":"https://hub.docker.com/r/bitnami/kafka","line":2771},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2773},{"title":"Schema registry","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_schema_registry","line":2799},{"title":"connector","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.source.json","line":2828},{"title":"Apache Avro","target":"https://github.com/apache/avro","line":2874},{"title":"Confluent Schema Registry","target":"https://docs.confluent.io/platform/current/schema-registry/index.html","line":2878},{"title":"Apicurio Registry","target":"https://www.apicur.io/registry","line":2878},{"title":"supports","target":"https://www.apicur.io/registry/","line":2878},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":2882},{"title":"configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":2895},{"title":"the","target":"https://www.apicur.io/registry/docs/apicurio-registry/2.5.x/getting-started/assembly-configuring-kafka-client-serdes.html","line":2928},{"title":"docs","target":"https://www.apicur.io/registry/docs/apicurio-registry/2.5.x/getting-started/assembly-using-kafka-client-serdes.html","line":2928},{"title":"http://localhost:8080","target":"http://localhost:8080/","line":2930},{"title":"apicurio registry ui","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/apicurio-registry-ui.png","line":2932,"embedded":true},{"title":"apicurio registry ui artifact","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/apicurio-registry-ui-artifact.png","line":2938,"embedded":true},{"title":"several lookup strategies","target":"https://github.com/Apicurio/apicurio-registry/tree/main/serdes/avro-serde/src/main/java/io/apicurio/registry/serde/avro/strategy","line":2940},{"title":"apicurio registry ui change strategy","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/apicurio-registry-ui-change-strategy.png","line":2942,"embedded":true},{"title":"this issue","target":"https://issues.redhat.com/browse/DBZ-6621","line":2944},{"title":"Reverse proxy","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_reverse_proxy","line":2955},{"title":"`index.html`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/static/index.html","line":2957},{"title":"Nginx","target":"https://nginx.org/","line":2957},{"title":"Caddy","target":"https://caddyserver.com/","line":2966},{"title":"automatically and by default","target":"https://caddyserver.com/docs/automatic-https","line":2966},{"title":"`reverse_proxy` directive","target":"https://caddyserver.com/docs/caddyfile/directives/reverse_proxy","line":3000},{"title":"HTTP Rate Limit Module","target":"https://github.com/mholt/caddy-ratelimit","line":3002},{"title":"custom Dockerfile","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Dockerfile","line":3002},{"title":"localhost https","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/localhost-https.png","line":3006,"embedded":true},{"title":"Caddyfile","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Caddyfile","line":3008},{"title":"Configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":3012},{"title":"very important to persist","target":"https://hub.docker.com/_/caddy","line":3031},{"title":"rate limits","target":"https://letsencrypt.org/docs/rate-limits","line":3031},{"title":"ACME","target":"https://en.wikipedia.org/wiki/Automatic_Certificate_Management_Environment","line":3033},{"title":"staging environment","target":"https://letsencrypt.org/docs/staging-environment","line":3033},{"title":"Caddyfile","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Caddyfile","line":3035},{"title":"Certbot","target":"https://certbot.eff.org/","line":3045},{"title":"mkcert","target":"https://github.com/FiloSottile/mkcert","line":3045},{"title":"commit history","target":"https://github.com/rkudryashov/event-driven-architecture/commits/master","line":3045},{"title":"Monitoring tools","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_monitoring_tools","line":3047},{"title":"kafka ui","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/kafka-ui.png","line":3051,"embedded":true},{"title":"pgAdmin","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/pgAdmin.png","line":3055,"embedded":true},{"title":"predefined list of database servers","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/pgadmin/servers.json","line":3061},{"title":"file","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/pgadmin/pgpass","line":3063},{"title":"Local launch and CI/CD","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_local_launch_and_cicd","line":3070},{"title":"`compose.yaml`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":3074},{"title":"`compose.override.yaml`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.override.yaml","line":3076},{"title":"workflow","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/.github/workflows/workflow.yaml","line":3083},{"title":"`compose.yaml`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":3083},{"title":"Script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/restart.bat","line":3087},{"title":"Caddy image","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Dockerfile","line":3106},{"title":"deploys","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/.github/scripts/deploy.sh","line":3108},{"title":"workflow","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/.github/workflows/workflow.yaml","line":3108},{"title":"Initialization","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/.github/scripts/init_vm.sh","line":3110},{"title":"installs","target":"https://docs.docker.com/engine/install/ubuntu","line":3112},{"title":"configures","target":"https://docs.docker.com/engine/install/linux-postinstall","line":3114},{"title":"configure log rotation","target":"https://docs.logrhythm.com/OCbeats/docs/configure-docker-log-rotation","line":3116},{"title":"The deployment","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/.github/scripts/redeploy_docker_containers.sh","line":3119},{"title":"Testing","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing","line":3124},{"title":"REST API and user notifications testing","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_rest_api_and_user_notifications_testing","line":3128},{"title":"REST API","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/openapi/api.yaml","line":3130},{"title":"exposed","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Caddyfile","line":3130},{"title":"Postman collection","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/postman/testing.postman_collection.json","line":3130},{"title":"https://localhost","target":"https://localhost/","line":3130},{"title":"postman get books","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/postman-get-books.png","line":3134,"embedded":true},{"title":"postman get authors","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/postman-get-authors.png","line":3138,"embedded":true},{"title":"served","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/caddy/Caddyfile","line":3140},{"title":"page","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/notification-service/src/main/resources/static/index.html","line":3140},{"title":"https://localhost","target":"https://localhost/","line":3140},{"title":"websocket ui","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/websocket-ui.png","line":3142,"embedded":true},{"title":"user notification book created","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-created.webp","line":3148,"embedded":true},{"title":"two users","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/db/migration/V1_0_1__data.sql","line":3150},{"title":"user notification book deleted","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-deleted.webp","line":3154,"embedded":true},{"title":"config","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/application.yaml","line":3158},{"title":"user notification book loan canceled","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-loan-canceled.webp","line":3160,"embedded":true},{"title":"pgAdmin book loan inbox","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/pgAdmin-book-loan-inbox.png","line":3164,"embedded":true},{"title":"postman create book loan 404","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/postman-create-book-loan-404.png","line":3168,"embedded":true},{"title":"user notification book loan created","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-loan-created.webp","line":3172,"embedded":true},{"title":"user notification book returned","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-returned.webp","line":3176,"embedded":true},{"title":"https://eda-demo.romankudryashov.com","target":"https://eda-demo.romankudryashov.com/","line":3178},{"title":"eda-demo.romankudryashov.com","target":"https://eda-demo.romankudryashov.com/","line":3178},{"title":"user notification book updated","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-book-updated.webp","line":3182,"embedded":true},{"title":"user notification author updated","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/user-notification-author-updated.webp","line":3188,"embedded":true},{"title":"borrowed","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/book-service/src/main/resources/db/migration/V1_0_1__data.sql","line":3192},{"title":"here","target":"https://eda-demo.romankudryashov.com/","line":3194},{"title":"Testing of processing messages from the `inbox` table","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_messages_from_the_inbox_table","line":3196},{"title":"is configured","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":3198},{"title":"config","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/application.yaml","line":3198},{"title":"this script","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/misc/postgres/batch_insert.sql","line":3200},{"title":"configuration parameters","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/application.yaml","line":3202},{"title":"inbox processing","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/inbox-processing.webp","line":3214,"embedded":true},{"title":"cron schedule","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/application.yaml","line":3220},{"title":"batch size","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/resources/application.yaml","line":3222},{"title":"two places","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/user-service/src/main/kotlin/com/romankudryashov/eventdrivenarchitecture/userservice/task/InboxProcessingTask.kt","line":3224},{"title":"instances of the service","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/compose.yaml","line":3226},{"title":"Testing of processing invalid messages from dead letter queues","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_testing_of_processing_invalid_messages_from_dead_letter_queues","line":3229},{"title":"configuration","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/book.source.json","line":3231},{"title":"`user.sink`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.json","line":3233},{"title":"log dlq 1","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/log-dlq-1.png","line":3235,"embedded":true},{"title":"kafka ui dlq 1","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/kafka-ui-dlq-1.png","line":3239,"embedded":true},{"title":"`user.sink.dlq-ce-json`","target":"https://github.com/rkudryashov/event-driven-architecture/blob/master/kafka-connect/connectors/user.sink.dlq-ce-json.json","line":3241},{"title":"pgAdmin inbox","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/pgAdmin-inbox.png","line":3243,"embedded":true},{"title":"log dlq 2","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/log-dlq-2.png","line":3247,"embedded":true},{"title":"kafka ui dlq 2","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/kafka-ui-dlq-2.png","line":3251,"embedded":true},{"title":"pgAdmin inbox unprocessed","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/images/testing/pgAdmin-inbox-unprocessed.png","line":3255,"embedded":true},{"title":"Conclusion","target":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/#_conclusion","line":3259},{"title":"eda-demo.romankudryashov.com","target":"https://eda-demo.romankudryashov.com/","line":3265},{"title":"LISTEN","target":"https://www.postgresql.org/docs/current/sql-listen.html","line":3315},{"title":"NOTIFY","target":"https://www.postgresql.org/docs/current/sql-notify.html","line":3315},{"title":"Debezium JDBC Sink Connector","target":"https://github.com/debezium/debezium-connector-jdbc/pulls?q=is%3Apr+author%3Arkudryashov+is%3Aclosed","line":3336},{"title":"Debezium","target":"https://github.com/debezium/debezium/pulls?q=is%3Apr+author%3Arkudryashov+is%3Aclosed","line":3336},{"title":"didn’t work together","target":"https://issues.redhat.com/browse/DBZ-3642","line":3336},{"title":"the ability","target":"https://github.com/debezium/debezium/pull/4825","line":3338},{"title":"`DecodeLogicalDecodingMessageContent` SMT","target":"https://github.com/debezium/debezium/pull/5722","line":3340},{"title":"`ConvertCloudEventToSaveableForm` SMT","target":"https://github.com/debezium/debezium-connector-jdbc/pull/45","line":3342}],"metadata":{"page-title":"Event-driven architecture on the modern stack of Java technologies · Roman Kudryashov's tech blog","url":"https://romankudryashov.com/blog/2024/07/event-driven-architecture/","date":"2024-10-14 15:05:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[[474,483],[513,519],[523,538],[563,566],[570,586],[592,599],[632,642],[646,652],[667,672],[682,704],[710,725],[912,921],[927,940],[946,972],[996,1030],[1036,1057],[1065,1073],[1079,1086],[1092,1095],[1103,1124],[1139,1155],[1163,1178],[1195,1221],[1238,1251],[1280,1289],[1322,1332],[1371,1384],[1392,1402],[1406,1421],[1427,1432],[1438,1495],[1535,1552],[1558,1563],[1573,1593],[1636,1643],[1651,1660],[1672,1803],[1813,1830],[1866,1884],[1890,1915],[1923,1928],[1945,1951],[1957,1963],[1969,1975],[2012,2017],[2050,2072],[2141,2150],[2156,2195],[2203,2215],[2221,2227],[2233,2248],[2308,2360],[2380,2386],[2445,2499],[2518,2523],[2531,2564],[2641,2672],[2688,2720],[2745,2765],[2775,2795],[2807,2812],[2822,2826],[2830,2864],[2884,2889],[2897,2915],[2968,2998],[3014,3029],[3037,3043],[3089,3099],[3206,3208]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_10_How_to_Flush_DNS_on_Mac_–_MacOS_Clear_DNS_Cache_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_10_How_to_Flush_DNS_on_Mac_–_MacOS_Clear_DNS_Cache_md.ajson deleted file mode 100644 index de93861..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_10_How_to_Flush_DNS_on_Mac_–_MacOS_Clear_DNS_Cache_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/10/How to Flush DNS on Mac – MacOS Clear DNS Cache.md": {"path":"000-inbox/clippings/2024/10/How to Flush DNS on Mac – MacOS Clear DNS Cache.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1owy2se","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1730084438090,"size":7878,"at":1766986878957,"hash":"1owy2se"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##{1}":[12,13],"##{2}":[14,17],"##What is DNS Cache?":[18,145],"##What is DNS Cache?#{1}":[20,41],"##What is DNS Cache?#Why Flushing DNS Cache Is Important":[42,77],"##What is DNS Cache?#Why Flushing DNS Cache Is Important#{1}":[44,73],"##What is DNS Cache?#Why Flushing DNS Cache Is Important#{2}":[74,74],"##What is DNS Cache?#Why Flushing DNS Cache Is Important#{3}":[75,75],"##What is DNS Cache?#Why Flushing DNS Cache Is Important#{4}":[76,77],"##What is DNS Cache?#How to Access The Terminal Application on MacOS":[78,100],"##What is DNS Cache?#How to Access The Terminal Application on MacOS#{1}":[80,87],"##What is DNS Cache?#How to Access The Terminal Application on MacOS#{2}":[88,88],"##What is DNS Cache?#How to Access The Terminal Application on MacOS#{3}":[89,90],"##What is DNS Cache?#How to Access The Terminal Application on MacOS#{4}":[91,100],"##What is DNS Cache?#How to Clear DNS Cache For Your MacOS Version":[101,145],"##What is DNS Cache?#How to Clear DNS Cache For Your MacOS Version#{1}":[103,145],"##Conclusion":[146,160],"##Conclusion#{1}":[148,160]},"outlinks":[{"title":"How to Flush DNS on Mac – MacOS Clear DNS Cache","target":"https://www.freecodecamp.org/news/content/images/size/w2000/2022/04/kaitlyn-baker-vZJdYl5JVXY-unsplash.jpg","line":6,"embedded":true},{"title":"What is DNS cache?","target":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/#intro","line":12},{"title":"Why flushing DNS cache is important","target":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/#why","line":13},{"title":"How to flush DNS cache on MacOS","target":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/#howto","line":14},{"title":"How to access the terminal application on MacOS","target":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/#terminal","line":15},{"title":"How to clear DNS Cache for your MacOS version","target":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/#version","line":16},{"title":"Screenshot-2022-04-20-at-10.07.52-AM","target":"https://www.freecodecamp.org/news/content/images/2022/04/Screenshot-2022-04-20-at-10.07.52-AM.png","line":93,"embedded":true},{"title":"Screenshot-2022-04-20-at-10.12.29-AM","target":"https://www.freecodecamp.org/news/content/images/2022/04/Screenshot-2022-04-20-at-10.12.29-AM.png","line":99,"embedded":true},{"title":"Screenshot-2022-04-20-at-11.07.26-AM","target":"https://www.freecodecamp.org/news/content/images/2022/04/Screenshot-2022-04-20-at-11.07.26-AM.png","line":113,"embedded":true},{"title":"Get started","target":"https://www.freecodecamp.org/learn/","line":160}],"metadata":{"page-title":"How to Flush DNS on Mac – MacOS Clear DNS Cache","url":"https://www.freecodecamp.org/news/how-to-flush-dns-on-mac-macos-clear-dns-cache/","date":"2024-10-28 11:00:36"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_10_MySQL_community_audit_logging_-_CyberSecThreat_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_10_MySQL_community_audit_logging_-_CyberSecThreat_md.ajson deleted file mode 100644 index e85219f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_10_MySQL_community_audit_logging_-_CyberSecThreat_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/10/MySQL community audit logging - CyberSecThreat.md": {"path":"000-inbox/clippings/2024/10/MySQL community audit logging - CyberSecThreat.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ndsn1","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1729844997854,"size":43299,"at":1766986878957,"hash":"1ndsn1"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Introduction":[11,38],"##Introduction#{1}":[13,16],"##Introduction#Testing Environments:":[17,38],"##Introduction#Testing Environments:#{1}":[19,20],"##Introduction#Testing Environments:#{2}":[21,21],"##Introduction#Testing Environments:#{3}":[22,22],"##Introduction#Testing Environments:#{4}":[23,24],"##Introduction#Testing Environments:#{5}":[25,26],"##Introduction#Testing Environments:#{6}":[27,27],"##Introduction#Testing Environments:#{7}":[28,28],"##Introduction#Testing Environments:#{8}":[29,29],"##Introduction#Testing Environments:#{9}":[30,30],"##Introduction#Testing Environments:#{10}":[31,32],"##Introduction#Testing Environments:#{11}":[33,38],"##Description, Pros, and Cons of different MySQL community audit logging:":[39,102],"##Description, Pros, and Cons of different MySQL community audit logging:#1\\. Native MySQL `general_log` configuration":[41,53],"##Description, Pros, and Cons of different MySQL community audit logging:#1\\. Native MySQL `general_log` configuration#{1}":[43,46],"##Description, Pros, and Cons of different MySQL community audit logging:#1\\. Native MySQL `general_log` configuration#{2}":[47,49],"##Description, Pros, and Cons of different MySQL community audit logging:#1\\. Native MySQL `general_log` configuration#{3}":[50,53],"##Description, Pros, and Cons of different MySQL community audit logging:#2\\. MySQL Enterprise audit logging plugin (`audit_log.so`)":[54,63],"##Description, Pros, and Cons of different MySQL community audit logging:#2\\. MySQL Enterprise audit logging plugin (`audit_log.so`)#{1}":[56,58],"##Description, Pros, and Cons of different MySQL community audit logging:#2\\. MySQL Enterprise audit logging plugin (`audit_log.so`)#{2}":[59,60],"##Description, Pros, and Cons of different MySQL community audit logging:#2\\. MySQL Enterprise audit logging plugin (`audit_log.so`)#{3}":[61,63],"##Description, Pros, and Cons of different MySQL community audit logging:#3\\. MariaDB audit logging plugin (`server_audit.so`)":[64,75],"##Description, Pros, and Cons of different MySQL community audit logging:#3\\. MariaDB audit logging plugin (`server_audit.so`)#{1}":[66,69],"##Description, Pros, and Cons of different MySQL community audit logging:#3\\. MariaDB audit logging plugin (`server_audit.so`)#{2}":[70,71],"##Description, Pros, and Cons of different MySQL community audit logging:#3\\. MariaDB audit logging plugin (`server_audit.so`)#{3}":[72,75],"##Description, Pros, and Cons of different MySQL community audit logging:#4\\. Percona audit logging plugin (`audit_log.so`)":[76,87],"##Description, Pros, and Cons of different MySQL community audit logging:#4\\. Percona audit logging plugin (`audit_log.so`)#{1}":[78,81],"##Description, Pros, and Cons of different MySQL community audit logging:#4\\. Percona audit logging plugin (`audit_log.so`)#{2}":[82,83],"##Description, Pros, and Cons of different MySQL community audit logging:#4\\. Percona audit logging plugin (`audit_log.so`)#{3}":[84,87],"##Description, Pros, and Cons of different MySQL community audit logging:#5\\. Mcafee audit logging plugin (`libaudit_plugin.so`)":[88,102],"##Description, Pros, and Cons of different MySQL community audit logging:#5\\. Mcafee audit logging plugin (`libaudit_plugin.so`)#{1}":[90,92],"##Description, Pros, and Cons of different MySQL community audit logging:#5\\. Mcafee audit logging plugin (`libaudit_plugin.so`)#{2}":[93,94],"##Description, Pros, and Cons of different MySQL community audit logging:#5\\. Mcafee audit logging plugin (`libaudit_plugin.so`)#{3}":[95,102],"##Conclusion and Recommendation:":[103,880],"##Conclusion and Recommendation:#{1}":[105,105],"##Conclusion and Recommendation:#{2}":[106,106],"##Conclusion and Recommendation:#{3}":[107,108],"##Conclusion and Recommendation:#{4}":[109,112],"##Conclusion and Recommendation:##**Native logging using general\\_log settings**":[113,194],"##Conclusion and Recommendation:##**Native logging using general\\_log settings**#{1}":[115,194],"##Conclusion and Recommendation:##MariaDB audit logging plugin (`server_audit.so`) settings":[195,312],"##Conclusion and Recommendation:##MariaDB audit logging plugin (`server_audit.so`) settings#{1}":[197,312],"##Conclusion and Recommendation:##**Mcafee audit logging plugin (`libaudit_plugin.so`) settings**":[313,512],"##Conclusion and Recommendation:##**Mcafee audit logging plugin (`libaudit_plugin.so`) settings**#{1}":[315,512],"##Conclusion and Recommendation:##**Native logging using `general_log` settings**":[513,587],"##Conclusion and Recommendation:##**Native logging using `general_log` settings**#{1}":[515,587],"##Conclusion and Recommendation:##Percona audit logging plugin (`audit_log.so`) settings":[588,681],"##Conclusion and Recommendation:##Percona audit logging plugin (`audit_log.so`) settings#{1}":[590,681],"##Conclusion and Recommendation:##**Mcafee audit logging plugin (`libaudit_plugin.so`)**":[682,880],"##Conclusion and Recommendation:##**Mcafee audit logging plugin (`libaudit_plugin.so`)**#{1}":[684,880],"##Native MySQL general\\_log filtering using Splunk":[881,938],"##Native MySQL general\\_log filtering using Splunk#{1}":[883,938]},"outlinks":[{"title":"5.7.9","target":"https://dev.mysql.com/doc/mysql-security-excerpt/5.7/en/audit-log-reference.html","line":57},{"title":"our solution","target":"https://cybersecthreat.com/2021/12/09/mysql-community-edition-audit-logging/#native-mysql-general-log-filtering-using-splunk","line":107},{"title":"![MySQL community audit logging for MariaDB using Splunk view","target":"https://cybersecthreat.com/wp-content/uploads/2021/12/MySQL_community_audit_logging_for_mariadb_splunk_view-1024x195.png","line":309},{"title":"https://github.com/mcafee/mysql-audit/releases","target":"https://github.com/mcafee/mysql-audit/releases","line":315},{"title":"![MySQL community audit logging for Mcafee using Splunk view","target":"https://cybersecthreat.com/wp-content/uploads/2021/12/MySQL_community_audit_logging_for_mcafee_splunk_view-1024x358.png","line":509},{"title":"![MySQL community audit logging for Percona using Splunk view","target":"https://cybersecthreat.com/wp-content/uploads/2021/12/MySQL_community_audit_logging_for_percona_splunk_view-1024x192.png","line":676},{"title":"https://github.com/mcafee/mysql-audit/releases","target":"https://github.com/mcafee/mysql-audit/releases","line":684},{"title":"![MySQL community audit logging for Mcafee using Splunk view","target":"https://cybersecthreat.com/wp-content/uploads/2021/12/MySQL_community_audit_logging_for_mcafee_splunk_view-1024x358.png","line":877},{"title":"MySQL Splunk app","target":"https://splunkbase.splunk.com/app/2848/","line":883},{"title":"![MySQL community audit logging for generallog using Splunk view","target":"https://cybersecthreat.com/wp-content/uploads/2021/12/MySQL_community_audit_logging_for_generallog_splunk_view-1024x406.png","line":928},{"title":"here","target":"https://cybersecthreat.com/2020/07/08/enable-mssql-authentication-log-to-eventlog/","line":932},{"title":"https://mariadb.com/kb/en/mariadb-audit-plugin-log-format/","target":"https://mariadb.com/kb/en/mariadb-audit-plugin-log-format/","line":936},{"title":"https://www.percona.com/blog/2020/07/22/percona-audit-log-plugin-and-the-percona-monitoring-and-management-security-threat-tool/","target":"https://www.percona.com/blog/2020/07/22/percona-audit-log-plugin-and-the-percona-monitoring-and-management-security-threat-tool/","line":938}],"metadata":{"page-title":"MySQL community audit logging - CyberSecThreat","url":"https://cybersecthreat.com/2021/12/09/mysql-community-edition-audit-logging/","date":"2024-10-25 16:29:56"},"task_lines":[],"tasks":{},"codeblock_ranges":[[117,158],[162,173],[177,181],[187,191],[199,202],[206,230],[234,236],[240,284],[288,295],[299,303],[317,321],[325,349],[353,355],[359,362],[366,371],[375,381],[385,412],[416,420],[424,499],[503,505],[517,553],[557,566],[570,574],[580,584],[592,598],[602,626],[630,632],[636,654],[658,664],[668,672],[686,689],[693,717],[721,723],[727,730],[734,739],[743,749],[753,777],[781,785],[789,856],[860,873],[889,909],[913,924]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_10_技术我的一些_nix_学习经验:安装和打包_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_10_技术我的一些_nix_学习经验:安装和打包_md.ajson deleted file mode 100644 index ffe2349..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_10_技术我的一些_nix_学习经验:安装和打包_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/10/技术我的一些 nix 学习经验:安装和打包.md": {"path":"000-inbox/clippings/2024/10/技术我的一些 nix 学习经验:安装和打包.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1lb9t2d","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1729826639894,"size":17345,"at":1766986878957,"hash":"1lb9t2d"},"blocks":{"#---frontmatter---":[1,5],"#":[6,15],"##{1}":[10,10],"##{2}":[11,11],"##{3}":[12,15],"###nix 为何引人关注?":[16,60],"###nix 为何引人关注?#{1}":[18,19],"###nix 为何引人关注?#{2}":[20,20],"###nix 为何引人关注?#{3}":[21,22],"###nix 为何引人关注?#{4}":[23,24],"###nix 为何引人关注?#{5}":[25,25],"###nix 为何引人关注?#{6}":[26,27],"###nix 为何引人关注?#{7}":[28,29],"###nix 为何引人关注?#我是如何开始使用 nix 的":[30,48],"###nix 为何引人关注?#我是如何开始使用 nix 的#{1}":[32,33],"###nix 为何引人关注?#我是如何开始使用 nix 的#{2}":[34,34],"###nix 为何引人关注?#我是如何开始使用 nix 的#{3}":[35,35],"###nix 为何引人关注?#我是如何开始使用 nix 的#{4}":[36,36],"###nix 为何引人关注?#我是如何开始使用 nix 的#{5}":[37,38],"###nix 为何引人关注?#我是如何开始使用 nix 的#{6}":[39,42],"###nix 为何引人关注?#我是如何开始使用 nix 的#{7}":[43,44],"###nix 为何引人关注?#我是如何开始使用 nix 的#{8}":[45,48],"###nix 为何引人关注?#一些我没有使用的 nix 功能":[49,60],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{1}":[51,52],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{2}":[53,53],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{3}":[54,54],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{4}":[55,55],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{5}":[56,56],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{6}":[57,58],"###nix 为何引人关注?#一些我没有使用的 nix 功能#{7}":[59,60],"###安装软件包":[61,122],"###安装软件包#nix 包在哪里定义的?":[63,76],"###安装软件包#nix 包在哪里定义的?#{1}":[65,68],"###安装软件包#nix 包在哪里定义的?#{2}":[69,69],"###安装软件包#nix 包在哪里定义的?#{3}":[70,71],"###安装软件包#nix 包在哪里定义的?#{4}":[72,73],"###安装软件包#nix 包在哪里定义的?#{5}":[74,74],"###安装软件包#nix 包在哪里定义的?#{6}":[75,76],"###安装软件包#所有的东西都是通过符号链接来安装的":[77,87],"###安装软件包#所有的东西都是通过符号链接来安装的#{1}":[79,80],"###安装软件包#所有的东西都是通过符号链接来安装的#{2}":[81,81],"###安装软件包#所有的东西都是通过符号链接来安装的#{3}":[82,83],"###安装软件包#所有的东西都是通过符号链接来安装的#{4}":[84,87],"###安装软件包#卸载包并不意味着删除它们":[88,107],"###安装软件包#卸载包并不意味着删除它们#{1}":[90,91],"###安装软件包#卸载包并不意味着删除它们#{2}":[92,93],"###安装软件包#卸载包并不意味着删除它们#{3}":[94,95],"###安装软件包#卸载包并不意味着删除它们#{4}":[96,96],"###安装软件包#卸载包并不意味着删除它们#{5}":[97,97],"###安装软件包#卸载包并不意味着删除它们#{6}":[98,99],"###安装软件包#卸载包并不意味着删除它们#{7}":[100,103],"###安装软件包#卸载包并不意味着删除它们#{8}":[104,105],"###安装软件包#卸载包并不意味着删除它们#{9}":[106,107],"###安装软件包#升级过程":[108,122],"###安装软件包#升级过程#{1}":[110,111],"###安装软件包#升级过程#{2}":[112,112],"###安装软件包#升级过程#{3}":[113,114],"###安装软件包#升级过程#{4}":[115,118],"###安装软件包#升级过程#{5}":[119,120],"###安装软件包#升级过程#{6}":[121,122],"###下一个目标:创建名为 paperjam 的自定义包":[123,199],"###下一个目标:创建名为 paperjam 的自定义包#{1}":[125,130],"###下一个目标:创建名为 paperjam 的自定义包#构建示例包的步骤":[131,150],"###下一个目标:创建名为 paperjam 的自定义包#构建示例包的步骤#{1}":[133,136],"###下一个目标:创建名为 paperjam 的自定义包#构建示例包的步骤#{2}":[137,138],"###下一个目标:创建名为 paperjam 的自定义包#构建示例包的步骤#{3}":[139,150],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程":[151,199],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{1}":[153,156],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{2}":[157,158],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{3}":[159,159],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{4}":[160,160],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{5}":[161,162],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{6}":[163,163],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{7}":[164,164],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{8}":[165,165],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{9}":[166,166],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{10}":[167,167],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{11}":[168,169],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{12}":[170,171],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{13}":[172,172],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{14}":[173,173],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{15}":[174,174],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{16}":[175,175],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{17}":[176,176],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{18}":[177,177],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{19}":[178,179],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{20}":[180,185],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{21}":[186,186],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{22}":[187,188],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{23}":[189,194],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{24}":[195,195],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{25}":[196,197],"###下一个目标:创建名为 paperjam 的自定义包#制作自定义包的过程#{26}":[198,199],"###下一个目标:安装一个五年前的 Hugo 版本":[200,242],"###下一个目标:安装一个五年前的 Hugo 版本#{1}":[202,209],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本":[210,242],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{1}":[212,223],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{2}":[224,224],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{3}":[225,226],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{4}":[227,230],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{5}":[231,231],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{6}":[232,232],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{7}":[233,234],"###下一个目标:安装一个五年前的 Hugo 版本#使用 nix 安装 Hugo 0.40 版本#{8}":[235,242],"###可重复的构建过程并非神秘,其实它们极其复杂":[243,246],"###可重复的构建过程并非神秘,其实它们极其复杂#{1}":[245,246],"###总结":[247,263],"###总结#{1}":[249,263]},"outlinks":[{"title":"nix","target":"https://nixos.org/","line":6},{"title":"paperjam","target":"https://mj.ucw.cz/sw/paperjam/","line":11},{"title":"hugo","target":"https://github.com/gohugoio/hugo/","line":12},{"title":"https://cache.nixos.org/","target":"https://cache.nixos.org/","line":20},{"title":"zero-to-nix.com","target":"http://zero-to-nix.com/","line":34},{"title":"官方安装程序","target":"https://nixos.org/download","line":34},{"title":"教程","target":"https://nixos.org/manual/nix/stable/installation/installing-binary.html#macos","line":34},{"title":"非官方安装程序","target":"https://zero-to-nix.com/concepts/nix-installer","line":34},{"title":"https://cache.nixos.org","target":"https://cache.nixos.org/","line":45},{"title":"nix-shell","target":"https://nixos.org/guides/nix-pills/developing-with-nix-shell.html","line":54},{"title":"nix flakes","target":"https://nixos.wiki/wiki/Flakes","line":55},{"title":"home-manager","target":"https://github.com/nix-community/home-manager","line":56},{"title":"devenv.sh","target":"https://devenv.sh/","line":57},{"title":"https://github.com/NixOS/nixpkgs/","target":"https://github.com/NixOS/nixpkgs/","line":65},{"title":"https://search.nixos.org/packages","target":"https://search.nixos.org/packages","line":67},{"title":"这篇文章","target":"https://ianthehenry.com/posts/how-to-learn-nix/my-first-package-upgrade/","line":121},{"title":"paperjam","target":"https://mj.ucw.cz/sw/paperjam/","line":125},{"title":"https://github.com/NixOS/nixpkgs/","target":"https://github.com/NixOS/nixpkgs/","line":133},{"title":"nixpkgs","target":"https://github.com/NixOS/nixpkgs/","line":135},{"title":"nixpkgs","target":"https://github.com/NixOS/nixpkgs/","line":155},{"title":"nix 包","target":"https://github.com/jvns/nixpkgs/blob/22b70a48a797538c76b04261b3043165896d8f69/paperjam.nix","line":184},{"title":"发布页面","target":"https://github.com/gohugoio/hugo/releases/tag/v0.40","line":202},{"title":"搜索和安装旧版本的 Nix 包","target":"https://lazamar.github.io/download-specific-package-version-with-nix/","line":212},{"title":"https://github.com/NixOS/nixpkgs/blob/17b2ef2/pkgs/applications/misc/hugo/default.nix","target":"https://github.com/NixOS/nixpkgs/blob/17b2ef2/pkgs/applications/misc/hugo/default.nix","line":216},{"title":"nixpkgs 仓库","target":"https://github.com/jvns/nixpkgs/","line":241},{"title":"https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/","target":"https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/","line":259},{"title":"lkxed","target":"https://github.com/lkxed/","line":261},{"title":"wxy","target":"https://github.com/wxy","line":261},{"title":"Julia Evans","target":"https://jvns.ca/","line":261},{"title":"ChatGPT","target":"https://linux.cn/lctt/ChatGPT","line":261},{"title":"LCTT","target":"https://github.com/LCTT/TranslateProject","line":263},{"title":"Linux中国","target":"https://linux.cn/article-16332-1.html","line":263}],"metadata":{"page-title":"技术|我的一些 nix 学习经验:安装和打包","url":"https://linux.cn/article-16332-1.html","date":"2024-10-25 11:23:58"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_10_权限校验__Nacos_官网_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_10_权限校验__Nacos_官网_md.ajson deleted file mode 100644 index 373d9ff..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_10_权限校验__Nacos_官网_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/10/权限校验 Nacos 官网.md": {"path":"000-inbox/clippings/2024/10/权限校验 Nacos 官网.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"igx3vl","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1730361559000,"size":11501,"at":1766986878957,"hash":"igx3vl"},"blocks":{"#---frontmatter---":[1,5],"#":[6,13],"##鉴权":[14,15],"##相关参数":[16,29],"##相关参数#{1}":[18,29],"##默认控制台登录页":[30,35],"##默认控制台登录页#{1}":[32,35],"##服务端如何开启鉴权":[36,120],"##服务端如何开启鉴权#非Docker环境":[38,75],"##服务端如何开启鉴权#非Docker环境#{1}":[40,53],"##服务端如何开启鉴权#非Docker环境#自定义密钥":[54,75],"##服务端如何开启鉴权#非Docker环境#自定义密钥#{1}":[56,75],"##服务端如何开启鉴权#Docker环境":[76,120],"##服务端如何开启鉴权#Docker环境#官方镜像":[78,102],"##服务端如何开启鉴权#Docker环境#官方镜像#{1}":[80,102],"##服务端如何开启鉴权#Docker环境#自定义镜像":[103,120],"##服务端如何开启鉴权#Docker环境#自定义镜像#{1}":[105,120],"##客户端如何进行鉴权":[121,164],"##客户端如何进行鉴权#Java SDK鉴权":[123,136],"##客户端如何进行鉴权#Java SDK鉴权#{1}":[125,130],"##客户端如何进行鉴权#Java SDK鉴权#示例代码":[131,136],"##客户端如何进行鉴权#Java SDK鉴权#示例代码#{1}":[133,136],"##客户端如何进行鉴权#其他语言的SDK鉴权":[137,140],"##客户端如何进行鉴权#其他语言的SDK鉴权#{1}":[139,140],"##客户端如何进行鉴权#Open-API鉴权":[141,164],"##客户端如何进行鉴权#Open-API鉴权#{1}":[143,164],"##开启Token缓存功能":[165,192],"##开启Token缓存功能#{1}":[167,172],"##开启Token缓存功能##背景":[173,176],"##开启Token缓存功能##背景#{1}":[175,176],"##开启Token缓存功能##开启方式":[177,182],"##开启Token缓存功能##开启方式#{1}":[179,182],"##开启Token缓存功能##注意事项":[183,192],"##开启Token缓存功能##注意事项#{1}":[185,192],"##开启服务身份识别功能":[193,209],"##开启服务身份识别功能#{1}":[195,206],"##开启服务身份识别功能#旧版本升级":[207,209],"##开启服务身份识别功能#旧版本升级#{1}":[209,209]},"outlinks":[{"title":"运维手册-鉴权手册","target":"https://nacos.io/docs/latest/manual/admin/auth/","line":6},{"title":"用户手册-配置鉴权信息","target":"https://nacos.io/docs/latest/manual/user/auth/","line":6},{"title":"自定义插件开发","target":"https://nacos.io/docs/latest/plugin/auth-plugin/","line":12},{"title":"控制台手册-关闭登录功能","target":"https://nacos.io/docs/latest/guide/admin/console-guide/#1.1","line":34},{"title":"Nacos鉴权插件-服务端插件","target":"https://nacos.io/docs/latest/plugin/auth-plugin/","line":34}],"metadata":{"page-title":"权限校验 | Nacos 官网","url":"https://nacos.io/docs/latest/guide/user/auth/","date":"2024-10-31 15:59:17"},"task_lines":[],"tasks":{},"codeblock_ranges":[[44,46],[50,52],[64,66],[70,72],[84,86],[99,101],[109,111],[115,117],[127,129],[133,135],[145,147],[151,153],[157,159],[161,163],[169,171],[179,181],[187,189],[201,203]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_11_Docker学习笔记_14_docker应用_-_部署ORACLE_11g单实例数据库_md__一个DBA的工作学习笔记_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_11_Docker学习笔记_14_docker应用_-_部署ORACLE_11g单实例数据库_md__一个DBA的工作学习笔记_md.ajson deleted file mode 100644 index 69cafe6..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_11_Docker学习笔记_14_docker应用_-_部署ORACLE_11g单实例数据库_md__一个DBA的工作学习笔记_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/11/Docker学习笔记_14 docker应用 - 部署ORACLE 11g单实例数据库.md 一个DBA的工作学习笔记.md": {"path":"000-inbox/clippings/2024/11/Docker学习笔记_14 docker应用 - 部署ORACLE 11g单实例数据库.md 一个DBA的工作学习笔记.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"v3xday","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1732090617000,"size":28588,"at":1766986878957,"hash":"v3xday"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Docker学习笔记\\_14 docker应用 - 部署ORACLE 11g单实例数据库.md":[11,12],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E4%B8%8B%E8%BD%BD%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%9F%BA%E9%95%9C%E5%83%8F \"下载操作系统基镜像\")下载操作系统基镜像":[13,21],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E4%B8%8B%E8%BD%BD%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%9F%BA%E9%95%9C%E5%83%8F \"下载操作系统基镜像\")下载操作系统基镜像#{1}":[15,21],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#BUILD%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BD%AF%E4%BB%B6%E9%95%9C%E5%83%8F \"BUILD数据库软件镜像\")BUILD数据库软件镜像":[22,131],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#BUILD%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BD%AF%E4%BB%B6%E9%95%9C%E5%83%8F \"BUILD数据库软件镜像\")BUILD数据库软件镜像#{1}":[24,131],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#PSU \"PSU\")PSU":[132,186],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#PSU \"PSU\")PSU#{1}":[134,186],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%AE%89%E8%A3%85%E6%95%B0%E6%8D%AE%E5%BA%93 \"安装数据库\")安装数据库":[187,226],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%AE%89%E8%A3%85%E6%95%B0%E6%8D%AE%E5%BA%93 \"安装数据库\")安装数据库#{1}":[189,226],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%90%AF%E6%9C%BA%E5%90%8E%E6%95%B0%E6%8D%AE%E5%BA%93%E8%87%AA%E8%A1%8C%E5%90%AF%E5%8A%A8 \"启机后数据库自行启动\")启机后数据库自行启动":[227,357],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%90%AF%E6%9C%BA%E5%90%8E%E6%95%B0%E6%8D%AE%E5%BA%93%E8%87%AA%E8%A1%8C%E5%90%AF%E5%8A%A8 \"启机后数据库自行启动\")启机后数据库自行启动#{1}":[229,357],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E9%83%A8%E7%BD%B2ORACLE%E6%9C%8D%E5%8A%A1 \"部署ORACLE服务\")部署ORACLE服务":[358,411],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E9%83%A8%E7%BD%B2ORACLE%E6%9C%8D%E5%8A%A1 \"部署ORACLE服务\")部署ORACLE服务#{1}":[360,360],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E9%83%A8%E7%BD%B2ORACLE%E6%9C%8D%E5%8A%A1 \"部署ORACLE服务\")部署ORACLE服务#{2}":[361,361],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E9%83%A8%E7%BD%B2ORACLE%E6%9C%8D%E5%8A%A1 \"部署ORACLE服务\")部署ORACLE服务#{3}":[362,363],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E9%83%A8%E7%BD%B2ORACLE%E6%9C%8D%E5%8A%A1 \"部署ORACLE服务\")部署ORACLE服务#{4}":[364,411],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%8F%82%E8%80%83 \"参考\")参考":[412,426],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%8F%82%E8%80%83 \"参考\")参考#{1}":[414,414],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%8F%82%E8%80%83 \"参考\")参考#{2}":[415,415],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%8F%82%E8%80%83 \"参考\")参考#{3}":[416,417],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%8F%82%E8%80%83 \"参考\")参考#{4}":[418,426],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#expect%E7%9A%84%E7%94%A8%E6%B3%95%E7%A4%BA%E4%BE%8B \"expect的用法示例\")expect的用法示例":[427,456],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#expect%E7%9A%84%E7%94%A8%E6%B3%95%E7%A4%BA%E4%BE%8B \"expect的用法示例\")expect的用法示例#{1}":[429,456],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile":[457,583],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%88%B6%E4%BD%9C%E9%95%9C%E5%83%8F \"制作镜像\")制作镜像":[459,548],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E5%88%B6%E4%BD%9C%E9%95%9C%E5%83%8F \"制作镜像\")制作镜像#{1}":[461,548],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%B7%BB%E5%8A%A0%E5%88%B0rancher%E4%B8%AD \"添加到rancher中\")添加到rancher中":[549,583],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%B7%BB%E5%8A%A0%E5%88%B0rancher%E4%B8%AD \"添加到rancher中\")添加到rancher中#{1}":[551,551],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%B7%BB%E5%8A%A0%E5%88%B0rancher%E4%B8%AD \"添加到rancher中\")添加到rancher中#{2}":[552,552],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%B7%BB%E5%8A%A0%E5%88%B0rancher%E4%B8%AD \"添加到rancher中\")添加到rancher中#{3}":[553,554],"##[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%95%B4%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AAdockerfile \"整合成一个dockerfile\")整合成一个dockerfile#[](http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/#%E6%B7%BB%E5%8A%A0%E5%88%B0rancher%E4%B8%AD \"添加到rancher中\")添加到rancher中#{4}":[555,583]},"outlinks":[{"title":"https://segmentfault.com/q/1010000002888521","target":"https://segmentfault.com/q/1010000002888521","line":396},{"title":"基于Oracle Linux 7.5实现了Oracle Database 11gR2 企业版容器化运行","target":"https://gitee.com/rancococ-code/docker-oracle11g","line":414},{"title":"利用Docker建立Oracle 11g实验环境","target":"https://zhangjoto.github.io/li-yong-dockerjian-li-oracle-11gshi-yan-huan-jing.html","line":415}],"metadata":{"page-title":"Docker学习笔记_14 docker应用 - 部署ORACLE 11g单实例数据库.md | 一个DBA的工作学习笔记","url":"http://dbase.cc/2018/09/19/docker/14_docker%E5%BA%94%E7%94%A8-%E9%83%A8%E7%BD%B2ORACLE-11g%E5%8D%95%E5%AE%9E%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%BA%93/","date":"2024-11-20 16:16:55"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_11_MySQL_Change_a_User_Password_Command_Tutorial_-_nixCraft_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_11_MySQL_Change_a_User_Password_Command_Tutorial_-_nixCraft_md.ajson deleted file mode 100644 index f7fe1a9..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_11_MySQL_Change_a_User_Password_Command_Tutorial_-_nixCraft_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/11/MySQL Change a User Password Command Tutorial - nixCraft.md": {"path":"000-inbox/clippings/2024/11/MySQL Change a User Password Command Tutorial - nixCraft.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"15n21dt","at":1766986878408},"class_name":"SmartSource","last_import":{"mtime":1730443868793,"size":6666,"at":1766986878957,"hash":"15n21dt"},"blocks":{"#---frontmatter---":[1,5],"#":[7,25],"##How to change user password on mysql":[26,38],"##How to change user password on mysql#{1}":[28,29],"##How to change user password on mysql#{2}":[30,30],"##How to change user password on mysql#{3}":[31,31],"##How to change user password on mysql#{4}":[32,32],"##How to change user password on mysql#{5}":[33,33],"##How to change user password on mysql#{6}":[34,34],"##How to change user password on mysql#{7}":[35,38],"##mysql command to change a user password":[39,85],"##mysql command to change a user password#{1}":[41,46],"##mysql command to change a user password#{2}":[47,47],"##mysql command to change a user password#{3}":[48,48],"##mysql command to change a user password#{4}":[49,50],"##mysql command to change a user password#{5}":[51,85],"##Changing the MySQL root or user password using the mysqladmin command":[86,102],"##Changing the MySQL root or user password using the mysqladmin command#{1}":[88,91],"##Changing the MySQL root or user password using the mysqladmin command#{2}":[92,92],"##Changing the MySQL root or user password using the mysqladmin command#{3}":[93,93],"##Changing the MySQL root or user password using the mysqladmin command#{4}":[94,94],"##Changing the MySQL root or user password using the mysqladmin command#{5}":[95,96],"##Changing the MySQL root or user password using the mysqladmin command#Verify the new password settings":[97,102],"##Changing the MySQL root or user password using the mysqladmin command#Verify the new password settings#{1}":[99,102],"##Sample session":[103,108],"##Sample session#{1}":[105,108],"##Summing up":[109,119],"##Summing up#{1}":[111,119]},"outlinks":[{"title":"![See all MySQL Database Server related FAQ","target":"https://www.cyberciti.biz/media/new/category/old/mysqllogo.gif","line":11},{"title":"Easy","target":"https://www.cyberciti.biz/faq/tag/easy/ \"See all Easy Linux / Unix System Administrator Tutorials\"","line":19},{"title":"Database Server","target":"https://www.cyberciti.biz/faq/mysql-change-user-password/#Database_Server \"See ALL other tutorials in 'Database Server' category\"","line":22},{"title":"Linux","target":"https://www.cyberciti.biz/faq/category/linux/ \"See all Linux distributions tutorials\"","line":23},{"title":"macOS","target":"https://www.cyberciti.biz/faq/category/mac-os-x/ \"See all macOS (OS X","line":23},{"title":"Unix","target":"https://www.cyberciti.biz/faq/category/unix/ \"See all Unix tutorials\"","line":23},{"title":"Windows","target":"https://www.cyberciti.biz/faq/category/windows/ \"See all MS Windows OS compatible tutorials\"","line":23},{"title":"![Fig.01: Mysql Updating / Changing password (click to enlarge)","target":"https://www.cyberciti.biz/media/new/faq/2007/07/mysql-update-password-300x232.png \"HowTo: Mysql Update Password SQL Command\"","line":105},{"title":"\\--help option","target":"https://bash.cyberciti.biz/guide/Help_command \"help command - Linux Bash Shell Scripting Tutorial Wiki\"","line":111},{"title":"man command","target":"https://bash.cyberciti.biz/guide/Man_command \"Man command - Linux Bash Shell Scripting Tutorial Wiki\"","line":111},{"title":"a comment to show your appreciation or feedback","target":"https://www.cyberciti.biz/faq/mysql-change-user-password/#respond \"Please add your comment below ↓ to show your appreciation or feedback to the author\"","line":114},{"title":"nixCrat Tux Pixel Penguin","target":"https://www.cyberciti.biz/media/new/cms/2024/04/tux_96.png","line":116,"embedded":true},{"title":"email newsletter","target":"https://newsletter.cyberciti.com/subscription?f=1ojtmiv8892KQzyMsTF4YPr1pPSAhX2rq7Qfe5DiHMgXwKo892di4MTWyOdd976343rcNR6LhdG1f7k9H8929kMNMdWu3g \"Get nixCraft updates using Email\"","line":119},{"title":"about","target":"https://www.cyberciti.biz/tips/about-us \"About the author and nixCraft\"","line":119},{"title":"RSS feed","target":"https://www.cyberciti.com/atom/atom.xml \"Get nixCraft updates using RSS feed\"","line":119}],"metadata":{"page-title":"MySQL Change a User Password Command Tutorial - nixCraft","url":"https://www.cyberciti.biz/faq/mysql-change-user-password/","date":"2024-11-01 14:51:07"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_11_Percona_XtraDB_setup_-_Jite_eu_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_11_Percona_XtraDB_setup_-_Jite_eu_md.ajson deleted file mode 100644 index b24f827..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_11_Percona_XtraDB_setup_-_Jite_eu_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/11/Percona XtraDB setup - Jite.eu.md": {"path":"000-inbox/clippings/2024/11/Percona XtraDB setup - Jite.eu.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5dzy0x","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1732617145000,"size":29243,"at":1766986878957,"hash":"5dzy0x"},"blocks":{"#---frontmatter---":[1,5],"#":[6,17],"##Prerequisites[Permalink](https://jite.eu/2023/12/7/percona-setup/#prerequisites \"Permalink\")":[18,22],"##Prerequisites[Permalink](https://jite.eu/2023/12/7/percona-setup/#prerequisites \"Permalink\")#{1}":[20,22],"##Helm installation[Permalink](https://jite.eu/2023/12/7/percona-setup/#helm-installation \"Permalink\")":[23,89],"##Helm installation[Permalink](https://jite.eu/2023/12/7/percona-setup/#helm-installation \"Permalink\")#{1}":[25,72],"##Helm installation[Permalink](https://jite.eu/2023/12/7/percona-setup/#helm-installation \"Permalink\")#Multi Arch clusters[Permalink](https://jite.eu/2023/12/7/percona-setup/#multi-arch-clusters \"Permalink\")":[73,89],"##Helm installation[Permalink](https://jite.eu/2023/12/7/percona-setup/#helm-installation \"Permalink\")#Multi Arch clusters[Permalink](https://jite.eu/2023/12/7/percona-setup/#multi-arch-clusters \"Permalink\")#{1}":[75,89],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")":[90,382],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{1}":[92,114],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{2}":[115,115],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{3}":[116,116],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{4}":[117,117],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{5}":[118,119],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#{6}":[120,122],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")":[123,280],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{1}":[125,127],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{2}":[128,128],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{3}":[129,129],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{4}":[130,130],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{5}":[131,131],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{6}":[132,132],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{7}":[133,133],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{8}":[134,134],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#{9}":[135,136],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#TLS[Permalink](https://jite.eu/2023/12/7/percona-setup/#tls \"Permalink\")":[137,140],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#TLS[Permalink](https://jite.eu/2023/12/7/percona-setup/#tls \"Permalink\")#{1}":[139,140],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#UpgradeOptions[Permalink](https://jite.eu/2023/12/7/percona-setup/#upgradeoptions \"Permalink\")":[141,163],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#UpgradeOptions[Permalink](https://jite.eu/2023/12/7/percona-setup/#upgradeoptions \"Permalink\")#{1}":[143,163],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")":[164,229],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")#{1}":[166,210],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")#Environment variables[Permalink](https://jite.eu/2023/12/7/percona-setup/#environment-variables \"Permalink\")":[211,216],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")#Environment variables[Permalink](https://jite.eu/2023/12/7/percona-setup/#environment-variables \"Permalink\")#{1}":[213,216],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")#Configuration[Permalink](https://jite.eu/2023/12/7/percona-setup/#configuration \"Permalink\")":[217,229],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#pxc[Permalink](https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\")#Configuration[Permalink](https://jite.eu/2023/12/7/percona-setup/#configuration \"Permalink\")#{1}":[219,229],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#HAProxy and ProxySQL[Permalink](https://jite.eu/2023/12/7/percona-setup/#haproxy-and-proxysql \"Permalink\")":[230,280],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Sepc[Permalink](https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\")#HAProxy and ProxySQL[Permalink](https://jite.eu/2023/12/7/percona-setup/#haproxy-and-proxysql \"Permalink\")#{1}":[232,280],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#LogCollector[Permalink](https://jite.eu/2023/12/7/percona-setup/#logcollector \"Permalink\")":[281,302],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#LogCollector[Permalink](https://jite.eu/2023/12/7/percona-setup/#logcollector \"Permalink\")#{1}":[283,302],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#PPM (Monitoring)[Permalink](https://jite.eu/2023/12/7/percona-setup/#ppm-monitoring \"Permalink\")":[303,308],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#PPM (Monitoring)[Permalink](https://jite.eu/2023/12/7/percona-setup/#ppm-monitoring \"Permalink\")#{1}":[305,308],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")":[309,382],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")#{1}":[311,359],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")##Point in time[Permalink](https://jite.eu/2023/12/7/percona-setup/#point-in-time \"Permalink\")":[360,375],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")##Point in time[Permalink](https://jite.eu/2023/12/7/percona-setup/#point-in-time \"Permalink\")#{1}":[362,375],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")#Restoring a backup[Permalink](https://jite.eu/2023/12/7/percona-setup/#restoring-a-backup \"Permalink\")":[376,382],"##Percona xtradb CRD:s[Permalink](https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\")#Backups[Permalink](https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\")#Restoring a backup[Permalink](https://jite.eu/2023/12/7/percona-setup/#restoring-a-backup \"Permalink\")#{1}":[378,382],"##The full chart[Permalink](https://jite.eu/2023/12/7/percona-setup/#the-full-chart \"Permalink\")":[383,511],"##The full chart[Permalink](https://jite.eu/2023/12/7/percona-setup/#the-full-chart \"Permalink\")#{1}":[385,511],"##Accessing the database[Permalink](https://jite.eu/2023/12/7/percona-setup/#accessing-the-database \"Permalink\")":[512,526],"##Accessing the database[Permalink](https://jite.eu/2023/12/7/percona-setup/#accessing-the-database \"Permalink\")#{1}":[514,526],"##Final words[Permalink](https://jite.eu/2023/12/7/percona-setup/#final-words \"Permalink\")":[527,531],"##Final words[Permalink](https://jite.eu/2023/12/7/percona-setup/#final-words \"Permalink\")#{1}":[529,531]},"outlinks":[{"title":"Civo Navigate","target":"https://jite.eu/2023/10/13/civo-navigate-eu/","line":7},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#prerequisites \"Permalink\"","line":18},{"title":"cert-manager doucmentation","target":"https://cert-manager.io/","line":21},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#helm-installation \"Permalink\"","line":23},{"title":"documentation here","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/index.html","line":28},{"title":"GitHub","target":"https://github.com/percona/percona-helm-charts/tree/main/charts/pxc-operator","line":41},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#multi-arch-clusters \"Permalink\"","line":73},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#percona-xtradb-crds \"Permalink\"","line":90},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#sepc \"Permalink\"","line":123},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#tls \"Permalink\"","line":137},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#upgradeoptions \"Permalink\"","line":141},{"title":"percona docs","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/update.html#automated-upgrade","line":160},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#pxc \"Permalink\"","line":164},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#environment-variables \"Permalink\"","line":211},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#configuration \"Permalink\"","line":217},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#haproxy-and-proxysql \"Permalink\"","line":230},{"title":"ProxySQL","target":"https://proxysql.com/","line":233},{"title":"HAProxy","target":"https://www.haproxy.org/","line":233},{"title":"documentation page","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/operator.html#haproxy-section","line":279},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#logcollector \"Permalink\"","line":281},{"title":"fluent bit","target":"https://fluentbit.io/","line":283},{"title":"documentation","target":"https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/configuration-file","line":301},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#ppm-monitoring \"Permalink\"","line":303},{"title":"here","target":"https://docs.percona.com/percona-monitoring-and-management/index.html","line":305},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#backups \"Permalink\"","line":309},{"title":"docs","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/operator.html#backup-section","line":358},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#point-in-time \"Permalink\"","line":360},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#restoring-a-backup \"Permalink\"","line":376},{"title":"“How to restore backup to a new kubernetes-based environment”","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/backups-restore-to-new-cluster.html","line":381},{"title":"Backup and restore","target":"https://docs.percona.com/percona-operator-for-mysql/pxc/backups.html","line":381},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#the-full-chart \"Permalink\"","line":383},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#accessing-the-database \"Permalink\"","line":512},{"title":"Permalink","target":"https://jite.eu/2023/12/7/percona-setup/#final-words \"Permalink\"","line":527}],"metadata":{"page-title":"Percona XtraDB setup - Jite.eu","url":"https://jite.eu/2023/12/7/percona-setup/","date":"2024-11-26 18:32:24"},"task_lines":[],"tasks":{},"codeblock_ranges":[[32,35],[55,57],[69,71],[77,80],[84,86],[104,110],[148,153],[169,194],[221,228],[239,266],[289,299],[315,349],[365,372],[387,476],[480,482],[487,508],[520,523]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_11_Running_Percona_XtraDB_Cluster_in_a_Docker_Container_-_Percona_XtraDB_Cluster_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_11_Running_Percona_XtraDB_Cluster_in_a_Docker_Container_-_Percona_XtraDB_Cluster_md.ajson deleted file mode 100644 index 5c33b2b..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_11_Running_Percona_XtraDB_Cluster_in_a_Docker_Container_-_Percona_XtraDB_Cluster_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/11/Running Percona XtraDB Cluster in a Docker Container - Percona XtraDB Cluster.md": {"path":"000-inbox/clippings/2024/11/Running Percona XtraDB Cluster in a Docker Container - Percona XtraDB Cluster.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ffq3pb","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1732590941000,"size":5689,"at":1766986878957,"hash":"ffq3pb"},"blocks":{"#---frontmatter---":[1,5],"#":[7,74],"##{1}":[29,30],"##{2}":[31,34],"##{3}":[35,38],"##{4}":[39,42],"##{5}":[43,46],"##{6}":[47,50],"##{7}":[51,57],"##{8}":[58,65],"##{9}":[66,74],"##Get expert help[¶](https://docs.percona.com/percona-xtradb-cluster/8.0/docker.html#get-expert-help \"Permanent link\")":[75,81],"##Get expert help[¶](https://docs.percona.com/percona-xtradb-cluster/8.0/docker.html#get-expert-help \"Permanent link\")#{1}":[77,81]},"outlinks":[{"title":"https://hub.docker.com/r/percona/percona-xtradb-cluster/","target":"https://hub.docker.com/r/percona/percona-xtradb-cluster/","line":13},{"title":"Docker Docs","target":"https://docs.docker.com/","line":15},{"title":"Telemetry data","target":"https://docs.percona.com/percona-xtradb-cluster/8.0/telemetry.html","line":17},{"title":"¶","target":"https://docs.percona.com/percona-xtradb-cluster/8.0/docker.html#get-expert-help \"Permanent link\"","line":75}],"metadata":{"page-title":"Running Percona XtraDB Cluster in a Docker Container - Percona XtraDB Cluster","url":"https://docs.percona.com/percona-xtradb-cluster/8.0/docker.html","date":"2024-11-26 11:15:40"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_AlexxITSonoffLAN_Control_Sonoff_Devices_with_eWeLink_(original)_firmware_over_LAN_andor_Cloud_from_Home_Assistant_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_AlexxITSonoffLAN_Control_Sonoff_Devices_with_eWeLink_(original)_firmware_over_LAN_andor_Cloud_from_Home_Assistant_md.ajson deleted file mode 100644 index c3c55b7..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_AlexxITSonoffLAN_Control_Sonoff_Devices_with_eWeLink_(original)_firmware_over_LAN_andor_Cloud_from_Home_Assistant_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/AlexxITSonoffLAN Control Sonoff Devices with eWeLink (original) firmware over LAN andor Cloud from Home Assistant.md": {"path":"000-inbox/clippings/2024/12/AlexxITSonoffLAN Control Sonoff Devices with eWeLink (original) firmware over LAN andor Cloud from Home Assistant.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x5gpd5","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733909725099,"size":26148,"at":1766986878957,"hash":"x5gpd5"},"blocks":{"#---frontmatter---":[1,5],"##Control Sonoff Devices from Home Assistant":[6,56],"##Control Sonoff Devices from Home Assistant#{1}":[8,15],"##Control Sonoff Devices from Home Assistant#{2}":[16,16],"##Control Sonoff Devices from Home Assistant#{3}":[17,17],"##Control Sonoff Devices from Home Assistant#{4}":[18,18],"##Control Sonoff Devices from Home Assistant#{5}":[19,19],"##Control Sonoff Devices from Home Assistant#{6}":[20,20],"##Control Sonoff Devices from Home Assistant#{7}":[21,21],"##Control Sonoff Devices from Home Assistant#{8}":[22,23],"##Control Sonoff Devices from Home Assistant#{9}":[24,25],"##Control Sonoff Devices from Home Assistant#{10}":[26,26],"##Control Sonoff Devices from Home Assistant#{11}":[27,27],"##Control Sonoff Devices from Home Assistant#{12}":[28,28],"##Control Sonoff Devices from Home Assistant#{13}":[29,29],"##Control Sonoff Devices from Home Assistant#{14}":[30,30],"##Control Sonoff Devices from Home Assistant#{15}":[31,31],"##Control Sonoff Devices from Home Assistant#{16}":[32,32],"##Control Sonoff Devices from Home Assistant#{17}":[33,34],"##Control Sonoff Devices from Home Assistant#{18}":[35,36],"##Control Sonoff Devices from Home Assistant#{19}":[37,37],"##Control Sonoff Devices from Home Assistant#{20}":[38,38],"##Control Sonoff Devices from Home Assistant#{21}":[39,39],"##Control Sonoff Devices from Home Assistant#{22}":[40,40],"##Control Sonoff Devices from Home Assistant#{23}":[41,41],"##Control Sonoff Devices from Home Assistant#{24}":[42,42],"##Control Sonoff Devices from Home Assistant#{25}":[43,43],"##Control Sonoff Devices from Home Assistant#{26}":[44,44],"##Control Sonoff Devices from Home Assistant#{27}":[45,45],"##Control Sonoff Devices from Home Assistant#{28}":[46,46],"##Control Sonoff Devices from Home Assistant#{29}":[47,48],"##Control Sonoff Devices from Home Assistant#{30}":[49,56],"##Tested Devices":[57,127],"##Tested Devices#{1}":[59,66],"##Tested Devices#{2}":[67,67],"##Tested Devices#{3}":[68,68],"##Tested Devices#{4}":[69,69],"##Tested Devices#{5}":[70,70],"##Tested Devices#{6}":[71,71],"##Tested Devices#{7}":[72,72],"##Tested Devices#{8}":[73,73],"##Tested Devices#{9}":[74,74],"##Tested Devices#{10}":[75,75],"##Tested Devices#{11}":[76,76],"##Tested Devices#{12}":[77,77],"##Tested Devices#{13}":[78,78],"##Tested Devices#{14}":[79,79],"##Tested Devices#{15}":[80,80],"##Tested Devices#{16}":[81,81],"##Tested Devices#{17}":[82,82],"##Tested Devices#{18}":[83,83],"##Tested Devices#{19}":[84,84],"##Tested Devices#{20}":[85,85],"##Tested Devices#{21}":[86,86],"##Tested Devices#{22}":[87,87],"##Tested Devices#{23}":[88,88],"##Tested Devices#{24}":[89,89],"##Tested Devices#{25}":[90,90],"##Tested Devices#{26}":[91,92],"##Tested Devices#{27}":[93,96],"##Tested Devices#{28}":[97,97],"##Tested Devices#{29}":[98,98],"##Tested Devices#{30}":[99,99],"##Tested Devices#{31}":[100,100],"##Tested Devices#{32}":[101,101],"##Tested Devices#{33}":[102,102],"##Tested Devices#{34}":[103,103],"##Tested Devices#{35}":[104,104],"##Tested Devices#{36}":[105,105],"##Tested Devices#{37}":[106,106],"##Tested Devices#{38}":[107,107],"##Tested Devices#{39}":[108,108],"##Tested Devices#{40}":[109,109],"##Tested Devices#{41}":[110,110],"##Tested Devices#{42}":[111,112],"##Tested Devices#{43}":[113,114],"##Tested Devices#{44}":[115,115],"##Tested Devices#{45}":[116,116],"##Tested Devices#{46}":[117,117],"##Tested Devices#{47}":[118,118],"##Tested Devices#{48}":[119,120],"##Tested Devices#{49}":[121,124],"##Tested Devices#{50}":[125,125],"##Tested Devices#{51}":[126,127],"##Installation":[128,135],"##Installation#{1}":[130,135],"##Configuration":[136,150],"##Configuration#{1}":[138,147],"##Configuration#{2}":[148,148],"##Configuration#{3}":[149,150],"##Issues":[151,167],"##Issues#{1}":[153,156],"##Issues#{2}":[157,157],"##Issues#{3}":[158,158],"##Issues#{4}":[159,159],"##Issues#{5}":[160,160],"##Issues#{6}":[161,162],"##Issues#{7}":[163,163],"##Issues#{8}":[164,165],"##Issues#{9}":[166,167],"##Configuration UI":[168,211],"##Configuration UI#{1}":[170,173],"##Configuration UI#Mode":[174,193],"##Configuration UI#Mode#{1}":[176,193],"##Configuration UI#Debug page":[194,205],"##Configuration UI#Debug page#{1}":[196,205],"##Configuration UI#Homes":[206,211],"##Configuration UI#Homes#{1}":[208,211],"##Configuration YAML":[212,352],"##Configuration YAML#{1}":[214,219],"##Configuration YAML#Custom device\\_class":[220,291],"##Configuration YAML#Custom device\\_class#{1}":[222,291],"##Configuration YAML#Custom devices":[292,302],"##Configuration YAML#Custom devices#{1}":[294,302],"##Configuration YAML#Custom sensors":[303,311],"##Configuration YAML#Custom sensors#{1}":[305,311],"##Configuration YAML#Force update":[312,327],"##Configuration YAML#Force update#{1}":[314,327],"##Configuration YAML#Preventing DB size growth":[328,352],"##Configuration YAML#Preventing DB size growth#{1}":[330,343],"##Configuration YAML#Preventing DB size growth#{2}":[344,344],"##Configuration YAML#Preventing DB size growth#{3}":[345,347],"##Configuration YAML#Preventing DB size growth#{4}":[348,348],"##Configuration YAML#Preventing DB size growth#{5}":[349,349],"##Configuration YAML#Preventing DB size growth#{6}":[350,350],"##Configuration YAML#Preventing DB size growth#{7}":[351,352],"##Sonoff Pow":[353,383],"##Sonoff Pow#{1}":[355,383],"##Sonoff TH":[384,397],"##Sonoff TH#{1}":[386,389],"##Sonoff TH#{2}":[390,390],"##Sonoff TH#{3}":[391,391],"##Sonoff TH#{4}":[392,393],"##Sonoff TH#{5}":[394,397],"##Sonoff RF Bridge 433":[398,446],"##Sonoff RF Bridge 433#{1}":[400,446],"##Sonoff GK-200MP2-B Camera":[447,464],"##Sonoff GK-200MP2-B Camera#{1}":[449,464],"##Common problems in only LAN mode":[465,490],"##Common problems in only LAN mode#{1}":[467,472],"##Common problems in only LAN mode#{2}":[473,473],"##Common problems in only LAN mode#{3}":[474,474],"##Common problems in only LAN mode#{4}":[475,477],"##Common problems in only LAN mode#{5}":[478,479],"##Common problems in only LAN mode#{6}":[480,480],"##Common problems in only LAN mode#{7}":[481,481],"##Common problems in only LAN mode#{8}":[482,482],"##Common problems in only LAN mode#{9}":[483,484],"##Common problems in only LAN mode#{10}":[485,490],"##Raw commands":[491,514],"##Raw commands#{1}":[493,514],"##Getting devicekey manually":[515,526],"##Getting devicekey manually#{1}":[517,520],"##Getting devicekey manually#{2}":[521,521],"##Getting devicekey manually#{3}":[522,522],"##Getting devicekey manually#{4}":[523,523],"##Getting devicekey manually#{5}":[524,524],"##Getting devicekey manually#{6}":[525,526],"##Useful Links":[527,539],"##Useful Links#{1}":[529,530],"##Useful Links#{2}":[531,531],"##Useful Links#{3}":[532,532],"##Useful Links#{4}":[533,533],"##Useful Links#{5}":[534,534],"##Useful Links#{6}":[535,535],"##Useful Links#{7}":[536,536],"##Useful Links#{8}":[537,537],"##Useful Links#{9}":[538,538],"##Useful Links#{10}":[539,539]},"outlinks":[{"title":"![hacs_badge","target":"https://camo.githubusercontent.com/8f3b4deb8f6c11b8f563e6549a91e5af94b6241364792bc23d2d30578839ab0c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f484143532d44656661756c742d6f72616e67652e737667","line":10},{"title":"eWeLink","target":"https://www.ewelink.cc/en/","line":12},{"title":"Sonoff","target":"https://www.itead.cc/","line":12},{"title":"eWeLink API","target":"https://coolkit-technologies.github.io/eWeLink-API/#/en/PlatformOverview","line":17},{"title":"multiple eWeLink accounts","target":"https://github.com/AlexxIT/SonoffLAN#configuration","line":18},{"title":"homes","target":"https://github.com/AlexxIT/SonoffLAN#homes","line":18},{"title":"RFBridge","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-rf-bridge-433","line":19},{"title":"Sonoff TH","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-th","line":20},{"title":"preventing DB size growth","target":"https://github.com/AlexxIT/SonoffLAN#preventing-db-size-growth","line":21},{"title":"eWeLink cameras","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-gk-200mp2-b-camera","line":29},{"title":"RF Bridge 433","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-rf-bridge-433","line":31},{"title":"debug mode","target":"https://github.com/AlexxIT/SonoffLAN#debug-page","line":33},{"title":"RF Bridge 433","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-rf-bridge-433","line":43},{"title":"GK-200MP2-B Camera","target":"https://github.com/AlexxIT/SonoffLAN#sonoff-gk-200mp2-b-camera","line":44},{"title":"device type","target":"https://github.com/AlexxIT/SonoffLAN#custom-device_class","line":47},{"title":"![Sonoffs can work with Home Assistant without changing the Firmware!","target":"https://camo.githubusercontent.com/25e7e666c7de01be08e5722e82582176cd0a66c64e0798b05e6ac66ea04f1174/68747470733a2f2f696d672e796f75747562652e636f6d2f76692f447354714f6c725151316b2f6d7164656661756c742e6a7067","line":51},{"title":"@peterbuga","target":"https://github.com/peterbuga/HASS-sonoff-ewelink","line":53},{"title":"@beveradb","target":"https://github.com/beveradb/sonoff-lan-mode-homeassistant","line":55},{"title":"@EpicLPer","target":"https://github.com/EpicLPer","line":55},{"title":"@mattsaxon","target":"https://github.com/mattsaxon/sonoff-lan-mode-homeassistant","line":55},{"title":"@michthom","target":"https://github.com/michthom","line":55},{"title":"BASICR2","target":"https://itead.cc/product/sonoff-basicr2/","line":67},{"title":"BASICR3","target":"https://itead.cc/product/sonoff-basicr3-wifi-diy-smart-switch/","line":67},{"title":"RFR2","target":"https://itead.cc/product/sonoff-rf/","line":67},{"title":"RFR3","target":"https://itead.cc/product/sonoff-rfr3/","line":67},{"title":"Sonoff Mini/MINIR2","target":"https://itead.cc/product/sonoff-mini/","line":68},{"title":"MINI R3","target":"https://itead.cc/product/sonoff-minir3-smart-switch/","line":68},{"title":"Sonoff Micro","target":"https://itead.cc/product/sonoff-micro-5v-usb-smart-adaptor/","line":69},{"title":"Sonoff TH10/TH16","target":"https://itead.cc/product/sonoff-th/","line":70},{"title":"4CHR3 & 4CHPROR3","target":"https://itead.cc/product/sonoff-4ch-r3-pro-r3/","line":71},{"title":"POWR2","target":"https://itead.cc/product/sonoff-pow-r2/","line":72},{"title":"Sonoff DUALR3/DUALR3 Lite","target":"https://itead.cc/product/sonoff-dualr3/","line":73},{"title":"Sonoff RF Bridge 433","target":"https://www.itead.cc/sonoff-rf-bridge-433.html","line":74},{"title":"Sonoff D1","target":"https://www.itead.cc/sonoff-d1-smart-dimmer-switch.html","line":75},{"title":"Sonoff G1","target":"https://www.itead.cc/sonoff-g1.html","line":76},{"title":"Sonoff Dual","target":"https://www.itead.cc/sonoff-dual.html","line":77},{"title":"iFan04","target":"https://www.itead.cc/sonoff-ifan03-wifi-ceiling-fan-light-controller.html","line":78},{"title":"S40","target":"https://itead.cc/product/sonoff-iplug-series-wi-fi-smart-plug-s40-s40-lite/","line":79},{"title":"S26","target":"https://itead.cc/product/sonoff-s26-wifi-smart-plug/","line":79},{"title":"S31","target":"https://itead.cc/product/sonoff-s31/","line":79},{"title":"S55","target":"https://itead.cc/product/sonoff-s55/","line":79},{"title":"Sonoff SV","target":"https://www.itead.cc/sonoff-sv.html","line":80},{"title":"TX Series","target":"https://itead.cc/product/sonoff-tx-series-wifi-smart-wall-switches/","line":81},{"title":"Sonoff T4EU1C","target":"https://www.itead.cc/sonoff-t4eu1c-wi-fi-smart-single-wire-wall-switch.html","line":82},{"title":"Sonoff IW100/IW101","target":"https://www.itead.cc/sonoff-iw100-iw101.html","line":83},{"title":"Sonoff Slampher R2","target":"https://www.itead.cc/sonoff-slampher-r2.html","line":84},{"title":"Sonoff 5V DIY","target":"https://www.aliexpress.com/item/32818293817.html","line":85},{"title":"Sonoff RE5V1C","target":"https://www.itead.cc/sonoff-re5v1c.html","line":86},{"title":"Sonoff NSPanel","target":"https://itead.cc/product/sonoff-nspanel-smart-scene-wall-switch/","line":87},{"title":"MiniTiger Wall Switch","target":"https://www.aliexpress.com/item/33016227381.html","line":88},{"title":"link","target":"https://www.aliexpress.com/item/4000077475264.html","line":89},{"title":"link","target":"https://www.aliexpress.com/item/4000351300288.html","line":89},{"title":"Smart Circuit Breaker","target":"https://www.aliexpress.com/item/4000454408211.html","line":89},{"title":"Smart Timer Switch","target":"https://www.aliexpress.com/item/4000189016383.html","line":90},{"title":"Eachen WiFi Smart Touch","target":"https://ewelink.eachen.cc/product/eachen-single-live-wall-switch-us-ac-l123ewelink-app/","line":91},{"title":"Sonoff L1","target":"https://www.itead.cc/sonoff-l1-smart-led-light-strip.html","line":98},{"title":"Sonoff B1","target":"https://www.itead.cc/sonoff-b1.html","line":99},{"title":"Sonoff SC","target":"https://www.itead.cc/sonoff-sc.html","line":101},{"title":"Sonoff DW2","target":"https://www.itead.cc/sonoff-dw2.html","line":102},{"title":"Sonoff SwitchMan R5","target":"https://itead.cc/product/sonoff-switchman-scene-controller-r5/","line":103},{"title":"Sonoff S-MATE","target":"https://sonoff.tech/product/diy-smart-switch/s-mate/","line":104},{"title":"Sonoff S40","target":"https://itead.cc/product/sonoff-iplug-series-wi-fi-smart-plug-s40-s40-lite/","line":105},{"title":"King Art - King Q4 Cover","target":"https://www.aliexpress.com/item/32956776611.html","line":106},{"title":"KING-M4","target":"https://www.aliexpress.com/item/33013358523.html","line":107},{"title":"Eachen WiFi Door/Window Sensor","target":"https://ewelink.eachen.cc/product/eachen-wifi-smart-door-window-sensor-wdw-ewelink/","line":108},{"title":"Essential Oils Diffuser","target":"https://www.amazon.co.uk/dp/B07WF7MQ17","line":109},{"title":"Smart USB Mosquito Killer","target":"https://www.aliexpress.com/item/33037963105.html","line":110},{"title":"Smart Bulb RGB+CCT","target":"https://www.aliexpress.com/item/4000764330397.html","line":111},{"title":"Sonoff ZigBee Bridge","target":"https://www.itead.cc/sonoff-zbbridge.html","line":115},{"title":"Camera GK-100CD10B","target":"https://www.gearbest.com/smart-home-controls/pp_009678072743.html","line":125},{"title":"Sonoff GK-200MP2-B","target":"https://www.itead.cc/sonoff-gk-200mp2-b-wi-fi-wireless-ip-security-camera.html","line":126},{"title":"HACS","target":"https://hacs.xyz/","line":132},{"title":"latest release","target":"https://github.com/AlexxIT/SonoffLAN/releases/latest","line":134},{"title":"Sonoff","target":"https://my.home-assistant.io/redirect/config_flow_start/?domain=sonoff","line":140},{"title":"Integrations","target":"https://my.home-assistant.io/redirect/integrations/","line":140},{"title":"eWeLink addon","target":"https://www.ewelink.cc/en/2021/06/23/ewelink-home-assistant-add-on-github-archive/","line":148},{"title":"eWeLink mobile app v4+","target":"https://www.ewelink.cc/en/","line":149},{"title":"System Health page","target":"https://my.home-assistant.io/redirect/system_health","line":157},{"title":"Logs page","target":"https://my.home-assistant.io/redirect/logs/","line":158},{"title":"Debug page","target":"https://github.com/AlexxIT/SonoffLAN#debug-page","line":159},{"title":"issues","target":"https://github.com/AlexxIT/SonoffLAN/issues?q=is%3Aissue","line":160},{"title":"diagnostics","target":"https://www.home-assistant.io/integrations/diagnostics/","line":161},{"title":"Integrations","target":"https://my.home-assistant.io/redirect/integrations/","line":163},{"title":"Devices","target":"https://my.home-assistant.io/redirect/devices/","line":164},{"title":"Integrations","target":"https://my.home-assistant.io/redirect/integrations/","line":172},{"title":"common problems","target":"https://github.com/AlexxIT/SonoffLAN#common-problems-in-only-lan-mode","line":182},{"title":"zeroconf","target":"https://www.home-assistant.io/integrations/zeroconf/","line":182},{"title":"YAML","target":"https://www.home-assistant.io/docs/configuration/","line":216},{"title":"Binary Sensor","target":"https://www.home-assistant.io/integrations/binary_sensor/","line":271},{"title":"Cover","target":"https://www.home-assistant.io/integrations/cover/","line":278},{"title":"here","target":"https://github.com/AlexxIT/SonoffLAN/blob/master/custom_components/sonoff/core/devices.py","line":285},{"title":"integration sensor","target":"https://www.home-assistant.io/integrations/integration/#energy","line":375},{"title":"Climate","target":"https://www.home-assistant.io/integrations/climate/","line":388},{"title":"![Automatic Calls and Messages from Home Assistant, Sonoff RF Bridge and Smoke Detectors","target":"https://camo.githubusercontent.com/c22aa73e978ab81fcd41ef491b239563a4eece4682625532be1c24e7ef1cb909/68747470733a2f2f696d672e796f75747562652e636f6d2f76692f5144314b3773303163616b2f6d7164656661756c742e6a7067","line":406},{"title":"Binary sensor","target":"https://www.home-assistant.io/integrations/binary_sensor/","line":408},{"title":"Button entity","target":"https://www.home-assistant.io/integrations/button/","line":408},{"title":"this one","target":"https://www.banggood.com/10Pcs-GS-WDS07-Wireless-Door-Magnetic-Strip-433MHz-for-Security-Alarm-Home-System-p-1597356.html?cur_warehouse=CN","line":414},{"title":"Binary Sensor","target":"https://www.home-assistant.io/integrations/binary_sensor/","line":416},{"title":"wiki","target":"https://github.com/AlexxIT/SonoffLAN/wiki/RF-Bridge","line":445},{"title":"\\--network host","target":"https://docs.docker.com/network/network-tutorial-host/","line":476},{"title":"Settings","target":"https://my.home-assistant.io/redirect/general/","line":483},{"title":"more","target":"http://developers.sonoff.tech/sonoff-diy-mode-api-protocol.html#Device-mDNS-Service-Info-Publish-Process","line":485},{"title":"Multicast DNS","target":"https://en.wikipedia.org/wiki/Multicast_DNS","line":485},{"title":"zeroconf","target":"https://www.home-assistant.io/integrations/zeroconf/","line":485},{"title":"https://github.com/peterbuga/HASS-sonoff-ewelink","target":"https://github.com/peterbuga/HASS-sonoff-ewelink","line":531},{"title":"https://github.com/beveradb/sonoff-lan-mode-homeassistant","target":"https://github.com/beveradb/sonoff-lan-mode-homeassistant","line":532},{"title":"https://github.com/mattsaxon/sonoff-lan-mode-homeassistant","target":"https://github.com/mattsaxon/sonoff-lan-mode-homeassistant","line":533},{"title":"https://github.com/EpicLPer/Sonoff\\_GK-200MP2-B\\_Dump","target":"https://github.com/EpicLPer/Sonoff_GK-200MP2-B_Dump","line":534},{"title":"https://github.com/bwp91/homebridge-ewelink","target":"https://github.com/bwp91/homebridge-ewelink","line":535},{"title":"https://blog.ipsumdomus.com/sonoff-switch-complete-hack-without-firmware-upgrade-1b2d6632c01","target":"https://blog.ipsumdomus.com/sonoff-switch-complete-hack-without-firmware-upgrade-1b2d6632c01","line":536},{"title":"https://github.com/itead/Sonoff\\_Devices\\_DIY\\_Tools","target":"https://github.com/itead/Sonoff_Devices_DIY_Tools","line":537},{"title":"SONOFF DIY MODE API PROTOCOL","target":"http://developers.sonoff.tech/sonoff-diy-mode-api-protocol.html","line":538},{"title":"No Tasmota And EWeLink Cloud To Control The SONOFF Device? YES!","target":"https://sonoff.tech/product-tutorials/diy-mode-to-control-the-sonoff-device","line":539}],"metadata":{"page-title":"AlexxIT/SonoffLAN: Control Sonoff Devices with eWeLink (original) firmware over LAN and/or Cloud from Home Assistant","url":"https://github.com/AlexxIT/SonoffLAN","date":"2024-12-11 17:35:23"},"task_lines":[],"tasks":{},"codeblock_ranges":[[202,204]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_CubicPillchina_southern_power_grid_stat_Home_Assistant_intergration_to_get_statictics_from_China_Southern_Power_Grid_(CSG)_南方电网HA集成_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_CubicPillchina_southern_power_grid_stat_Home_Assistant_intergration_to_get_statictics_from_China_Southern_Power_Grid_(CSG)_南方电网HA集成_md.ajson deleted file mode 100644 index a946b40..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_CubicPillchina_southern_power_grid_stat_Home_Assistant_intergration_to_get_statictics_from_China_Southern_Power_Grid_(CSG)_南方电网HA集成_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/CubicPillchina_southern_power_grid_stat Home Assistant intergration to get statictics from China Southern Power Grid (CSG) 南方电网HA集成.md": {"path":"000-inbox/clippings/2024/12/CubicPillchina_southern_power_grid_stat Home Assistant intergration to get statictics from China Southern Power Grid (CSG) 南方电网HA集成.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5qx08p","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733908926608,"size":9322,"at":1766986878957,"hash":"5qx08p"},"blocks":{"#---frontmatter---":[1,5],"##China Southern Power Grid Statistics":[6,9],"##China Southern Power Grid Statistics#{1}":[8,9],"##南方电网电费数据HA集成":[10,15],"##南方电网电费数据HA集成#{1}":[12,15],"##支持功能":[16,44],"##支持功能#{1}":[18,19],"##支持功能#{2}":[20,20],"##支持功能#{3}":[21,21],"##支持功能#{4}":[22,22],"##支持功能#{5}":[23,23],"##支持功能#{6}":[24,25],"##支持功能#{7}":[26,27],"##支持功能#{8}":[28,28],"##支持功能#{9}":[29,29],"##支持功能#{10}":[30,30],"##支持功能#{11}":[31,31],"##支持功能#{12}":[32,32],"##支持功能#{13}":[33,33],"##支持功能#{14}":[34,34],"##支持功能#{15}":[35,35],"##支持功能#{16}":[36,36],"##支持功能#{17}":[37,37],"##支持功能#{18}":[38,38],"##支持功能#{19}":[39,40],"##支持功能#{20}":[41,44],"##使用方法":[45,107],"##使用方法#{1}":[47,52],"##使用方法#配置界面":[53,95],"##使用方法#配置界面#{1}":[55,70],"##使用方法#配置界面#{2}":[71,71],"##使用方法#配置界面#{3}":[72,72],"##使用方法#配置界面#{4}":[73,73],"##使用方法#配置界面#{5}":[74,74],"##使用方法#配置界面#{6}":[75,75],"##使用方法#配置界面#{7}":[76,76],"##使用方法#配置界面#{8}":[77,77],"##使用方法#配置界面#{9}":[78,78],"##使用方法#配置界面#{10}":[79,79],"##使用方法#配置界面#{11}":[80,80],"##使用方法#配置界面#{12}":[81,81],"##使用方法#配置界面#{13}":[82,82],"##使用方法#配置界面#{14}":[83,83],"##使用方法#配置界面#{15}":[84,84],"##使用方法#配置界面#{16}":[85,85],"##使用方法#配置界面#{17}":[86,87],"##使用方法#配置界面#{18}":[88,95],"##使用方法#数据更新策略":[96,107],"##使用方法#数据更新策略#{1}":[98,107],"##一些技术细节":[108,151],"##一些技术细节#{1}":[110,111],"##一些技术细节#登录接口加密原理":[112,129],"##一些技术细节#登录接口加密原理#{1}":[114,129],"##一些技术细节#Web端接口和App端接口":[130,145],"##一些技术细节#Web端接口和App端接口#{1}":[132,145],"##一些技术细节#API 实现库":[146,151],"##一些技术细节#API 实现库#{1}":[148,151],"##Thank you":[152,165],"##Thank you#{1}":[154,155],"##Thank you#{2}":[156,157],"##Thank you#{3}":[158,159],"##Thank you#{4}":[160,160],"##Thank you#{5}":[161,161],"##Thank you#{6}":[162,162],"##Thank you#{7}":[163,164],"##Thank you#{8}":[165,165]},"outlinks":[{"title":"![License: GPL v3","target":"https://camo.githubusercontent.com/8a398fc9fbf479a323d2d91b9fcb6fb9c6b4d08e96dbb544488ccbed312115fc/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d47504c76332d626c75652e737667","line":14},{"title":"![hacs_badge","target":"https://camo.githubusercontent.com/c430acde220d0b69bcab5985d189f6721e04ac42b4cedd417157fc3dc48a5661/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f484143532d44656661756c742d3431424446352e737667","line":14},{"title":"![GitHub release (latest by date)","target":"https://camo.githubusercontent.com/fbf093e16a62934f9abebba800faf9dcb3bbdc0d5a8f1dd813e85e2dfa5551ea/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f637562696370696c6c2f6368696e615f736f75746865726e5f706f7765725f677269645f73746174","line":14},{"title":"手动下载安装","target":"https://github.com/CubicPill/china_southern_power_grid_stat/releases","line":49},{"title":"HACS","target":"https://hacs.xyz/","line":49},{"title":"![","target":"https://raw.githubusercontent.com/CubicPill/china_southern_power_grid_stat/master/img/setup_login.png","line":59},{"title":"![","target":"https://raw.githubusercontent.com/CubicPill/china_southern_power_grid_stat/master/img/setup_add_account.png","line":63},{"title":"![","target":"https://raw.githubusercontent.com/CubicPill/china_southern_power_grid_stat/master/img/setup_select_account.png","line":67},{"title":"![","target":"https://raw.githubusercontent.com/CubicPill/china_southern_power_grid_stat/master/img/sensor_attr.png","line":90},{"title":"![","target":"https://raw.githubusercontent.com/CubicPill/china_southern_power_grid_stat/master/img/setup_params.png","line":94},{"title":"`csg_client/__init__.py`","target":"https://github.com/CubicPill/china_southern_power_grid_stat/blob/master/custom_components/china_southern_power_grid_stat/csg_client/__init__.py","line":150},{"title":"#30","target":"https://github.com/CubicPill/china_southern_power_grid_stat/pull/30","line":156},{"title":"lyylyylyylyy","target":"https://github.com/lyylyylyylyy","line":156},{"title":"瀚思彼岸","target":"https://bbs.hassbian.com/","line":158},{"title":"不折腾,超简单接入电费数据","target":"https://bbs.hassbian.com/thread-18474-1-1.html","line":160},{"title":"北京电费查询加强版","target":"https://bbs.hassbian.com/thread-13820-1-1.html","line":161},{"title":"电费插件(Node-Red流)-广东南方电网","target":"https://bbs.hassbian.com/thread-17830-1-1.html","line":162},{"title":"【抄作业】电费插件(NR流)-南网","target":"https://bbs.hassbian.com/thread-18122-1-1.html","line":163},{"title":"Building a Home Assistant Custom Component Part 1: Project Structure and Basics","target":"https://aarongodfrey.dev/home%20automation/building_a_home_assistant_custom_component_part_1/","line":165}],"metadata":{"page-title":"CubicPill/china_southern_power_grid_stat: Home Assistant intergration to get statictics from China Southern Power Grid (CSG) 南方电网HA集成","url":"https://github.com/CubicPill/china_southern_power_grid_stat","date":"2024-12-11 17:22:05"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_Find_All_Storage_Devices_Attached_to_a_Linux_Machine__Baeldung_on_Linux_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_Find_All_Storage_Devices_Attached_to_a_Linux_Machine__Baeldung_on_Linux_md.ajson deleted file mode 100644 index 00978f1..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_Find_All_Storage_Devices_Attached_to_a_Linux_Machine__Baeldung_on_Linux_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/Find All Storage Devices Attached to a Linux Machine Baeldung on Linux.md": {"path":"000-inbox/clippings/2024/12/Find All Storage Devices Attached to a Linux Machine Baeldung on Linux.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1od9zga","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1735635784000,"size":8565,"at":1766986878957,"hash":"1od9zga"},"blocks":{"#---frontmatter---":[1,5],"##1\\. Introduction[](https://www.baeldung.com/linux/find-all-storage-devices#introduction)":[8,11],"##1\\. Introduction[](https://www.baeldung.com/linux/find-all-storage-devices#introduction)#{1}":[10,11],"##2\\. Reading */proc/partitions*[](https://www.baeldung.com/linux/find-all-storage-devices#reading-procpartitions)":[12,30],"##2\\. Reading */proc/partitions*[](https://www.baeldung.com/linux/find-all-storage-devices#reading-procpartitions)#{1}":[14,30],"##3\\. *fdisk*[](https://www.baeldung.com/linux/find-all-storage-devices#fdisk)":[31,65],"##3\\. *fdisk*[](https://www.baeldung.com/linux/find-all-storage-devices#fdisk)#{1}":[33,65],"##4\\. *lsblk*[](https://www.baeldung.com/linux/find-all-storage-devices#lsblk)":[66,83],"##4\\. *lsblk*[](https://www.baeldung.com/linux/find-all-storage-devices#lsblk)#{1}":[68,83],"##5\\. *lshw*[](https://www.baeldung.com/linux/find-all-storage-devices#lshw)":[84,113],"##5\\. *lshw*[](https://www.baeldung.com/linux/find-all-storage-devices#lshw)#{1}":[86,113],"##6\\. *parted*[](https://www.baeldung.com/linux/find-all-storage-devices#parted)":[114,144],"##6\\. *parted*[](https://www.baeldung.com/linux/find-all-storage-devices#parted)#{1}":[116,144],"##7\\. *sfdisk*[](https://www.baeldung.com/linux/find-all-storage-devices#sfdisk)":[145,177],"##7\\. *sfdisk*[](https://www.baeldung.com/linux/find-all-storage-devices#sfdisk)#{1}":[147,177],"##8\\. Conclusion[](https://www.baeldung.com/linux/find-all-storage-devices#conclusion)":[178,180],"##8\\. Conclusion[](https://www.baeldung.com/linux/find-all-storage-devices#conclusion)#{1}":[180,180]},"outlinks":[{"title":"*cat*","target":"https://man7.org/linux/man-pages/man1/cat.1.html","line":14},{"title":"*sudo*","target":"https://linux.die.net/man/8/sudo","line":33},{"title":"*fdisk*","target":"https://man7.org/linux/man-pages/man8/fdisk.8.html","line":33},{"title":"*lsblk*","target":"https://man7.org/linux/man-pages/man8/lsblk.8.html","line":68},{"title":"*lshw*","target":"https://linux.die.net/man/1/lshw","line":86},{"title":"*parted*","target":"https://man7.org/linux/man-pages/man8/parted.8.html","line":116},{"title":"*sfdisk*","target":"https://man7.org/linux/man-pages/man8/sfdisk.8.html","line":147}],"metadata":{"page-title":"Find All Storage Devices Attached to a Linux Machine | Baeldung on Linux","url":"https://www.baeldung.com/linux/find-all-storage-devices","date":"2024-12-31 17:03:02"},"task_lines":[],"tasks":{},"codeblock_ranges":[[16,27],[35,62],[70,80],[88,112],[118,141],[149,176]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_GitHub_-_DubhAdHome-AssistantConfig_My_Home_Assistant_configuration_files_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_GitHub_-_DubhAdHome-AssistantConfig_My_Home_Assistant_configuration_files_md.ajson deleted file mode 100644 index 9e85c44..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_GitHub_-_DubhAdHome-AssistantConfig_My_Home_Assistant_configuration_files_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/GitHub - DubhAdHome-AssistantConfig My Home Assistant configuration files.md": {"path":"000-inbox/clippings/2024/12/GitHub - DubhAdHome-AssistantConfig My Home Assistant configuration files.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"fn7gg5","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733799416000,"size":16328,"at":1766986878957,"hash":"fn7gg5"},"blocks":{"#---frontmatter---":[1,5],"##Table of Contents":[6,9],"##Table of Contents#{1}":[8,9],"##Home Assistant configuration":[10,19],"##Home Assistant configuration#{1}":[12,19],"##The key software":[20,28],"##The key software#{1}":[22,23],"##The key software#{2}":[24,24],"##The key software#{3}":[25,25],"##The key software#{4}":[26,26],"##The key software#{5}":[27,28],"##Floorplan":[29,48],"##Floorplan#{1}":[31,34],"##Floorplan#{2}":[35,35],"##Floorplan#{3}":[36,46],"##Floorplan#{4}":[47,48],"##Devices":[49,54],"##Devices#{1}":[51,54],"##Zigbee":[55,62],"##Zigbee#{1}":[57,62],"##Lighting":[63,69],"##Lighting#{1}":[65,66],"##Lighting#{2}":[67,67],"##Lighting#{3}":[68,69],"##Media":[70,77],"##Media#{1}":[72,73],"##Media#{2}":[74,74],"##Media#{3}":[75,75],"##Media#{4}":[76,77],"##Notifications:":[78,87],"##Notifications:#{1}":[80,81],"##Notifications:#{2}":[82,82],"##Notifications:#{3}":[83,83],"##Notifications:#{4}":[84,84],"##Notifications:#{5}":[85,85],"##Notifications:#{6}":[86,87],"##Presence detection:":[88,99],"##Presence detection:#{1}":[90,91],"##Presence detection:#{2}":[92,92],"##Presence detection:#{3}":[93,94],"##Presence detection:#{4}":[95,97],"##Presence detection:#{5}":[98,99],"##Core integrations and APIs":[100,107],"##Core integrations and APIs#{1}":[102,103],"##Core integrations and APIs#{2}":[104,104],"##Core integrations and APIs#{3}":[105,105],"##Core integrations and APIs#{4}":[106,107],"##Other things":[108,115],"##Other things#{1}":[110,111],"##Other things#{2}":[112,113],"##Other things#{3}":[114,115],"##Custom integrations":[116,139],"##Custom integrations#{1}":[118,121],"##Custom integrations#{2}":[122,122],"##Custom integrations#{3}":[123,123],"##Custom integrations#{4}":[124,124],"##Custom integrations#{5}":[125,125],"##Custom integrations#{6}":[126,126],"##Custom integrations#{7}":[127,127],"##Custom integrations#{8}":[128,128],"##Custom integrations#{9}":[129,129],"##Custom integrations#{10}":[130,130],"##Custom integrations#{11}":[131,131],"##Custom integrations#{12}":[132,133],"##Custom integrations#Standard integrations":[134,139],"##Custom integrations#Standard integrations#{1}":[136,139],"##Other software and services":[140,163],"##Other software and services#{1}":[142,143],"##Other software and services#{2}":[144,144],"##Other software and services#{3}":[145,145],"##Other software and services#{4}":[146,146],"##Other software and services#{5}":[147,147],"##Other software and services#{6}":[148,148],"##Other software and services#{7}":[149,149],"##Other software and services#{8}":[150,150],"##Other software and services#{9}":[151,151],"##Other software and services#{10}":[152,152],"##Other software and services#{11}":[153,153],"##Other software and services#{12}":[154,154],"##Other software and services#{13}":[155,155],"##Other software and services#{14}":[156,156],"##Other software and services#{15}":[157,157],"##Other software and services#{16}":[158,158],"##Other software and services#{17}":[159,160],"##Other software and services#{18}":[161,161],"##Other software and services#{19}":[162,163],"##Notes":[164,173],"##Notes#{1}":[166,167],"##Notes#{2}":[168,168],"##Notes#{3}":[169,173],"##(Far) Future plans":[174,179],"##(Far) Future plans#{1}":[176,179],"##Automation thoughts":[180,191],"##Automation thoughts#{1}":[182,183],"##Automation thoughts#{2}":[184,184],"##Automation thoughts#{3}":[185,185],"##Automation thoughts#{4}":[186,186],"##Automation thoughts#{5}":[187,187],"##Automation thoughts#{6}":[188,188],"##Automation thoughts#{7}":[189,189],"##Automation thoughts#{8}":[190,191],"##Useful links":[192,199],"##Useful links#{1}":[194,195],"##Useful links#{2}":[196,196],"##Useful links#{3}":[197,197],"##Useful links#{4}":[198,199],"##Coffee":[200,204],"##Coffee#{1}":[202,204]},"outlinks":[{"title":"Home Assistant","target":"https://home-assistant.io/","line":14},{"title":"this process","target":"https://blog.ceard.tech/2020/10/ha-venv-to-docker","line":16},{"title":"with pyenv","target":"https://github.com/pyenv/pyenv","line":16},{"title":"following this guide","target":"https://home-assistant.io/docs/installation/raspberry-pi/","line":16},{"title":"Home Assistant","target":"https://home-assistant.io/","line":24},{"title":"traefik","target":"https://traefik.io/","line":25},{"title":"ZeroSSL","target":"https://zerossl.com/","line":25},{"title":"Zigbee2MQTT","target":"https://www.zigbee2mqtt.io/","line":26},{"title":"Mosquitto","target":"https://mosquitto.org/","line":27},{"title":"Floorplan","target":"https://github.com/ExperienceLovelace/ha-floorplan","line":33},{"title":"![Screenshot of floorplan","target":"https://camo.githubusercontent.com/fe5a5b3cc30238f6a5a7a0640526f1ab152df6544d60e1882bdf280cf0460f20/68747470733a2f2f692e696d6775722e636f6d2f677a7774666e6f2e706e67","line":35},{"title":"at it","target":"https://github.com/DubhAd/Home-AssistantConfig/blob/live/www/custom_ui/floorplan/floorplan.svg","line":47},{"title":"Inkscape","target":"https://inkscape.org/","line":47},{"title":"current and previous hardware here","target":"https://github.com/DubhAd/Home-AssistantConfig/blob/live/hardware.md","line":53},{"title":"Zigbee2MQTT","target":"https://www.zigbee2mqtt.io/","line":59},{"title":"Remote Home-Assistant","target":"https://github.com/custom-components/remote_homeassistant","line":61},{"title":"explained here","target":"https://github.com/DubhAd/Home-AssistantConfig/blob/live/ZWAVE.md","line":61},{"title":"WLED","target":"https://home-assistant.io/integrations/wled/","line":68},{"title":"integration","target":"https://home-assistant.io/integrations/sonos/","line":74},{"title":"Symfonisk","target":"https://www.ikea.com/gb/en/search/products/?q=symfonisk","line":74},{"title":"Sonos","target":"https://www.sonos.com/","line":74},{"title":"Squeezebox Radio","target":"http://support.logitech.com/en_us/product/squeezebox-radio-black","line":75},{"title":"associated integration","target":"https://home-assistant.io/integrations/squeezebox/","line":75},{"title":"Cast","target":"https://home-assistant.io/integrations/cast","line":76},{"title":"Google Home Hubs","target":"https://store.google.com/product/google_home_hub","line":76},{"title":"Google Home Minis","target":"https://store.google.com/product/google_home_mini","line":76},{"title":"Telegram","target":"https://telegram.org/","line":82},{"title":"Apprise","target":"https://www.home-assistant.io/integrations/apprise","line":83},{"title":"Ulanzi TC001","target":"https://blog.ceard.tech/2024/02/ulanzi-tc001","line":84},{"title":"notifications","target":"https://github.com/10der/homeassistant-custom_components-awtrix","line":84},{"title":"Awtrix Light","target":"https://github.com/Blueforcer/awtrix-light","line":84},{"title":"notifications","target":"https://home-assistant.io/integrations/lametric/","line":85},{"title":"Sonos Cloud","target":"https://github.com/jjlawren/sonos_cloud","line":86},{"title":"TTS","target":"https://home-assistant.io/integrations/tts/","line":86},{"title":"Fritz!Box","target":"https://en.avm.de/","line":92},{"title":"device tracking","target":"https://home-assistant.io/integrations/nmap_tracker/","line":92},{"title":"Nmap","target":"https://nmap.org/","line":92},{"title":"device tracking","target":"https://www.home-assistant.io/integrations/fritz/","line":92},{"title":"Monitor","target":"https://github.com/andrewjfreyer/monitor","line":93},{"title":"HA Companion app","target":"https://companion.home-assistant.io/","line":95},{"title":"GPS Logger","target":"https://home-assistant.io/integrations/gpslogger/","line":95},{"title":"OwnTracks","target":"http://owntracks.org/","line":96},{"title":"annoying bug","target":"https://github.com/owntracks/android/issues/508","line":96},{"title":"HTTP interface","target":"https://home-assistant.io/integrations/owntracks_http/","line":96},{"title":"starting here","target":"https://blog.ceard.tech/2018/01/home-assistant-and-basic-presence.html","line":98},{"title":"here","target":"https://blog.ceard.tech/2018/09/a-while-back-i-covered-how-i-was-doing.html","line":98},{"title":"another update","target":"https://blog.ceard.tech/2018/10/presence-detection-update-3.html","line":98},{"title":"a fourth update","target":"https://blog.ceard.tech/2019/03/presence-detection-are-we-nearly-there.html","line":98},{"title":"this here","target":"https://blog.ceard.tech/2020/04/presence-detection-one-last-time.html","line":98},{"title":"Bayesian","target":"https://www.home-assistant.io/integrations/bayesian","line":98},{"title":"TransportAPI","target":"https://developer.transportapi.com/","line":104},{"title":"UK transport","target":"https://home-assistant.io/integrations/uk_transport/","line":104},{"title":"the component","target":"https://home-assistant.io/components/media_player.plex/","line":105},{"title":"Plex","target":"https://www.plex.tv/sign-in/","line":105},{"title":"Distance Matrix","target":"https://developers.google.com/maps/documentation/distance-matrix/","line":106},{"title":"Google Travel Time integration","target":"https://home-assistant.io/integrations/google_travel_time/","line":106},{"title":"Here Travel Time","target":"https://www.home-assistant.io/integrations/here_travel_time/","line":106},{"title":"Getmail","target":"http://pyropus.ca/software/getmail/","line":112},{"title":"a script","target":"https://github.com/DubhAd/Home-AssistantConfig/blob/live/local/bin/parse-email","line":112},{"title":"IMAP email content","target":"https://home-assistant.io/integrations/imap_email_content/","line":113},{"title":"Frigate","target":"https://frigate.video/","line":114},{"title":"HACS","target":"https://hacs.xyz/","line":122},{"title":"Adaptive lighting","target":"https://github.com/basnijholt/adaptive-lighting","line":123},{"title":"Circadian lighting","target":"https://github.com/claytonjn/hass-circadian_lighting/","line":123},{"title":"flux integration","target":"https://www.home-assistant.io/integrations/flux","line":123},{"title":"Alarmo","target":"https://github.com/nielsfaber/alarmo","line":124},{"title":"Awtrix notifier","target":"https://github.com/10der/homeassistant-custom_components-awtrix","line":125},{"title":"Frigate","target":"https://github.com/blakeblackshear/frigate-hass-integration","line":126},{"title":"Here Weather","target":"https://github.com/eifinger/hass-here-weather","line":127},{"title":"SkyQ","target":"https://github.com/RogerSelwyn/Home_Assistant_SkyQ_MediaPlayer","line":128},{"title":"Sleep as Android","target":"https://github.com/IATkachenko/HA-SleepAsAndroid","line":129},{"title":"Sonos Cloud","target":"https://github.com/jjlawren/sonos_cloud","line":130},{"title":"The Watchman","target":"https://github.com/dummylabs/thewatchman","line":131},{"title":"WebRTC","target":"https://github.com/AlexxIT/WebRTC","line":132},{"title":"out here","target":"https://github.com/DubhAd/Home-AssistantConfig/blob/live/integrations.md","line":138},{"title":"AdGuard Home","target":"https://github.com/AdguardTeam/AdGuardHome/","line":144},{"title":"Authentik","target":"https://goauthentik.io/","line":145},{"title":"host my blog","target":"https://blog.ceard.tech/","line":146},{"title":"Cloudflare Pages","target":"https://pages.cloudflare.com/","line":146},{"title":"Container Mon","target":"https://github.com/RafhaanShah/Container-Mon","line":147},{"title":"Dozzle","target":"https://dozzle.dev/","line":148},{"title":"Diun","target":"https://github.com/crazy-max/diun/","line":149},{"title":"Frigate","target":"https://frigate.video/","line":150},{"title":"Heimdall","target":"https://heimdall.site/","line":151},{"title":"blog","target":"https://blog.ceard.tech/","line":152},{"title":"Jekyll","target":"https://jekyllrb.com/","line":152},{"title":"netdata","target":"https://my-netdata.io/","line":153},{"title":"Paperless NGX","target":"https://github.com/paperless-ngx/paperless-ngx","line":154},{"title":"Photoprism","target":"https://photoprism.app/","line":155},{"title":"rpi-clone","target":"https://github.com/billw2/rpi-clone","line":156},{"title":"rclone","target":"https://rclone.org/","line":157},{"title":"rsnapshot","target":"https://rsnapshot.org/","line":158},{"title":"traefik","target":"https://traefik.io/","line":159},{"title":"ZeroSSL","target":"https://zerossl.com/","line":159},{"title":"Let's Encrypt","target":"https://letsencrypt.org/","line":160},{"title":"nginx","target":"https://nginx.org/en/","line":160},{"title":"Uptime Kuma","target":"https://github.com/louislam/uptime-kuma","line":161},{"title":"Wireguard","target":"https://www.wireguard.com/","line":162},{"title":"Home Assistant documentation","target":"https://home-assistant.io/docs/","line":196},{"title":"integration list","target":"https://home-assistant.io/integrations/","line":196},{"title":"this script","target":"https://hastebin.com/igujenogud.coffeescript","line":197},{"title":"My blog","target":"https://ceard.tech/","line":198},{"title":"buy me a coffee","target":"https://buymeacoff.ee/9MWvkxr8P","line":204}],"metadata":{"page-title":"GitHub - DubhAd/Home-AssistantConfig: My Home Assistant configuration files","url":"https://github.com/DubhAd/Home-AssistantConfig/#the-devices-services-and-software-i-use-with-ha","date":"2024-12-10 10:56:55"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_How_To_Import_QCOW2_Image_Into_Proxmox_-_OSTechNix_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_How_To_Import_QCOW2_Image_Into_Proxmox_-_OSTechNix_md.ajson deleted file mode 100644 index 32d8d73..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_How_To_Import_QCOW2_Image_Into_Proxmox_-_OSTechNix_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/How To Import QCOW2 Image Into Proxmox - OSTechNix.md": {"path":"000-inbox/clippings/2024/12/How To Import QCOW2 Image Into Proxmox - OSTechNix.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"u9f34g","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733646873000,"size":12301,"at":1766986878957,"hash":"u9f34g"},"blocks":{"#---frontmatter---":[1,5],"#":[7,21],"##{1}":[13,13],"##{2}":[14,14],"##{3}":[15,15],"##{4}":[16,16],"##{5}":[17,17],"##{6}":[18,18],"##{7}":[19,19],"##{8}":[20,21],"##Introduction":[22,31],"##Introduction#{1}":[24,31],"##Step 1: Create a Directory to Store QCOW2 Images":[32,39],"##Step 1: Create a Directory to Store QCOW2 Images#{1}":[34,39],"##Step 2: Copy the QCOW2 Images to Proxmox Storage Directory":[40,58],"##Step 2: Copy the QCOW2 Images to Proxmox Storage Directory#{1}":[42,58],"##Step 3: Create a VM Without OS":[59,118],"##Step 3: Create a VM Without OS#{1}":[61,118],"##Step 4: Import QCOW2 Image into Proxmox Server":[119,161],"##Step 4: Import QCOW2 Image into Proxmox Server#{1}":[121,122],"##Step 4: Import QCOW2 Image into Proxmox Server#{2}":[123,123],"##Step 4: Import QCOW2 Image into Proxmox Server#{3}":[124,124],"##Step 4: Import QCOW2 Image into Proxmox Server#{4}":[125,126],"##Step 4: Import QCOW2 Image into Proxmox Server#{5}":[127,161],"##Step 5: Attach QCOW2 Virtual Disk to VM":[162,183],"##Step 5: Attach QCOW2 Virtual Disk to VM#{1}":[164,183],"##Step 6: Change the Boot Order":[184,207],"##Step 6: Change the Boot Order#{1}":[186,207],"##Conclusion":[208,210],"##Conclusion#{1}":[210,210]},"outlinks":[{"title":"Proxmox","target":"https://ostechnix.com/install-proxmox-ve/","line":11},{"title":"Introduction","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Introduction \"Introduction\"","line":13},{"title":"Step 1: Create a Directory to Store QCOW2 Images","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_1_Create_a_Directory_to_Store_QCOW2_Images \"Step 1: Create a Directory to Store QCOW2 Images\"","line":14},{"title":"Step 2: Copy the QCOW2 Images to Proxmox Storage Directory","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_2_Copy_the_QCOW2_Images_to_Proxmox_Storage_Directory \"Step 2: Copy the QCOW2 Images to Proxmox Storage Directory\"","line":15},{"title":"Step 3: Create a VM Without OS","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_3_Create_a_VM_Without_OS \"Step 3: Create a VM Without OS\"","line":16},{"title":"Step 4: Import QCOW2 Image into Proxmox Server","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_4_Import_QCOW2_Image_into_Proxmox_Server \"Step 4: Import QCOW2 Image into Proxmox Server\"","line":17},{"title":"Step 5: Attach QCOW2 Virtual Disk to VM","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_5_Attach_QCOW2_Virtual_Disk_to_VM \"Step 5: Attach QCOW2 Virtual Disk to VM\"","line":18},{"title":"Step 6: Change the Boot Order","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Step_6_Change_the_Boot_Order \"Step 6: Change the Boot Order\"","line":19},{"title":"Conclusion","target":"https://ostechnix.com/import-qcow2-into-proxmox/#Conclusion \"Conclusion\"","line":20},{"title":"QEMU/KVM","target":"https://ostechnix.com/category/virtualization/kvm/","line":26},{"title":"How To Create A KVM Virtual Machine Using Qcow2 Image In Linux","target":"https://ostechnix.com/create-a-kvm-virtual-machine-using-qcow2-image-in-linux/","line":30},{"title":"![Copy QCOW2 Image To Proxmox Storage","target":"https://ostechnix.com/wp-content/uploads/2022/06/Copy-QCOW2-Image-To-Proxmox-Storage.png \"Copy QCOW2 Image To Proxmox Storage\"","line":55},{"title":"![Create New VM In Proxmox","target":"https://ostechnix.com/wp-content/uploads/2022/06/Create-New-VM-In-Proxmox.png \"Create New VM In Proxmox\"","line":65},{"title":"![Enter VM Details","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-VM-Details.png.webp \"Enter VM Details\"","line":71},{"title":"![Choose 'Do Not Use Any Media' Option","target":"https://ostechnix.com/wp-content/uploads/2022/06/Choose-Do-Not-Use-Any-Media-Option-1.png.webp \"Choose 'Do Not Use Any Media' Option\"","line":77},{"title":"![Enter System Details For VM","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-System-Details-For-VM.png \"Enter System Details For VM\"","line":83},{"title":"![Enter Disk Size For VM","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-Disk-Size-For-VM.png \"Enter Disk Size For VM\"","line":89},{"title":"![Enter CPU Details","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-CPU-Details.png.webp \"Enter CPU Details\"","line":95},{"title":"![Enter Memory Details","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-Memory-Details.png.webp \"Enter Memory Details\"","line":101},{"title":"![Enter Network Details","target":"https://ostechnix.com/wp-content/uploads/2022/06/Enter-Network-Details.png \"Enter Network Details\"","line":107},{"title":"![Confirm VM Creation","target":"https://ostechnix.com/wp-content/uploads/2022/06/Confirm-VM-Creation.png \"Confirm VM Creation\"","line":113},{"title":"![Virtual Machine IDs And Storage Name In Proxmox","target":"https://ostechnix.com/wp-content/uploads/2022/06/Virtual-Machine-IDs-And-Storage-Name-In-Proxmox.png \"Virtual Machine IDs And Storage Name In Proxmox\"","line":129},{"title":"![Import QCOW2 Into Proxmox","target":"https://ostechnix.com/wp-content/uploads/2022/06/Import-QCOW2-Into-Proxmox.png \"Import QCOW2 Into Proxmox\"","line":156},{"title":"![Edit Unused Disk","target":"https://ostechnix.com/wp-content/uploads/2022/06/Edit-Unused-Disk.png \"Edit Unused Disk\"","line":166},{"title":"![Change Bus Type To VirtIO Block","target":"https://ostechnix.com/wp-content/uploads/2022/06/Change-Bus-Type-To-VirtIO-Block.png.webp \"Change Bus Type To VirtIO Block\"","line":172},{"title":"![Attach New Disk To Proxmox VM","target":"https://ostechnix.com/wp-content/uploads/2022/06/Attach-New-Disk-To-Proxmox-VM.png \"Attach New Disk To Proxmox VM\"","line":178},{"title":"![Select Boot Order","target":"https://ostechnix.com/wp-content/uploads/2022/06/Select-Boot-Order.png \"Select Boot Order\"","line":190},{"title":"![Change Disk Boot Order In Proxmox","target":"https://ostechnix.com/wp-content/uploads/2022/06/Change-Disk-Boot-Order-In-Proxmox.png.webp \"Change Disk Boot Order In Proxmox\"","line":196},{"title":"![FreeBSD Virtual Machine Running In Proxmox","target":"https://ostechnix.com/wp-content/uploads/2022/06/FreeBSD-Virtual-Machine-Running-In-Proxmox.png \"FreeBSD Virtual Machine Running In Proxmox\"","line":202}],"metadata":{"page-title":"How To Import QCOW2 Image Into Proxmox - OSTechNix","url":"https://ostechnix.com/import-qcow2-into-proxmox/","date":"2024-12-08 16:34:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_How_to_secure_IOT_devices_with_VLANs_and_firewall_rules_on_an_Ubiquiti_EdgeRouter-X_and_a_MikroTik_switch_running_SwOS_Lite_·_GeekBitZone_com_-_Passionate_About_Tech_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_How_to_secure_IOT_devices_with_VLANs_and_firewall_rules_on_an_Ubiquiti_EdgeRouter-X_and_a_MikroTik_switch_running_SwOS_Lite_·_GeekBitZone_com_-_Passionate_About_Tech_md.ajson deleted file mode 100644 index 9e1a2e5..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_How_to_secure_IOT_devices_with_VLANs_and_firewall_rules_on_an_Ubiquiti_EdgeRouter-X_and_a_MikroTik_switch_running_SwOS_Lite_·_GeekBitZone_com_-_Passionate_About_Tech_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/How to secure IOT devices with VLANs and firewall rules on an Ubiquiti EdgeRouter-X and a MikroTik switch running SwOS Lite · GeekBitZone.com - Passionate About Tech.md": {"path":"000-inbox/clippings/2024/12/How to secure IOT devices with VLANs and firewall rules on an Ubiquiti EdgeRouter-X and a MikroTik switch running SwOS Lite · GeekBitZone.com - Passionate About Tech.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"3dluqa","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734342110584,"size":29665,"at":1766986878957,"hash":"3dluqa"},"blocks":{"#---frontmatter---":[1,5],"#":[6,9],"##Table of Contents":[10,29],"##Table of Contents#{1}":[12,12],"##Table of Contents#{2}":[13,13],"##Table of Contents#{3}":[14,14],"##Table of Contents#{4}":[15,15],"##Table of Contents#{5}":[16,16],"##Table of Contents#{6}":[17,17],"##Table of Contents#{7}":[18,18],"##Table of Contents#{8}":[19,19],"##Table of Contents#{9}":[20,24],"##Table of Contents#{10}":[25,25],"##Table of Contents#{11}":[26,27],"##Table of Contents#{12}":[28,29],"##How to secure IOT devices with VLANs and firewall rules on an Ubiquiti EdgeRouter-X and a MikroTik switch running SwOS Lite":[30,35],"##How to secure IOT devices with VLANs and firewall rules on an Ubiquiti EdgeRouter-X and a MikroTik switch running SwOS Lite#{1}":[32,35],"##Firmware versions used":[36,44],"##Firmware versions used#{1}":[38,39],"##Firmware versions used#{2}":[40,40],"##Firmware versions used#{3}":[41,42],"##Firmware versions used#{4}":[43,44],"##Network overview":[45,52],"##Network overview#{1}":[47,52],"##Setting up a VLAN on the EdgeRouter":[53,86],"##Setting up a VLAN on the EdgeRouter#{1}":[55,86],"##Enabling VLAN on the switch0 interface":[87,114],"##Enabling VLAN on the switch0 interface#{1}":[89,114],"##Creating a DHCP server for the VLAN":[115,150],"##Creating a DHCP server for the VLAN#{1}":[117,150],"##Setting up Firewall NAT Groups on the EdgeRouter":[151,198],"##Setting up Firewall NAT Groups on the EdgeRouter#{1}":[153,180],"##Setting up Firewall NAT Groups on the EdgeRouter#{2}":[181,181],"##Setting up Firewall NAT Groups on the EdgeRouter#{3}":[182,182],"##Setting up Firewall NAT Groups on the EdgeRouter#{4}":[183,184],"##Setting up Firewall NAT Groups on the EdgeRouter#{5}":[185,198],"##Setting up Firewall Policies on the EdgeRouter":[199,368],"##Setting up Firewall Policies on the EdgeRouter#{1}":[201,204],"##Setting up Firewall Policies on the EdgeRouter#{2}":[205,205],"##Setting up Firewall Policies on the EdgeRouter#{3}":[206,206],"##Setting up Firewall Policies on the EdgeRouter#{4}":[207,208],"##Setting up Firewall Policies on the EdgeRouter#{5}":[209,368],"##Setting up a VLAN on the CSS610-8G-2S+IN":[369,422],"##Setting up a VLAN on the CSS610-8G-2S+IN#{1}":[371,422],"##Verifying the setup":[423,519],"##Verifying the setup#{1}":[425,426],"##Verifying the setup#{2}":[427,427],"##Verifying the setup#{3}":[428,428],"##Verifying the setup#{4}":[429,430],"##Verifying the setup#{5}":[431,432],"##Verifying the setup#Test 1: Can the IOT device reach the Internet?":[433,452],"##Verifying the setup#Test 1: Can the IOT device reach the Internet?#{1}":[435,452],"##Verifying the setup#Test 2: Can the IOT device reach other devices outside VLAN 10?":[453,471],"##Verifying the setup#Test 2: Can the IOT device reach other devices outside VLAN 10?#{1}":[455,471],"##Verifying the setup#Test 3: Can the IOT device reach the router (gateway)?":[472,499],"##Verifying the setup#Test 3: Can the IOT device reach the router (gateway)?#{1}":[474,499],"##Verifying the setup#Test 4: Can devices on the main network (outside VLAN 10) reach the IOT device?":[500,519],"##Verifying the setup#Test 4: Can devices on the main network (outside VLAN 10) reach the IOT device?#{1}":[502,519],"##Summary":[520,525],"##Summary#{1}":[522,525],"##References":[526,544],"##References#{1}":[528,544]},"outlinks":[{"title":"Firmware versions used","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#firmware-versions-used","line":12},{"title":"Network overview","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#network-overview","line":13},{"title":"Setting up a VLAN on the EdgeRouter","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#setting-up-a-vlan-on-the-edgerouter","line":14},{"title":"Enabling VLAN on the switch0 interface","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#enabling-vlan-on-the-switch0-interface","line":15},{"title":"Creating a DHCP server for the VLAN","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#creating-a-dhcp-server-for-the-vlan","line":16},{"title":"Setting up Firewall NAT Groups on the EdgeRouter","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#setting-up-firewall-nat-groups-on-the-edgerouter","line":17},{"title":"Setting up Firewall Policies on the EdgeRouter","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#setting-up-firewall-policies-on-the-edgerouter","line":18},{"title":"Setting up a VLAN on the CSS610-8G-2S+IN","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#setting-up-a-vlan-on-the-css610-8g-2sin","line":19},{"title":"Verifying the setup","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#verifying-the-setup","line":20},{"title":"Test 1: Can the IOT device reach the Internet?","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#test-1-can-the-iot-device-reach-the-internet","line":21},{"title":"Test 2: Can the IOT device reach other devices outside VLAN 10?","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#test-2-can-the-iot-device-reach-other-devices-outside-vlan-10","line":22},{"title":"Test 3: Can the IOT device reach the router (gateway)?","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#test-3-can-the-iot-device-reach-the-router-gateway","line":23},{"title":"Test 4: Can devices on the main network (outside VLAN 10) reach the IOT device?","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#test-4-can-devices-on-the-main-network-outside-vlan-10-reach-the-iot-device","line":24},{"title":"Summary","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#summary","line":25},{"title":"References","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/#references","line":26},{"title":"CSS610-8G-2S+IN","target":"https://mikrotik.com/product/css610_8g_2s_in","line":32},{"title":"SwOS Lite","target":"https://wiki.mikrotik.com/wiki/SwOS/CSS610","line":32},{"title":"EdgeRouter™ X","target":"https://www.ui.com/edgemax/edgerouter-x/","line":32},{"title":"EdgeOS v2.0.9-hotfix.1","target":"https://www.ui.com/download/edgemax/default/default/edgerouter-er-xer-x-sfpep-r6er-10x-firmware-v209-hotfix1","line":40},{"title":"SwOS Lite 2.13","target":"https://www.mikrotik.com/download","line":41},{"title":"EdgeRouter Mikrotik VLAN - Image 1","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-1.png","line":49,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 2","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-2.png","line":57,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 3","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-3.png","line":61,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 4","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-4.png","line":65,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 5","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-5.png","line":69,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 6","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-6.png","line":73,"embedded":true},{"title":"RFC1918","target":"https://tools.ietf.org/html/rfc1918","line":75},{"title":"EdgeRouter Mikrotik VLAN - Image 7","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-7.png","line":79,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 8","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-8.png","line":83,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 9","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-9.png","line":95,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 10","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-10.png","line":99,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 11","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-11.png","line":103,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 12","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-12.png","line":107,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 13","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-13.png","line":121,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 14","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-14.png","line":125,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 15","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-15.png","line":129,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 16","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-16.png","line":133,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 17","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-17.png","line":137,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 18","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-18.png","line":141,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 19","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-19.png","line":147,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 20","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-20.png","line":159,"embedded":true},{"title":"RFC1918","target":"https://tools.ietf.org/html/rfc1918","line":161},{"title":"EdgeRouter Mikrotik VLAN - Image 21","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-21.png","line":165,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 22","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-22.png","line":169,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 23","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-23.png","line":173,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 24","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-24.png","line":177,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 25","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-25.png","line":187,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 26","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-26.png","line":191,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 27","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-27.png","line":195,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 28","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-28.png","line":211,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 29","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-29.png","line":215,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 30","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-30.png","line":219,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 31","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-31.png","line":223,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 32","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-32.png","line":229,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 33","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-33.png","line":233,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 34","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-34.png","line":237,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 35","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-35.png","line":241,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 36","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-36.png","line":245,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 37","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-37.png","line":249,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 38","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-38.png","line":253,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 39","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-39.png","line":257,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 40","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-40.png","line":261,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 41","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-41.png","line":267,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 42","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-42.png","line":271,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 43","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-43.png","line":275,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 44","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-44.png","line":279,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 45","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-45.png","line":283,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 46","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-46.png","line":289,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 47","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-47.png","line":293,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 48","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-48.png","line":299,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 49","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-49.png","line":305,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 50","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-50.png","line":309,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 51","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-51.png","line":313,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 52","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-52.png","line":317,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 53","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-53.png","line":321,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 54","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-54.png","line":327,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 55","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-55.png","line":331,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 56","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-56.png","line":335,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 57","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-57.png","line":339,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 58","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-58.png","line":343,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 59","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-59.png","line":349,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 60","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-60.png","line":353,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 61","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-61.png","line":359,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 62","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-62.png","line":363,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 63","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-63.png","line":373,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 64","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-64.png","line":377,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 65","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-65.png","line":381,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 66","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-66.png","line":385,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 67","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-67.png","line":389,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 68","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-68.png","line":393,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 69","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-69.png","line":397,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 70","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-70.png","line":401,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 71","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-71.png","line":405,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 72","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-72.png","line":409,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 73","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-73.png","line":413,"embedded":true},{"title":"EdgeRouter Mikrotik VLAN - Image 74","target":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/img/edgerouter-mikrotik-swos-vlan-74.png","line":417,"embedded":true},{"title":"https://www.ui.com/edgemax/edgerouter-x/","target":"https://www.ui.com/edgemax/edgerouter-x/","line":529},{"title":"https://mikrotik.com/product/css610\\_8g\\_2s\\_in","target":"https://mikrotik.com/product/css610_8g_2s_in","line":532},{"title":"https://wiki.mikrotik.com/wiki/SwOS/CSS610","target":"https://wiki.mikrotik.com/wiki/SwOS/CSS610","line":535},{"title":"https://www.ui.com/download/edgemax/default/default/edgerouter-er-xer-x-sfpep-r6er-10x-firmware-v209-hotfix1","target":"https://www.ui.com/download/edgemax/default/default/edgerouter-er-xer-x-sfpep-r6er-10x-firmware-v209-hotfix1","line":538},{"title":"https://www.mikrotik.com/download","target":"https://www.mikrotik.com/download","line":541},{"title":"https://tools.ietf.org/html/rfc1918","target":"https://tools.ietf.org/html/rfc1918","line":544}],"metadata":{"page-title":"How to secure IOT devices with VLANs and firewall rules on an Ubiquiti EdgeRouter-X and a MikroTik switch running SwOS Lite · GeekBitZone.com - Passionate About Tech","url":"https://www.geekbitzone.com/posts/2021/networking/vlans/vlan-edgerouter-mikrotik/edgerouter-mikrotik-swos-vlan/","date":"2024-12-16 17:41:48"},"task_lines":[],"tasks":{},"codeblock_ranges":[[437,447],[457,466],[476,494],[504,514]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_Matrix_org_-_Understanding_Synapse_Hosting_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_Matrix_org_-_Understanding_Synapse_Hosting_md.ajson deleted file mode 100644 index 966d163..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_Matrix_org_-_Understanding_Synapse_Hosting_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/Matrix.org - Understanding Synapse Hosting.md": {"path":"000-inbox/clippings/2024/12/Matrix.org - Understanding Synapse Hosting.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5fzpb9","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1735092559100,"size":27725,"at":1766986878957,"hash":"5fzpb9"},"blocks":{"#---frontmatter---":[1,5],"##Older documentation":[6,11],"##Older documentation#{1}":[8,11],"##Understanding Synapse Hosting":[12,21],"##Understanding Synapse Hosting#{1}":[14,15],"##Understanding Synapse Hosting#{2}":[16,16],"##Understanding Synapse Hosting#{3}":[17,17],"##Understanding Synapse Hosting#{4}":[18,19],"##Understanding Synapse Hosting#{5}":[20,21],"##Defining What We Want":[22,56],"##Defining What We Want#{1}":[24,25],"##Defining What We Want#How Our MatrixID Will Look Like":[26,38],"##Defining What We Want#How Our MatrixID Will Look Like#{1}":[28,29],"##Defining What We Want#How Our MatrixID Will Look Like#{2}":[30,30],"##Defining What We Want#How Our MatrixID Will Look Like#{3}":[31,32],"##Defining What We Want#How Our MatrixID Will Look Like#{4}":[33,38],"##Defining What We Want#Not Leaving the Door Open":[39,46],"##Defining What We Want#Not Leaving the Door Open#{1}":[41,46],"##Defining What We Want#General Concepts":[47,56],"##Defining What We Want#General Concepts#{1}":[49,56],"##The Bare Minimum We Need":[57,74],"##The Bare Minimum We Need#A VPS with a public IP":[59,66],"##The Bare Minimum We Need#A VPS with a public IP#{1}":[61,66],"##The Bare Minimum We Need#Docker and docker-compose":[67,70],"##The Bare Minimum We Need#Docker and docker-compose#{1}":[69,70],"##The Bare Minimum We Need#A domain name":[71,74],"##The Bare Minimum We Need#A domain name#{1}":[73,74],"##Let’s Get Our Hands Dirty!":[75,523],"##Let’s Get Our Hands Dirty!#The Global Architecture":[77,80],"##Let’s Get Our Hands Dirty!#The Global Architecture#{1}":[79,80],"##Let’s Get Our Hands Dirty!#Adding DNS records":[81,87],"##Let’s Get Our Hands Dirty!#Adding DNS records#{1}":[83,84],"##Let’s Get Our Hands Dirty!#Adding DNS records#{2}":[85,85],"##Let’s Get Our Hands Dirty!#Adding DNS records#{3}":[86,87],"##Let’s Get Our Hands Dirty!#docker-compose structure":[88,108],"##Let’s Get Our Hands Dirty!#docker-compose structure#{1}":[90,108],"##Let’s Get Our Hands Dirty!#Setting up a database":[109,177],"##Let’s Get Our Hands Dirty!#Setting up a database#{1}":[111,177],"##Let’s Get Our Hands Dirty!#Setting up Synapse":[178,300],"##Let’s Get Our Hands Dirty!#Setting up Synapse#{1}":[180,300],"##Let’s Get Our Hands Dirty!#Serving the .well-known files":[301,383],"##Let’s Get Our Hands Dirty!#Serving the .well-known files#{1}":[303,308],"##Let’s Get Our Hands Dirty!#Serving the .well-known files#{2}":[309,309],"##Let’s Get Our Hands Dirty!#Serving the .well-known files#{3}":[310,311],"##Let’s Get Our Hands Dirty!#Serving the .well-known files#{4}":[312,383],"##Let’s Get Our Hands Dirty!#Exposing on the Internet with a Reverse Proxy":[384,508],"##Let’s Get Our Hands Dirty!#Exposing on the Internet with a Reverse Proxy#{1}":[386,508],"##Let’s Get Our Hands Dirty!#Creating an account, and logging in":[509,523],"##Let’s Get Our Hands Dirty!#Creating an account, and logging in#{1}":[511,523]},"outlinks":[{"title":"the new documentation section","target":"https://matrix.org/docs","line":10},{"title":"https://matrix-org.github.io/synapse/latest/","target":"https://matrix-org.github.io/synapse/latest/","line":20},{"title":"delegation of incoming traffic","target":"https://github.com/matrix-org/synapse/blob/develop/docs/delegate.md","line":35},{"title":"Gandi","target":"https://www.gandi.net/","line":49},{"title":"Netcup","target":"https://www.netcup.eu/","line":49},{"title":"on docker’s documentation centre","target":"https://docs.docker.com/compose/","line":69},{"title":"Basic architecture of Synapse deployment with docker compose","target":"https://matrix.org/docs/legacy/understanding-synapse-hosting-architecture.png \"Basic architecture of Synapse deployment with docker compose\"","line":79,"embedded":true},{"title":"docker compose and secrets","target":"https://docs.docker.com/compose/compose-file/compose-file-v3/#secrets","line":132},{"title":"https://matrix-org.github.io/synapse/latest/usage/configuration/index.html","target":"https://matrix-org.github.io/synapse/latest/usage/configuration/index.html","line":219},{"title":"According to Synapse’s documentation","target":"https://matrix-org.github.io/synapse/latest/usage/configuration/config_documentation.html#database","line":221},{"title":"https://example.org/.well-known/matrix/client","target":"https://example.org/.well-known/matrix/client","line":483},{"title":"https://example.org/.well-known/matrix/server","target":"https://example.org/.well-known/matrix/server","line":483},{"title":"Synapse serving its static page, behind nginx","target":"https://matrix.org/docs/legacy/understanding-synapse-hosting-nginx.png \"Synapse serving its static page, behind nginx\"","line":507,"embedded":true},{"title":"https://app.element.io","target":"https://app.element.io/","line":523}],"metadata":{"page-title":"Matrix.org - Understanding Synapse Hosting","url":"https://matrix.org/docs/older/understanding-synapse-hosting/","date":"2024-12-25 10:09:17"},"task_lines":[],"tasks":{},"codeblock_ranges":[[94,107],[113,130],[136,140],[144,151],[155,166],[170,174],[182,189],[193,217],[223,235],[239,267],[271,297],[314,349],[355,369],[375,380],[392,448],[452,463],[469,481],[487,503],[513,521]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_Mosquitto_MQTT_Installation_Guide_for_Debian_11_Easy_Setup_-_Shapehost_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_Mosquitto_MQTT_Installation_Guide_for_Debian_11_Easy_Setup_-_Shapehost_md.ajson deleted file mode 100644 index 117f572..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_Mosquitto_MQTT_Installation_Guide_for_Debian_11_Easy_Setup_-_Shapehost_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/Mosquitto MQTT Installation Guide for Debian 11 Easy Setup - Shapehost.md": {"path":"000-inbox/clippings/2024/12/Mosquitto MQTT Installation Guide for Debian 11 Easy Setup - Shapehost.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7d6mis","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734601926000,"size":4878,"at":1766986878957,"hash":"7d6mis"},"blocks":{"#---frontmatter---":[1,5],"##Introduction":[6,9],"##Introduction#{1}":[8,9],"##Prerequisites":[10,16],"##Prerequisites#{1}":[12,13],"##Prerequisites#{2}":[14,14],"##Prerequisites#{3}":[15,16],"##Step 1: Installing Mosquitto Server and Client":[17,37],"##Step 1: Installing Mosquitto Server and Client#{1}":[19,20],"##Step 1: Installing Mosquitto Server and Client#{2}":[21,22],"##Step 1: Installing Mosquitto Server and Client#{3}":[23,24],"##Step 1: Installing Mosquitto Server and Client#{4}":[25,26],"##Step 1: Installing Mosquitto Server and Client#{5}":[27,28],"##Step 1: Installing Mosquitto Server and Client#{6}":[29,30],"##Step 1: Installing Mosquitto Server and Client#{7}":[31,32],"##Step 1: Installing Mosquitto Server and Client#{8}":[33,34],"##Step 1: Installing Mosquitto Server and Client#{9}":[35,37],"##Step 2: Setting up Authentication on Mosquitto":[38,62],"##Step 2: Setting up Authentication on Mosquitto#{1}":[40,41],"##Step 2: Setting up Authentication on Mosquitto#{2}":[42,43],"##Step 2: Setting up Authentication on Mosquitto#{3}":[44,47],"##Step 2: Setting up Authentication on Mosquitto#{4}":[48,49],"##Step 2: Setting up Authentication on Mosquitto#{5}":[50,51],"##Step 2: Setting up Authentication on Mosquitto#{6}":[52,53],"##Step 2: Setting up Authentication on Mosquitto#{7}":[54,57],"##Step 2: Setting up Authentication on Mosquitto#{8}":[58,58],"##Step 2: Setting up Authentication on Mosquitto#{9}":[59,60],"##Step 2: Setting up Authentication on Mosquitto#{10}":[61,62],"##Step 3: Securing Mosquitto with SSL/TLS Certificates":[63,91],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{1}":[65,66],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{2}":[67,68],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{3}":[69,70],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{4}":[71,72],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{5}":[73,74],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{6}":[75,76],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{7}":[77,78],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{8}":[79,80],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{9}":[81,86],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{10}":[87,87],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{11}":[88,89],"##Step 3: Securing Mosquitto with SSL/TLS Certificates#{12}":[90,91],"##Step 4: Enabling WebSockets on Mosquitto":[92,112],"##Step 4: Enabling WebSockets on Mosquitto#{1}":[94,95],"##Step 4: Enabling WebSockets on Mosquitto#{2}":[96,97],"##Step 4: Enabling WebSockets on Mosquitto#{3}":[98,99],"##Step 4: Enabling WebSockets on Mosquitto#{4}":[100,101],"##Step 4: Enabling WebSockets on Mosquitto#{5}":[102,107],"##Step 4: Enabling WebSockets on Mosquitto#{6}":[108,108],"##Step 4: Enabling WebSockets on Mosquitto#{7}":[109,110],"##Step 4: Enabling WebSockets on Mosquitto#{8}":[111,112],"##Conclusion":[113,121],"##Conclusion#{1}":[115,120],"##Conclusion###Christian Wells":[121,121]},"outlinks":[{"title":"Cloud VPS","target":"https://shape.host/","line":117}],"metadata":{"page-title":"Mosquitto MQTT Installation Guide for Debian 11: Easy Setup - Shapehost","url":"https://shape.host/resources/mosquitto-mqtt-installation-guide-for-debian-11-easy-setup","date":"2024-12-19 17:52:04"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_OpenThread_节点访问局域网服务器的配置方法_-_YP_Lam_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_OpenThread_节点访问局域网服务器的配置方法_-_YP_Lam_md.ajson deleted file mode 100644 index 88df51a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_OpenThread_节点访问局域网服务器的配置方法_-_YP_Lam_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/OpenThread 节点访问局域网服务器的配置方法 - YP.Lam.md": {"path":"000-inbox/clippings/2024/12/OpenThread 节点访问局域网服务器的配置方法 - YP.Lam.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"j6dw71","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734059649787,"size":1405,"at":1766986878957,"hash":"j6dw71"},"blocks":{"#---frontmatter---":[1,5],"##OpenThread 节点访问局域网服务器的配置方法[¶](https://yplam.com/IOT/openthread/openthread-connect-lan/#openthread \"Permanent link\")":[6,21],"##OpenThread 节点访问局域网服务器的配置方法[¶](https://yplam.com/IOT/openthread/openthread-connect-lan/#openthread \"Permanent link\")#{1}":[8,19],"##OpenThread 节点访问局域网服务器的配置方法[¶](https://yplam.com/IOT/openthread/openthread-connect-lan/#openthread \"Permanent link\")#{2}":[20,20],"##OpenThread 节点访问局域网服务器的配置方法[¶](https://yplam.com/IOT/openthread/openthread-connect-lan/#openthread \"Permanent link\")#{3}":[21,21]},"outlinks":[{"title":"¶","target":"https://yplam.com/IOT/openthread/openthread-connect-lan/#openthread \"Permanent link\"","line":6},{"title":"https://groups.google.com/g/openthread-users/c/38ladIxYDs4/m/RyiwIO0QDAAJ","target":"https://groups.google.com/g/openthread-users/c/38ladIxYDs4/m/RyiwIO0QDAAJ","line":20},{"title":"https://forum.openwrt.org/t/ipv6-router-advertisement-details-how-do-routers-announce-themselves-without-announcing-a-prefix-for-use/54059","target":"https://forum.openwrt.org/t/ipv6-router-advertisement-details-how-do-routers-announce-themselves-without-announcing-a-prefix-for-use/54059","line":21}],"metadata":{"page-title":"OpenThread 节点访问局域网服务器的配置方法 - YP.Lam","url":"https://yplam.com/IOT/openthread/openthread-connect-lan/","date":"2024-12-13 11:14:08"},"task_lines":[],"tasks":{},"codeblock_ranges":[[12,14]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_Proxy_Configuration_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_Proxy_Configuration_md.ajson deleted file mode 100644 index 395fc50..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_Proxy_Configuration_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/Proxy Configuration.md": {"path":"000-inbox/clippings/2024/12/Proxy Configuration.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"puuwsr","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733368364000,"size":9021,"at":1766986878957,"hash":"puuwsr"},"blocks":{"#---frontmatter---":[1,5],"##Proxy Configuration":[6,146],"##Proxy Configuration#{1}":[8,17],"##Proxy Configuration#Java 5+ proxy support":[18,60],"##Proxy Configuration#Java 5+ proxy support#{1}":[20,29],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works":[30,60],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works#{1}":[32,33],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works#Windows":[34,37],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works#Windows#{1}":[36,37],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works#Linux":[38,60],"##Proxy Configuration#Java 5+ proxy support#How Autoproxy works#Linux#{1}":[40,60],"##Proxy Configuration#Manual JVM options":[61,83],"##Proxy Configuration#Manual JVM options#{1}":[63,80],"##Proxy Configuration#Manual JVM options#{2}":[81,81],"##Proxy Configuration#Manual JVM options#{3}":[82,83],"##Proxy Configuration#SetProxy Task":[84,108],"##Proxy Configuration#SetProxy Task#{1}":[86,108],"##Proxy Configuration#Custom ProxySelector implementations":[109,116],"##Proxy Configuration#Custom ProxySelector implementations#{1}":[111,116],"##Proxy Configuration#Configuring the Proxy settings of Java programs under Ant":[117,130],"##Proxy Configuration#Configuring the Proxy settings of Java programs under Ant#{1}":[119,130],"##Proxy Configuration#Summary and conclusions":[131,146],"##Proxy Configuration#Summary and conclusions#{1}":[133,134],"##Proxy Configuration#Summary and conclusions#{2}":[135,135],"##Proxy Configuration#Summary and conclusions#{3}":[136,136],"##Proxy Configuration#Summary and conclusions#{4}":[137,137],"##Proxy Configuration#Summary and conclusions#{5}":[138,139],"##Proxy Configuration#Summary and conclusions#{6}":[140,143],"##Proxy Configuration#Summary and conclusions#Further reading":[144,146],"##Proxy Configuration#Summary and conclusions#Further reading#{1}":[146,146]},"outlinks":[{"title":"setproxy task","target":"https://ant.apache.org/manual/Tasks/setproxy.html","line":86},{"title":"``","target":"https://ant.apache.org/manual/Types/propertyset.html","line":121},{"title":"Java Networking Properties","target":"https://docs.oracle.com/javase/8/docs/technotes/guides/net/properties.html","line":146}],"metadata":{"page-title":"Proxy Configuration","url":"https://ant.apache.org/manual/proxy.html","date":"2024-12-05 11:12:43"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_Vulnerability-Wikidocs-basedocswebappHarbor-公开镜像仓库未授权访问-CVE-2022-46463_md_at_master_·_ThreekiiiVulnerability-Wiki_·_GitHub_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_Vulnerability-Wikidocs-basedocswebappHarbor-公开镜像仓库未授权访问-CVE-2022-46463_md_at_master_·_ThreekiiiVulnerability-Wiki_·_GitHub_md.ajson deleted file mode 100644 index 1a4b645..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_Vulnerability-Wikidocs-basedocswebappHarbor-公开镜像仓库未授权访问-CVE-2022-46463_md_at_master_·_ThreekiiiVulnerability-Wiki_·_GitHub_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/Vulnerability-Wikidocs-basedocswebappHarbor-公开镜像仓库未授权访问-CVE-2022-46463.md at master · ThreekiiiVulnerability-Wiki · GitHub.md": {"path":"000-inbox/clippings/2024/12/Vulnerability-Wikidocs-basedocswebappHarbor-公开镜像仓库未授权访问-CVE-2022-46463.md at master · ThreekiiiVulnerability-Wiki · GitHub.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"llsx02","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734419232000,"size":19135,"at":1766986878957,"hash":"llsx02"},"blocks":{"#---frontmatter---":[1,5],"#":[7,10],"##Harbor 公开镜像仓库未授权访问 CVE-2022-46463":[11,14],"##Harbor 公开镜像仓库未授权访问 CVE-2022-46463#{1}":[13,14],"##漏洞描述":[15,32],"##漏洞描述#{1}":[17,22],"##漏洞描述#{2}":[23,23],"##漏洞描述#{3}":[24,24],"##漏洞描述#{4}":[25,26],"##漏洞描述#{5}":[27,28],"##漏洞描述#{6}":[29,29],"##漏洞描述#{7}":[30,30],"##漏洞描述#{8}":[31,32],"##漏洞复现":[33,73],"##漏洞复现#{1}":[35,65],"##漏洞复现#{2}":[66,66],"##漏洞复现#{3}":[67,67],"##漏洞复现#{4}":[68,69],"##漏洞复现#{5}":[70,73],"##漏洞 POC":[74,378],"##漏洞 POC#{1}":[76,378],"##漏洞修复":[379,384],"##漏洞修复#{1}":[381,382],"##漏洞修复#{2}":[383,383],"##漏洞修复#{3}":[384,384]},"outlinks":[{"title":"https://mp.weixin.qq.com/s/pBkJW1\\_Vpf\\_suH50e8K9kg","target":"https://mp.weixin.qq.com/s/pBkJW1_Vpf_suH50e8K9kg","line":29},{"title":"https://mp.weixin.qq.com/s/V8Ecqq\\_DPOQhH5q9UBWkXg","target":"https://mp.weixin.qq.com/s/V8Ecqq_DPOQhH5q9UBWkXg","line":30},{"title":"https://github.com/404tk/CVE-2022-46463","target":"https://github.com/404tk/CVE-2022-46463","line":31},{"title":"![","target":"https://github.com/Threekiii/Vulnerability-Wiki/raw/Awesome-POC/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/images/Harbor%20%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%20CVE-2022-46463/image-20240603114233720.png","line":44},{"title":"![","target":"https://github.com/Threekiii/Vulnerability-Wiki/raw/Awesome-POC/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/images/Harbor%20%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%20CVE-2022-46463/image-20240603114414964.png","line":53},{"title":"![","target":"https://github.com/Threekiii/Vulnerability-Wiki/raw/Awesome-POC/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/images/Harbor%20%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%20CVE-2022-46463/image-20240603115023802.png","line":62},{"title":"404tk/CVE-2022-46463","target":"https://github.com/404tk/CVE-2022-46463","line":66},{"title":"![","target":"https://github.com/Threekiii/Vulnerability-Wiki/raw/Awesome-POC/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/images/Harbor%20%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%20CVE-2022-46463/image-20240603120457032.png","line":70},{"title":"![","target":"https://github.com/Threekiii/Vulnerability-Wiki/raw/Awesome-POC/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/images/Harbor%20%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE%20CVE-2022-46463/image-20240603120254668.png","line":72}],"metadata":{"page-title":"Vulnerability-Wiki/docs-base/docs/webapp/Harbor-公开镜像仓库未授权访问-CVE-2022-46463.md at master · Threekiii/Vulnerability-Wiki · GitHub","url":"https://github.com/Threekiii/Vulnerability-Wiki/blob/master/docs-base/docs/webapp/Harbor-%E5%85%AC%E5%BC%80%E9%95%9C%E5%83%8F%E4%BB%93%E5%BA%93%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE-CVE-2022-46463.md","date":"2024-12-17 15:07:10"},"task_lines":[],"tasks":{},"codeblock_ranges":[[39,42],[48,51],[57,60]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_openSUSE_Leap_15_6_-_Get_openSUSE_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_openSUSE_Leap_15_6_-_Get_openSUSE_md.ajson deleted file mode 100644 index 4b181dc..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_openSUSE_Leap_15_6_-_Get_openSUSE_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/openSUSE Leap 15.6 - Get openSUSE.md": {"path":"000-inbox/clippings/2024/12/openSUSE Leap 15.6 - Get openSUSE.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"186xo85","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1733909856843,"size":2888,"at":1766986878957,"hash":"186xo85"},"blocks":{"#---frontmatter---":[1,5],"#":[6,9],"##openSUSE Leap 15.6":[10,14],"##openSUSE Leap 15.6#{1}":[12,12],"##openSUSE Leap 15.6#{2}":[13,14],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution":[15,60],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#{1}":[17,22],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###Intel or AMD 64-bit desktops, laptops, and servers (x86\\_64)":[23,28],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###Intel or AMD 64-bit desktops, laptops, and servers (x86\\_64)#Offline Image (4.3 GiB)":[25,26],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###Intel or AMD 64-bit desktops, laptops, and servers (x86\\_64)#Network Image (261.0 MiB)":[27,28],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###UEFI Arm 64-bit servers, desktops, laptops and boards (aarch64)":[29,34],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###UEFI Arm 64-bit servers, desktops, laptops and boards (aarch64)#Offline Image (4.4 GiB)":[31,32],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###UEFI Arm 64-bit servers, desktops, laptops and boards (aarch64)#Network Image (290.5 MiB)":[33,34],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###PowerPC servers, little-endian (ppc64le)":[35,40],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###PowerPC servers, little-endian (ppc64le)#Offline Image (3.9 GiB)":[37,38],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###PowerPC servers, little-endian (ppc64le)#Network Image (243.2 MiB)":[39,40],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###IBM zSystems and LinuxONE (s390x)":[41,46],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###IBM zSystems and LinuxONE (s390x)#Offline Image (2.4 GiB)":[43,44],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution###IBM zSystems and LinuxONE (s390x)#Network Image (153.5 MiB)":[45,46],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#Choosing Which Media to Download":[47,52],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#Choosing Which Media to Download#{1}":[49,52],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements":[53,60],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements#{1}":[55,55],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements#{2}":[56,56],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements#{3}":[57,57],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements#{4}":[58,58],"##A brand new way of building openSUSE and a new type of a hybrid Linux distribution#System Requirements#{5}":[59,60],"##Verify Your Download Before Use":[61,71],"##Verify Your Download Before Use#{1}":[63,71]},"outlinks":[{"title":"Learn More","target":"https://get.opensuse.org/leap/16.0/","line":6},{"title":"Overview","target":"https://get.opensuse.org/leap/15.6/?type=server#overview","line":12},{"title":"Download","target":"https://get.opensuse.org/leap/15.6/?type=server#download","line":13},{"title":"Download","target":"https://get.opensuse.org/leap/15.6/?type=server#download","line":19},{"title":"**AD48 5664 E901 B867 051A B15F 35A2 F86E 29B7 00A4**","target":"https://download.opensuse.org/tumbleweed/repo/oss/gpg-pubkey-29b700a4-62b07e22.asc","line":69},{"title":"Checksums Help","target":"https://en.opensuse.org/SDB:Download_help#Checksums","line":71}],"metadata":{"page-title":"openSUSE Leap 15.6 - Get openSUSE","url":"https://get.opensuse.org/leap/15.6/?type=server#download","date":"2024-12-11 17:37:35"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_rospogrigiolocaltuya_local_handling_for_Tuya_devices_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_rospogrigiolocaltuya_local_handling_for_Tuya_devices_md.ajson deleted file mode 100644 index 986d06f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_rospogrigiolocaltuya_local_handling_for_Tuya_devices_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/rospogrigiolocaltuya local handling for Tuya devices.md": {"path":"000-inbox/clippings/2024/12/rospogrigiolocaltuya local handling for Tuya devices.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"owxd2i","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734318052125,"size":17775,"at":1766986878957,"hash":"owxd2i"},"blocks":{"#---frontmatter---":[1,5],"#":[6,28],"##{1}":[16,16],"##{2}":[17,17],"##{3}":[18,18],"##{4}":[19,19],"##{5}":[20,20],"##{6}":[21,28],"##Installation:":[29,36],"##Installation:#{1}":[31,36],"##Usage:":[37,44],"##Usage:#{1}":[39,44],"##Adding the Integration":[45,70],"##Adding the Integration#{1}":[47,70],"##Integration Configuration menu":[71,82],"##Integration Configuration menu#{1}":[73,82],"##Adding/editing a device":[83,120],"##Adding/editing a device#{1}":[85,120],"##Migration from LocalTuya v.3.x.x":[121,128],"##Migration from LocalTuya v.3.x.x#{1}":[123,128],"##Energy monitoring values":[129,154],"##Energy monitoring values#{1}":[131,134],"##Energy monitoring values#{2}":[135,135],"##Energy monitoring values#{3}":[136,136],"##Energy monitoring values#{4}":[137,138],"##Energy monitoring values#{5}":[139,154],"##Climates":[155,198],"##Climates#{1}":[157,198],"##Debugging":[199,212],"##Debugging#{1}":[201,212],"##Notes:":[213,218],"##Notes:#{1}":[215,216],"##Notes:#{2}":[217,218],"##To-do list:":[219,227],"##To-do list:#{1}":[221,222],"##To-do list:#{2}":[223,224],"##To-do list:#{3}":[225,227],"##Thanks to:":[228,242],"##Thanks to:#{1}":[230,242]},"outlinks":[{"title":"![logo","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/logo-small.png","line":6},{"title":"@mileperhour","target":"https://github.com/mileperhour","line":27},{"title":"@NameLessJedi","target":"https://github.com/NameLessJedi","line":27},{"title":"@TradeFace","target":"https://github.com/TradeFace","line":27},{"title":"HACS","target":"https://hacs.xyz/","line":33},{"title":"https://github.com/codetheweb/tuyapi/blob/master/docs/SETUP.md","target":"https://github.com/codetheweb/tuyapi/blob/master/docs/SETUP.md","line":41},{"title":"https://pypi.org/project/tinytuya/","target":"https://pypi.org/project/tinytuya/","line":41},{"title":"![cloud_setup","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/9-cloud_setup.png","line":53},{"title":"https://www.home-assistant.io/integrations/tuya/","target":"https://www.home-assistant.io/integrations/tuya/","line":55},{"title":"\"Get Authorization Key\"","target":"https://www.home-assistant.io/integrations/tuya/#get-authorization-key","line":55},{"title":"![user_id.png","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/8-user_id.png","line":57},{"title":"![project_date","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/6-project_date.png","line":61},{"title":"![integration_configure","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/10-integration_configure.png","line":69},{"title":"![config_menu","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/11-config_menu.png","line":77},{"title":"![discovery","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/1-discovery.png","line":91},{"title":"![image","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/2-device.png","line":103},{"title":"![entity_type","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/3-entity_type.png","line":107},{"title":"![entity","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/4-entity.png","line":115},{"title":"![success","target":"https://github.com/rospogrigio/localtuya-homeassistant/raw/master/img/5-success.png","line":119},{"title":"Configuration menu","target":"https://github.com/rospogrigio/localtuya#integration-configuration-menu","line":125},{"title":"Debugging","target":"https://github.com/rospogrigio/localtuya#debugging","line":127},{"title":"Moes BHT 002","target":"https://community.home-assistant.io/t/moes-bht-002-thermostat-local-control-tuya-based/151953/47","line":197},{"title":"Avatto thermostat","target":"https://pl.aliexpress.com/item/1005001605377377.html?gatewayAdapt=glo2pol","line":197},{"title":"https://www.home-assistant.io/integrations/integration/","target":"https://www.home-assistant.io/integrations/integration/","line":223},{"title":"https://www.home-assistant.io/integrations/utility\\_meter/","target":"https://www.home-assistant.io/integrations/utility_meter/","line":223},{"title":"#15","target":"https://github.com/rospogrigio/localtuya/issues/15","line":225},{"title":"https://github.com/mileperhour/localtuya-homeassistant","target":"https://github.com/mileperhour/localtuya-homeassistant","line":232},{"title":"https://github.com/NameLessJedi/localtuya-homeassistant","target":"https://github.com/NameLessJedi/localtuya-homeassistant","line":232},{"title":"https://github.com/TradeFace/tuya/","target":"https://github.com/TradeFace/tuya/","line":234},{"title":"![Buy Me A Coffee","target":"https://camo.githubusercontent.com/4c31625833b2598a9acf63a0a82416a0621a93d5d4f5aa285eef92593e5ebc42/68747470733a2f2f626d632d63646e2e6e7963332e6469676974616c6f6365616e7370616365732e636f6d2f424d432d627574746f6e2d696d616765732f637573746f6d5f696d616765732f6f72616e67655f696d672e706e67","line":242},{"title":"![PayPal Logo","target":"https://camo.githubusercontent.com/746ba3ca3f5a148074a4d329952463a135cb31920ef0356087b714a7d4c6aba5/68747470733a2f2f7777772e70617970616c6f626a656374732e636f6d2f7765627374617469632f6d6b74672f6c6f676f2f70705f63635f6d61726b5f33377832332e6a7067","line":242}],"metadata":{"page-title":"rospogrigio/localtuya: local handling for Tuya devices","url":"https://github.com/rospogrigio/localtuya","date":"2024-12-16 11:00:50"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_tuyapidocsSETUP_md_at_master_·_codethewebtuyapi_·_GitHub_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_tuyapidocsSETUP_md_at_master_·_codethewebtuyapi_·_GitHub_md.ajson deleted file mode 100644 index fb66fa4..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_tuyapidocsSETUP_md_at_master_·_codethewebtuyapi_·_GitHub_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/tuyapidocsSETUP.md at master · codethewebtuyapi · GitHub.md": {"path":"000-inbox/clippings/2024/12/tuyapidocsSETUP.md at master · codethewebtuyapi · GitHub.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"3ecteo","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734273001000,"size":7439,"at":1766986878957,"hash":"3ecteo"},"blocks":{"#---frontmatter---":[1,5],"#":[6,13],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps":[14,24],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps#{1}":[16,19],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps#{2}":[20,20],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps#{3}":[21,21],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps#{4}":[22,22],"##Listing Tuya devices from the **Tuya Smart** or **Smart Life** apps#{5}":[23,24],"##Linking a Tuya device with Smart Link":[25,56],"##Linking a Tuya device with Smart Link#{1}":[27,30],"##Linking a Tuya device with Smart Link#{2}":[31,31],"##Linking a Tuya device with Smart Link#{3}":[32,32],"##Linking a Tuya device with Smart Link#{4}":[33,33],"##Linking a Tuya device with Smart Link#{5}":[34,34],"##Linking a Tuya device with Smart Link#{6}":[35,35],"##Linking a Tuya device with Smart Link#{7}":[36,36],"##Linking a Tuya device with Smart Link#{8}":[37,37],"##Linking a Tuya device with Smart Link#{9}":[38,39],"##Linking a Tuya device with Smart Link#Troubleshooting":[40,56],"##Linking a Tuya device with Smart Link#Troubleshooting#{1}":[42,51],"##Linking a Tuya device with Smart Link#Troubleshooting#{2}":[52,52],"##Linking a Tuya device with Smart Link#Troubleshooting#{3}":[53,53],"##Linking a Tuya device with Smart Link#Troubleshooting#{4}":[54,54],"##Linking a Tuya device with Smart Link#Troubleshooting#{5}":[55,56],"##**DEPRECATED** - Linking a Tuya Device with MITM":[57,70],"##**DEPRECATED** - Linking a Tuya Device with MITM#{1}":[59,62],"##**DEPRECATED** - Linking a Tuya Device with MITM#{2}":[63,63],"##**DEPRECATED** - Linking a Tuya Device with MITM#{3}":[64,64],"##**DEPRECATED** - Linking a Tuya Device with MITM#{4}":[65,65],"##**DEPRECATED** - Linking a Tuya Device with MITM#{5}":[66,66],"##**DEPRECATED** - Linking a Tuya Device with MITM#{6}":[67,67],"##**DEPRECATED** - Linking a Tuya Device with MITM#{7}":[68,68],"##**DEPRECATED** - Linking a Tuya Device with MITM#{8}":[69,69],"##**DEPRECATED** - Linking a Tuya Device with MITM#{9}":[70,70]},"outlinks":[{"title":"this NPM article","target":"https://docs.npmjs.com/getting-started/fixing-npm-permissions","line":12},{"title":"iot.tuya.com","target":"https://iot.tuya.com/","line":29},{"title":"required verify step","target":"https://github.com/codetheweb/tuyapi/issues/425","line":31},{"title":"iot.tuya.com","target":"https://iot.tuya.com/","line":31},{"title":"trust the installed root certificate","target":"https://support.apple.com/en-nz/HT204477","line":65},{"title":"Configure the proxy","target":"http://www.iphonehacks.com/2017/02/how-to-configure-use-proxy-iphone-ipad.html","line":66}],"metadata":{"page-title":"tuyapi/docs/SETUP.md at master · codetheweb/tuyapi · GitHub","url":"https://github.com/codetheweb/tuyapi/blob/master/docs/SETUP.md","date":"2024-12-15 22:30:00"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_数据库从MySQL迁移到PostgreSQL_-_『HomeAssistant』综合讨论区_-_『瀚思彼岸』»_智能家居技术论坛_-_Powered_by_Discuz!_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_数据库从MySQL迁移到PostgreSQL_-_『HomeAssistant』综合讨论区_-_『瀚思彼岸』»_智能家居技术论坛_-_Powered_by_Discuz!_md.ajson deleted file mode 100644 index 3c58e9f..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_数据库从MySQL迁移到PostgreSQL_-_『HomeAssistant』综合讨论区_-_『瀚思彼岸』»_智能家居技术论坛_-_Powered_by_Discuz!_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/数据库从MySQL迁移到PostgreSQL - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz!.md": {"path":"000-inbox/clippings/2024/12/数据库从MySQL迁移到PostgreSQL - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz!.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"e5ibl3","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734671094605,"size":3863,"at":1766986878957,"hash":"e5ibl3"},"blocks":{"#---frontmatter---":[1,5],"#":[6,37],"##{1}":[10,13],"##{2}":[14,17],"##{3}":[18,19],"##{4}":[20,24],"##{5}":[25,27],"##{6}":[28,29],"##{7}":[30,34],"##{8}":[35,36],"##{9}":[37,37]},"outlinks":[],"metadata":{"page-title":"数据库从MySQL迁移到PostgreSQL - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz!","url":"https://bbs.hassbian.com/thread-24271-1-1.html","date":"2024-12-20 13:04:53"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2024_12_树莓派_OpenThread_边界路由器配置_-_YP_Lam_md.ajson b/.smart-env/multi/000-inbox_clippings_2024_12_树莓派_OpenThread_边界路由器配置_-_YP_Lam_md.ajson deleted file mode 100644 index 0755672..0000000 --- a/.smart-env/multi/000-inbox_clippings_2024_12_树莓派_OpenThread_边界路由器配置_-_YP_Lam_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2024/12/树莓派 OpenThread 边界路由器配置 - YP.Lam.md": {"path":"000-inbox/clippings/2024/12/树莓派 OpenThread 边界路由器配置 - YP.Lam.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"q42ks9","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1734059656576,"size":8311,"at":1766986878957,"hash":"q42ks9"},"blocks":{"#---frontmatter---":[1,5],"##树莓派 OpenThread 边界路由器配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread \"Permanent link\")":[6,11],"##树莓派 OpenThread 边界路由器配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread \"Permanent link\")#{1}":[8,11],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")":[12,56],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")#{1}":[14,20],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")#启用wifi与ssh[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#wifissh \"Permanent link\")":[21,50],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")#启用wifi与ssh[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#wifissh \"Permanent link\")#{1}":[23,50],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")#基础软件安装[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_2 \"Permanent link\")":[51,56],"##树莓派基础配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\")#基础软件安装[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_2 \"Permanent link\")#{1}":[53,56],"##OTBR编译安装[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#otbr \"Permanent link\")":[57,67],"##OTBR编译安装[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#otbr \"Permanent link\")#{1}":[59,67],"##RCP 配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#rcp \"Permanent link\")":[68,111],"##RCP 配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#rcp \"Permanent link\")#{1}":[70,111],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")":[112,232],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")#{1}":[114,121],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")#{2}":[122,122],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")#{3}":[123,123],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")#{4}":[124,125],"##AP模式配置[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\")#{5}":[126,232],"##配置 dnsmasq[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#dnsmasq \"Permanent link\")":[233,266],"##配置 dnsmasq[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#dnsmasq \"Permanent link\")#{1}":[235,266],"##配置 tayga[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#tayga \"Permanent link\")":[267,324],"##配置 tayga[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#tayga \"Permanent link\")#{1}":[269,324],"##创建 OpenThread 网络[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread_1 \"Permanent link\")":[325,344],"##创建 OpenThread 网络[¶](https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread_1 \"Permanent link\")#{1}":[327,344]},"outlinks":[{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread \"Permanent link\"","line":6},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_1 \"Permanent link\"","line":12},{"title":"https://www.raspberrypi.org/downloads/raspberry-pi-os/","target":"https://www.raspberrypi.org/downloads/raspberry-pi-os/","line":14},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#wifissh \"Permanent link\"","line":21},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#_2 \"Permanent link\"","line":51},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#otbr \"Permanent link\"","line":57},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#rcp \"Permanent link\"","line":68},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#ap \"Permanent link\"","line":112},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#dnsmasq \"Permanent link\"","line":233},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#tayga \"Permanent link\"","line":267},{"title":"¶","target":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/#openthread_1 \"Permanent link\"","line":325}],"metadata":{"page-title":"树莓派 OpenThread 边界路由器配置 - YP.Lam","url":"https://yplam.com/IOT/openthread/raspberry-pi-openthread/","date":"2024-12-13 11:14:15"},"task_lines":[],"tasks":{},"codeblock_ranges":[[16,19],[25,28],[32,41],[45,47],[53,55],[59,64],[72,78],[82,84],[88,90],[94,96],[100,104],[108,110],[118,120],[128,131],[135,143],[147,193],[197,200],[202,205],[209,223],[227,229],[237,259],[263,265],[271,276],[280,282],[286,289],[295,297],[301,304],[308,310],[314,317],[321,323],[327,340]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2025_01_GOPROXY_IO_-_A_Global_Proxy_for_Go_Modules_md.ajson b/.smart-env/multi/000-inbox_clippings_2025_01_GOPROXY_IO_-_A_Global_Proxy_for_Go_Modules_md.ajson deleted file mode 100644 index b6c1221..0000000 --- a/.smart-env/multi/000-inbox_clippings_2025_01_GOPROXY_IO_-_A_Global_Proxy_for_Go_Modules_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2025/01/GOPROXY.IO - A Global Proxy for Go Modules.md": {"path":"000-inbox/clippings/2025/01/GOPROXY.IO - A Global Proxy for Go Modules.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"pfr00l","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1736482728000,"size":1434,"at":1766986878957,"hash":"pfr00l"},"blocks":{"#---frontmatter---":[1,5],"#":[7,30],"####Fast":[31,34],"####Fast#{1}":[33,34],"####Reliable":[35,38],"####Reliable#{1}":[37,38],"####Open Source":[39,42],"####Open Source#{1}":[41,42],"####Checksum Database":[43,46],"####Checksum Database#{1}":[45,46],"###Who are using goproxy.io":[47,49],"###Who are using goproxy.io#{1}":[49,49]},"outlinks":[{"title":"update to the latest version","target":"https://go.dev/dl/","line":29},{"title":"documention","target":"https://goproxy.io/docs/getting-started.html","line":29},{"title":"Users map","target":"https://goproxy.io/static/users-map-59a5d8b4e61b86b58eb90f3fe88024de.svg","line":49,"embedded":true}],"metadata":{"page-title":"GOPROXY.IO - A Global Proxy for Go Modules","url":"https://goproxy.io/","date":"2025-01-10 12:18:47"},"task_lines":[],"tasks":{},"codeblock_ranges":[[13,18],[22,27]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2025_01_How_to_Find_all_Files_Containing_Specific_Text_(string)_on_Linux_-_GeeksforGeeks_md.ajson b/.smart-env/multi/000-inbox_clippings_2025_01_How_to_Find_all_Files_Containing_Specific_Text_(string)_on_Linux_-_GeeksforGeeks_md.ajson deleted file mode 100644 index e54536a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2025_01_How_to_Find_all_Files_Containing_Specific_Text_(string)_on_Linux_-_GeeksforGeeks_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2025/01/How to Find all Files Containing Specific Text (string) on Linux - GeeksforGeeks.md": {"path":"000-inbox/clippings/2025/01/How to Find all Files Containing Specific Text (string) on Linux - GeeksforGeeks.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"i7ij55","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1735907923000,"size":5090,"at":1766986878957,"hash":"i7ij55"},"blocks":{"#---frontmatter---":[1,5],"##How to Find all Files Containing Specific Text (string) on Linux":[6,11],"##How to Find all Files Containing Specific Text (string) on Linux#{1}":[8,11],"##Methods to Find All Files Containing Specific Text (string) on Linux":[12,80],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 1: grep command":[14,47],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 1: grep command#{1}":[16,47],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 2: The combination of find and grep command":[48,55],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 2: The combination of find and grep command#{1}":[50,55],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 3: Find files containing specific text with mc":[56,65],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 3: Find files containing specific text with mc#{1}":[58,65],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 4: ripgrep command":[66,73],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 4: ripgrep command#{1}":[68,73],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 5: ack command":[74,80],"##Methods to Find All Files Containing Specific Text (string) on Linux#Method 5: ack command#{1}":[76,80]},"outlinks":[{"title":"grep command","target":"https://www.geeksforgeeks.org/grep-command-in-unixlinux/","line":16},{"title":"find","target":"https://www.geeksforgeeks.org/find-command-in-linux-with-examples/","line":50}],"metadata":{"page-title":"How to Find all Files Containing Specific Text (string) on Linux - GeeksforGeeks","url":"https://www.geeksforgeeks.org/how-to-find-all-files-containing-specific-text-string-on-linux/","date":"2025-01-03 20:38:40"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2025_01_Windows_10_Virtualization_with_KVM_-_Funtoo_md.ajson b/.smart-env/multi/000-inbox_clippings_2025_01_Windows_10_Virtualization_with_KVM_-_Funtoo_md.ajson deleted file mode 100644 index f39954a..0000000 --- a/.smart-env/multi/000-inbox_clippings_2025_01_Windows_10_Virtualization_with_KVM_-_Funtoo_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2025/01/Windows 10 Virtualization with KVM - Funtoo.md": {"path":"000-inbox/clippings/2025/01/Windows 10 Virtualization with KVM - Funtoo.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"alluvf","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1736315010980,"size":14528,"at":1766986878957,"hash":"alluvf"},"blocks":{"#---frontmatter---":[1,5],"#":[7,20],"##Introduction":[21,85],"##Introduction#{1}":[23,26],"##Introduction#KVM Setup":[27,44],"##Introduction#KVM Setup#{1}":[29,44],"##Introduction#Windows 10 ISO Images":[45,62],"##Introduction#Windows 10 ISO Images#{1}":[47,62],"##Introduction#Create Raw Disk":[63,73],"##Introduction#Create Raw Disk#{1}":[65,73],"##Introduction#QEMU script":[74,85],"##Introduction#QEMU script#{1}":[76,77],"##Introduction#QEMU script#{2}":[78,78],"##Introduction#QEMU script#{3}":[79,79],"##Introduction#QEMU script#{4}":[80,81],"##Introduction#QEMU script#{5}":[82,85],"#!/bin/sh":[86,193],"#!/bin/sh#{1}":[87,111],"#!/bin/sh##Installation of Windows 10":[112,131],"#!/bin/sh##Installation of Windows 10#{1}":[114,131],"#!/bin/sh##Installation of Network Drivers":[132,137],"#!/bin/sh##Installation of Network Drivers#{1}":[134,137],"#!/bin/sh##Accessing Files on your Linux System":[138,149],"#!/bin/sh##Accessing Files on your Linux System#{1}":[140,149],"#!/bin/sh#SPICE (Accelerated Remote Connection)":[150,193],"#!/bin/sh#SPICE (Accelerated Remote Connection)#{1}":[152,153],"#!/bin/sh#SPICE (Accelerated Remote Connection)#{2}":[154,154],"#!/bin/sh#SPICE (Accelerated Remote Connection)#{3}":[155,155],"#!/bin/sh#SPICE (Accelerated Remote Connection)#{4}":[156,157],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup":[158,193],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{1}":[160,161],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{2}":[162,162],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{3}":[163,163],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{4}":[164,164],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{5}":[165,166],"#!/bin/sh#SPICE (Accelerated Remote Connection)#SPICE Setup#{6}":[167,193]},"outlinks":[{"title":"Funtoo Containers","target":"https://www.funtoo.org/Funtoo_Containers \"Funtoo Containers\"","line":13},{"title":"Funtoo Linux","target":"https://www.funtoo.org/Welcome \"Welcome\"","line":19},{"title":"the talk page","target":"https://www.funtoo.org/Windows_10_Virtualization_with_KVM/Talk \"Windows 10 Virtualization with KVM/Talk\"","line":19},{"title":"![Windows 7 Professional 32-bit running within qemu-kvm","target":"https://www.funtoo.org/images/thumb/0/00/Windows7virt.png/400px-Windows7virt.png","line":25},{"title":"SPICE","target":"https://www.funtoo.org/Windows_10_Virtualization_with_KVM#SPICE_.28Accelerated_Remote_Connection.29","line":29},{"title":"the KVM page","target":"https://www.funtoo.org/KVM \"KVM\"","line":35},{"title":"Do this first, as described on the KVM page","target":"https://www.funtoo.org/KVM \"KVM\"","line":35},{"title":"https://www.microsoft.com/en-us/software-download/windows10ISO","target":"https://www.microsoft.com/en-us/software-download/windows10ISO","line":49},{"title":"https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/","target":"https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/","line":57},{"title":"![Win10 install no drives","target":"https://www.funtoo.org/images/thumb/3/38/Win10_install_no_drives.png/800px-Win10_install_no_drives.png","line":120},{"title":"![Win10 install manually install driver","target":"https://www.funtoo.org/images/thumb/f/f4/Win10_install_manually_install_driver.png/800px-Win10_install_manually_install_driver.png","line":124},{"title":"![Windows 10 - Installing virtio storage driver","target":"https://www.funtoo.org/images/thumb/1/12/Windows-setup.png/800px-Windows-setup.png","line":128},{"title":"https://support.microsoft.com/en-us/help/4046019/guest-access-in-smb2-disabled-by-default-in-windows-10-and-windows-ser","target":"https://support.microsoft.com/en-us/help/4046019/guest-access-in-smb2-disabled-by-default-in-windows-10-and-windows-ser","line":142},{"title":"Awk by Example, Part 1","target":"https://www.funtoo.org/Awk_by_Example,_Part_1 \"Awk by Example, Part 1\"","line":182},{"title":"Awk by Example, Part 2","target":"https://www.funtoo.org/Awk_by_Example,_Part_2 \"Awk by Example, Part 2\"","line":183},{"title":"Awk by Example, Part 3","target":"https://www.funtoo.org/Awk_by_Example,_Part_3 \"Awk by Example, Part 3\"","line":184},{"title":"Bash by Example, Part 1","target":"https://www.funtoo.org/Bash_by_Example,_Part_1 \"Bash by Example, Part 1\"","line":185},{"title":"Bash by Example, Part 2","target":"https://www.funtoo.org/Bash_by_Example,_Part_2 \"Bash by Example, Part 2\"","line":186},{"title":"Bash by Example, Part 3","target":"https://www.funtoo.org/Bash_by_Example,_Part_3 \"Bash by Example, Part 3\"","line":187},{"title":"BTRFS Fun","target":"https://www.funtoo.org/BTRFS_Fun \"BTRFS Fun\"","line":188},{"title":"Funtoo Filesystem Guide, Part 1","target":"https://www.funtoo.org/Funtoo_Filesystem_Guide,_Part_1 \"Funtoo Filesystem Guide, Part 1\"","line":189},{"title":"Funtoo Filesystem Guide, Part 2","target":"https://www.funtoo.org/Funtoo_Filesystem_Guide,_Part_2 \"Funtoo Filesystem Guide, Part 2\"","line":190},{"title":"Funtoo Filesystem Guide, Part 3","target":"https://www.funtoo.org/Funtoo_Filesystem_Guide,_Part_3 \"Funtoo Filesystem Guide, Part 3\"","line":191}],"metadata":{"page-title":"Windows 10 Virtualization with KVM - Funtoo","url":"https://www.funtoo.org/Windows_10_Virtualization_with_KVM","date":"2025-01-08 13:43:29"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2025_01_iDvelrime-ice_Rime_配置:雾凇拼音__长期维护的简体词库_md.ajson b/.smart-env/multi/000-inbox_clippings_2025_01_iDvelrime-ice_Rime_配置:雾凇拼音__长期维护的简体词库_md.ajson deleted file mode 100644 index 44a1fcd..0000000 --- a/.smart-env/multi/000-inbox_clippings_2025_01_iDvelrime-ice_Rime_配置:雾凇拼音__长期维护的简体词库_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2025/01/iDvelrime-ice Rime 配置:雾凇拼音 长期维护的简体词库.md": {"path":"000-inbox/clippings/2025/01/iDvelrime-ice Rime 配置:雾凇拼音 长期维护的简体词库.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"19w5h51","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1736906852550,"size":16121,"at":1766986878957,"hash":"19w5h51"},"blocks":{"#---frontmatter---":[1,5],"##雾凇拼音":[6,27],"##雾凇拼音#{1}":[8,27],"##基本套路":[28,69],"##基本套路#{1}":[30,31],"##基本套路#{2}":[32,32],"##基本套路#{3}":[33,50],"##基本套路#{4}":[51,58],"##基本套路#{5}":[59,67],"##基本套路#{6}":[68,69],"##长期维护词库":[70,87],"##长期维护词库#{1}":[72,77],"##长期维护词库#{2}":[78,78],"##长期维护词库#{3}":[79,79],"##长期维护词库#{4}":[80,80],"##长期维护词库#{5}":[81,81],"##长期维护词库#{6}":[82,83],"##长期维护词库#{7}":[84,87],"##使用说明":[88,153],"##使用说明#{1}":[90,91],"##使用说明#选择和安装 RIME 前端":[92,127],"##使用说明#选择和安装 RIME 前端#{1}":[94,97],"##使用说明#选择和安装 RIME 前端#{2}":[98,98],"##使用说明#选择和安装 RIME 前端#{3}":[99,100],"##使用说明#选择和安装 RIME 前端#{4}":[101,120],"##使用说明#选择和安装 RIME 前端#{5}":[121,121],"##使用说明#选择和安装 RIME 前端#{6}":[122,122],"##使用说明#选择和安装 RIME 前端#{7}":[123,123],"##使用说明#选择和安装 RIME 前端#{8}":[124,124],"##使用说明#选择和安装 RIME 前端#{9}":[125,125],"##使用说明#选择和安装 RIME 前端#{10}":[126,127],"##使用说明#手动安装":[128,145],"##使用说明#手动安装#{1}":[130,145],"##使用说明#Git 安装":[146,153],"##使用说明#Git 安装#{1}":[148,153],"#更新":[154,171],"#更新#{1}":[155,159],"#更新##东风破 [plum](https://github.com/rime/plum)":[160,171],"#更新##东风破 [plum](https://github.com/rime/plum)#{1}":[162,171],"#请先安装 git 和 bash,并加入环境变量":[172,172],"#请确保和 github.com 的连接稳定":[173,175],"#请确保和 github.com 的连接稳定#{1}":[174,175],"#卸载 plum 只需要删除 ~/plum 文件夹即可":[176,272],"#卸载 plum 只需要删除 ~/plum 文件夹即可#{1}":[178,250],"#卸载 plum 只需要删除 ~/plum 文件夹即可##仓输入法 [Hamster](https://github.com/imfuxiao/Hamster)":[251,260],"#卸载 plum 只需要删除 ~/plum 文件夹即可##仓输入法 [Hamster](https://github.com/imfuxiao/Hamster)#{1}":[253,260],"#卸载 plum 只需要删除 ~/plum 文件夹即可##自动部署脚本":[261,266],"#卸载 plum 只需要删除 ~/plum 文件夹即可##自动部署脚本#{1}":[263,266],"#卸载 plum 只需要删除 ~/plum 文件夹即可##Arch Linux":[267,272],"#卸载 plum 只需要删除 ~/plum 文件夹即可##Arch Linux#{1}":[269,272],"#paru 默认会每次重新评估 pkgver,所以有新的提交时 paru 会自动更新,":[273,273],"#yay 默认未开启此功能,可以通过此命令开启":[274,274],"#yay -Y --devel --save":[275,277],"#yay -Y --devel --save#{1}":[277,277],"#yay -S rime-ice-git":[278,289],"#yay -S rime-ice-git#{1}":[280,283],"#yay -S rime-ice-git#{2}":[284,284],"#yay -S rime-ice-git#{3}":[285,286],"#yay -S rime-ice-git#{4}":[287,289],"#仅使用「雾凇拼音」的默认配置,配置此行即可":[290,291],"#仅使用「雾凇拼音」的默认配置,配置此行即可#{1}":[291,291],"#以下根据自己所需自行定义,仅做参考。":[292,292],"#针对对应处方的定制条目,请使用 .custom.yaml 中配置,例如 rime\\_ice.custom.yaml":[293,295],"#针对对应处方的定制条目,请使用 .custom.yaml 中配置,例如 rime\\_ice.custom.yaml#{1}":[294,295],"#开启逗号句号翻页":[296,331],"#开启逗号句号翻页#{1}":[297,299],"#开启逗号句号翻页#感谢 ❤️":[300,324],"#开启逗号句号翻页#感谢 ❤️#{1}":[302,305],"#开启逗号句号翻页#感谢 ❤️#{2}":[306,306],"#开启逗号句号翻页#感谢 ❤️#{3}":[307,307],"#开启逗号句号翻页#感谢 ❤️#{4}":[308,308],"#开启逗号句号翻页#感谢 ❤️#{5}":[309,309],"#开启逗号句号翻页#感谢 ❤️#{6}":[310,310],"#开启逗号句号翻页#感谢 ❤️#{7}":[311,311],"#开启逗号句号翻页#感谢 ❤️#{8}":[312,312],"#开启逗号句号翻页#感谢 ❤️#{9}":[313,314],"#开启逗号句号翻页#感谢 ❤️#{10}":[315,324],"#开启逗号句号翻页#赞助 ☕":[325,331],"#开启逗号句号翻页#赞助 ☕#{1}":[327,331]},"outlinks":[{"title":"GPL-3.0-only","target":"https://spdx.org/licenses/GPL-3.0-only.html","line":10},{"title":"![demo","target":"https://github.com/iDvel/rime-ice/raw/main/others/demo.webp","line":12},{"title":"Rime Input Method Engine / 中州韵输入法引擎","target":"https://rime.im/","line":16},{"title":"Rime 配置:雾凇拼音","target":"https://dvel.me/posts/rime-ice/","line":22},{"title":"常见问题","target":"https://github.com/iDvel/rime-ice/issues/133","line":24},{"title":"更新日志","target":"https://github.com/iDvel/rime-ice/blob/main/others/CHANGELOG.md","line":26},{"title":"优化英文输入体验","target":"https://dvel.me/posts/make-rime-en-better/","line":35},{"title":"通用规范汉字表","target":"https://github.com/iDvel/The-Table-of-General-Standard-Chinese-Characters","line":52},{"title":"UNICODE LICENSE V3","target":"https://www.unicode.org/license.txt","line":53},{"title":"Unihan 字库","target":"https://www.unicode.org/Public/","line":53},{"title":"现代汉语常用词表","target":"https://zh.wikipedia.org/wiki/%E7%8E%B0%E4%BB%A3%E6%B1%89%E8%AF%AD%E5%B8%B8%E7%94%A8%E8%AF%8D%E8%A1%A8","line":54},{"title":"华宇野风词库","target":"http://bbs.pinyin.thunisoft.com/forum.php?mod=viewthread&tid=30049","line":55},{"title":"简化字八股文","target":"https://github.com/rime/rime-essay-simp","line":56},{"title":"LGPL","target":"https://github.com/rime/rime-essay-simp/blob/master/LICENSE","line":56},{"title":"清华大学开源词库","target":"https://github.com/thunlp/THUOCL","line":57},{"title":"MIT","target":"https://github.com/thunlp/THUOCL/blob/master/LICENSE","line":57},{"title":"腾讯词向量","target":"https://ai.tencent.com/ailab/nlp/en/download.html","line":58},{"title":"CC BY 3.0","target":"https://creativecommons.org/licenses/by/3.0/","line":58},{"title":"整理","target":"https://github.com/iDvel/rime-ice/issues/24","line":58},{"title":"校对标准论坛","target":"http://www.jiaodui.com/bbs/","line":67},{"title":"#666","target":"https://github.com/iDvel/rime-ice/issues/666","line":86},{"title":"fcitx5-android","target":"https://github.com/fcitx5-android/fcitx5-android/releases","line":105},{"title":"Trime","target":"https://github.com/osfans/trime","line":106},{"title":"Hamster","target":"https://apps.apple.com/cn/app/%E4%BB%93%E8%BE%93%E5%85%A5%E6%B3%95/id6446617683","line":107},{"title":"ibus-rime","target":"https://github.com/rime/ibus-rime","line":108},{"title":"fcitx5-rime","target":"https://github.com/fcitx/fcitx5-rime","line":109},{"title":"🔗","target":"https://github.com/iDvel/rime-ice/issues/1062","line":110},{"title":"Squirrel","target":"https://github.com/rime/squirrel","line":110},{"title":"fcitx5-macos","target":"https://github.com/fcitx-contrib/fcitx5-macos","line":111},{"title":"卷轴模式","target":"https://github.com/iDvel/rime-ice/issues/941","line":111},{"title":"rime.dll","target":"https://github.com/iDvel/rime-ice/issues/197","line":112},{"title":"Weasel","target":"https://github.com/rime/weasel","line":112},{"title":"#840","target":"https://github.com/iDvel/rime-ice/issues/840","line":115},{"title":"手动安装","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E","line":121},{"title":"Git 安装","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#git-%E5%AE%89%E8%A3%85","line":122},{"title":"东风破 plum","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#%E4%B8%9C%E9%A3%8E%E7%A0%B4-plum","line":123},{"title":"自动部署脚本","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#%E8%87%AA%E5%8A%A8%E9%83%A8%E7%BD%B2%E8%84%9A%E6%9C%AC","line":124},{"title":"仓输入法","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#%E4%BB%93%E8%BE%93%E5%85%A5%E6%B3%95-hamster","line":125},{"title":"Arch Linux","target":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#arch-linux","line":126},{"title":"#356","target":"https://github.com/iDvel/rime-ice/issues/356","line":142},{"title":"Release","target":"https://github.com/iDvel/rime-ice/releases","line":144},{"title":"plum","target":"https://github.com/rime/plum","line":160},{"title":"Hamster","target":"https://github.com/imfuxiao/Hamster","line":251},{"title":"如何导入\"雾凇拼音输入方案\"","target":"https://github.com/imfuxiao/Hamster/wiki/%E5%A6%82%E4%BD%95%E5%AF%BC%E5%85%A5%22%E9%9B%BE%E6%B7%9E%E6%8B%BC%E9%9F%B3%E8%BE%93%E5%85%A5%E6%96%B9%E6%A1%88%22","line":255},{"title":"Mark24Code/rime-auto-deploy","target":"https://github.com/Mark24Code/rime-auto-deploy","line":265},{"title":"rime-ice-git","target":"https://aur.archlinux.org/packages/rime-ice-git","line":271},{"title":"补丁","target":"https://github.com/rime/home/wiki/Configuration#%E8%A3%9C%E9%9D%AA","line":280},{"title":"melt\\_eng","target":"https://github.com/tumuyan/rime-melt","line":307},{"title":"Apache 2.0","target":"https://github.com/tumuyan/rime-melt/blob/master/LICENSE","line":307},{"title":"部件拆字方案","target":"https://github.com/mirtlecn/rime-radical-pinyin","line":308},{"title":"GPL 3.0","target":"https://github.com/mirtlecn/rime-radical-pinyin/blob/master/LICENSE","line":308},{"title":"Apache 2.0","target":"https://github.com/tumuyan/rime-melt/blob/master/LICENSE","line":309},{"title":"长词优先插件","target":"https://github.com/tumuyan/rime-melt/blob/master/lua/melt.lua","line":309},{"title":"Unicode 插件","target":"https://github.com/shewer/librime-lua-script/blob/main/lua/component/unicode.lua","line":310},{"title":"MIT","target":"https://github.com/shewer/librime-lua-script/blob/main/lua/component/unicode.lua","line":310},{"title":"数字、人民币大写插件","target":"https://github.com/yanhuacuo/98wubi/blob/master/lua/number.lua","line":311},{"title":"农历插件","target":"https://github.com/boomker/rime-fast-xhup","line":312},{"title":"LGPL 3.0","target":"https://github.com/boomker/rime-fast-xhup/blob/master/LICENSE","line":312},{"title":"@Huandeep","target":"https://github.com/Huandeep","line":315},{"title":"@Mirtle","target":"https://github.com/mirtlecn","line":317},{"title":"![JetBrains","target":"https://camo.githubusercontent.com/99d59f1721da5543764f341f9013f478fd27042918fc1109aa367292a8dcca0a/68747470733a2f2f7265736f75726365732e6a6574627261696e732e636f6d2f73746f726167652f70726f64756374732f636f6d70616e792f6272616e642f6c6f676f732f6a625f6265616d2e737667","line":323},{"title":"![请 Dvel 吃个煎饼馃子","target":"https://github.com/iDvel/rime-ice/raw/main/others/sponsor.webp","line":331}],"metadata":{"page-title":"iDvel/rime-ice: Rime 配置:雾凇拼音 | 长期维护的简体词库","url":"https://github.com/iDvel/rime-ice?tab=readme-ov-file#%E4%B8%9C%E9%A3%8E%E7%A0%B4-plum","date":"2025-01-15 10:07:31"},"task_lines":[],"tasks":{},"codeblock_ranges":[[204,206],[210,212],[216,218],[222,224],[228,230],[236,243]]}, \ No newline at end of file diff --git a/.smart-env/multi/000-inbox_clippings_2025_02_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson b/.smart-env/multi/000-inbox_clippings_2025_02_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson deleted file mode 100644 index 2a23b34..0000000 --- a/.smart-env/multi/000-inbox_clippings_2025_02_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:000-inbox/clippings/2025/02/MiniCPM-oREADME_zh.md at main · OpenBMBMiniCPM-o.md": {"path":"000-inbox/clippings/2025/02/MiniCPM-oREADME_zh.md at main · OpenBMBMiniCPM-o.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"j6h5m6","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1740452554000,"size":66586,"at":1766986878957,"hash":"j6h5m6"},"blocks":{"#---frontmatter---":[1,5],"#":[6,12],"##{1}":[8,9],"##{2}":[10,12],"##更新日志":[13,64],"##更新日志#{1}":[15,16],"##更新日志##📌 置顶":[17,64],"##更新日志##📌 置顶#{1}":[19,20],"##更新日志##📌 置顶#{2}":[21,22],"##更新日志##📌 置顶#{3}":[23,24],"##更新日志##📌 置顶#{4}":[25,26],"##更新日志##📌 置顶#{5}":[27,28],"##更新日志##📌 置顶#{6}":[29,30],"##更新日志##📌 置顶#{7}":[31,32],"##更新日志##📌 置顶#{8}":[33,34],"##更新日志##📌 置顶#{9}":[35,36],"##更新日志##📌 置顶#{10}":[37,38],"##更新日志##📌 置顶#{11}":[39,42],"##更新日志##📌 置顶#{12}":[43,44],"##更新日志##📌 置顶#{13}":[45,45],"##更新日志##📌 置顶#{14}":[46,46],"##更新日志##📌 置顶#{15}":[47,47],"##更新日志##📌 置顶#{16}":[48,48],"##更新日志##📌 置顶#{17}":[49,49],"##更新日志##📌 置顶#{18}":[50,50],"##更新日志##📌 置顶#{19}":[51,51],"##更新日志##📌 置顶#{20}":[52,52],"##更新日志##📌 置顶#{21}":[53,53],"##更新日志##📌 置顶#{22}":[54,54],"##更新日志##📌 置顶#{23}":[55,55],"##更新日志##📌 置顶#{24}":[56,56],"##更新日志##📌 置顶#{25}":[57,57],"##更新日志##📌 置顶#{26}":[58,58],"##更新日志##📌 置顶#{27}":[59,59],"##更新日志##📌 置顶#{28}":[60,60],"##更新日志##📌 置顶#{29}":[61,61],"##更新日志##📌 置顶#{30}":[62,62],"##更新日志##📌 置顶#{31}":[63,64],"##目录":[65,89],"##目录#{1}":[67,68],"##目录#{2}":[69,69],"##目录#{3}":[70,70],"##目录#{4}":[71,71],"##目录#{5}":[72,85],"##目录#{6}":[86,86],"##目录#{7}":[87,87],"##目录#{8}":[88,89],"##MiniCPM-o 2.6":[90,252],"##MiniCPM-o 2.6#{1}":[92,95],"##MiniCPM-o 2.6#{2}":[96,97],"##MiniCPM-o 2.6#{3}":[98,99],"##MiniCPM-o 2.6#{4}":[100,101],"##MiniCPM-o 2.6#{5}":[102,103],"##MiniCPM-o 2.6#{6}":[104,105],"##MiniCPM-o 2.6#{7}":[106,108],"##MiniCPM-o 2.6#{8}":[109,110],"##MiniCPM-o 2.6#{9}":[111,111],"##MiniCPM-o 2.6#{10}":[112,112],"##MiniCPM-o 2.6#{11}":[113,114],"##MiniCPM-o 2.6#{12}":[115,116],"##MiniCPM-o 2.6#性能评估":[117,240],"##MiniCPM-o 2.6#性能评估#{1}":[119,240],"##MiniCPM-o 2.6#典型示例":[241,252],"##MiniCPM-o 2.6#典型示例#{1}":[243,252],"##MiniCPM-V 2.6":[253,381],"##MiniCPM-V 2.6#{1}":[255,258],"##MiniCPM-V 2.6#{2}":[259,260],"##MiniCPM-V 2.6#{3}":[261,262],"##MiniCPM-V 2.6#{4}":[263,264],"##MiniCPM-V 2.6#{5}":[265,266],"##MiniCPM-V 2.6#{6}":[267,268],"##MiniCPM-V 2.6#{7}":[269,271],"##MiniCPM-V 2.6#性能评估":[272,365],"##MiniCPM-V 2.6#性能评估#{1}":[274,365],"##MiniCPM-V 2.6#典型示例":[366,381],"##MiniCPM-V 2.6#典型示例#{1}":[368,381],"##历史版本模型":[382,392],"##历史版本模型#{1}":[384,392],"##Chat with Our Demo on Gradio 🤗":[393,422],"##Chat with Our Demo on Gradio 🤗#{1}":[395,398],"##Chat with Our Demo on Gradio 🤗#Online Demo":[399,404],"##Chat with Our Demo on Gradio 🤗#Online Demo#{1}":[401,404],"##Chat with Our Demo on Gradio 🤗#本地 WebUI Demo":[405,422],"##Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{1}":[407,412],"##Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{2}":[413,414],"##Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{3}":[415,420],"##Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{4}":[421,422],"#Make sure Node and PNPM is installed.":[423,428],"#Make sure Node and PNPM is installed.#{1}":[424,428],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.":[429,749],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#{1}":[430,444],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理":[445,749],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#{1}":[447,448],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#模型库":[449,463],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#模型库#{1}":[451,463],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话":[464,749],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#{1}":[466,514],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#多图对话":[515,541],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#多图对话#{1}":[517,541],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#少样本上下文对话":[542,575],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#少样本上下文对话#{1}":[544,575],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#视频对话":[576,628],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#视频对话#{1}":[578,628],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话":[629,749],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#{1}":[631,646],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick":[647,668],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{1}":[649,652],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{2}":[653,654],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{3}":[655,668],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#可配置声音的语音对话":[669,712],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#可配置声音的语音对话#{1}":[671,712],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#更多语音任务":[713,749],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#更多语音任务#{1}":[715,749],"#在新闻中,一个年轻男性兴致勃勃地说:“祝福亲爱的祖国母亲美丽富强!”他用低音调和低音量,慢慢地说出了这句话。":[750,750],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.":[751,1067],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#{1}":[752,775],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.###多模态流式交互":[776,912],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.###多模态流式交互#{1}":[778,912],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##多卡推理":[913,918],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##多卡推理#{1}":[915,918],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##Mac 推理":[919,952],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##Mac 推理#{1}":[921,952],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理":[953,967],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{1}":[955,962],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{2}":[963,964],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{3}":[965,965],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{4}":[966,967],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调":[968,1003],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#{1}":[970,971],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#简易微调":[972,979],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#简易微调#{1}":[974,979],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 Align-Anything":[980,987],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 Align-Anything#{1}":[982,987],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 LLaMA-Factory":[988,995],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 LLaMA-Factory#{1}":[990,995],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 SWIFT 框架":[996,1003],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 SWIFT 框架#{1}":[998,1003],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#FAQs":[1004,1009],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#FAQs#{1}":[1006,1009],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性":[1010,1019],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{1}":[1012,1015],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{2}":[1016,1016],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{3}":[1017,1017],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{4}":[1018,1019],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议":[1020,1027],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{1}":[1022,1023],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{2}":[1024,1024],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{3}":[1025,1025],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{4}":[1026,1027],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#声明":[1028,1035],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#声明#{1}":[1030,1035],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#机构":[1036,1041],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#机构#{1}":[1038,1041],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#🌟 Star History":[1042,1047],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#🌟 Star History#{1}":[1044,1047],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#支持技术和其他多模态项目":[1048,1055],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#支持技术和其他多模态项目#{1}":[1050,1055],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#引用":[1056,1067],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#引用#{1}":[1058,1067]},"outlinks":[{"title":"这里","target":"https://openbmb.notion.site/MiniCPM-o-2-6-A-GPT-4o-Level-MLLM-for-Vision-Speech-and-Multimodal-Live-Streaming-on-Your-Phone-185ede1b7a558042b5d5e45e6b237da9","line":21},{"title":"Align-Anything","target":"https://github.com/PKU-Alignment/align-anything","line":23},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-omni/examples/llava/README-minicpmo2.6.md","line":25},{"title":"vllm","target":"https://github.com/OpenBMB/MiniCPM-o?tab=readme-ov-file#efficient-inference-with-llamacpp-ollama-vllm","line":25},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":25},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-int4","line":29},{"title":"官方仓库","target":"https://github.com/ggerganov/llama.cpp","line":33},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":33},{"title":"这里","target":"https://arxiv.org/abs/2408.01800","line":37},{"title":"这里","target":"https://huggingface.co/spaces/openbmb/MiniCPM-Llama3-V-2_5","line":39},{"title":"微调文档","target":"https://github.com/OpenBMB/MiniCPM-V/tree/main/finetune","line":45},{"title":"微调","target":"https://github.com/modelscope/ms-swift/issues/1613","line":46},{"title":"官方仓库","target":"https://github.com/ggerganov/llama.cpp","line":47},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf/tree/main","line":47},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":48},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-V/blob/main/docs/inference_on_multiple_gpus.md","line":49},{"title":"这里","target":"https://github.com/OpenBMB/MiniCPM-V/tree/main/finetune#model-fine-tuning-memory-usage-statistics","line":50},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-v2.5/examples/minicpmv/README.md","line":51},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/tree/minicpm-v2.5/examples/minicpm-v2.5","line":51},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf/tree/main","line":51},{"title":"支持流式输出和自定义系统提示词","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5#usage","line":52},{"title":"llama.cpp","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#llamacpp-%E9%83%A8%E7%BD%B2","line":53},{"title":"gguf","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf","line":53},{"title":"这里","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/compare_with_phi-3_vision.md","line":54},{"title":"简易微调","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/finetune/readme.md","line":55},{"title":"高效推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%89%8B%E6%9C%BA%E7%AB%AF%E9%83%A8%E7%BD%B2","line":55},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":56},{"title":"demo","target":"https://huggingface.co/spaces/openbmb/MiniCPM-V-2","line":57},{"title":"WebUI Demo","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0webui-demo%E9%83%A8%E7%BD%B2","line":58},{"title":"微调","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v-2%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":59},{"title":"这里","target":"https://openbmb.vercel.app/minicpm-v-2","line":60},{"title":"OpenCompass","target":"https://rank.opencompass.org.cn/leaderboard-multimodal","line":60},{"title":"Jintao","target":"https://github.com/Jintao-Huang","line":61},{"title":"微调","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":61},{"title":"MiniCPM-o 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#minicpm-o-26","line":69},{"title":"MiniCPM-V 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#minicpm-v-26","line":70},{"title":"Chat with Our Demo on Gradio 🤗","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#chat-with-our-demo-on-gradio-","line":71},{"title":"推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%8E%A8%E7%90%86","line":72},{"title":"模型库","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%A8%A1%E5%9E%8B%E5%BA%93","line":73},{"title":"多轮对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E8%BD%AE%E5%AF%B9%E8%AF%9D","line":74},{"title":"多图对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E5%9B%BE%E5%AF%B9%E8%AF%9D","line":75},{"title":"少样本上下文对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%B0%91%E6%A0%B7%E6%9C%AC%E4%B8%8A%E4%B8%8B%E6%96%87%E5%AF%B9%E8%AF%9D","line":76},{"title":"视频对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E8%A7%86%E9%A2%91%E5%AF%B9%E8%AF%9D","line":77},{"title":"语音对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E8%AF%AD%E9%9F%B3%E5%AF%B9%E8%AF%9D","line":78},{"title":"Mimick","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#mimick","line":79},{"title":"可配置声音的语音对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%8F%AF%E9%85%8D%E7%BD%AE%E5%A3%B0%E9%9F%B3%E7%9A%84%E8%AF%AD%E9%9F%B3%E5%AF%B9%E8%AF%9D","line":80},{"title":"更多语音任务","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9B%B4%E5%A4%9A%E8%AF%AD%E9%9F%B3%E4%BB%BB%E5%8A%A1","line":81},{"title":"多模态流式交互","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E6%A8%A1%E6%80%81%E6%B5%81%E5%BC%8F%E4%BA%A4%E4%BA%92","line":82},{"title":"多卡推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E5%8D%A1%E6%8E%A8%E7%90%86","line":83},{"title":"Mac 推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#mac-%E6%8E%A8%E7%90%86","line":84},{"title":"基于 llama.cpp、ollama、vLLM 的高效推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%9F%BA%E4%BA%8E-llamacppollamavllm-%E7%9A%84%E9%AB%98%E6%95%88%E6%8E%A8%E7%90%86","line":85},{"title":"微调","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%BE%AE%E8%B0%83","line":86},{"title":"FAQs","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#faqs","line":87},{"title":"模型局限性","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%A8%A1%E5%9E%8B%E5%B1%80%E9%99%90%E6%80%A7","line":88},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM","line":102},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V/","line":102},{"title":"RLHF-V","target":"https://rlhf-v.github.io/","line":102},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-omni/examples/llava/README-minicpmo2.6.md","line":106},{"title":"LLaMA-Factory","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/llamafactory_train_and_infer.md","line":106},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%9F%BA%E4%BA%8E-llamacppollamavllm-%E7%9A%84%E9%AB%98%E6%95%88%E6%8E%A8%E7%90%86","line":106},{"title":"Gradio","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0-webui-demo-","line":106},{"title":"GGUF","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":106},{"title":"int4","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":106},{"title":"demo","target":"https://minicpm-omni-webdemo-us.modelbest.cn/","line":106},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpm-o-26-framework-v2.png","line":115},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/radar.jpg","line":121},{"title":"AudioEvals","target":"https://github.com/OpenBMB/UltraEval-Audio","line":204},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmo2_6/2dot6_o_demo_video_img.png","line":247},{"title":"![diagram","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmo2_6/minicpmo2_6_diagram_train_NN.png","line":249},{"title":"![math","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmo2_6/minicpmo2_6_math_intersect.png","line":249},{"title":"![bike","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmo2_6/minicpmo2_6_multi-image_bike.png","line":249},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM","line":265},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V/","line":265},{"title":"demo","target":"http://120.92.209.146:8887/","line":269},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpmv-main/examples/llava/README-minicpmv2.6.md","line":269},{"title":"Gradio","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0-webui-demo-","line":269},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":269},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":269},{"title":"GGUF","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":269},{"title":"int4","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":269},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/radar_final.png","line":276},{"title":"![Mem","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/ICL-Mem.png","line":370},{"title":"![Bike","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/multi_img-bike.png","line":370},{"title":"![Code","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/multi_img-code.png","line":370},{"title":"![Menu","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/multi_img-menu.png","line":370},{"title":"![medal","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/multiling-medal.png","line":370},{"title":"![elec","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/ICL-elec.png","line":374},{"title":"![Menu","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmv2_6/multiling-olympic.png","line":374},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/gif_cases/ai.gif","line":378},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/gif_cases/beer.gif","line":378},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_llama3_v2dot5.md","line":388},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_v2.md","line":389},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_v1.md","line":390},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/omnilmm.md","line":391},{"title":"![","target":"https://camo.githubusercontent.com/0aad2cc35d9b929ec7344ece3bbe7884c9618b501d29c029fffc324932e3f50d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f67726164696f2d6170702f67726164696f","line":397},{"title":"MiniCPM-V 2.6","target":"http://120.92.209.146:8887/","line":403},{"title":"MiniCPM-Llama3-V 2.5","target":"https://huggingface.co/spaces/openbmb/MiniCPM-Llama3-V-2_5","line":403},{"title":"MiniCPM-V 2.0","target":"https://huggingface.co/spaces/openbmb/MiniCPM-V-2","line":403},{"title":"文档","target":"https://modelbest.feishu.cn/wiki/RnjjwnUT7idMSdklQcacd2ktnyN","line":409},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":455},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6","line":455},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":456},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-gguf","line":456},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":457},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-int4","line":457},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":458},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6","line":458},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":459},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":459},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/modelscope_logo.png","line":460},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":460},{"title":"历史版本模型","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#legacy-models","line":462},{"title":"![","target":"https://github.com/OpenBMB/MiniCPM-o/raw/main/assets/minicpmo2_6/show_demo.jpg","line":472},{"title":"教程","target":"https://github.com/OpenBMB/MiniCPM-V/blob/main/docs/inference_on_multiple_gpus.md","line":917},{"title":"我们的fork llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/tree/minicpmv-main/examples/llava/README-minicpmv2.6.md","line":957},{"title":"我们的fork ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":959},{"title":"图文示例","target":"https://docs.vllm.ai/en/latest/getting_started/examples/vision_language.html","line":965},{"title":"音频示例","target":"https://docs.vllm.ai/en/latest/getting_started/examples/audio_language.html","line":966},{"title":"参考文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/finetune/readme.md","line":978},{"title":"Align-Anything","target":"https://github.com/PKU-Alignment/align-anything","line":984},{"title":"数据集、模型和评测","target":"https://huggingface.co/datasets/PKU-Alignment/align-anything","line":984},{"title":"MiniCPM-o 2.6","target":"https://github.com/PKU-Alignment/align-anything/tree/main/scripts","line":986},{"title":"MiniCPM-o 2.6 | MiniCPM-V 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/llamafactory_train_and_infer.md","line":994},{"title":"MiniCPM-V 2.6","target":"https://github.com/modelscope/ms-swift/issues/1613","line":1002},{"title":"MiniCPM-V 2.0","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v-2%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":1002},{"title":"MiniCPM-V 1.0","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":1002},{"title":"FAQs","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/faqs.md","line":1008},{"title":"Apache-2.0","target":"https://github.com/OpenBMB/MiniCPM/blob/main/LICENSE","line":1024},{"title":"“MiniCPM模型商用许可协议.md”","target":"https://github.com/OpenBMB/MiniCPM/blob/main/MiniCPM%E6%A8%A1%E5%9E%8B%E5%95%86%E7%94%A8%E8%AE%B8%E5%8F%AF%E5%8D%8F%E8%AE%AE.md","line":1025},{"title":"“问卷”","target":"https://modelbest.feishu.cn/share/base/form/shrcnpV5ZT9EJ6xYjh3Kx0J6v8g","line":1026},{"title":"Star History Chart","target":"https://camo.githubusercontent.com/81c0177bdfeaa118be4e602dea7caac117e91c835e412c3750f74290f21d6150/68747470733a2f2f6170692e737461722d686973746f72792e636f6d2f7376673f7265706f733d4f70656e424d422f4d696e6943504d2d6f26747970653d44617465","line":1046,"embedded":true},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM/tree/main","line":1054},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V","line":1054},{"title":"RLHF-V","target":"https://github.com/RLHF-V/RLHF-V","line":1054},{"title":"LLaVA-UHD","target":"https://github.com/thunlp/LLaVA-UHD","line":1054}],"metadata":{"page-title":"MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o","url":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md","date":"2025-02-25 11:02:21","tags":["#Try"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[509,513]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_AutoGPT_md.ajson b/.smart-env/multi/100-project_Personal_AI_AutoGPT_md.ajson deleted file mode 100644 index 31a10a3..0000000 --- a/.smart-env/multi/100-project_Personal_AI_AutoGPT_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/AutoGPT.md": {"path":"100-project/Personal/AI/AutoGPT.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1fluw7u","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1681633549000,"size":5,"at":1766986878039,"hash":"1fluw7u"},"blocks":{"#":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_ChatGPT_md.ajson b/.smart-env/multi/100-project_Personal_AI_ChatGPT_md.ajson deleted file mode 100644 index cf7190b..0000000 --- a/.smart-env/multi/100-project_Personal_AI_ChatGPT_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/ChatGPT.md": {"path":"100-project/Personal/AI/ChatGPT.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jk5j9u","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765522887769,"size":1301,"at":1766986878039,"hash":"1jk5j9u"},"blocks":{"#":[1,88]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Cursor_plan_md.ajson b/.smart-env/multi/100-project_Personal_AI_Cursor_plan_md.ajson deleted file mode 100644 index b19c58d..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Cursor_plan_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Cursor/plan.md": {"path":"100-project/Personal/AI/Cursor/plan.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14fxqcq","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1763078259000,"size":11257,"at":1766986878957,"hash":"14fxqcq"},"blocks":{"#":[2,5],"#go-caatsm Refactor Plan":[6,477],"#go-caatsm Refactor Plan#Objective":[8,28],"#go-caatsm Refactor Plan#Objective#{1}":[10,11],"#go-caatsm Refactor Plan#Objective#{2}":[12,13],"#go-caatsm Refactor Plan#Objective#{3}":[14,15],"#go-caatsm Refactor Plan#Objective#{4}":[16,17],"#go-caatsm Refactor Plan#Objective#{5}":[18,19],"#go-caatsm Refactor Plan#Objective#{6}":[20,21],"#go-caatsm Refactor Plan#Objective#{7}":[22,24],"#go-caatsm Refactor Plan#Objective#{8}":[25,28],"#go-caatsm Refactor Plan#High-Level Architecture":[29,67],"#go-caatsm Refactor Plan#High-Level Architecture#{1}":[31,54],"#go-caatsm Refactor Plan#High-Level Architecture#{2}":[55,56],"#go-caatsm Refactor Plan#High-Level Architecture#{3}":[57,58],"#go-caatsm Refactor Plan#High-Level Architecture#{4}":[59,60],"#go-caatsm Refactor Plan#High-Level Architecture#{5}":[61,62],"#go-caatsm Refactor Plan#High-Level Architecture#{6}":[63,65],"#go-caatsm Refactor Plan#High-Level Architecture#{7}":[66,67],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration":[68,93],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#{1}":[70,71],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks":[72,84],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks#{1}":[74,75],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks#{2}":[76,77],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks#{3}":[78,79],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks#{4}":[80,81],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Tasks#{5}":[82,84],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Acceptance Criteria":[85,93],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Acceptance Criteria#{1}":[87,88],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Acceptance Criteria#{2}":[89,91],"#go-caatsm Refactor Plan#Phase 1 — Project Structure Migration#Acceptance Criteria#{3}":[92,93],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf":[94,146],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#{1}":[96,97],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks":[98,110],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks#{1}":[100,101],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks#{2}":[102,103],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks#{3}":[104,105],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks#{4}":[106,107],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Tasks#{5}":[108,110],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Example (参考实现思路)":[111,135],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Example (参考实现思路)#{1}":[113,135],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Acceptance Criteria":[136,146],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Acceptance Criteria#{1}":[138,139],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Acceptance Criteria#{2}":[140,141],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Acceptance Criteria#{3}":[142,144],"#go-caatsm Refactor Plan#Phase 2 — Replace Viper → Koanf#Acceptance Criteria#{4}":[145,146],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection":[147,213],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#{1}":[149,150],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Tasks":[151,173],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Tasks#{1}":[153,154],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Tasks#{2}":[155,168],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Tasks#{3}":[169,170],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Tasks#{4}":[171,173],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Example Wire skeleton":[174,202],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Example Wire skeleton#{1}":[176,202],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Acceptance Criteria":[203,213],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Acceptance Criteria#{1}":[205,206],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Acceptance Criteria#{2}":[207,208],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Acceptance Criteria#{3}":[209,211],"#go-caatsm Refactor Plan#Phase 3 — Wire Dependency Injection#Acceptance Criteria#{4}":[212,213],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream":[214,285],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#{1}":[216,217],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Tasks":[218,238],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Tasks#{1}":[220,233],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Tasks#{2}":[234,235],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Tasks#{3}":[236,238],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Example 消费逻辑骨架":[239,274],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Example 消费逻辑骨架#{1}":[241,274],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Acceptance Criteria":[275,285],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Acceptance Criteria#{1}":[277,278],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Acceptance Criteria#{2}":[279,280],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Acceptance Criteria#{3}":[281,283],"#go-caatsm Refactor Plan#Phase 4 — Replace Watermill → nats.go JetStream#Acceptance Criteria#{4}":[284,285],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)":[286,341],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#{1}":[288,289],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks":[290,306],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks#{1}":[292,293],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks#{2}":[294,299],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks#{3}":[300,301],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks#{4}":[302,303],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Tasks#{5}":[304,306],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Example CopyFrom 骨架":[307,330],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Example CopyFrom 骨架#{1}":[309,330],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Acceptance Criteria":[331,341],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Acceptance Criteria#{1}":[333,334],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Acceptance Criteria#{2}":[335,336],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Acceptance Criteria#{3}":[337,339],"#go-caatsm Refactor Plan#Phase 5 — Replace Hasura GraphQL → PostgreSQL (pgx)#Acceptance Criteria#{4}":[340,341],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)":[342,379],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#{1}":[344,345],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Tasks":[346,368],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Tasks#{1}":[348,365],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Tasks#{2}":[366,368],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Acceptance Criteria":[369,379],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Acceptance Criteria#{1}":[371,372],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Acceptance Criteria#{2}":[373,374],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Acceptance Criteria#{3}":[375,377],"#go-caatsm Refactor Plan#Phase 6 — Application Layer (Processor)#Acceptance Criteria#{4}":[378,379],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability":[380,411],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#{1}":[382,383],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Tasks":[384,402],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Tasks#{1}":[386,387],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Tasks#{2}":[388,389],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Tasks#{3}":[390,399],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Tasks#{4}":[400,402],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Acceptance Criteria":[403,411],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Acceptance Criteria#{1}":[405,406],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Acceptance Criteria#{2}":[407,409],"#go-caatsm Refactor Plan#Phase 7 — Logging & Observability#Acceptance Criteria#{3}":[410,411],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup":[412,441],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#{1}":[414,415],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks":[416,430],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{1}":[418,419],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{2}":[420,421],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{3}":[422,423],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{4}":[424,425],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{5}":[426,427],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Tasks#{6}":[428,430],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Acceptance Criteria":[431,441],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Acceptance Criteria#{1}":[433,434],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Acceptance Criteria#{2}":[435,436],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Acceptance Criteria#{3}":[437,439],"#go-caatsm Refactor Plan#Phase 8 — Remove Dead Code & Cleanup#Acceptance Criteria#{4}":[440,441],"#go-caatsm Refactor Plan#Final Acceptance Criteria":[442,477],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{1}":[444,445],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{2}":[446,455],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{3}":[456,465],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{4}":[466,469],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{5}":[470,474],"#go-caatsm Refactor Plan#Final Acceptance Criteria#{6}":[475,477]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[33,51],[113,134],[176,201],[241,273],[309,329]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Cursor_rules_md.ajson b/.smart-env/multi/100-project_Personal_AI_Cursor_rules_md.ajson deleted file mode 100644 index 0ce5f61..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Cursor_rules_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Cursor/rules.md": {"path":"100-project/Personal/AI/Cursor/rules.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1dw04l4","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1764727414913,"size":29430,"at":1766986878957,"hash":"1dw04l4"},"blocks":{"#":[2,857]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,21],[25,234],[238,277],[281,404],[407,580],[584,688],[692,789],[793,856]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_DeepSeek_md.ajson b/.smart-env/multi/100-project_Personal_AI_DeepSeek_md.ajson deleted file mode 100644 index 6876249..0000000 --- a/.smart-env/multi/100-project_Personal_AI_DeepSeek_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/DeepSeek.md": {"path":"100-project/Personal/AI/DeepSeek.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jf8q1h","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765600504000,"size":113,"at":1766986878039,"hash":"1jf8q1h"},"blocks":{"#":[3,14]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,7],[11,13]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Kiro_in-memoria_md.ajson b/.smart-env/multi/100-project_Personal_AI_Kiro_in-memoria_md.ajson deleted file mode 100644 index 87bbdec..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Kiro_in-memoria_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Kiro/in-memoria.md": {"path":"100-project/Personal/AI/Kiro/in-memoria.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1azkg9m","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1765941945803,"size":3857,"at":1766986878957,"hash":"1azkg9m"},"blocks":{"#":[1,124]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,124]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Matrix_Bot_md.ajson b/.smart-env/multi/100-project_Personal_AI_Matrix_Bot_md.ajson deleted file mode 100644 index 25e1af6..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Matrix_Bot_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Matrix Bot.md": {"path":"100-project/Personal/AI/Matrix Bot.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"shwpnm","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1766118065000,"size":9734,"at":1766986878039,"hash":"shwpnm"},"blocks":{"#":[3,28],"##azure gpt bot":[29,261],"##azure gpt bot#{1}":[30,261]},"outlinks":[{"title":"Creating user accounts Dendrite","target":"Creating user accounts Dendrite","line":6}],"task_lines":[],"tasks":{},"codeblock_ranges":[[58,96],[103,172],[175,221],[225,261]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Ollama_md.ajson b/.smart-env/multi/100-project_Personal_AI_Ollama_md.ajson deleted file mode 100644 index 78c7cf9..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Ollama_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Ollama.md": {"path":"100-project/Personal/AI/Ollama.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"xr3f9m","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765513813789,"size":72,"at":1766986878039,"hash":"xr3f9m"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_OpenRouter_md.ajson b/.smart-env/multi/100-project_Personal_AI_OpenRouter_md.ajson deleted file mode 100644 index ffbfc8d..0000000 --- a/.smart-env/multi/100-project_Personal_AI_OpenRouter_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/OpenRouter.md": {"path":"100-project/Personal/AI/OpenRouter.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"n6byir","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1763827140000,"size":193,"at":1766986878039,"hash":"n6byir"},"blocks":{"##Key":[2,13],"##Key#{1}":[3,13]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6],[9,11]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Payment_Design_gemini_md.ajson b/.smart-env/multi/100-project_Personal_AI_Payment_Design_gemini_md.ajson deleted file mode 100644 index 1a6ec4d..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Payment_Design_gemini_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Payment/Design/gemini.md": {"path":"100-project/Personal/AI/Payment/Design/gemini.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ecz1kj","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1748225700876,"size":14935,"at":1766986879407,"hash":"1ecz1kj"},"blocks":{"#":[2,69],"##{1}":[8,8],"##{2}":[9,16],"##{3}":[17,17],"##{4}":[18,25],"##{5}":[26,26],"##{6}":[27,34],"##{7}":[35,35],"##{8}":[36,42],"##{9}":[43,43],"##{10}":[44,51],"##{11}":[52,52],"##{12}":[53,59],"##{13}":[60,60],"##{14}":[61,69],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用":[70,149],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{1}":[72,75],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{2}":[76,76],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{3}":[77,77],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{4}":[78,78],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{5}":[79,79],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{6}":[80,80],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{7}":[81,82],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#{8}":[83,86],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#1. Agent身份与授权 (Agent Identity & Authorization)":[87,95],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#1. Agent身份与授权 (Agent Identity & Authorization)#{1}":[89,89],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#1. Agent身份与授权 (Agent Identity & Authorization)#{2}":[90,90],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#1. Agent身份与授权 (Agent Identity & Authorization)#{3}":[91,93],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#1. Agent身份与授权 (Agent Identity & Authorization)#{4}":[94,95],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#2. 计费模型与协议 (Pricing Models & Protocols)":[96,102],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#2. 计费模型与协议 (Pricing Models & Protocols)#{1}":[98,98],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#2. 计费模型与协议 (Pricing Models & Protocols)#{2}":[99,99],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#2. 计费模型与协议 (Pricing Models & Protocols)#{3}":[100,100],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#2. 计费模型与协议 (Pricing Models & Protocols)#{4}":[101,102],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#3. 使用量追踪与实时计量 (Usage Tracking & Real-time Metering)":[103,108],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#3. 使用量追踪与实时计量 (Usage Tracking & Real-time Metering)#{1}":[105,105],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#3. 使用量追踪与实时计量 (Usage Tracking & Real-time Metering)#{2}":[106,106],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#3. 使用量追踪与实时计量 (Usage Tracking & Real-time Metering)#{3}":[107,108],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#4. 支付清算与结算 (Payment Clearing & Settlement)":[109,118],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#4. 支付清算与结算 (Payment Clearing & Settlement)#{1}":[111,111],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#4. 支付清算与结算 (Payment Clearing & Settlement)#{2}":[112,115],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#4. 支付清算与结算 (Payment Clearing & Settlement)#{3}":[116,116],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#4. 支付清算与结算 (Payment Clearing & Settlement)#{4}":[117,118],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#5. 安全、信任与风险管理 (Security, Trust & Risk Management)":[119,128],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#5. 安全、信任与风险管理 (Security, Trust & Risk Management)#{1}":[121,121],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#5. 安全、信任与风险管理 (Security, Trust & Risk Management)#{2}":[122,125],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#5. 安全、信任与风险管理 (Security, Trust & Risk Management)#{3}":[126,126],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#5. 安全、信任与风险管理 (Security, Trust & Risk Management)#{4}":[127,128],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#6. 互操作性与标准 (Interoperability & Standards)":[129,134],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#6. 互操作性与标准 (Interoperability & Standards)#{1}":[131,131],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#6. 互操作性与标准 (Interoperability & Standards)#{2}":[132,132],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#6. 互操作性与标准 (Interoperability & Standards)#{3}":[133,134],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)":[135,149],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{1}":[137,137],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{2}":[138,138],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{3}":[139,140],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{4}":[141,142],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{5}":[143,143],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{6}":[144,144],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{7}":[145,146],"##为未来互联Agent世界设计在线支付系统:聚焦Agent间调用#7. 开发者体验与管理工具 (Developer Experience & Management Tools)#{8}":[147,149]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Prompt_Cycling_md.ajson b/.smart-env/multi/100-project_Personal_AI_Prompt_Cycling_md.ajson deleted file mode 100644 index 95cc9cc..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Prompt_Cycling_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Prompt/Cycling.md": {"path":"100-project/Personal/AI/Prompt/Cycling.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1nradmz","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1687938200824,"size":1279,"at":1766986878957,"hash":"1nradmz"},"blocks":{"#":[2,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Prompt_Dev_md.ajson b/.smart-env/multi/100-project_Personal_AI_Prompt_Dev_md.ajson deleted file mode 100644 index 4c9299c..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Prompt_Dev_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Prompt/Dev.md": {"path":"100-project/Personal/AI/Prompt/Dev.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1k0yjmf","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1763225459000,"size":13107,"at":1766986878957,"hash":"1k0yjmf"},"blocks":{"#":[2,5],"#Code Review Prompt (improved)":[6,123],"#Code Review Prompt (improved)#{1}":[8,9],"#Code Review Prompt (improved)#Inputs":[10,17],"#Code Review Prompt (improved)#Inputs#{1}":[12,12],"#Code Review Prompt (improved)#Inputs#{2}":[13,14],"#Code Review Prompt (improved)#Inputs#{3}":[15,17],"#Code Review Prompt (improved)#Scope of Review":[18,42],"#Code Review Prompt (improved)#Scope of Review#{1}":[20,21],"#Code Review Prompt (improved)#Scope of Review#{2}":[22,25],"#Code Review Prompt (improved)#Scope of Review#{3}":[26,29],"#Code Review Prompt (improved)#Scope of Review#{4}":[30,33],"#Code Review Prompt (improved)#Scope of Review#{5}":[34,37],"#Code Review Prompt (improved)#Scope of Review#{6}":[38,42],"#Code Review Prompt (improved)#Deliverables (use this exact structure)":[43,97],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#1) Executive Summary":[45,49],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#1) Executive Summary#{1}":[47,49],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#2) Findings Table":[50,53],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#2) Findings Table#{1}":[52,53],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#3) Patch Suggestions":[54,65],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#3) Patch Suggestions#{1}":[56,65],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#4) Tests to Add":[66,76],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#4) Tests to Add#{1}":[68,69],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#4) Tests to Add#{2}":[70,71],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#4) Tests to Add#{3}":[72,73],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#4) Tests to Add#{4}":[74,76],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#5) Performance Notes":[77,83],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#5) Performance Notes#{1}":[79,80],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#5) Performance Notes#{2}":[81,83],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#6) Security Checklist":[84,88],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#6) Security Checklist#{1}":[86,88],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#7) Maintainability Improvements":[89,93],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#7) Maintainability Improvements#{1}":[91,93],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#8) Quality Scores":[94,97],"#Code Review Prompt (improved)#Deliverables (use this exact structure)#8) Quality Scores#{1}":[96,97],"#Code Review Prompt (improved)#Constraints":[98,108],"#Code Review Prompt (improved)#Constraints#{1}":[100,101],"#Code Review Prompt (improved)#Constraints#{2}":[102,103],"#Code Review Prompt (improved)#Constraints#{3}":[104,105],"#Code Review Prompt (improved)#Constraints#{4}":[106,108],"#Code Review Prompt (improved)#Output Format":[109,123],"#Code Review Prompt (improved)#Output Format#{1}":[111,123],"#Code Review Prompt (final)":[124,420],"#Code Review Prompt (final)#{1}":[126,129],"#Code Review Prompt (final)#Inputs":[130,158],"#Code Review Prompt (final)#Inputs#{1}":[132,137],"#Code Review Prompt (final)#Inputs#{2}":[134,137],"#Code Review Prompt (final)#Inputs#{3}":[138,154],"#Code Review Prompt (final)#Inputs#{4}":[155,158],"#Code Review Prompt (final)#Scope of Review":[159,233],"#Code Review Prompt (final)#Scope of Review#{1}":[161,162],"#Code Review Prompt (final)#Scope of Review#{2}":[163,176],"#Code Review Prompt (final)#Scope of Review#{3}":[177,188],"#Code Review Prompt (final)#Scope of Review#{4}":[189,202],"#Code Review Prompt (final)#Scope of Review#{5}":[203,216],"#Code Review Prompt (final)#Scope of Review#{6}":[217,231],"#Code Review Prompt (final)#Scope of Review#{7}":[232,233],"#Code Review Prompt (final)#Deliverables (use this exact structure)":[234,393],"#Code Review Prompt (final)#Deliverables (use this exact structure)#1) Executive Summary":[236,242],"#Code Review Prompt (final)#Deliverables (use this exact structure)#1) Executive Summary#{1}":[238,239],"#Code Review Prompt (final)#Deliverables (use this exact structure)#1) Executive Summary#{2}":[240,242],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table":[243,267],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{1}":[245,246],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{2}":[247,248],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{3}":[249,250],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{4}":[251,252],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{5}":[253,254],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{6}":[255,256],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{7}":[257,258],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{8}":[259,261],"#Code Review Prompt (final)#Deliverables (use this exact structure)#2) Findings Table#{9}":[262,267],"#Code Review Prompt (final)#Deliverables (use this exact structure)#3) Patch Suggestions":[268,282],"#Code Review Prompt (final)#Deliverables (use this exact structure)#3) Patch Suggestions#{1}":[270,277],"#Code Review Prompt (final)#Deliverables (use this exact structure)#3) Patch Suggestions#{2}":[278,279],"#Code Review Prompt (final)#Deliverables (use this exact structure)#3) Patch Suggestions#{3}":[280,282],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add":[283,303],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add#{1}":[285,286],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add#{2}":[287,292],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add#{3}":[293,296],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add#{4}":[297,301],"#Code Review Prompt (final)#Deliverables (use this exact structure)#4) Tests to Add#{5}":[302,303],"#Code Review Prompt (final)#Deliverables (use this exact structure)#5) Performance Notes":[304,322],"#Code Review Prompt (final)#Deliverables (use this exact structure)#5) Performance Notes#{1}":[306,307],"#Code Review Prompt (final)#Deliverables (use this exact structure)#5) Performance Notes#{2}":[308,315],"#Code Review Prompt (final)#Deliverables (use this exact structure)#5) Performance Notes#{3}":[316,322],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist":[323,345],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{1}":[325,326],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{2}":[327,328],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{3}":[329,330],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{4}":[331,332],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{5}":[333,334],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{6}":[335,336],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{7}":[337,338],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{8}":[339,340],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{9}":[341,343],"#Code Review Prompt (final)#Deliverables (use this exact structure)#6) Security Checklist#{10}":[344,345],"#Code Review Prompt (final)#Deliverables (use this exact structure)#7) Maintainability Improvements":[346,374],"#Code Review Prompt (final)#Deliverables (use this exact structure)#7) Maintainability Improvements#{1}":[348,355],"#Code Review Prompt (final)#Deliverables (use this exact structure)#7) Maintainability Improvements#{2}":[356,361],"#Code Review Prompt (final)#Deliverables (use this exact structure)#7) Maintainability Improvements#{3}":[362,367],"#Code Review Prompt (final)#Deliverables (use this exact structure)#7) Maintainability Improvements#{4}":[368,374],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores":[375,393],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{1}":[377,378],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{2}":[379,380],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{3}":[381,382],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{4}":[383,384],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{5}":[385,386],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{6}":[387,388],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{7}":[389,391],"#Code Review Prompt (final)#Deliverables (use this exact structure)#8) Quality Scores#{8}":[392,393],"#Code Review Prompt (final)#Constraints":[394,408],"#Code Review Prompt (final)#Constraints#{1}":[396,397],"#Code Review Prompt (final)#Constraints#{2}":[398,399],"#Code Review Prompt (final)#Constraints#{3}":[400,401],"#Code Review Prompt (final)#Constraints#{4}":[402,403],"#Code Review Prompt (final)#Constraints#{5}":[404,406],"#Code Review Prompt (final)#Constraints#{6}":[407,408],"#Code Review Prompt (final)#Output Format":[409,420],"#Code Review Prompt (final)#Output Format#{1}":[411,420],"#可观测性 —— **4.5 / 10**":[421,446],"#可观测性 —— **4.5 / 10**#{1}":[423,424],"#可观测性 —— **4.5 / 10**#{2}":[425,426],"#可观测性 —— **4.5 / 10**#{3}":[427,429],"#可观测性 —— **4.5 / 10**#{4}":[430,431],"#可观测性 —— **4.5 / 10**#{5}":[432,433],"#可观测性 —— **4.5 / 10**#{6}":[434,435],"#可观测性 —— **4.5 / 10**#{7}":[436,437],"#可观测性 —— **4.5 / 10**#{8}":[438,439],"#可观测性 —— **4.5 / 10**#{9}":[440,442],"#可观测性 —— **4.5 / 10**#{10}":[443,446],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**":[447,526],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{1}":[449,450],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{2}":[451,452],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{3}":[453,454],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{4}":[455,457],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{5}":[458,459],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{6}":[460,461],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{7}":[462,463],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{8}":[464,465],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{9}":[466,467],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{10}":[468,470],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**#{11}":[471,474],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失":[475,496],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{1}":[477,478],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{2}":[479,480],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{3}":[481,482],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{4}":[483,484],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{5}":[485,486],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{6}":[487,488],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{7}":[489,491],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##严格评审的缺失#{8}":[492,496],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##⭐ 有点:":[497,503],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##⭐ 有点:#{1}":[499,500],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##⭐ 有点:#{2}":[501,503],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)":[504,526],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{1}":[506,507],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{2}":[508,509],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{3}":[510,511],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{4}":[512,513],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{5}":[514,515],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{6}":[516,517],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{7}":[518,519],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{8}":[520,522],"#4️⃣ 可靠性(Reliability & Fault Handling)—— **5.5 / 10**##❌ 不足(按专业要求)#{9}":[523,526]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[58,62],[134,136],[272,276]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Prompt_Movie_md.ajson b/.smart-env/multi/100-project_Personal_AI_Prompt_Movie_md.ajson deleted file mode 100644 index fd82861..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Prompt_Movie_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Prompt/Movie.md": {"path":"100-project/Personal/AI/Prompt/Movie.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x74hli","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1685693262908,"size":1710,"at":1766986878957,"hash":"x74hli"},"blocks":{"#":[3,29],"##{1}":[6,6],"##{2}":[7,7],"##{3}":[8,8],"##{4}":[9,16],"##{5}":[17,17],"##{6}":[18,18],"##{7}":[19,19],"##{8}":[20,29]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Prompt_baibot_md.ajson b/.smart-env/multi/100-project_Personal_AI_Prompt_baibot_md.ajson deleted file mode 100644 index dbca7b6..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Prompt_baibot_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Prompt/baibot.md": {"path":"100-project/Personal/AI/Prompt/baibot.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1nes33f","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1764820161000,"size":8939,"at":1766986878957,"hash":"1nes33f"},"blocks":{"#":[3,225]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,107],[112,165],[169,224]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_Zenmux_md.ajson b/.smart-env/multi/100-project_Personal_AI_Zenmux_md.ajson deleted file mode 100644 index 813adc2..0000000 --- a/.smart-env/multi/100-project_Personal_AI_Zenmux_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/Zenmux.md": {"path":"100-project/Personal/AI/Zenmux.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"pkgm4k","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1763360530822,"size":309,"at":1766986878039,"hash":"pkgm4k"},"blocks":{"#":[3,26]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6],[9,11],[13,15],[17,19],[22,24]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_huggingface_md.ajson b/.smart-env/multi/100-project_Personal_AI_huggingface_md.ajson deleted file mode 100644 index 40255e1..0000000 --- a/.smart-env/multi/100-project_Personal_AI_huggingface_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/huggingface.md": {"path":"100-project/Personal/AI/huggingface.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1b4oelq","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765522916742,"size":59,"at":1766986878039,"hash":"1b4oelq"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_local_litellm_md.ajson b/.smart-env/multi/100-project_Personal_AI_local_litellm_md.ajson deleted file mode 100644 index 7b46aeb..0000000 --- a/.smart-env/multi/100-project_Personal_AI_local_litellm_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/local litellm.md": {"path":"100-project/Personal/AI/local litellm.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"f2jsex","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1766735389620,"size":3727,"at":1766986878039,"hash":"f2jsex"},"blocks":{"#":[3,4],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)":[5,133],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#{1}":[7,10],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)":[11,31],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)#{1}":[13,14],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)#{2}":[15,18],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)#{3}":[19,24],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)#{4}":[25,29],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#1. 核心参数规范 (Critical Specs)#{5}":[30,31],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)":[32,69],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)#{1}":[34,35],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)#基础信息 (General Settings)":[36,45],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)#基础信息 (General Settings)#{1}":[38,45],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)#高级参数 (LiteLLM Params / Metadata)":[46,69],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#2. UI 配置方案 (推荐)#高级参数 (LiteLLM Params / Metadata)#{1}":[48,69],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#3. YAML 文件配置方案 (IaC)":[70,103],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#3. YAML 文件配置方案 (IaC)#{1}":[72,103],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#4. 故障排查手册 (Troubleshooting)":[104,114],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#4. 故障排查手册 (Troubleshooting)#{1}":[106,114],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#5. 客户端调用示例":[115,133],"#📘 LiteLLM 配置指南:NewCli (AWS/Anthropic Proxy)#5. 客户端调用示例#{1}":[117,133]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[54,64],[76,100],[121,131]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_mcp_md.ajson b/.smart-env/multi/100-project_Personal_AI_mcp_md.ajson deleted file mode 100644 index 6acda14..0000000 --- a/.smart-env/multi/100-project_Personal_AI_mcp_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/mcp.md": {"path":"100-project/Personal/AI/mcp.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1n81bfk","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1763441615000,"size":73,"at":1766986878039,"hash":"1n81bfk"},"blocks":{"#":[3,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_open_webui_md.ajson b/.smart-env/multi/100-project_Personal_AI_open_webui_md.ajson deleted file mode 100644 index a983458..0000000 --- a/.smart-env/multi/100-project_Personal_AI_open_webui_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/open webui.md": {"path":"100-project/Personal/AI/open webui.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1s3jxn","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1766737949787,"size":821,"at":1766986878039,"hash":"1s3jxn"},"blocks":{"#":[2,37]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,37]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_rules_md.ajson b/.smart-env/multi/100-project_Personal_AI_rules_md.ajson deleted file mode 100644 index 9581f26..0000000 --- a/.smart-env/multi/100-project_Personal_AI_rules_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/rules.md": {"path":"100-project/Personal/AI/rules.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1hdg1y5","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1764601485000,"size":1167,"at":1766986878039,"hash":"1hdg1y5"},"blocks":{"#":[2,45]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,42]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_AI_x_ai_md.ajson b/.smart-env/multi/100-project_Personal_AI_x_ai_md.ajson deleted file mode 100644 index 673588a..0000000 --- a/.smart-env/multi/100-project_Personal_AI_x_ai_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/AI/x ai.md": {"path":"100-project/Personal/AI/x ai.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jqkw0z","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765600694000,"size":102,"at":1766986878039,"hash":"1jqkw0z"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Backup_Matrix_Me_md.ajson b/.smart-env/multi/100-project_Personal_Backup_Matrix_Me_md.ajson deleted file mode 100644 index 16e2a1f..0000000 --- a/.smart-env/multi/100-project_Personal_Backup_Matrix_Me_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Backup/Matrix Me.md": {"path":"100-project/Personal/Backup/Matrix Me.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5jirxp","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1681863528000,"size":6859,"at":1766986878039,"hash":"5jirxp"},"blocks":{"#":[1,20],"##{1}":[1,4],"##{2}":[7,14],"##{3}":[15,18],"##{4}":[19,20],"##Wed, Aug 3 2022":[21,34],"##Wed, Aug 3 2022#{1}":[23,24],"##Wed, Aug 3 2022#{2}":[25,30],"##Wed, Aug 3 2022#{3}":[31,32],"##Wed, Aug 3 2022#{4}":[33,34],"##Sun, Oct 9 2022":[35,54],"##Sun, Oct 9 2022#{1}":[37,38],"##Sun, Oct 9 2022#{2}":[39,40],"##Sun, Oct 9 2022#{3}":[41,47],"##Sun, Oct 9 2022#{4}":[48,50],"##Sun, Oct 9 2022#{5}":[51,52],"##Sun, Oct 9 2022#{6}":[53,54],"##Wed, Nov 2 2022":[55,67],"##Wed, Nov 2 2022#{1}":[57,58],"##Wed, Nov 2 2022#{2}":[59,61],"##Wed, Nov 2 2022#{3}":[62,65],"##Wed, Nov 2 2022#{4}":[66,67],"##Thu, Nov 10 2022":[68,79],"##Thu, Nov 10 2022#{1}":[70,71],"##Thu, Nov 10 2022#{2}":[72,75],"##Thu, Nov 10 2022#{3}":[76,77],"##Thu, Nov 10 2022#{4}":[78,79],"##Thu, Nov 17 2022":[80,91],"##Thu, Nov 17 2022#{1}":[82,83],"##Thu, Nov 17 2022#{2}":[84,87],"##Thu, Nov 17 2022#{3}":[88,89],"##Thu, Nov 17 2022#{4}":[90,91],"##Wed, Feb 15 2023":[92,107],"##Wed, Feb 15 2023#{1}":[94,95],"##Wed, Feb 15 2023#{2}":[96,98],"##Wed, Feb 15 2023#{3}":[99,100],"##Wed, Feb 15 2023#{4}":[101,103],"##Wed, Feb 15 2023#{5}":[104,105],"##Wed, Feb 15 2023#{6}":[106,107],"##Thu, Feb 16 2023":[108,120],"##Thu, Feb 16 2023#{1}":[110,111],"##Thu, Feb 16 2023#{2}":[112,114],"##Thu, Feb 16 2023#{3}":[115,118],"##Thu, Feb 16 2023#{4}":[119,120],"##Sat, Mar 11 2023":[121,128],"##Sat, Mar 11 2023#{1}":[123,126],"##Sat, Mar 11 2023#{2}":[127,128],"##Mon, Mar 13 2023":[129,159],"##Mon, Mar 13 2023#{1}":[131,132],"##Mon, Mar 13 2023#{2}":[133,136],"##Mon, Mar 13 2023#{3}":[137,138],"##Mon, Mar 13 2023#{4}":[139,145],"##Mon, Mar 13 2023#{5}":[146,149],"##Mon, Mar 13 2023#{6}":[150,151],"##Mon, Mar 13 2023#{7}":[152,155],"##Mon, Mar 13 2023#{8}":[156,157],"##Mon, Mar 13 2023#{9}":[158,159],"##Wed, Mar 15 2023":[160,171],"##Wed, Mar 15 2023#{1}":[162,163],"##Wed, Mar 15 2023#{2}":[164,167],"##Wed, Mar 15 2023#{3}":[168,169],"##Wed, Mar 15 2023#{4}":[170,171],"##Mon, Mar 20 2023":[172,187],"##Mon, Mar 20 2023#{1}":[174,175],"##Mon, Mar 20 2023#{2}":[176,179],"##Mon, Mar 20 2023#{3}":[180,181],"##Mon, Mar 20 2023#{4}":[182,183],"##Mon, Mar 20 2023#{5}":[184,185],"##Mon, Mar 20 2023#{6}":[186,187],"##Wed, Mar 22 2023":[188,218],"##Wed, Mar 22 2023#{1}":[190,191],"##Wed, Mar 22 2023#{2}":[192,194],"##Wed, Mar 22 2023#{3}":[195,196],"##Wed, Mar 22 2023#{4}":[197,198],"##Wed, Mar 22 2023#{5}":[199,206],"##Wed, Mar 22 2023#{6}":[207,208],"##Wed, Mar 22 2023#{7}":[209,216],"##Wed, Mar 22 2023#{8}":[217,218],"##Thu, Mar 23 2023":[219,230],"##Thu, Mar 23 2023#{1}":[221,222],"##Thu, Mar 23 2023#{2}":[223,226],"##Thu, Mar 23 2023#{3}":[227,228],"##Thu, Mar 23 2023#{4}":[229,230],"##Mon, Mar 27 2023":[231,242],"##Mon, Mar 27 2023#{1}":[233,234],"##Mon, Mar 27 2023#{2}":[235,238],"##Mon, Mar 27 2023#{3}":[239,240],"##Mon, Mar 27 2023#{4}":[241,242],"##Tue, Mar 28 2023":[243,250],"##Tue, Mar 28 2023#{1}":[245,248],"##Tue, Mar 28 2023#{2}":[249,250],"##Wed, Mar 29 2023":[251,274],"##Wed, Mar 29 2023#{1}":[253,254],"##Wed, Mar 29 2023#{2}":[255,256],"##Wed, Mar 29 2023#{3}":[257,262],"##Wed, Mar 29 2023#{4}":[263,266],"##Wed, Mar 29 2023#{5}":[267,268],"##Wed, Mar 29 2023#{6}":[269,272],"##Wed, Mar 29 2023#{7}":[273,274],"##Thursday":[275,289],"##Thursday#{1}":[277,278],"##Thursday#{2}":[279,282],"##Thursday#{3}":[283,284],"##Thursday#{4}":[285,288],"##Thursday#{5}":[289,289]},"outlinks":[{"title":"https://www.dogsheep.cn/transform/Q08CyX81GI","target":"https://www.dogsheep.cn/transform/Q08CyX81GI","line":5},{"title":"https://live.qq.com/10014465","target":"https://live.qq.com/10014465","line":13},{"title":"https://www.lanjing.live/live/1016753","target":"https://www.lanjing.live/live/1016753","line":17},{"title":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","target":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","line":31},{"title":"android.permission.READ","target":"http://android.permission.read/","line":43},{"title":"https://gzshb.gzonline.gov.cn/index.html","target":"https://gzshb.gzonline.gov.cn/index.html","line":51},{"title":"gzzn.ipowersoft.net:8092","target":"http://gzzn.ipowersoft.net:8092/","line":62},{"title":"https://docs.qq.com/sheet/DTEhJSmNiYm53clBk","target":"https://docs.qq.com/sheet/DTEhJSmNiYm53clBk","line":76},{"title":"https://decentralizedcreator.com/reverse-prompt-lookup-image-to-prompt/","target":"https://decentralizedcreator.com/reverse-prompt-lookup-image-to-prompt/","line":99},{"title":"https://marketplace.visualstudio.com/items?itemName=vaibhavacharya.code-gpt-va","target":"https://marketplace.visualstudio.com/items?itemName=vaibhavacharya.code-gpt-va","line":104},{"title":"gzzn.ipowersoft.net:8092","target":"http://gzzn.ipowersoft.net:8092/","line":115},{"title":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","target":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","line":137},{"title":"https://sub.cutecloud.link/link/rCvnzdf6GsYxO0TT?clash=1","target":"https://sub.cutecloud.link/link/rCvnzdf6GsYxO0TT?clash=1","line":150},{"title":"https://subapi1.gardenparty.one/link/7662I1Snxww7zkgq?sub=2&client=clash","target":"https://subapi1.gardenparty.one/link/7662I1Snxww7zkgq?sub=2&client=clash","line":156},{"title":"https://18.laomao1.xyz/api/v1/client/subscribe?token=daddf8de9b1e002478b6fc59a6760e85","target":"https://18.laomao1.xyz/api/v1/client/subscribe?token=daddf8de9b1e002478b6fc59a6760e85","line":168},{"title":"\n \n ![20230322_172549.jpg","target":"blob:https://app.element.io/f01ed754-55a6-4fa1-9288-c7beebacf35c","line":199},{"title":"\n \n ![20230322_172600.jpg","target":"blob:https://app.element.io/2f909ed3-b52f-4bf6-a580-3b64218901fa","line":209},{"title":"https://giffgaff.com/auth/reset/new-password?token=cf6b4bd286076012b66d74c282d60f7a02324fd3&username=bb668161","target":"https://giffgaff.com/auth/reset/new-password?token=cf6b4bd286076012b66d74c282d60f7a02324fd3&username=bb668161","line":227},{"title":"2Fmy.1password.com","target":"http://2fmy.1password.com/","line":261},{"title":"40gmail.com","target":"http://40gmail.com/","line":261},{"title":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","target":"https://api.inforun.work/v1/service/10004950?hmac=51EA681FE0EF28CB8766BA258D2555D8C0CBF849E1DCA1183C6C4C59585C1607&lang=&templateId=22","line":267}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Backup_TTG_Cookies_md.ajson b/.smart-env/multi/100-project_Personal_Backup_TTG_Cookies_md.ajson deleted file mode 100644 index 23c5458..0000000 --- a/.smart-env/multi/100-project_Personal_Backup_TTG_Cookies_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Backup/TTG Cookies.md": {"path":"100-project/Personal/Backup/TTG Cookies.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"197f5z8","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1753096629000,"size":1346,"at":1766986878039,"hash":"197f5z8"},"blocks":{"#":[1,57]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[1,56]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Cooking_酸黄瓜制作_md.ajson b/.smart-env/multi/100-project_Personal_Cooking_酸黄瓜制作_md.ajson deleted file mode 100644 index c8f27e1..0000000 --- a/.smart-env/multi/100-project_Personal_Cooking_酸黄瓜制作_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Cooking/酸黄瓜制作.md": {"path":"100-project/Personal/Cooking/酸黄瓜制作.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"47d73u","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1681792103000,"size":111,"at":1766986878039,"hash":"47d73u"},"blocks":{"##2023.4.18 尝试":[2,9],"##2023.4.18 尝试#{1}":[3,9]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_Github_md.ajson b/.smart-env/multi/100-project_Personal_Dev_Github_md.ajson deleted file mode 100644 index fcaba47..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_Github_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/Github.md": {"path":"100-project/Personal/Dev/Github.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ub9jva","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1756101649494,"size":120,"at":1766986878039,"hash":"ub9jva"},"blocks":{"#":[4,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,7]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_Notion_md.ajson b/.smart-env/multi/100-project_Personal_Dev_Notion_md.ajson deleted file mode 100644 index 8417911..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_Notion_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/Notion.md": {"path":"100-project/Personal/Dev/Notion.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hfr7zi","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1685189532000,"size":56,"at":1766986878039,"hash":"hfr7zi"},"blocks":{"#":[2,3]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_PlayWright_md.ajson b/.smart-env/multi/100-project_Personal_Dev_PlayWright_md.ajson deleted file mode 100644 index f999bb1..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_PlayWright_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/PlayWright.md": {"path":"100-project/Personal/Dev/PlayWright.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"fnonec","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1764382105000,"size":2687,"at":1766986878039,"hash":"fnonec"},"blocks":{"#":[2,7],"###📋 Prerequisites":[8,13],"###📋 Prerequisites#{1}":[9,9],"###📋 Prerequisites#{2}":[10,11],"###📋 Prerequisites#{3}":[12,13],"###🚀 Step 1: System Prep & Node.js":[14,22],"###🚀 Step 1: System Prep & Node.js#{1}":[15,22],"###📦 Step 2: Install System Dependencies (The Critical Step)":[23,53],"###📦 Step 2: Install System Dependencies (The Critical Step)#{1}":[24,53],"###🛠️ Step 3: Initialize Playwright":[54,68],"###🛠️ Step 3: Initialize Playwright#{1}":[55,68],"###✅ Step 4: Run Tests":[69,77],"###✅ Step 4: Run Tests#{1}":[70,77],"###💡 Troubleshooting Cheat Sheet":[78,87],"###💡 Troubleshooting Cheat Sheet#{1}":[80,87]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[17,21],[26,52],[57,67],[72,74]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_Rust_Notes_md.ajson b/.smart-env/multi/100-project_Personal_Dev_Rust_Notes_md.ajson deleted file mode 100644 index 95dca04..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_Rust_Notes_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/Rust/Notes.md": {"path":"100-project/Personal/Dev/Rust/Notes.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"176gz33","at":1766986878409},"class_name":"SmartSource","last_import":{"mtime":1679551632742,"size":57,"at":1766986878957,"hash":"176gz33"},"blocks":{"#":[3,4]},"outlinks":[{"title":"Scope and Shadowing - Rust By Example","target":"Scope and Shadowing - Rust By Example","line":3}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_Shell_Zsh_Oh_My_Posh_md.ajson b/.smart-env/multi/100-project_Personal_Dev_Shell_Zsh_Oh_My_Posh_md.ajson deleted file mode 100644 index a7de3f7..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_Shell_Zsh_Oh_My_Posh_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/Shell/Zsh Oh My Posh.md": {"path":"100-project/Personal/Dev/Shell/Zsh Oh My Posh.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"g23lbz","at":1766986879322},"class_name":"SmartSource","last_import":{"mtime":1735092373568,"size":5345,"at":1766986879407,"hash":"g23lbz"},"blocks":{"#":[2,3],"##Installation Steps":[4,65],"##Installation Steps#1. Download the Oh My Posh Binary":[6,12],"##Installation Steps#1. Download the Oh My Posh Binary#{1}":[7,12],"##Installation Steps#2. Set Executable Permissions":[13,19],"##Installation Steps#2. Set Executable Permissions#{1}":[14,19],"##Installation Steps#3. Create a Directory for Themes":[20,26],"##Installation Steps#3. Create a Directory for Themes#{1}":[21,26],"##Installation Steps#4. Download Themes":[27,45],"##Installation Steps#4. Download Themes#{1}":[28,45],"##Installation Steps#5. Update Your Zsh Configuration":[46,58],"##Installation Steps#5. Update Your Zsh Configuration#{1}":[47,58],"##Installation Steps#6. Apply Changes":[59,65],"##Installation Steps#6. Apply Changes#{1}":[60,65],"##Additional Configuration":[66,173],"##Additional Configuration#Install a Nerd Font (Optional)":[68,70],"##Additional Configuration#Install a Nerd Font (Optional)#{1}":[69,70],"##Additional Configuration#Set Terminal Font":[71,173],"##Additional Configuration#Set Terminal Font#{1}":[72,173]},"outlinks":[{"title":" -n $ZENO_LOADED ","target":"-n $ZENO_LOADED","line":117}],"task_lines":[],"tasks":{},"codeblock_ranges":[[9,11],[16,18],[23,25],[30,32],[36,38],[42,44],[49,51],[55,57],[62,64],[88,173]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Dev_Tauri_Learn_Tauri_md.ajson b/.smart-env/multi/100-project_Personal_Dev_Tauri_Learn_Tauri_md.ajson deleted file mode 100644 index 377591f..0000000 --- a/.smart-env/multi/100-project_Personal_Dev_Tauri_Learn_Tauri_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Dev/Tauri/Learn Tauri.md": {"path":"100-project/Personal/Dev/Tauri/Learn Tauri.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14lfijv","at":1766986879322},"class_name":"SmartSource","last_import":{"mtime":1679539086434,"size":1,"at":1766986879407,"hash":"14lfijv"},"blocks":{},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Furniture_Inside_Size_md.ajson b/.smart-env/multi/100-project_Personal_Furniture_Inside_Size_md.ajson deleted file mode 100644 index e2937a0..0000000 --- a/.smart-env/multi/100-project_Personal_Furniture_Inside_Size_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Furniture/Inside Size.md": {"path":"100-project/Personal/Furniture/Inside Size.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1upsws7","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1733197925000,"size":117,"at":1766986878039,"hash":"1upsws7"},"blocks":{"#":[3,19]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Furniture_box_md.ajson b/.smart-env/multi/100-project_Personal_Furniture_box_md.ajson deleted file mode 100644 index c8755b2..0000000 --- a/.smart-env/multi/100-project_Personal_Furniture_box_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Furniture/box.md": {"path":"100-project/Personal/Furniture/box.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"btabd4","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1735525383084,"size":46,"at":1766986878039,"hash":"btabd4"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Game_文明_md.ajson b/.smart-env/multi/100-project_Personal_Game_文明_md.ajson deleted file mode 100644 index 830659b..0000000 --- a/.smart-env/multi/100-project_Personal_Game_文明_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Game/文明.md": {"path":"100-project/Personal/Game/文明.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16h1myn","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1739274332000,"size":84,"at":1766986878039,"hash":"16h1myn"},"blocks":{"#":[2,10]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[7,9]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Github_md.ajson b/.smart-env/multi/100-project_Personal_Github_md.ajson deleted file mode 100644 index 68ce99c..0000000 --- a/.smart-env/multi/100-project_Personal_Github_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Github.md": {"path":"100-project/Personal/Github.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7tfi6k","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1765594220000,"size":174,"at":1766986877914,"hash":"7tfi6k"},"blocks":{"#":[3,13]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[10,12]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_ER-X_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_ER-X_md.ajson deleted file mode 100644 index 9b6c484..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_ER-X_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/ER-X.md": {"path":"100-project/Personal/Hardware/ER-X.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1fc67z5","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734522657000,"size":37334,"at":1766986878039,"hash":"1fc67z5"},"blocks":{"#":[1,183],"##{1}":[175,175],"##{2}":[176,176],"##{3}":[177,177],"##{4}":[178,183],"###执行步骤":[184,959],"###执行步骤#{1}":[186,186],"###执行步骤#{2}":[187,194],"###执行步骤#{3}":[195,195],"###执行步骤#{4}":[196,199],"###执行步骤#{5}":[200,205],"###执行步骤#{6}":[202,205],"###执行步骤#{7}":[206,414],"###执行步骤#{8}":[208,414],"###执行步骤#{9}":[415,422],"###执行步骤#{10}":[417,422],"###执行步骤#{11}":[423,430],"###执行步骤#{12}":[431,959],"##Step-by-Step Configuration":[960,1037],"##Step-by-Step Configuration#1. Access the EdgeRouter":[962,965],"##Step-by-Step Configuration#1. Access the EdgeRouter#{1}":[964,965],"##Step-by-Step Configuration#2. Configure the WAN Connection":[966,974],"##Step-by-Step Configuration#2. Configure the WAN Connection#{1}":[968,974],"##Step-by-Step Configuration#2. Configure the WAN Connection#{2}":[969,974],"##Step-by-Step Configuration#3. Configure IGMP Proxy":[975,1004],"##Step-by-Step Configuration#3. Configure IGMP Proxy#{1}":[977,981],"##Step-by-Step Configuration#3. Configure IGMP Proxy#{2}":[978,981],"##Step-by-Step Configuration#3. Configure IGMP Proxy#{3}":[982,1004],"##Step-by-Step Configuration#3. Configure IGMP Proxy#{4}":[984,1004],"##Step-by-Step Configuration#4. Commit and Save Changes":[1005,1011],"##Step-by-Step Configuration#4. Commit and Save Changes#{1}":[1007,1011],"##Step-by-Step Configuration#4. Commit and Save Changes#{2}":[1008,1011],"##Step-by-Step Configuration#5. Verify Configuration":[1012,1018],"##Step-by-Step Configuration#5. Verify Configuration#{1}":[1014,1018],"##Step-by-Step Configuration#5. Verify Configuration#{2}":[1015,1018],"##Step-by-Step Configuration#Additional Considerations":[1019,1037],"##Step-by-Step Configuration#Additional Considerations#{1}":[1021,1022],"##Step-by-Step Configuration#Additional Considerations#{2}":[1023,1024],"##Step-by-Step Configuration#Additional Considerations#{3}":[1025,1026],"##Step-by-Step Configuration#Additional Considerations#{4}":[1027,1037]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,167],[189,191],[202,204],[208,412],[417,421],[438,440],[442,448],[451,456],[460,464],[466,474],[478,944],[947,949],[953,955],[969,973],[978,980],[984,988],[993,997],[999,1003],[1008,1010],[1015,1017]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_Freenas_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_Freenas_md.ajson deleted file mode 100644 index 97885bf..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_Freenas_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/Freenas.md": {"path":"100-project/Personal/Hardware/Freenas.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"kio9xp","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734335914695,"size":125,"at":1766986878039,"hash":"kio9xp"},"blocks":{"#":[2,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,7]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_Scribe_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_Scribe_md.ajson deleted file mode 100644 index 7b9de02..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_Scribe_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/Home Assistant/Scribe.md": {"path":"100-project/Personal/Hardware/Home Assistant/Scribe.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"f53s1s","at":1766986879322},"class_name":"SmartSource","last_import":{"mtime":1765070101000,"size":219,"at":1766986879407,"hash":"f53s1s"},"blocks":{"#":[2,12]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,11]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_tailcale_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_tailcale_md.ajson deleted file mode 100644 index 6310115..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_tailcale_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/Home Assistant/tailcale.md": {"path":"100-project/Personal/Hardware/Home Assistant/tailcale.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vqcu5q","at":1766986879322},"class_name":"SmartSource","last_import":{"mtime":1765504502052,"size":253,"at":1766986879407,"hash":"vqcu5q"},"blocks":{"#":[2,19]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[9,11],[16,18]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_南方电网_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_南方电网_md.ajson deleted file mode 100644 index 5b89da8..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_Home_Assistant_南方电网_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/Home Assistant/南方电网.md": {"path":"100-project/Personal/Hardware/Home Assistant/南方电网.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"jkbtyw","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1764899697640,"size":65880,"at":1766986879407,"hash":"jkbtyw"},"blocks":{"#":[5,902],"#🔌 南方电网电力监控完整配置指南":[903,1740],"#🔌 南方电网电力监控完整配置指南#📋 目录":[905,913],"#🔌 南方电网电力监控完整配置指南#📋 目录#{1}":[906,906],"#🔌 南方电网电力监控完整配置指南#📋 目录#{2}":[907,907],"#🔌 南方电网电力监控完整配置指南#📋 目录#{3}":[908,908],"#🔌 南方电网电力监控完整配置指南#📋 目录#{4}":[909,909],"#🔌 南方电网电力监控完整配置指南#📋 目录#{5}":[910,911],"#🔌 南方电网电力监控完整配置指南#📋 目录#{6}":[912,913],"#🔌 南方电网电力监控完整配置指南#前置要求":[914,929],"#🔌 南方电网电力监控完整配置指南#前置要求#必需组件":[916,920],"#🔌 南方电网电力监控完整配置指南#前置要求#必需组件#{1}":[917,917],"#🔌 南方电网电力监控完整配置指南#前置要求#必需组件#{2}":[918,918],"#🔌 南方电网电力监控完整配置指南#前置要求#必需组件#{3}":[919,920],"#🔌 南方电网电力监控完整配置指南#前置要求#安装必需组件":[921,929],"#🔌 南方电网电力监控完整配置指南#前置要求#安装必需组件#{1}":[922,929],"#🔌 南方电网电力监控完整配置指南#完整配置文件":[930,1618],"#🔌 南方电网电力监控完整配置指南#完整配置文件#📝 configuration.yaml":[932,1371],"#🔌 南方电网电力监控完整配置指南#完整配置文件#📝 configuration.yaml#{1}":[934,1371],"#🔌 南方电网电力监控完整配置指南#完整配置文件#📊 仪表板配置(dashboard.yaml)":[1372,1618],"#🔌 南方电网电力监控完整配置指南#完整配置文件#📊 仪表板配置(dashboard.yaml)#{1}":[1374,1618],"#🔌 南方电网电力监控完整配置指南#安装步骤":[1619,1647],"#🔌 南方电网电力监控完整配置指南#安装步骤#1️⃣ 安装依赖":[1621,1627],"#🔌 南方电网电力监控完整配置指南#安装步骤#1️⃣ 安装依赖#{1}":[1622,1627],"#🔌 南方电网电力监控完整配置指南#安装步骤#2️⃣ 配置传感器":[1628,1636],"#🔌 南方电网电力监控完整配置指南#安装步骤#2️⃣ 配置传感器#{1}":[1629,1636],"#🔌 南方电网电力监控完整配置指南#安装步骤#3️⃣ 创建仪表板":[1637,1647],"#🔌 南方电网电力监控完整配置指南#安装步骤#3️⃣ 创建仪表板#{1}":[1638,1647],"#🔌 南方电网电力监控完整配置指南#调试方法":[1648,1676],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 检查传感器状态":[1650,1656],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 检查传感器状态#{1}":[1651,1656],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 查看所有传感器":[1657,1662],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 查看所有传感器#{1}":[1658,1662],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 检查数据结构":[1663,1668],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 检查数据结构#{1}":[1664,1668],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 验证图表数据":[1669,1676],"#🔌 南方电网电力监控完整配置指南#调试方法#🔍 验证图表数据#{1}":[1670,1676],"#🔌 南方电网电力监控完整配置指南#常见问题":[1677,1716],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 传感器显示 `unknown`":[1679,1687],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 传感器显示 `unknown`#{1}":[1680,1687],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 图表不显示":[1688,1696],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 图表不显示#{1}":[1689,1696],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 实体ID不匹配":[1697,1705],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 实体ID不匹配#{1}":[1698,1705],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 配置检查失败":[1706,1716],"#🔌 南方电网电力监控完整配置指南#常见问题#❌ 配置检查失败#{1}":[1707,1716],"#🔌 南方电网电力监控完整配置指南#📌 重要提示":[1717,1725],"#🔌 南方电网电力监控完整配置指南#📌 重要提示#{1}":[1719,1719],"#🔌 南方电网电力监控完整配置指南#📌 重要提示#{2}":[1720,1720],"#🔌 南方电网电力监控完整配置指南#📌 重要提示#{3}":[1721,1721],"#🔌 南方电网电力监控完整配置指南#📌 重要提示#{4}":[1722,1723],"#🔌 南方电网电力监控完整配置指南#📌 重要提示#{5}":[1724,1725],"#🔌 南方电网电力监控完整配置指南#🎯 功能清单":[1726,1740],"#🔌 南方电网电力监控完整配置指南#🎯 功能清单#{1}":[1728,1740]},"outlinks":[{"title":"前置要求","target":"#前置要求","line":906},{"title":"完整配置文件","target":"#完整配置文件","line":907},{"title":"安装步骤","target":"#安装步骤","line":908},{"title":"调试方法","target":"#调试方法","line":909},{"title":"常见问题","target":"#常见问题","line":910}],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,347],[352,898],[922,926],[936,1368],[1376,1615],[1622,1626],[1629,1635],[1638,1644],[1651,1655],[1658,1661],[1664,1667],[1670,1673],[1682,1686],[1691,1695],[1700,1704],[1709,1713]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_Matter_Thread_Boarder_Router_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_Matter_Thread_Boarder_Router_md.ajson deleted file mode 100644 index b6cc65e..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_Matter_Thread_Boarder_Router_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/Matter/Thread Boarder Router.md": {"path":"100-project/Personal/Hardware/Matter/Thread Boarder Router.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bx3gua","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1734060940797,"size":1712,"at":1766986879407,"hash":"bx3gua"},"blocks":{"###**什么是 Matter Thread Border Router?**":[2,10],"###**什么是 Matter Thread Border Router?**#{1}":[4,5],"###**什么是 Matter Thread Border Router?**#{2}":[6,6],"###**什么是 Matter Thread Border Router?**#{3}":[7,8],"###**什么是 Matter Thread Border Router?**#{4}":[9,10],"###**当前推荐的产品(2024 年)**":[11,35],"###**当前推荐的产品(2024 年)**#{1}":[13,17],"###**当前推荐的产品(2024 年)**#{2}":[18,22],"###**当前推荐的产品(2024 年)**#{3}":[23,27],"###**当前推荐的产品(2024 年)**#{4}":[28,33],"###**当前推荐的产品(2024 年)**#{5}":[34,35],"###**推荐购买依据**":[36,46],"###**推荐购买依据**#{1}":[38,38],"###**推荐购买依据**#{2}":[39,39],"###**推荐购买依据**#{3}":[40,40],"###**推荐购买依据**#{4}":[41,42],"###**推荐购买依据**#{5}":[43,46]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_ubnt_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_ubnt_md.ajson deleted file mode 100644 index ccab923..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_ubnt_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/ubnt.md": {"path":"100-project/Personal/Hardware/ubnt.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"k0l4ec","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1761658701000,"size":160,"at":1766986878039,"hash":"k0l4ec"},"blocks":{"#":[3,25]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,7],[10,12],[14,16],[22,24]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Hardware_设备电源_md.ajson b/.smart-env/multi/100-project_Personal_Hardware_设备电源_md.ajson deleted file mode 100644 index d57c766..0000000 --- a/.smart-env/multi/100-project_Personal_Hardware_设备电源_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Hardware/设备电源.md": {"path":"100-project/Personal/Hardware/设备电源.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5fvwyd","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734142663000,"size":456,"at":1766986878039,"hash":"5fvwyd"},"blocks":{"#电源":[1,22],"#电源#通用DC电源":[3,22],"#电源#通用DC电源#ER-X":[4,14],"#电源#通用DC电源#ER-X#{1}":[6,14],"#电源#通用DC电源#联果2.5G 8口":[15,17],"#电源#通用DC电源#联果2.5G 8口#{1}":[16,17],"#电源#通用DC电源#Netgear ProSafe GS108PE":[18,22],"#电源#通用DC电源#Netgear ProSafe GS108PE#{1}":[19,22]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_Azure_AI_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_Azure_AI_md.ajson deleted file mode 100644 index 6244e49..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_Azure_AI_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/Azure AI.md": {"path":"100-project/Personal/Home Assistant/Azure AI.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1yvo6eq","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734079892483,"size":161,"at":1766986878039,"hash":"1yvo6eq"},"blocks":{"#windy-ai":[2,14],"#windy-ai#config":[4,14],"#windy-ai#config#key":[5,8],"#windy-ai#config#key#{1}":[6,8],"#windy-ai#config#Location/Region":[9,14],"#windy-ai#config#Location/Region#{1}":[10,14]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[10,12]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_GPS_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_GPS_md.ajson deleted file mode 100644 index 0c06a8d..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_GPS_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/GPS.md": {"path":"100-project/Personal/Home Assistant/GPS.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1v2da89","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734684044767,"size":2148,"at":1766986878039,"hash":"1v2da89"},"blocks":{"#":[3,71]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,69]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_GroqCloud_Whisper_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_GroqCloud_Whisper_md.ajson deleted file mode 100644 index bf60366..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_GroqCloud_Whisper_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/GroqCloud Whisper.md": {"path":"100-project/Personal/Home Assistant/GroqCloud Whisper.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"zfmnf8","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734502125282,"size":164,"at":1766986878039,"hash":"zfmnf8"},"blocks":{"#":[2,12]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[8,10]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_Sonoff_ZBDongle_E_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_Sonoff_ZBDongle_E_md.ajson deleted file mode 100644 index 60a7c3a..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_Sonoff_ZBDongle_E_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/Sonoff ZBDongle E.md": {"path":"100-project/Personal/Home Assistant/Sonoff ZBDongle E.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1npblfn","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734574687000,"size":3510,"at":1766986878039,"hash":"1npblfn"},"blocks":{"#":[2,3],"##Step-by-Step Flashing Guide":[4,62],"##Step-by-Step Flashing Guide#1. **Gather Required Materials**":[6,11],"##Step-by-Step Flashing Guide#1. **Gather Required Materials**#{1}":[7,7],"##Step-by-Step Flashing Guide#1. **Gather Required Materials**#{2}":[8,8],"##Step-by-Step Flashing Guide#1. **Gather Required Materials**#{3}":[9,9],"##Step-by-Step Flashing Guide#1. **Gather Required Materials**#{4}":[10,11],"##Step-by-Step Flashing Guide#2. **Download Firmware**":[12,14],"##Step-by-Step Flashing Guide#2. **Download Firmware**#{1}":[13,14],"##Step-by-Step Flashing Guide#3. **Connect the Dongle**":[15,18],"##Step-by-Step Flashing Guide#3. **Connect the Dongle**#{1}":[16,16],"##Step-by-Step Flashing Guide#3. **Connect the Dongle**#{2}":[17,18],"##Step-by-Step Flashing Guide#4. **Access the Flashing Tool**":[19,21],"##Step-by-Step Flashing Guide#4. **Access the Flashing Tool**#{1}":[20,21],"##Step-by-Step Flashing Guide#5. **Connect to the Dongle**":[22,26],"##Step-by-Step Flashing Guide#5. **Connect to the Dongle**#{1}":[23,23],"##Step-by-Step Flashing Guide#5. **Connect to the Dongle**#{2}":[24,24],"##Step-by-Step Flashing Guide#5. **Connect to the Dongle**#{3}":[25,26],"##Step-by-Step Flashing Guide#6. **Select Firmware for Flashing**":[27,31],"##Step-by-Step Flashing Guide#6. **Select Firmware for Flashing**#{1}":[28,28],"##Step-by-Step Flashing Guide#6. **Select Firmware for Flashing**#{2}":[29,29],"##Step-by-Step Flashing Guide#6. **Select Firmware for Flashing**#{3}":[30,31],"##Step-by-Step Flashing Guide#7. **Start Flashing Process**":[32,35],"##Step-by-Step Flashing Guide#7. **Start Flashing Process**#{1}":[33,33],"##Step-by-Step Flashing Guide#7. **Start Flashing Process**#{2}":[34,35],"##Step-by-Step Flashing Guide#8. **Completion and Power Cycle**":[36,39],"##Step-by-Step Flashing Guide#8. **Completion and Power Cycle**#{1}":[37,37],"##Step-by-Step Flashing Guide#8. **Completion and Power Cycle**#{2}":[38,39],"##Step-by-Step Flashing Guide#9. **Verify Installation**":[40,43],"##Step-by-Step Flashing Guide#9. **Verify Installation**#{1}":[41,41],"##Step-by-Step Flashing Guide#9. **Verify Installation**#{2}":[42,43],"##Step-by-Step Flashing Guide#Additional Notes":[44,62],"##Step-by-Step Flashing Guide#Additional Notes#{1}":[45,45],"##Step-by-Step Flashing Guide#Additional Notes#{2}":[46,47],"##Step-by-Step Flashing Guide#Additional Notes#{3}":[48,62]},"outlinks":[{"title":"GitHub Repository","target":"https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/NCP_7.4.3","line":13},{"title":"Silicon Labs Firmware Builder","target":"https://darkxst.github.io/silabs-firmware-builder/","line":20}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_Storage_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_Storage_md.ajson deleted file mode 100644 index e6e9fba..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_Storage_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/Storage.md": {"path":"100-project/Personal/Home Assistant/Storage.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1hq8mqx","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734942123123,"size":15150,"at":1766986878039,"hash":"1hq8mqx"},"blocks":{"#":[2,19],"###**Step 1: Backup Your Current Home Assistant Instance**":[20,44],"###**Step 1: Backup Your Current Home Assistant Instance**#{1}":[22,27],"###**Step 1: Backup Your Current Home Assistant Instance**#{2}":[24,27],"###**Step 1: Backup Your Current Home Assistant Instance**#{3}":[28,35],"###**Step 1: Backup Your Current Home Assistant Instance**#{4}":[32,35],"###**Step 1: Backup Your Current Home Assistant Instance**#{5}":[36,44],"###**Step 1: Backup Your Current Home Assistant Instance**#{6}":[38,44],"###**Step 2: Install and Configure PostgreSQL**":[45,88],"###**Step 2: Install and Configure PostgreSQL**#{1}":[47,53],"###**Step 2: Install and Configure PostgreSQL**#{2}":[49,53],"###**Step 2: Install and Configure PostgreSQL**#{3}":[54,77],"###**Step 2: Install and Configure PostgreSQL**#{4}":[58,77],"###**Step 2: Install and Configure PostgreSQL**#{5}":[78,88],"###**Step 2: Install and Configure PostgreSQL**#{6}":[80,88],"###**Step 3: Install Required Tools**":[89,105],"###**Step 3: Install Required Tools**#{1}":[91,96],"###**Step 3: Install Required Tools**#{2}":[93,96],"###**Step 3: Install Required Tools**#{3}":[97,105],"###**Step 3: Install Required Tools**#{4}":[99,105],"###**Step 4: Migrate Data from SQLite to PostgreSQL**":[106,149],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{1}":[108,126],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{2}":[110,126],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{3}":[127,132],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{4}":[129,132],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{5}":[133,149],"###**Step 4: Migrate Data from SQLite to PostgreSQL**#{6}":[137,149],"###**Step 5: Configure Home Assistant to Use PostgreSQL**":[150,178],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{1}":[152,160],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{2}":[154,160],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{3}":[161,166],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{4}":[163,166],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{5}":[167,178],"###**Step 5: Configure Home Assistant to Use PostgreSQL**#{6}":[172,178],"###**Step 6: Clean Up**":[179,205],"###**Step 6: Clean Up**#{1}":[181,186],"###**Step 6: Clean Up**#{2}":[183,186],"###**Step 6: Clean Up**#{3}":[187,205],"###**Step 6: Clean Up**#{4}":[191,205],"###**Final Notes**":[206,814],"###**Final Notes**#{1}":[208,208],"###**Final Notes**#{2}":[209,814],"###**Final Notes**#{3}":[211,814]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,6],[9,12],[24,26],[32,34],[38,40],[49,52],[58,60],[64,70],[74,76],[80,82],[93,95],[99,101],[110,122],[129,131],[137,139],[143,145],[154,157],[163,165],[172,174],[183,185],[191,195],[199,201],[211,220],[228,229],[236,240],[242,245],[247,249],[251,254],[256,259],[261,264],[292,296],[299,303],[310,315],[321,324],[326,329],[333,337],[402,409],[416,422]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_WAQI_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_WAQI_md.ajson deleted file mode 100644 index b4728bb..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_WAQI_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/WAQI.md": {"path":"100-project/Personal/Home Assistant/WAQI.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14xzp40","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734768085000,"size":7840,"at":1766986878039,"hash":"14xzp40"},"blocks":{"#":[4,273]},"outlinks":[{"title":"https://api.waqi.info/feed/here/?token=761ba9c8b1745baed8d667f036d6ab46a843b962","target":"https://api.waqi.info/feed/here/?token=761ba9c8b1745baed8d667f036d6ab46a843b962","line":14}],"task_lines":[],"tasks":{},"codeblock_ranges":[[18,273]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_data_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_data_md.ajson deleted file mode 100644 index db57ced..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_data_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/data.md": {"path":"100-project/Personal/Home Assistant/data.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1xc9niy","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734752695000,"size":2919,"at":1766986878039,"hash":"1xc9niy"},"blocks":{"#":[3,6],"###**How to Use pgloader with a MySQL Dump File**":[7,67],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**":[9,22],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**#{1}":[11,17],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**#{2}":[18,18],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**#{3}":[19,19],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**#{4}":[20,20],"###**How to Use pgloader with a MySQL Dump File**#**1. Prepare the MySQL Dump File**#{5}":[21,22],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**":[23,38],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**#{1}":[25,26],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**#{2}":[27,27],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**#{3}":[28,28],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**#{4}":[29,38],"###**How to Use pgloader with a MySQL Dump File**#**2. Adjust the Dump File (If Needed)**#{5}":[31,38],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**":[39,67],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**#{1}":[41,55],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**#{2}":[56,56],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**#{3}":[57,57],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**#{4}":[58,59],"###**How to Use pgloader with a MySQL Dump File**#**3. Use pgloader to Import the Dump File**#{5}":[60,67],"###**Caveats**":[68,80],"###**Caveats**#{1}":[70,70],"###**Caveats**#{2}":[71,71],"###**Caveats**#{3}":[72,80],"###**Caveats**#{4}":[74,80],"###**Best Practice**":[81,88],"###**Best Practice**#{1}":[83,84],"###**Best Practice**#{2}":[85,85],"###**Best Practice**#{3}":[86,87],"###**Best Practice**#{4}":[88,88]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[13,15],[31,33],[43,54],[62,64],[74,76]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_esphome_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_esphome_md.ajson deleted file mode 100644 index 1c179a0..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_esphome_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/esphome.md": {"path":"100-project/Personal/Home Assistant/esphome.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1vhfywy","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1737254390000,"size":68,"at":1766986878039,"hash":"1vhfywy"},"blocks":{"#":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_mopidy_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_mopidy_md.ajson deleted file mode 100644 index 2849df2..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_mopidy_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/mopidy.md": {"path":"100-project/Personal/Home Assistant/mopidy.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1oybthz","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734686937384,"size":201,"at":1766986878039,"hash":"1oybthz"},"blocks":{"#":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_tuya_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_tuya_md.ajson deleted file mode 100644 index 428b103..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_tuya_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/tuya.md": {"path":"100-project/Personal/Home Assistant/tuya.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1xrgvfj","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734318023404,"size":15,"at":1766986878039,"hash":"1xrgvfj"},"blocks":{"#":[3,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_zigbee2mqtt_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_zigbee2mqtt_md.ajson deleted file mode 100644 index 86bc27d..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_zigbee2mqtt_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/zigbee2mqtt.md": {"path":"100-project/Personal/Home Assistant/zigbee2mqtt.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"72pxi3","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734611856000,"size":196,"at":1766986878039,"hash":"72pxi3"},"blocks":{"#":[3,17]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,7],[9,16]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_API_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_南电_API_md.ajson deleted file mode 100644 index 81cefa8..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_API_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/南电/API.md": {"path":"100-project/Personal/Home Assistant/南电/API.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1sl62ge","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1736755197873,"size":327,"at":1766986879407,"hash":"1sl62ge"},"blocks":{"#":[3,27]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,20],[23,25]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_Config_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_南电_Config_md.ajson deleted file mode 100644 index b6482f5..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_Config_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/南电/Config.md": {"path":"100-project/Personal/Home Assistant/南电/Config.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"6vau41","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1734187538000,"size":6319,"at":1766986879407,"hash":"6vau41"},"blocks":{"#":[2,230]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,104],[109,230]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_NR_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_南电_NR_md.ajson deleted file mode 100644 index 14c2c19..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_南电_NR_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/南电/NR.md": {"path":"100-project/Personal/Home Assistant/南电/NR.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1agxbv6","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1736757153762,"size":50635,"at":1766986879407,"hash":"1agxbv6"},"blocks":{"#":[2,2000]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,4],[6,8],[14,1976],[1982,1991],[1996,2000]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Home_Assistant_智谱清言_md.ajson b/.smart-env/multi/100-project_Personal_Home_Assistant_智谱清言_md.ajson deleted file mode 100644 index 3552d4d..0000000 --- a/.smart-env/multi/100-project_Personal_Home_Assistant_智谱清言_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Home Assistant/智谱清言.md": {"path":"100-project/Personal/Home Assistant/智谱清言.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1w92re3","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1734503736184,"size":69,"at":1766986878039,"hash":"1w92re3"},"blocks":{"#":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Mail_md.ajson b/.smart-env/multi/100-project_Personal_Mail_md.ajson deleted file mode 100644 index 1c90edc..0000000 --- a/.smart-env/multi/100-project_Personal_Mail_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Mail.md": {"path":"100-project/Personal/Mail.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"snwbkl","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1745392239586,"size":1515,"at":1766986877914,"hash":"snwbkl"},"blocks":{"#":[1,75]},"outlinks":[{"title":"https://www.howtoforge.com/community/th … vis.52114/","target":"https://www.howtoforge.com/community/threads/how-to-disable-clamav-or-spamassassin-check-in-amavis.52114/","line":39}],"task_lines":[],"tasks":{},"codeblock_ranges":[[34,49],[55,57],[61,63],[71,74]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Obsidian_Theme_Things_to_look_into_md.ajson b/.smart-env/multi/100-project_Personal_Obsidian_Theme_Things_to_look_into_md.ajson deleted file mode 100644 index 12fcff2..0000000 --- a/.smart-env/multi/100-project_Personal_Obsidian_Theme_Things_to_look_into_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Obsidian Theme/Things to look into.md": {"path":"100-project/Personal/Obsidian Theme/Things to look into.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1t1hjiw","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1590028813000,"size":98,"at":1766986878039,"hash":"1t1hjiw"},"blocks":{"#":[1,4],"##{1}":[2,2],"##{2}":[3,3],"##{3}":[4,4]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Obsidian_Theme_obsidian_css_md.ajson b/.smart-env/multi/100-project_Personal_Obsidian_Theme_obsidian_css_md.ajson deleted file mode 100644 index 39781ac..0000000 --- a/.smart-env/multi/100-project_Personal_Obsidian_Theme_obsidian_css_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Obsidian Theme/obsidian.css.md": {"path":"100-project/Personal/Obsidian Theme/obsidian.css.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ja1d3","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1589895728000,"size":8177,"at":1766986878039,"hash":"1ja1d3"},"blocks":{"#":[1,366]},"outlinks":[],"metadata":{"tags":["#705dcf","#3e3471"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Methodology_md.ajson b/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Methodology_md.ajson deleted file mode 100644 index 1b6c7ff..0000000 --- a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Methodology_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/PARA Starter Kit/Methodology.md": {"path":"100-project/Personal/PARA Starter Kit/Methodology.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1botk3o","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1627589219000,"size":5805,"at":1766986878039,"hash":"1botk3o"},"blocks":{"#The Methodology":[1,40],"#The Methodology#{1}":[2,3],"#The Methodology#{2}":[4,4],"#The Methodology#{3}":[5,5],"#The Methodology#{4}":[6,6],"#The Methodology#{5}":[7,8],"#The Methodology#{6}":[9,12],"#The Methodology#Definition":[13,28],"#The Methodology#Definition#{1}":[14,16],"#The Methodology#Definition#{2}":[17,20],"#The Methodology#Definition#{3}":[21,24],"#The Methodology#Definition#{4}":[25,28],"#The Methodology#Setup":[29,40],"#The Methodology#Setup#{1}":[30,33],"#The Methodology#Setup#Setup tips:":[34,40],"#The Methodology#Setup#Setup tips:#{1}":[35,35],"#The Methodology#Setup#Setup tips:#{2}":[36,36],"#The Methodology#Setup#Setup tips:#{3}":[37,37],"#The Methodology#Setup#Setup tips:#{4}":[38,40],"#Next stop [[Workflows]]":[41,41]},"outlinks":[{"title":"Workflows","target":"Workflows","line":41}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Outline_md.ajson b/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Outline_md.ajson deleted file mode 100644 index 2e9d43d..0000000 --- a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Outline_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/PARA Starter Kit/Outline.md": {"path":"100-project/Personal/PARA Starter Kit/Outline.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ntxqvv","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1590029050000,"size":264,"at":1766986878039,"hash":"1ntxqvv"},"blocks":{"##Start here":[1,4],"##Start here#{1}":[2,2],"##Start here#{2}":[3,3],"##Start here#{3}":[4,4],"##Definition":[5,6],"##Definition#{1}":[6,6],"##Methodology":[7,11],"##Methodology#{1}":[8,8],"##Methodology#{2}":[9,9],"##Methodology#{3}":[10,10],"##Methodology#{4}":[11,11],"##Workflow":[12,13],"##Workflow#{1}":[13,13],"##Next steps":[14,16],"##Next steps#{1}":[15,15],"##Next steps#{2}":[16,16]},"outlinks":[{"title":"PARA Notes#Definitions","target":"PARA Notes#Definitions","line":6,"embedded":true},{"title":"PARA Notes#Workflow","target":"PARA Notes#Workflow","line":13,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Workflows_md.ajson b/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Workflows_md.ajson deleted file mode 100644 index dc6f73c..0000000 --- a/.smart-env/multi/100-project_Personal_PARA_Starter_Kit_Workflows_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/PARA Starter Kit/Workflows.md": {"path":"100-project/Personal/PARA Starter Kit/Workflows.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"9jy0jw","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1627688212000,"size":3115,"at":1766986878039,"hash":"9jy0jw"},"blocks":{"#How to use this for work":[1,21],"#How to use this for work#{1}":[2,3],"#How to use this for work#Example 1 - Project":[4,10],"#How to use this for work#Example 1 - Project#{1}":[5,10],"#How to use this for work#Example 2 - Areas change":[11,15],"#How to use this for work#Example 2 - Areas change#{1}":[12,15],"#How to use this for work#Example 3 - Resource change":[16,21],"#How to use this for work#Example 3 - Resource change#{1}":[17,21],"#Next step Explore!":[22,26],"#Next step Explore!#{1}":[23,26]},"outlinks":[{"title":"P.A.R.A. complete article","target":"https://fortelabs.co/blog/para/","line":23},{"title":"here","target":"https://forum.obsidian.md/t/paan-starter-kit/21782","line":25},{"title":"maximecote.me","target":"https://maximecote.me/","line":25}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Phone_Giffgaff_ESIM_md.ajson b/.smart-env/multi/100-project_Personal_Phone_Giffgaff_ESIM_md.ajson deleted file mode 100644 index ab7d1e2..0000000 --- a/.smart-env/multi/100-project_Personal_Phone_Giffgaff_ESIM_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Phone/Giffgaff ESIM.md": {"path":"100-project/Personal/Phone/Giffgaff ESIM.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mr3wgi","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1758793779934,"size":26385,"at":1766986878039,"hash":"1mr3wgi"},"blocks":{"#":[2,1258]},"outlinks":[{"title":"阿猪","target":"https://azhu.site/","line":10},{"title":"教程","target":"https://azhu.site/posts/1015/","line":10},{"title":"pwrli","target":"https://www.nodeseek.com/post-76162-1","line":10},{"title":"https://notion.mykeyvans.space/article/giffgaff-esim","target":"https://notion.mykeyvans.space/article/giffgaff-esim","line":632},{"title":"https://www.nodeseek.com/post-76162-1","target":"https://www.nodeseek.com/post-76162-1","line":632}],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,622],[627,1253]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Phone_在非原生ESIM设备上申请Giffgaff_ESIM_md.ajson b/.smart-env/multi/100-project_Personal_Phone_在非原生ESIM设备上申请Giffgaff_ESIM_md.ajson deleted file mode 100644 index ce1fa64..0000000 --- a/.smart-env/multi/100-project_Personal_Phone_在非原生ESIM设备上申请Giffgaff_ESIM_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Phone/在非原生ESIM设备上申请Giffgaff ESIM.md": {"path":"100-project/Personal/Phone/在非原生ESIM设备上申请Giffgaff ESIM.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"l2rld0","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1758794381536,"size":11133,"at":1766986878039,"hash":"l2rld0"},"blocks":{"#---frontmatter---":[1,11],"##背景":[12,15],"##背景#{1}":[14,15],"##操作步骤":[16,167],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号":[18,38],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{1}":[20,25],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{2}":[26,26],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{3}":[27,27],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{4}":[28,28],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{5}":[29,29],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{6}":[30,30],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{7}":[31,32],"##操作步骤#1\\. 用邮箱注册一个Giffgaff账号#{8}":[33,38],"##操作步骤#2\\. 下载Postman客户端":[39,52],"##操作步骤#2\\. 下载Postman客户端#{1}":[41,52],"##操作步骤#3\\. 导入Postman脚本":[53,70],"##操作步骤#3\\. 导入Postman脚本#{1}":[55,70],"##操作步骤#4\\. Postman登录账号获取Token":[71,83],"##操作步骤#4\\. Postman登录账号获取Token#{1}":[73,76],"##操作步骤#4\\. Postman登录账号获取Token#{2}":[77,77],"##操作步骤#4\\. Postman登录账号获取Token#{3}":[78,78],"##操作步骤#4\\. Postman登录账号获取Token#{4}":[79,79],"##操作步骤#4\\. Postman登录账号获取Token#{5}":[80,81],"##操作步骤#4\\. Postman登录账号获取Token#{6}":[82,83],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名":[84,93],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名#{1}":[86,87],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名#{2}":[88,88],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名#{3}":[89,89],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名#{4}":[90,91],"##操作步骤#5\\. 执行脚本 - 邮箱二次确认,获取签名#{5}":[92,93],"##操作步骤#6\\. 执行脚本 - 申请ESIM卡":[94,99],"##操作步骤#6\\. 执行脚本 - 申请ESIM卡#{1}":[96,96],"##操作步骤#6\\. 执行脚本 - 申请ESIM卡#{2}":[97,97],"##操作步骤#6\\. 执行脚本 - 申请ESIM卡#{3}":[98,99],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值":[100,118],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{1}":[102,102],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{2}":[103,103],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{3}":[104,104],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{4}":[105,105],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{5}":[106,107],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{6}":[108,109],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{7}":[110,110],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{8}":[111,111],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{9}":[112,112],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{10}":[113,114],"##操作步骤#7\\. 通过官方APP - 激活ESIM卡并完成充值#{11}":[115,118],"##操作步骤#8\\. 下载ESIM,生成二维码":[119,132],"##操作步骤#8\\. 下载ESIM,生成二维码#{1}":[121,126],"##操作步骤#8\\. 下载ESIM,生成二维码#{2}":[127,127],"##操作步骤#8\\. 下载ESIM,生成二维码#{3}":[128,128],"##操作步骤#8\\. 下载ESIM,生成二维码#{4}":[129,130],"##操作步骤#8\\. 下载ESIM,生成二维码#{5}":[131,132],"##操作步骤#9\\. 导入ESIM, 等待服务器激活":[133,136],"##操作步骤#9\\. 导入ESIM, 等待服务器激活#{1}":[135,136],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)":[137,157],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{1}":[139,144],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{2}":[145,145],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{3}":[146,146],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{4}":[147,147],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{5}":[148,148],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{6}":[149,149],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{7}":[150,151],"##操作步骤#10\\. 更换ESIM卡(SIM换ESIM同理)#{8}":[152,157],"##操作步骤#11\\. 其他":[158,167],"##操作步骤#11\\. 其他#{1}":[160,162],"##操作步骤#11\\. 其他#{2}":[163,163],"##操作步骤#11\\. 其他#{3}":[164,164],"##操作步骤#11\\. 其他#{4}":[165,165],"##操作步骤#11\\. 其他#{5}":[166,167],"##参考文章":[168,170],"##参考文章#{1}":[170,170]},"outlinks":[{"title":"Simon (Yu Ma)","target":"Simon (Yu Ma)","line":5},{"title":"https://www.giffgaff.com/auth/register","target":"https://www.giffgaff.com/auth/register","line":20},{"title":"![","target":"https://image.simonmy.com/file/1729607150231_image.png","line":33},{"title":"![","target":"https://image.simonmy.com/file/1729607245363_image.png","line":33},{"title":"![","target":"https://image.simonmy.com/file/1729607267059_image.png","line":33},{"title":"https://fakemail.chat/","target":"https://fakemail.chat/","line":45},{"title":"https://fakemail.ink/","target":"https://fakemail.ink/","line":45},{"title":"![","target":"https://image.simonmy.com/file/1729606034895_image.png","line":49},{"title":"![","target":"https://image.simonmy.com/file/1729606121802_image.png","line":49},{"title":"![","target":"https://image.simonmy.com/file/1729606169022_image.png","line":49},{"title":"![","target":"https://image.simonmy.com/file/1729606423680_image.png","line":69},{"title":"![","target":"https://image.simonmy.com/file/1729606546311_image.png","line":69},{"title":"![","target":"https://image.simonmy.com/file/1729608044731_image.png","line":82},{"title":"![","target":"https://image.simonmy.com/file/1729608249229_image.png","line":82},{"title":"![","target":"https://image.simonmy.com/file/1729608325194_image.png","line":82},{"title":"![","target":"https://image.simonmy.com/file/1729609371482_image.png","line":92},{"title":"![","target":"https://image.simonmy.com/file/1729609494858_image.png","line":92},{"title":"![","target":"https://image.simonmy.com/file/1729609604305_image.png","line":92},{"title":"![","target":"https://image.simonmy.com/file/1729615482105_image.png","line":98},{"title":"![","target":"https://image.simonmy.com/file/1734447150223_image.png","line":108},{"title":"![","target":"https://image.simonmy.com/file/1734447173642_image.png","line":108},{"title":"![","target":"https://image.simonmy.com/file/1734447218968_image.png","line":108},{"title":"![","target":"https://image.simonmy.com/file/1734447264041_image.png","line":115},{"title":"![","target":"https://image.simonmy.com/file/1734447318908_image.png","line":115},{"title":"![","target":"https://image.simonmy.com/file/1734447381690_image.png","line":115},{"title":"![","target":"https://image.simonmy.com/file/1729611969794_image.png","line":131},{"title":"![","target":"https://image.simonmy.com/file/1729612014146_image.png","line":131},{"title":"![","target":"https://image.simonmy.com/file/1729612038215_image.png","line":131},{"title":"https://www.giffgaff.com/profile/details","target":"https://www.giffgaff.com/profile/details","line":146},{"title":"![","target":"https://image.simonmy.com/file/1753876221141_GvRPUJ.png","line":156},{"title":"![","target":"https://image.simonmy.com/file/1753876440224_J0BMEg.png","line":156},{"title":"![","target":"https://image.simonmy.com/file/1753876538880_vs8rh3.png","line":156},{"title":"![","target":"https://image.simonmy.com/file/1753876624730_gQ0myu.png","line":156},{"title":"https://t.me/Charpati","target":"https://t.me/Charpati","line":160},{"title":"如何将GiffGaff sim卡转换为esim","target":"https://azhu.site/posts/1015/","line":170}],"metadata":{"title":"在非原生ESIM设备上申请Giffgaff ESIM","source":"https://simonmy.com/posts/giffgaff-esim-apply-without-official-app.html#1-%E7%94%A8%E9%82%AE%E7%AE%B1%E6%B3%A8%E5%86%8C%E4%B8%80%E4%B8%AAgiffgaff%E8%B4%A6%E5%8F%B7","author":["[[Simon (Yu Ma)]]"],"published":"2024-10-22","created":"2025-09-25","description":"Progress is the activity of today and the assurance of tomorrow.","tags":["#clippings"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[59,61],[65,67]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Phone_摩托罗拉_md.ajson b/.smart-env/multi/100-project_Personal_Phone_摩托罗拉_md.ajson deleted file mode 100644 index 1ff829f..0000000 --- a/.smart-env/multi/100-project_Personal_Phone_摩托罗拉_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Phone/摩托罗拉.md": {"path":"100-project/Personal/Phone/摩托罗拉.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1lxfxmy","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1747987076877,"size":1076,"at":1766986878039,"hash":"1lxfxmy"},"blocks":{"#":[3,10]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Renew_Entray_Door_md.ajson b/.smart-env/multi/100-project_Personal_Renew_Entray_Door_md.ajson deleted file mode 100644 index 58181d2..0000000 --- a/.smart-env/multi/100-project_Personal_Renew_Entray_Door_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Renew/Entray Door.md": {"path":"100-project/Personal/Renew/Entray Door.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"54dy8b","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1725935622000,"size":36,"at":1766986878039,"hash":"54dy8b"},"blocks":{"##lock":[2,5],"##lock#静脉解锁":[3,5],"##door":[6,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_AI_Azure_md.ajson b/.smart-env/multi/100-project_Personal_Software_AI_Azure_md.ajson deleted file mode 100644 index 509f4be..0000000 --- a/.smart-env/multi/100-project_Personal_Software_AI_Azure_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/AI/Azure.md": {"path":"100-project/Personal/Software/AI/Azure.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"17if3nd","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1720497099000,"size":2948,"at":1766986879407,"hash":"17if3nd"},"blocks":{"#":[2,11],"#ChatGPT Settings (required)":[12,12],"#Set the API Key from OpenAI":[13,14],"#Set the API Key from OpenAI#{1}":[14,14],"#To use Azure OpenAI API, set `OPENAI_AZURE` to true and `CHATGPT_REVERSE_PROXY` to your completion endpoint":[15,15],"#OPENAI_AZURE=false":[16,19],"#OPENAI_AZURE=false#{1}":[17,19],"#Set the ChatGPT conversation context to 'thread', 'room' or 'both'.":[20,21],"#Set the ChatGPT conversation context to 'thread', 'room' or 'both'.#{1}":[21,21],"#Set the ChatGPT model to be used by the API. 'gpt-3.5-turbo' is the official ChatGPT-model from OpenAI":[22,22],"#Note that the models are not free and will charge your OpenAI account depending on the usage of tokens":[23,23],"#CHATGPT_API_MODEL=gpt-3.5-turbo":[24,25],"#CHATGPT_API_MODEL=gpt-3.5-turbo#{1}":[25,25],"#(Optional) Explicitly set the prefix sent to model at the beginning of a conversation":[26,26],"#CHATGPT_PROMPT_PREFIX=Instructions:\\nYou are ChatGPT, a large language model trained by OpenAI.":[27,27],"#(Optional) Set to true if ChatGPT should ignore any messages which are not text":[28,28],"#CHATGPT_IGNORE_MEDIA=false":[29,29],"#(Optional) You can change the api url to use another (OpenAI-compatible) API endpoint":[30,30],"#CHATGPT_REVERSE_PROXY=https://api.openai.com/v1/chat/completions":[31,31],"#(Optional) Set the temperature of the model. 0.0 is deterministic, 1.0 is very creative.":[32,33],"#(Optional) Set the temperature of the model. 0.0 is deterministic, 1.0 is very creative.#{1}":[33,33],"#(Optional) (Optional) Davinci models have a max context length of 4097 tokens, but you may need to change this for other models.":[34,35],"#(Optional) (Optional) Davinci models have a max context length of 4097 tokens, but you may need to change this for other models.#{1}":[35,35],"#You might want to lower this to save money if using a paid model. Earlier messages will be dropped until the prompt is within the limit.":[36,36],"#CHATGPT_MAX_PROMPT_TOKENS=3097":[37,38],"#Set data store settings":[39,44],"#Set data store settings#{1}":[40,44],"#Matrix Static Settings (required, see notes)":[45,45],"#Defaults to \"https://matrix.org\"":[46,47],"#Defaults to \"https://matrix.org\"#{1}":[47,47],"#With the @ and :DOMAIN, ie @SOMETHING:DOMAIN - Not used if `MATRIX_ACCESS_TOKEN` is set.":[48,49],"#With the @ and :DOMAIN, ie @SOMETHING:DOMAIN - Not used if `MATRIX_ACCESS_TOKEN` is set.#{1}":[49,49],"#Set `MATRIX_BOT_PASSWORD` the bot will print an `MATRIX_ACCESS_TOKEN` to the terminal":[50,51],"#Set `MATRIX_BOT_PASSWORD` the bot will print an `MATRIX_ACCESS_TOKEN` to the terminal#{1}":[51,51],"#Not used if `MATRIX_ACCESS_TOKEN` is set.":[52,54],"#Not used if `MATRIX_ACCESS_TOKEN` is set.#{1}":[53,54],"#Matrix Configurable Settings Defaults (optional)":[55,55],"#Leave prefix blank to reply to all messages":[56,59],"#Leave prefix blank to reply to all messages#{1}":[57,59],"#Matrix Access Control (optional)":[60,60],"#Can be set to user:homeserver or a wildcard like :anotherhomeserver.example":[61,62],"#Can be set to user:homeserver or a wildcard like :anotherhomeserver.example#{1}":[62,62],"#`MATRIX_WHITELIST` is overriden by `MATRIX_BLACKLIST` if they contain same entry":[63,65],"#`MATRIX_WHITELIST` is overriden by `MATRIX_BLACKLIST` if they contain same entry#{1}":[64,65],"#Matrix Feature Flags (optional)":[66,68],"#Matrix Feature Flags (optional)#{1}":[67,68],"#If you turn threads off you will have problems if you don't set CHATGPT_CONTEXT=room":[69,75],"#If you turn threads off you will have problems if you don't set CHATGPT_CONTEXT=room#{1}":[70,75]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,8],[9,11]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_AI_Matrix_zenmux_md.ajson b/.smart-env/multi/100-project_Personal_Software_AI_Matrix_zenmux_md.ajson deleted file mode 100644 index 0fa2c79..0000000 --- a/.smart-env/multi/100-project_Personal_Software_AI_Matrix_zenmux_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/AI/Matrix/zenmux.md": {"path":"100-project/Personal/Software/AI/Matrix/zenmux.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"c7q2t2","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1765449223000,"size":4478,"at":1766986879407,"hash":"c7q2t2"},"blocks":{"#":[2,134]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[9,11],[17,45],[49,51],[54,80],[83,85],[88,109],[112,121],[125,133]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_AI_Opencode_md.ajson b/.smart-env/multi/100-project_Personal_Software_AI_Opencode_md.ajson deleted file mode 100644 index 33d66e1..0000000 --- a/.smart-env/multi/100-project_Personal_Software_AI_Opencode_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/AI/Opencode.md": {"path":"100-project/Personal/Software/AI/Opencode.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1voufwv","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1760748688000,"size":81,"at":1766986879407,"hash":"1voufwv"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_AI_openrouter_md.ajson b/.smart-env/multi/100-project_Personal_Software_AI_openrouter_md.ajson deleted file mode 100644 index 1647973..0000000 --- a/.smart-env/multi/100-project_Personal_Software_AI_openrouter_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/AI/openrouter.md": {"path":"100-project/Personal/Software/AI/openrouter.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hgahfr","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1764900906756,"size":98,"at":1766986879407,"hash":"hgahfr"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Clash_Account_md.ajson b/.smart-env/multi/100-project_Personal_Software_Clash_Account_md.ajson deleted file mode 100644 index ac9cb3a..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Clash_Account_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Clash/Account.md": {"path":"100-project/Personal/Software/Clash/Account.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ozb0jj","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1730082909323,"size":142,"at":1766986879407,"hash":"ozb0jj"},"blocks":{"#狗狗加速":[2,11],"#狗狗加速#{1}":[4,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Clash_auvpn_md.ajson b/.smart-env/multi/100-project_Personal_Software_Clash_auvpn_md.ajson deleted file mode 100644 index 60778fe..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Clash_auvpn_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Clash/auvpn.md": {"path":"100-project/Personal/Software/Clash/auvpn.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1inakz","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1678678076139,"size":309,"at":1766986879407,"hash":"1inakz"},"blocks":{"#":[2,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Dendrite_md.ajson b/.smart-env/multi/100-project_Personal_Software_Dendrite_md.ajson deleted file mode 100644 index 2184291..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Dendrite_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Dendrite.md": {"path":"100-project/Personal/Software/Dendrite.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ymi0mi","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1683339878000,"size":301,"at":1766986878039,"hash":"1ymi0mi"},"blocks":{"#":[2,19]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_GPon_md.ajson b/.smart-env/multi/100-project_Personal_Software_GPon_md.ajson deleted file mode 100644 index b1b3b73..0000000 --- a/.smart-env/multi/100-project_Personal_Software_GPon_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/GPon.md": {"path":"100-project/Personal/Software/GPon.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1rjgas6","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1690425778448,"size":2290,"at":1766986878039,"hash":"1rjgas6"},"blocks":{"#":[2,4],"###设备基本信息":[5,15],"###设备基本信息#{1}":[7,15],"###PON信息":[16,25],"###PON信息#{1}":[18,25],"###网关注册信息":[26,32],"###网关注册信息#{1}":[28,32],"###业务信息":[33,55],"###业务信息#{1}":[35,55]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Database_md.ajson b/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Database_md.ajson deleted file mode 100644 index 60eb0c5..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Database_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Home Assistant/Database.md": {"path":"100-project/Personal/Software/Home Assistant/Database.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"109p66w","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1765176381226,"size":35554,"at":1766986879407,"hash":"109p66w"},"blocks":{"#":[2,1048],"###🔴 第一类:致命错误 (会导致迁移直接中断)":[1049,1077],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)":[1051,1059],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{1}":[1052,1052],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{2}":[1053,1053],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{3}":[1054,1054],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{4}":[1055,1055],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{5}":[1056,1056],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{6}":[1057,1057],"###🔴 第一类:致命错误 (会导致迁移直接中断)#1. 空字符串撞击时间戳 (`char(0)` vs `TIMESTAMP`)#{7}":[1058,1059],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)":[1060,1067],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{1}":[1061,1061],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{2}":[1062,1062],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{3}":[1063,1063],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{4}":[1064,1064],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{5}":[1065,1065],"###🔴 第一类:致命错误 (会导致迁移直接中断)#2. Null 字节攻击 (`\\x00` in Text)#{6}":[1066,1067],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配":[1068,1077],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{1}":[1069,1069],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{2}":[1070,1070],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{3}":[1071,1071],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{4}":[1072,1072],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{5}":[1073,1073],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{6}":[1074,1075],"###🔴 第一类:致命错误 (会导致迁移直接中断)#3. 布尔值类型不匹配#{7}":[1076,1077],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)":[1078,1097],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)":[1080,1087],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{1}":[1081,1081],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{2}":[1082,1082],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{3}":[1083,1083],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{4}":[1084,1084],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{5}":[1085,1085],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#4. 时区丢失 (Timezone Naive)#{6}":[1086,1087],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)":[1088,1097],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{1}":[1089,1089],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{2}":[1090,1090],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{3}":[1091,1091],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{4}":[1092,1092],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{5}":[1093,1093],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{6}":[1094,1095],"###🟠 第二类:逻辑隐患 (迁移能成功,但 HA 运行不正常)#5. 自增序列未同步 (Sequence out of sync)#{7}":[1096,1097],"###🟢 第三类:无需担心的差异 (自动兼容)":[1098,1113],"###🟢 第三类:无需担心的差异 (自动兼容)#{1}":[1100,1101],"###🟢 第三类:无需担心的差异 (自动兼容)#{2}":[1102,1104],"###🟢 第三类:无需担心的差异 (自动兼容)#{3}":[1105,1107],"###🟢 第三类:无需担心的差异 (自动兼容)#{4}":[1108,1111],"###🟢 第三类:无需担心的差异 (自动兼容)#{5}":[1112,1113],"###📝 最终结论":[1114,1125],"###📝 最终结论#{1}":[1116,1119],"###📝 最终结论#{2}":[1120,1120],"###📝 最终结论#{3}":[1121,1121],"###📝 最终结论#{4}":[1122,1122],"###📝 最终结论#{5}":[1123,1124],"###📝 最终结论#{6}":[1125,1125]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,311],[315,1040]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Install_md.ajson b/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Install_md.ajson deleted file mode 100644 index e2099f3..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_Install_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Home Assistant/Install.md": {"path":"100-project/Personal/Software/Home Assistant/Install.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"120obry","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1733717703314,"size":14528,"at":1766986879407,"hash":"120obry"},"blocks":{"#":[3,4],"##**Table of Contents**":[5,19],"##**Table of Contents**#{1}":[7,7],"##**Table of Contents**#{2}":[8,8],"##**Table of Contents**#{3}":[9,9],"##**Table of Contents**#{4}":[10,10],"##**Table of Contents**#{5}":[11,11],"##**Table of Contents**#{6}":[12,12],"##**Table of Contents**#{7}":[13,13],"##**Table of Contents**#{8}":[14,14],"##**Table of Contents**#{9}":[15,15],"##**Table of Contents**#{10}":[16,17],"##**Table of Contents**#{11}":[18,19],"##**1. Prerequisites**":[20,39],"##**1. Prerequisites**#{1}":[22,23],"##**1. Prerequisites**#{2}":[24,28],"##**1. Prerequisites**#{3}":[29,32],"##**1. Prerequisites**#{4}":[33,37],"##**1. Prerequisites**#{5}":[38,39],"##**2. Prepare Your Debian System**":[40,94],"##**2. Prepare Your Debian System**#**2.1 Install Debian**":[42,57],"##**2. Prepare Your Debian System**#**2.1 Install Debian**#{1}":[44,45],"##**2. Prepare Your Debian System**#**2.1 Install Debian**#{2}":[46,48],"##**2. Prepare Your Debian System**#**2.1 Install Debian**#{3}":[49,51],"##**2. Prepare Your Debian System**#**2.1 Install Debian**#{4}":[52,57],"##**2. Prepare Your Debian System**#**2.2 Update the System**":[58,65],"##**2. Prepare Your Debian System**#**2.2 Update the System**#{1}":[60,65],"##**2. Prepare Your Debian System**#**2.3 Set Hostname and Timezone**":[66,84],"##**2. Prepare Your Debian System**#**2.3 Set Hostname and Timezone**#{1}":[68,69],"##**2. Prepare Your Debian System**#**2.3 Set Hostname and Timezone**#{2}":[70,75],"##**2. Prepare Your Debian System**#**2.3 Set Hostname and Timezone**#{3}":[76,84],"##**2. Prepare Your Debian System**#**2.3 Set Hostname and Timezone**#{4}":[78,84],"##**2. Prepare Your Debian System**#**2.4 Install Essential Packages**":[85,94],"##**2. Prepare Your Debian System**#**2.4 Install Essential Packages**#{1}":[87,94],"##**3. Install Docker**":[95,157],"##**3. Install Docker**#{1}":[97,98],"##**3. Install Docker**#**3.1 Remove Old Docker Versions**":[99,106],"##**3. Install Docker**#**3.1 Remove Old Docker Versions**#{1}":[101,106],"##**3. Install Docker**#**3.2 Install Docker Dependencies**":[107,112],"##**3. Install Docker**#**3.2 Install Docker Dependencies**#{1}":[109,112],"##**3. Install Docker**#**3.3 Add Docker’s Official GPG Key**":[113,119],"##**3. Install Docker**#**3.3 Add Docker’s Official GPG Key**#{1}":[115,119],"##**3. Install Docker**#**3.4 Set Up the Docker Repository**":[120,127],"##**3. Install Docker**#**3.4 Set Up the Docker Repository**#{1}":[122,127],"##**3. Install Docker**#**3.5 Install Docker Engine**":[128,134],"##**3. Install Docker**#**3.5 Install Docker Engine**#{1}":[130,134],"##**3. Install Docker**#**3.6 Verify Docker Installation**":[135,145],"##**3. Install Docker**#**3.6 Verify Docker Installation**#{1}":[137,145],"##**3. Install Docker**#**3.7 Manage Docker as a Non-Root User (Optional)**":[146,157],"##**3. Install Docker**#**3.7 Manage Docker as a Non-Root User (Optional)**#{1}":[148,157],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**":[158,207],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#{1}":[160,161],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.1 Create or Edit Docker Daemon Configuration**":[162,169],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.1 Create or Edit Docker Daemon Configuration**#{1}":[164,169],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.2 Add Proxy Settings**":[170,185],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.2 Add Proxy Settings**#{1}":[172,185],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.3 Save and Exit**":[186,189],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.3 Save and Exit**#{1}":[188,189],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.4 Restart Docker to Apply Changes**":[190,195],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.4 Restart Docker to Apply Changes**#{1}":[192,195],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.5 Verify Proxy Configuration (Optional)**":[196,207],"##**4. Configure Docker Daemon (Optional: HTTP Proxy)**#**4.5 Verify Proxy Configuration (Optional)**#{1}":[198,207],"##**5. Install Home Assistant Supervised**":[208,263],"##**5. Install Home Assistant Supervised**#{1}":[210,211],"##**5. Install Home Assistant Supervised**#**5.1 Download the Supervised Installer Script**":[212,217],"##**5. Install Home Assistant Supervised**#**5.1 Download the Supervised Installer Script**#{1}":[214,217],"##**5. Install Home Assistant Supervised**#**5.2 Make the Script Executable**":[218,223],"##**5. Install Home Assistant Supervised**#**5.2 Make the Script Executable**#{1}":[220,223],"##**5. Install Home Assistant Supervised**#**5.3 Run the Installer Script**":[224,242],"##**5. Install Home Assistant Supervised**#**5.3 Run the Installer Script**#{1}":[226,227],"##**5. Install Home Assistant Supervised**#**5.3 Run the Installer Script**#{2}":[228,228],"##**5. Install Home Assistant Supervised**#**5.3 Run the Installer Script**#{3}":[229,230],"##**5. Install Home Assistant Supervised**#**5.3 Run the Installer Script**#{4}":[231,242],"##**5. Install Home Assistant Supervised**#**5.4 Follow On-Screen Prompts**":[243,251],"##**5. Install Home Assistant Supervised**#**5.4 Follow On-Screen Prompts**#{1}":[245,246],"##**5. Install Home Assistant Supervised**#**5.4 Follow On-Screen Prompts**#{2}":[247,247],"##**5. Install Home Assistant Supervised**#**5.4 Follow On-Screen Prompts**#{3}":[248,249],"##**5. Install Home Assistant Supervised**#**5.4 Follow On-Screen Prompts**#{4}":[250,251],"##**5. Install Home Assistant Supervised**#**5.5 Verify Installation**":[252,263],"##**5. Install Home Assistant Supervised**#**5.5 Verify Installation**#{1}":[254,263],"##**6. Post-Installation Configuration**":[264,301],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**":[266,285],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**#{1}":[268,275],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**#{2}":[270,275],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**#{3}":[276,277],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**#{4}":[278,279],"##**6. Post-Installation Configuration**#**6.1 Access Home Assistant Web Interface**#{5}":[280,285],"##**6. Post-Installation Configuration**#**6.2 Configure Supervisor Settings**":[286,301],"##**6. Post-Installation Configuration**#**6.2 Configure Supervisor Settings**#{1}":[288,290],"##**6. Post-Installation Configuration**#**6.2 Configure Supervisor Settings**#{2}":[291,293],"##**6. Post-Installation Configuration**#**6.2 Configure Supervisor Settings**#{3}":[294,299],"##**6. Post-Installation Configuration**#**6.2 Configure Supervisor Settings**#{4}":[300,301],"##**7. Configure Home Assistant**":[302,360],"##**7. Configure Home Assistant**#{1}":[304,305],"##**7. Configure Home Assistant**#**7.1 Basic Configuration**":[306,317],"##**7. Configure Home Assistant**#**7.1 Basic Configuration**#{1}":[308,311],"##**7. Configure Home Assistant**#**7.1 Basic Configuration**#{2}":[312,317],"##**7. Configure Home Assistant**#**7.2 Adding Users and Permissions**":[318,324],"##**7. Configure Home Assistant**#**7.2 Adding Users and Permissions**#{1}":[320,324],"##**7. Configure Home Assistant**#**7.3 Automations and Scripts**":[325,336],"##**7. Configure Home Assistant**#**7.3 Automations and Scripts**#{1}":[327,331],"##**7. Configure Home Assistant**#**7.3 Automations and Scripts**#{2}":[332,336],"##**7. Configure Home Assistant**#**7.4 Adding Custom Components**":[337,347],"##**7. Configure Home Assistant**#**7.4 Adding Custom Components**#{1}":[339,342],"##**7. Configure Home Assistant**#**7.4 Adding Custom Components**#{2}":[343,347],"##**7. Configure Home Assistant**#**7.5 Setting Up Backups (Snapshots)**":[348,360],"##**7. Configure Home Assistant**#**7.5 Setting Up Backups (Snapshots)**#{1}":[350,353],"##**7. Configure Home Assistant**#**7.5 Setting Up Backups (Snapshots)**#{2}":[354,358],"##**7. Configure Home Assistant**#**7.5 Setting Up Backups (Snapshots)**#{3}":[359,360],"##**8. Maintenance and Best Practices**":[361,400],"##**8. Maintenance and Best Practices**#**8.1 Regular Updates**":[363,369],"##**8. Maintenance and Best Practices**#**8.1 Regular Updates**#{1}":[365,366],"##**8. Maintenance and Best Practices**#**8.1 Regular Updates**#{2}":[367,369],"##**8. Maintenance and Best Practices**#**8.2 Backup Strategy**":[370,376],"##**8. Maintenance and Best Practices**#**8.2 Backup Strategy**#{1}":[372,373],"##**8. Maintenance and Best Practices**#**8.2 Backup Strategy**#{2}":[374,376],"##**8. Maintenance and Best Practices**#**8.3 Security Measures**":[377,389],"##**8. Maintenance and Best Practices**#**8.3 Security Measures**#{1}":[379,382],"##**8. Maintenance and Best Practices**#**8.3 Security Measures**#{2}":[383,385],"##**8. Maintenance and Best Practices**#**8.3 Security Measures**#{3}":[386,389],"##**8. Maintenance and Best Practices**#**8.4 Resource Monitoring**":[390,400],"##**8. Maintenance and Best Practices**#**8.4 Resource Monitoring**#{1}":[392,394],"##**8. Maintenance and Best Practices**#**8.4 Resource Monitoring**#{2}":[395,398],"##**8. Maintenance and Best Practices**#**8.4 Resource Monitoring**#{3}":[399,400],"##**9. Troubleshooting**":[401,449],"##**9. Troubleshooting**#**9.1 Common Issues**":[403,441],"##**9. Troubleshooting**#**9.1 Common Issues**#{1}":[405,425],"##**9. Troubleshooting**#**9.1 Common Issues**#{2}":[409,425],"##**9. Troubleshooting**#**9.1 Common Issues**#{3}":[426,430],"##**9. Troubleshooting**#**9.1 Common Issues**#{4}":[431,441],"##**9. Troubleshooting**#**9.1 Common Issues**#{5}":[435,441],"##**9. Troubleshooting**#**9.2 Getting Help**":[442,449],"##**9. Troubleshooting**#**9.2 Getting Help**#{1}":[444,444],"##**9. Troubleshooting**#**9.2 Getting Help**#{2}":[445,445],"##**9. Troubleshooting**#**9.2 Getting Help**#{3}":[446,447],"##**9. Troubleshooting**#**9.2 Getting Help**#{4}":[448,449],"##**10. Additional Resources**":[450,466],"##**10. Additional Resources**#{1}":[452,454],"##**10. Additional Resources**#{2}":[455,457],"##**10. Additional Resources**#{3}":[458,460],"##**10. Additional Resources**#{4}":[461,464],"##**10. Additional Resources**#{5}":[465,466],"##**Summary**":[467,478],"##**Summary**#{1}":[469,472],"##**Summary**#{2}":[473,473],"##**Summary**#{3}":[474,474],"##**Summary**#{4}":[475,475],"##**Summary**#{5}":[476,477],"##**Summary**#{6}":[478,478]},"outlinks":[{"title":"Prerequisites","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#prerequisites","line":7},{"title":"Prepare Your Debian System","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#prepare-your-debian-system","line":8},{"title":"Install Docker","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#install-docker","line":9},{"title":"Configure Docker Daemon (Optional: HTTP Proxy)","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#configure-docker-daemon-optional-http-proxy","line":10},{"title":"Install Home Assistant Supervised","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#install-home-assistant-supervised","line":11},{"title":"Post-Installation Configuration","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#post-installation-configuration","line":12},{"title":"Configure Home Assistant","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#configure-home-assistant","line":13},{"title":"Maintenance and Best Practices","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#maintenance-and-best-practices","line":14},{"title":"Troubleshooting","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#troubleshooting","line":15},{"title":"Additional Resources","target":"https://chatgpt.com/c/67563169-1bb8-800b-bea7-edf694617d17#additional-resources","line":16},{"title":"official Debian website","target":"https://www.debian.org/distrib/","line":48},{"title":"Rufus","target":"https://rufus.ie/","line":51},{"title":"Home Assistant Community","target":"https://community.home-assistant.io/","line":444},{"title":"Join Discord","target":"https://discord.gg/c5DvZ4e","line":445},{"title":"Home Assistant Docs","target":"https://www.home-assistant.io/docs/","line":446},{"title":"GitHub - home-assistant/supervised-installer","target":"https://github.com/home-assistant/supervised-installer","line":454},{"title":"Home Assistant Installation Overview","target":"https://www.home-assistant.io/installation/","line":457},{"title":"Docker Engine Overview","target":"https://docs.docker.com/engine/","line":460},{"title":"Home Assistant Add-ons","target":"https://www.home-assistant.io/addons/","line":463}],"task_lines":[],"tasks":{},"codeblock_ranges":[[62,64],[72,74],[78,80],[89,91],[103,105],[109,111],[115,118],[122,126],[130,133],[139,142],[150,152],[166,168],[174,184],[192,194],[200,202],[214,216],[220,222],[233,235],[239,241],[256,258],[270,272],[409,411],[415,417],[421,424],[435,437]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_add_on_md.ajson b/.smart-env/multi/100-project_Personal_Software_Home_Assistant_add_on_md.ajson deleted file mode 100644 index 156ee60..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Home_Assistant_add_on_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Home Assistant/add on.md": {"path":"100-project/Personal/Software/Home Assistant/add on.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"15p4cti","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1733844513000,"size":292,"at":1766986879407,"hash":"15p4cti"},"blocks":{"#":[2,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[8,10]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Mail_Dovecot_md.ajson b/.smart-env/multi/100-project_Personal_Software_Mail_Dovecot_md.ajson deleted file mode 100644 index 9a0e85d..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Mail_Dovecot_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Mail/Dovecot.md": {"path":"100-project/Personal/Software/Mail/Dovecot.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"da78th","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1757058543168,"size":2398,"at":1766986879407,"hash":"da78th"},"blocks":{"#":[1,94]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[1,4],[6,8],[10,12],[15,25],[28,31],[33,64],[67,70],[72,76],[77,83],[86,88],[91,93]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Mail_New_Mail_Server_md.ajson b/.smart-env/multi/100-project_Personal_Software_Mail_New_Mail_Server_md.ajson deleted file mode 100644 index 13206da..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Mail_New_Mail_Server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Mail/New Mail Server.md": {"path":"100-project/Personal/Software/Mail/New Mail Server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"p9iwla","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1760954014162,"size":861,"at":1766986879407,"hash":"p9iwla"},"blocks":{"#":[2,63]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6],[10,15],[21,23],[25,27],[29,31],[33,35],[38,40],[42,44],[46,48],[52,58],[60,62]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Mail_contabo_mail_server_md.ajson b/.smart-env/multi/100-project_Personal_Software_Mail_contabo_mail_server_md.ajson deleted file mode 100644 index 19f8dbe..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Mail_contabo_mail_server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Mail/contabo mail server.md": {"path":"100-project/Personal/Software/Mail/contabo mail server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14lfijv","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1759988901912,"size":1,"at":1766986879407,"hash":"14lfijv"},"blocks":{},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Matrix-windy-pc_md.ajson b/.smart-env/multi/100-project_Personal_Software_Matrix-windy-pc_md.ajson deleted file mode 100644 index 1517bd6..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Matrix-windy-pc_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Matrix-windy-pc.md": {"path":"100-project/Personal/Software/Matrix-windy-pc.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"acrhkw","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1735956981000,"size":7230,"at":1766986878039,"hash":"acrhkw"},"blocks":{"#":[3,295]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,89],[93,109],[114,118],[124,136],[139,180],[184,187],[190,192],[195,197],[200,243],[247,254],[256,258],[263,275],[277,281],[283,285],[288,294]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Matrix_Ess_Server_Install_md.ajson b/.smart-env/multi/100-project_Personal_Software_Matrix_Ess_Server_Install_md.ajson deleted file mode 100644 index d9bf976..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Matrix_Ess_Server_Install_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Matrix Ess Server Install.md": {"path":"100-project/Personal/Software/Matrix Ess Server Install.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ej5644","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1758789993354,"size":12327,"at":1766986878039,"hash":"1ej5644"},"blocks":{"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)":[3,425],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#{1}":[4,7],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#{2}":[8,8],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#{3}":[9,10],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#{4}":[11,14],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports":[15,25],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports#{1}":[17,17],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports#{2}":[18,18],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports#{3}":[19,21],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports#{4}":[22,23],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#0) Requirements & Ports#{5}":[24,25],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#1) DNS Setup":[26,44],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#1) DNS Setup#{1}":[28,39],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#1) DNS Setup#{2}":[40,40],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#1) DNS Setup#{3}":[41,42],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#1) DNS Setup#{4}":[43,44],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#2) (Optional) Cloud‑Init (without firewalld)":[45,69],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#2) (Optional) Cloud‑Init (without firewalld)#{1}":[47,69],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#3) Manual K3s + Helm (if not using cloud‑init)":[70,96],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#3) Manual K3s + Helm (if not using cloud‑init)#{1}":[72,96],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#4) cert‑manager + Let’s Encrypt (ClusterIssuer)":[97,135],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#4) cert‑manager + Let’s Encrypt (ClusterIssuer)#{1}":[99,135],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#5) Values files (hosts + TLS)":[136,180],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#5) Values files (hosts + TLS)#{1}":[138,180],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#6) Install ESS (matrix‑stack chart)":[181,198],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#6) Install ESS (matrix‑stack chart)#{1}":[183,198],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#7) Certificates issuance":[199,221],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#7) Certificates issuance#{1}":[201,221],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#8) Well‑Known verification (federation & clients)":[222,236],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#8) Well‑Known verification (federation & clients)#{1}":[224,229],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#8) Well‑Known verification (federation & clients)#{2}":[230,230],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#8) Well‑Known verification (federation & clients)#{3}":[231,232],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#8) Well‑Known verification (federation & clients)#{4}":[233,236],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#9) Create the first admin account":[237,252],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#9) Create the first admin account#{1}":[239,252],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#10) Enable self‑registration (optional)":[253,273],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#10) Enable self‑registration (optional)#{1}":[255,273],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#11) Outbound email (MAS required, Synapse optional)":[274,364],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#11) Outbound email (MAS required, Synapse optional)#11.1 MAS SMTP (required for signup/reset)":[276,343],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#11) Outbound email (MAS required, Synapse optional)#11.1 MAS SMTP (required for signup/reset)#{1}":[278,343],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#11) Outbound email (MAS required, Synapse optional)#11.2 Synapse email notifications (optional)":[344,364],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#11) Outbound email (MAS required, Synapse optional)#11.2 Synapse email notifications (optional)#{1}":[345,364],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting":[365,392],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{1}":[367,385],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{2}":[386,386],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{3}":[387,387],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{4}":[388,388],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{5}":[389,390],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#12) Health checks & troubleshooting#{6}":[391,392],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#13) Upgrades / Uninstall":[393,413],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#13) Upgrades / Uninstall#{1}":[395,413],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist":[414,425],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{1}":[416,416],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{2}":[417,417],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{3}":[418,418],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{4}":[419,419],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{5}":[420,420],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{6}":[421,421],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{7}":[422,422],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{8}":[423,423],"#Matrix ESS (Community) — Single‑Node Install on Debian 13 (K3s + Traefik + cert‑manager)#14) Quick copy‑paste checklist#{9}":[424,425]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[30,36],[49,64],[72,85],[88,91],[101,105],[109,124],[127,130],[140,142],[145,163],[166,175],[183,187],[190,193],[202,204],[207,210],[213,218],[224,227],[240,242],[245,247],[255,265],[268,270],[279,298],[301,319],[322,329],[332,335],[340,342],[345,359],[368,370],[373,377],[380,383],[396,399],[402,405],[408,410]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Matrix_md.ajson b/.smart-env/multi/100-project_Personal_Software_Matrix_md.ajson deleted file mode 100644 index cd42bbe..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Matrix_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Matrix.md": {"path":"100-project/Personal/Software/Matrix.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1o3pa75","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1761126679268,"size":7717,"at":1766986878039,"hash":"1o3pa75"},"blocks":{"#":[3,313]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,89],[93,109],[114,118],[124,136],[139,180],[184,187],[190,192],[195,197],[200,243],[247,254],[256,258],[263,265],[270,272],[276,278],[280,290],[293,301],[305,311]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Microsoft_md.ajson b/.smart-env/multi/100-project_Personal_Software_Microsoft_md.ajson deleted file mode 100644 index 06baad5..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Microsoft_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Microsoft.md": {"path":"100-project/Personal/Software/Microsoft.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vxrq3s","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1735740341000,"size":1398,"at":1766986878039,"hash":"vxrq3s"},"blocks":{"#":[2,38],"##{1}":[10,11],"##{2}":[12,15],"##{3}":[16,17],"##{4}":[18,19],"##{5}":[20,22],"##{6}":[23,25],"##{7}":[26,38]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Mobaxterm_md.ajson b/.smart-env/multi/100-project_Personal_Software_Mobaxterm_md.ajson deleted file mode 100644 index 3cba602..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Mobaxterm_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Mobaxterm.md": {"path":"100-project/Personal/Software/Mobaxterm.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jwbs3a","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1682068823000,"size":318,"at":1766986878039,"hash":"1jwbs3a"},"blocks":{"#":[1,5]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Nghttpx_md.ajson b/.smart-env/multi/100-project_Personal_Software_Nghttpx_md.ajson deleted file mode 100644 index 853892c..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Nghttpx_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Nghttpx.md": {"path":"100-project/Personal/Software/Nghttpx.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"g2a39a","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1682046365000,"size":634,"at":1766986878039,"hash":"g2a39a"},"blocks":{"#":[3,37]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_OpenWrt_md.ajson b/.smart-env/multi/100-project_Personal_Software_OpenWrt_md.ajson deleted file mode 100644 index 49bdf56..0000000 --- a/.smart-env/multi/100-project_Personal_Software_OpenWrt_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/OpenWrt.md": {"path":"100-project/Personal/Software/OpenWrt.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10x7bts","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1681386777000,"size":417,"at":1766986878039,"hash":"10x7bts"},"blocks":{"#":[3,7]},"outlinks":[{"title":"OPENWRT专版-恩山无线论坛 - Powered by Discuz! (right.com.cn)","target":"https://www.right.com.cn/FORUM/forum-72-1.html","line":4},{"title":"极简ImmortalWrt及L大原版极简-软路由,x86系统,openwrt(x86),Router OS 等-恩山无线论坛 - Powered by Discuz! (right.com.cn)","target":"https://www.right.com.cn/FORUM/thread-8282522-1-1.html","line":6},{"title":"https://www.123pan.com/s/bj1ZVv-49UHd.html","target":"https://www.123pan.com/s/bj1ZVv-49UHd.html","line":7}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Opensuse_startup_time_md.ajson b/.smart-env/multi/100-project_Personal_Software_Opensuse_startup_time_md.ajson deleted file mode 100644 index 071054e..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Opensuse_startup_time_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Opensuse startup time.md": {"path":"100-project/Personal/Software/Opensuse startup time.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"zyjvao","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1764728425639,"size":1778,"at":1766986878039,"hash":"zyjvao"},"blocks":{"#":[2,8],"###⏱ Boot Profile Now":[9,19],"###⏱ Boot Profile Now#{1}":[11,19],"###📌 Next: Confirm SSH Starts Early":[20,38],"###📌 Next: Confirm SSH Starts Early#{1}":[22,38],"###🧽 Optional Cleanup":[39,53],"###🧽 Optional Cleanup#{1}":[41,53],"###🚀 Want even faster boot?":[54,85],"###🚀 Want even faster boot?#{1}":[56,57],"###🚀 Want even faster boot?#{2}":[58,59],"###🚀 Want even faster boot?#{3}":[60,61],"###🚀 Want even faster boot?#{4}":[62,63],"###🚀 Want even faster boot?#{5}":[64,66],"###🚀 Want even faster boot?#{6}":[67,85]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[24,26],[32,35],[43,48],[69,72]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Pandownload_md.ajson b/.smart-env/multi/100-project_Personal_Software_Pandownload_md.ajson deleted file mode 100644 index 24ddfb6..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Pandownload_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Pandownload.md": {"path":"100-project/Personal/Software/Pandownload.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1887m1s","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1731157286000,"size":314,"at":1766986878039,"hash":"1887m1s"},"blocks":{"#":[1,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Pihole_md.ajson b/.smart-env/multi/100-project_Personal_Software_Pihole_md.ajson deleted file mode 100644 index f8312a7..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Pihole_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Pihole.md": {"path":"100-project/Personal/Software/Pihole.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1toxw02","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1679897929000,"size":93,"at":1766986878039,"hash":"1toxw02"},"blocks":{"##dns.windy.lan":[2,6],"##dns.windy.lan#{1}":[3,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_PowerDNS_Auth_重建主节点_md.ajson b/.smart-env/multi/100-project_Personal_Software_PowerDNS_Auth_重建主节点_md.ajson deleted file mode 100644 index 6c999f5..0000000 --- a/.smart-env/multi/100-project_Personal_Software_PowerDNS_Auth_重建主节点_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/PowerDNS Auth/重建主节点.md": {"path":"100-project/Personal/Software/PowerDNS Auth/重建主节点.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1utgpn7","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1760343426564,"size":6992,"at":1766986879407,"hash":"1utgpn7"},"blocks":{"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)":[2,306],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#{1}":[4,8],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#一、系统角色":[9,19],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#一、系统角色#{1}":[11,19],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据":[20,49],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#1️⃣ 列出所有 zone":[22,27],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#1️⃣ 列出所有 zone#{1}":[24,27],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#2️⃣ 导出 zone 文件(PowerDNS 5.0 无 dump-zone)":[28,35],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#2️⃣ 导出 zone 文件(PowerDNS 5.0 无 dump-zone)#{1}":[30,35],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#3️⃣ 导出 TSIG 密钥":[36,49],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#二、从 Slave 导出数据#3️⃣ 导出 TSIG 密钥#{1}":[38,49],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境":[50,112],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#1️⃣ 目录结构":[52,61],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#1️⃣ 目录结构#{1}":[54,61],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#2️⃣ docker-compose.yml":[62,94],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#2️⃣ docker-compose.yml#{1}":[64,94],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#3️⃣ 初始化数据库":[95,112],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#三、部署主节点环境#3️⃣ 初始化数据库#{1}":[97,112],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#四、主节点配置(pdns.conf)":[113,147],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#四、主节点配置(pdns.conf)#{1}":[115,147],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据":[148,180],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#1️⃣ 创建空 zone 并设为 master":[150,162],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#1️⃣ 创建空 zone 并设为 master#{1}":[152,162],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#2️⃣ 导入 zone 文件":[163,170],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#2️⃣ 导入 zone 文件#{1}":[165,170],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#3️⃣ 如 zone 含有 RRSIG/DNSKEY,设为 presigned":[171,180],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#五、导入 Zone 数据#3️⃣ 如 zone 含有 RRSIG/DNSKEY,设为 presigned#{1}":[173,180],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#六、导入 TSIG 密钥并授权从节点":[181,208],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#六、导入 TSIG 密钥并授权从节点#1️⃣ 导入 TSIG key":[183,188],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#六、导入 TSIG 密钥并授权从节点#1️⃣ 导入 TSIG key#{1}":[185,188],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#六、导入 TSIG 密钥并授权从节点#2️⃣ 授权从节点(202.91.35.141)":[189,208],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#六、导入 TSIG 密钥并授权从节点#2️⃣ 授权从节点(202.91.35.141)#{1}":[191,208],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#七、在从节点配置新的主节点":[209,223],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#七、在从节点配置新的主节点#{1}":[211,223],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#八、触发 AXFR 同步":[224,243],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#八、触发 AXFR 同步#主节点发送 NOTIFY":[226,233],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#八、触发 AXFR 同步#主节点发送 NOTIFY#{1}":[228,233],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#八、触发 AXFR 同步#从节点主动获取":[234,243],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#八、触发 AXFR 同步#从节点主动获取#{1}":[236,243],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果":[244,276],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#检查 zone 状态":[246,251],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#检查 zone 状态#{1}":[248,251],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#对比 SOA 序列号":[252,260],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#对比 SOA 序列号#{1}":[254,260],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#查看日志":[261,276],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#九、验证结果#查看日志#{1}":[263,276],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十、常见错误与修复":[277,287],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十、常见错误与修复#{1}":[279,287],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十一、备份与维护":[288,306],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十一、备份与维护#1️⃣ 数据库备份":[290,295],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十一、备份与维护#1️⃣ 数据库备份#{1}":[292,295],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十一、备份与维护#2️⃣ 导出所有 zone 文件":[296,306],"#🌀 从 Slave 节点恢复 PowerDNS Authoritative 主节点(5.0.0 + PostgreSQL)#十一、备份与维护#2️⃣ 导出所有 zone 文件#{1}":[298,306]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[24,26],[30,34],[38,40],[44,46],[54,60],[64,93],[99,102],[106,109],[115,142],[152,161],[165,169],[173,177],[185,187],[191,203],[211,220],[228,232],[236,240],[248,250],[254,257],[265,267],[271,273],[292,294],[298,303]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_RustDesk_md.ajson b/.smart-env/multi/100-project_Personal_Software_RustDesk_md.ajson deleted file mode 100644 index 058cd1e..0000000 --- a/.smart-env/multi/100-project_Personal_Software_RustDesk_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/RustDesk.md": {"path":"100-project/Personal/Software/RustDesk.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"kussbo","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1736156461812,"size":129,"at":1766986878039,"hash":"kussbo"},"blocks":{"#":[2,20]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[12,14],[17,19]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Supabase_md.ajson b/.smart-env/multi/100-project_Personal_Software_Supabase_md.ajson deleted file mode 100644 index b8300ac..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Supabase_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Supabase.md": {"path":"100-project/Personal/Software/Supabase.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mtmr6q","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765513011216,"size":300,"at":1766986878039,"hash":"1mtmr6q"},"blocks":{"#":[3,14]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6],[10,12]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Transmission_md.ajson b/.smart-env/multi/100-project_Personal_Software_Transmission_md.ajson deleted file mode 100644 index a9ae6dd..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Transmission_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Transmission.md": {"path":"100-project/Personal/Software/Transmission.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"eob3au","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1719457781000,"size":148,"at":1766986878039,"hash":"eob3au"},"blocks":{"#":[1,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Win10_md.ajson b/.smart-env/multi/100-project_Personal_Software_Win10_md.ajson deleted file mode 100644 index bae3945..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Win10_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Win10.md": {"path":"100-project/Personal/Software/Win10.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"49u3nw","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762499820865,"size":1399,"at":1766986878039,"hash":"49u3nw"},"blocks":{"#":[2,28]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[26,28]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Win_11_md.ajson b/.smart-env/multi/100-project_Personal_Software_Win_11_md.ajson deleted file mode 100644 index 04c7ba3..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Win_11_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Win 11.md": {"path":"100-project/Personal/Software/Win 11.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"q0f9nm","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762830839000,"size":598,"at":1766986878039,"hash":"q0f9nm"},"blocks":{"#":[2,23]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[16,18],[20,22]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_Zitadel_md.ajson b/.smart-env/multi/100-project_Personal_Software_Zitadel_md.ajson deleted file mode 100644 index ad3751a..0000000 --- a/.smart-env/multi/100-project_Personal_Software_Zitadel_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/Zitadel.md": {"path":"100-project/Personal/Software/Zitadel.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"zspdfe","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1682306506647,"size":98,"at":1766986878039,"hash":"zspdfe"},"blocks":{"#WSVC":[4,11],"#WSVC#{1}":[6,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_docker_network_md.ajson b/.smart-env/multi/100-project_Personal_Software_docker_network_md.ajson deleted file mode 100644 index 3d1fb6f..0000000 --- a/.smart-env/multi/100-project_Personal_Software_docker_network_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/docker network.md": {"path":"100-project/Personal/Software/docker network.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bstbhp","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765164765430,"size":2562,"at":1766986878039,"hash":"bstbhp"},"blocks":{"##Docker + firewalld + iptables 关系总结":[2,89],"##Docker + firewalld + iptables 关系总结#1. 三者分工":[4,16],"##Docker + firewalld + iptables 关系总结#1. 三者分工#{1}":[6,6],"##Docker + firewalld + iptables 关系总结#1. 三者分工#{2}":[7,7],"##Docker + firewalld + iptables 关系总结#1. 三者分工#{3}":[8,12],"##Docker + firewalld + iptables 关系总结#1. 三者分工#{4}":[13,16],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项":[17,41],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项#{1}":[19,27],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项#{2}":[28,31],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项#{3}":[32,36],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项#{4}":[37,39],"##Docker + firewalld + iptables 关系总结#2. Docker 关键配置项#{5}":[40,41],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式":[42,72],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{1}":[44,45],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{2}":[46,52],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{3}":[47,52],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{4}":[53,67],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{5}":[55,67],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{6}":[68,68],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{7}":[69,70],"##Docker + firewalld + iptables 关系总结#3. firewalld 与 Docker 的协作方式#{8}":[71,72],"##Docker + firewalld + iptables 关系总结#4. 典型坑点(本次踩到的)":[73,89],"##Docker + firewalld + iptables 关系总结#4. 典型坑点(本次踩到的)#{1}":[75,82],"##Docker + firewalld + iptables 关系总结#4. 典型坑点(本次踩到的)#{2}":[77,82],"##Docker + firewalld + iptables 关系总结#4. 典型坑点(本次踩到的)#{3}":[83,86],"##Docker + firewalld + iptables 关系总结#4. 典型坑点(本次踩到的)#{4}":[87,89]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[21,26],[47,52],[55,58],[60,64],[77,81]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_Software_vaultwarden_md.ajson b/.smart-env/multi/100-project_Personal_Software_vaultwarden_md.ajson deleted file mode 100644 index 66413ca..0000000 --- a/.smart-env/multi/100-project_Personal_Software_vaultwarden_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/Software/vaultwarden.md": {"path":"100-project/Personal/Software/vaultwarden.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1tbqpf7","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1730867734893,"size":1662,"at":1766986878039,"hash":"1tbqpf7"},"blocks":{"#":[3,72]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,5],[8,11],[14,24],[27,29],[31,42],[45,54],[56,58],[61,63],[65,67],[69,71]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_Bills_md.ajson b/.smart-env/multi/100-project_Personal_VPS_Bills_md.ajson deleted file mode 100644 index 9de95a6..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_Bills_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/Bills.md": {"path":"100-project/Personal/VPS/Bills.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"tuzi0e","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1759988784221,"size":1394,"at":1766986878039,"hash":"tuzi0e"},"blocks":{"#":[5,125]},"outlinks":[{"title":"us1.wsvc.info","target":"http://us1.wsvc.info/","line":56},{"title":"us2.wsvc.info","target":"http://us2.wsvc.info/","line":66},{"title":"us4.wsvc.info","target":"http://us4.wsvc.info/","line":76},{"title":"https://10g.biz/","target":"https://10g.biz/","line":85},{"title":"matrix.chans.xyz","target":"http://matrix.chans.xyz","line":101}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_DNS_md.ajson b/.smart-env/multi/100-project_Personal_VPS_DNS_md.ajson deleted file mode 100644 index d46f3fc..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_DNS_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/DNS.md": {"path":"100-project/Personal/VPS/DNS.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1kcu8ro","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762156850407,"size":18898,"at":1766986878039,"hash":"1kcu8ro"},"blocks":{"###Powerdns":[3,12],"###Powerdns#{1}":[5,12],"#目录结构(建议)":[13,125],"#目录结构(建议)#{1}":[15,27],"#目录结构(建议)#1) 获取 PowerDNS 官方 PostgreSQL schema":[28,34],"#目录结构(建议)#1) 获取 PowerDNS 官方 PostgreSQL schema#{1}":[30,34],"#目录结构(建议)#2) `docker-compose.yml`(保持“官方 schema 建表”的方案)":[35,91],"#目录结构(建议)#2) `docker-compose.yml`(保持“官方 schema 建表”的方案)#{1}":[37,91],"#目录结构(建议)#3) `auth/pdns.conf`(PostgreSQL 后端示例)":[92,116],"#目录结构(建议)#3) `auth/pdns.conf`(PostgreSQL 后端示例)#{1}":[94,116],"#目录结构(建议)#4) 启动":[117,125],"#目录结构(建议)#4) 启动#{1}":[119,125],"#手动恢复脚本(支持 .sql 与 -Fc)":[126,374],"#手动恢复脚本(支持 .sql 与 -Fc)#{1}":[128,238],"#手动恢复脚本(支持 .sql 与 -Fc)##使用示例":[239,258],"#手动恢复脚本(支持 .sql 与 -Fc)##使用示例#{1}":[241,249],"#手动恢复脚本(支持 .sql 与 -Fc)##使用示例#{2}":[244,249],"#手动恢复脚本(支持 .sql 与 -Fc)##使用示例#{3}":[250,258],"#手动恢复脚本(支持 .sql 与 -Fc)##使用示例#{4}":[253,258],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点":[259,272],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点#{1}":[261,262],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点#{2}":[263,264],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点#{3}":[265,266],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点#{4}":[267,269],"#手动恢复脚本(支持 .sql 与 -Fc)#小结 / 注意点#{5}":[270,272],"#手动恢复脚本(支持 .sql 与 -Fc)#4.9.8:":[273,374],"#手动恢复脚本(支持 .sql 与 -Fc)#4.9.8:##db init":[275,374],"#手动恢复脚本(支持 .sql 与 -Fc)#4.9.8:##db init#{1}":[276,374],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)":[375,649],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#{1}":[377,380],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标":[381,393],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标#{1}":[383,384],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标#{2}":[385,386],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标#{3}":[387,388],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标#{4}":[389,391],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#1) 现状与目标#{5}":[392,393],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作":[394,478],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.1 网络与 Compose":[396,420],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.1 网络与 Compose#{1}":[398,403],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.1 网络与 Compose#{2}":[404,415],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.1 网络与 Compose#{3}":[416,420],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.2 `auth/pdns.conf` 关键参数":[421,435],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.2 `auth/pdns.conf` 关键参数#{1}":[423,435],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.3 通过 NPM 反代":[436,453],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.3 通过 NPM 反代#{1}":[438,439],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.3 通过 NPM 反代#{2}":[440,446],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.3 通过 NPM 反代#{3}":[447,453],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)":[454,478],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{1}":[456,464],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{2}":[459,464],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{3}":[465,473],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{4}":[468,473],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{5}":[474,476],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#2) 主节点(Docker)操作#2.4 记录修改(本次实际)#{6}":[477,478],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)":[479,555],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#{1}":[481,482],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.1 推荐:用 `pdnsutil` 指向新主并拉取":[483,518],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.1 推荐:用 `pdnsutil` 指向新主并拉取#{1}":[485,518],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.2 备选 A:没有该子命令时,用“重建从区”":[519,526],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.2 备选 A:没有该子命令时,用“重建从区”#{1}":[521,526],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.3 备选 B:直接改数据库后补拉取(你本次已用)":[527,542],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.3 备选 B:直接改数据库后补拉取(你本次已用)#{1}":[529,542],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.4 主节点授权(在 161 的容器上执行)":[543,555],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#3) us1(二进制从节点)操作(本次实际)#3.4 主节点授权(在 161 的容器上执行)#{1}":[545,555],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)":[556,568],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)#{1}":[558,559],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)#{2}":[560,561],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)#{3}":[562,563],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)#{4}":[564,566],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#4) 常见问题(按本次排障)#{5}":[567,568],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)":[569,649],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)#{1}":[571,572],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)#{2}":[573,574],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)#{3}":[575,576],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)#{4}":[577,649],"#PowerDNS Auth 变更 IP — 简版操作手册(按本次实际操作)#5) 验收清单(简版)#{5}":[585,649]},"outlinks":[{"title":" \"${1:-}\" == \"--inplace\" ","target":"\"${1:-}\" == \"--inplace\"","line":150},{"title":" $# -lt 1 ","target":"$# -lt 1","line":155},{"title":" ! -f \"$DUMP_PATH\" ","target":"! -f \"$DUMP_PATH\"","line":161},{"title":"| \"$DUMP_PATH\" == backup/* ","target":"\"$DUMP_PATH\" == ./backup/*","line":169},{"title":" $INPLACE -eq 1 ","target":"$INPLACE -eq 1","line":190},{"title":" $IS_FC -eq 1 ","target":"$IS_FC -eq 1","line":200},{"title":" $IS_FC -eq 1 ","target":"$IS_FC -eq 1","line":216}],"task_lines":[],"tasks":{},"codeblock_ranges":[[15,26],[37,90],[94,115],[119,122],[130,231],[235,237],[244,248],[253,255],[276,280],[284,290],[291,295],[297,299],[304,310],[312,319],[322,326],[328,345],[348,351],[354,358],[360,363],[365,367],[369,372],[398,400],[423,432],[449,452],[459,463],[468,472],[487,490],[494,508],[512,515],[521,525],[529,533],[537,541],[545,552],[585,591],[593,596],[599,603],[606,610],[615,618],[621,624],[627,630],[632,635],[637,642],[646,649]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_hk2_chans_xyz_md.ajson b/.smart-env/multi/100-project_Personal_VPS_hk2_chans_xyz_md.ajson deleted file mode 100644 index 4f5e0ce..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_hk2_chans_xyz_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/hk2.chans.xyz.md": {"path":"100-project/Personal/VPS/hk2.chans.xyz.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1pcx9ie","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762240591000,"size":9201,"at":1766986878039,"hash":"1pcx9ie"},"blocks":{"#Install":[3,362],"#Install#debian 13":[6,23],"#Install#debian 13#vps provider debian 10 install":[7,23],"#Install#debian 13#vps provider debian 10 install#{1}":[9,16],"#Install#debian 13#vps provider debian 10 install#{2}":[17,18],"#Install#debian 13#vps provider debian 10 install#{3}":[19,21],"#Install#debian 13#vps provider debian 10 install#{4}":[22,23],"#Install#🔧 How to Handle Missing Debian 11 (Bullseye) Repos":[24,49],"#Install#🔧 How to Handle Missing Debian 11 (Bullseye) Repos#{1}":[26,49],"#Install#🔄 Recommended Path":[50,63],"#Install#🔄 Recommended Path#{1}":[52,52],"#Install#🔄 Recommended Path#{2}":[53,54],"#Install#🔄 Recommended Path#{3}":[55,55],"#Install#🔄 Recommended Path#{4}":[56,57],"#Install#🔄 Recommended Path#{5}":[58,58],"#Install#🔄 Recommended Path#{6}":[59,63],"#Install#⚠️ Alternative Approach (Skip Hop?)":[64,75],"#Install#⚠️ Alternative Approach (Skip Hop?)#{1}":[66,75],"#Install#traefik":[76,161],"#Install#traefik#{1}":[78,161],"#Install#一步改成 MASTER":[162,186],"#Install#一步改成 MASTER#{1}":[164,186],"#Install#✅ 一、明确两种元数据的作用":[187,195],"#Install#✅ 一、明确两种元数据的作用#{1}":[189,195],"#Install#🧹 二、删除无用的 `AXFR-MASTER-TSIG` 记录":[196,222],"#Install#🧹 二、删除无用的 `AXFR-MASTER-TSIG` 记录#{1}":[198,222],"#Install#🧩 三、保留 `PRESIGNED`(不要删)":[223,230],"#Install#🧩 三、保留 `PRESIGNED`(不要删)#{1}":[225,230],"#Install#🧰 四、确保 `supermasters` 已清空(如果还没执行)":[231,238],"#Install#🧰 四、确保 `supermasters` 已清空(如果还没执行)#{1}":[233,238],"#Install#🚀 五、重启 PDNS 并验证主节点状态":[239,256],"#Install#🚀 五、重启 PDNS 并验证主节点状态#{1}":[241,256],"#Install#✅ 六、总结(当前应保留状态)":[257,362],"#Install#✅ 六、总结(当前应保留状态)#{1}":[259,269],"#Install#✅ 六、总结(当前应保留状态)#{2}":[270,271],"#Install#✅ 六、总结(当前应保留状态)#{3}":[272,273],"#Install#✅ 六、总结(当前应保留状态)#{4}":[274,275],"#Install#✅ 六、总结(当前应保留状态)#{5}":[276,278],"#Install#✅ 六、总结(当前应保留状态)#{6}":[279,362]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,12],[28,31],[35,38],[42,44],[78,142],[147,149],[152,154],[156,158],[166,168],[173,175],[179,181],[200,202],[206,208],[212,219],[233,235],[241,244],[248,253],[284,300],[304,332],[336,343],[346,351],[354,362]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_https_proxy_md.ajson b/.smart-env/multi/100-project_Personal_VPS_https_proxy_md.ajson deleted file mode 100644 index 28b3ccf..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_https_proxy_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/https proxy.md": {"path":"100-project/Personal/VPS/https proxy.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1avw4dv","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762152550489,"size":3036,"at":1766986878039,"hash":"1avw4dv"},"blocks":{"#":[2,94]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,94]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_us1_wsvc_info_md.ajson b/.smart-env/multi/100-project_Personal_VPS_us1_wsvc_info_md.ajson deleted file mode 100644 index fb4643b..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_us1_wsvc_info_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/us1.wsvc.info.md": {"path":"100-project/Personal/VPS/us1.wsvc.info.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14lfijv","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765159704899,"size":1,"at":1766986878039,"hash":"14lfijv"},"blocks":{},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_VPS_us4_wsvc_info_md.ajson b/.smart-env/multi/100-project_Personal_VPS_us4_wsvc_info_md.ajson deleted file mode 100644 index d7c184e..0000000 --- a/.smart-env/multi/100-project_Personal_VPS_us4_wsvc_info_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/VPS/us4.wsvc.info.md": {"path":"100-project/Personal/VPS/us4.wsvc.info.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"158k6re","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1762299601000,"size":1851,"at":1766986878039,"hash":"158k6re"},"blocks":{"#":[4,67]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,63],[65,67]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_blog_md.ajson b/.smart-env/multi/100-project_Personal_blog_md.ajson deleted file mode 100644 index 606ca52..0000000 --- a/.smart-env/multi/100-project_Personal_blog_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/blog.md": {"path":"100-project/Personal/blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"105v4w0","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1686552462375,"size":116,"at":1766986877914,"hash":"105v4w0"},"blocks":{"#":[2,4]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Personal_resume_2025_md.ajson b/.smart-env/multi/100-project_Personal_resume_2025_md.ajson deleted file mode 100644 index 7a9cc0d..0000000 --- a/.smart-env/multi/100-project_Personal_resume_2025_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Personal/resume/2025.md": {"path":"100-project/Personal/resume/2025.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"13qj09o","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1765354491080,"size":19527,"at":1766986878039,"hash":"13qj09o"},"blocks":{"#冯志强":[3,200],"#冯志强#{1}":[5,6],"#冯志强#{2}":[7,7],"#冯志强#{3}":[8,9],"#冯志强#{4}":[10,11],"#冯志强#求职意向":[12,19],"#冯志强#求职意向#{1}":[14,14],"#冯志强#求职意向#{2}":[15,15],"#冯志强#求职意向#{3}":[16,17],"#冯志强#求职意向#{4}":[18,19],"#冯志强#个人优势":[20,29],"#冯志强#个人优势#{1}":[22,22],"#冯志强#个人优势#{2}":[23,23],"#冯志强#个人优势#{3}":[24,24],"#冯志强#个人优势#{4}":[25,25],"#冯志强#个人优势#{5}":[26,27],"#冯志强#个人优势#{6}":[28,29],"#冯志强#工作经历":[30,104],"#冯志强#工作经历#广州智能科技发展有限公司(民营)":[32,52],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{1}":[34,37],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{2}":[38,38],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{3}":[39,39],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{4}":[40,40],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{5}":[41,41],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{6}":[42,43],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{7}":[44,45],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{8}":[46,46],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{9}":[47,47],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{10}":[48,48],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{11}":[49,50],"#冯志强#工作经历#广州智能科技发展有限公司(民营)#{12}":[51,52],"#冯志强#工作经历#广东泰信实业有限公司(国企)":[53,65],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{1}":[55,58],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{2}":[59,59],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{3}":[60,60],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{4}":[61,61],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{5}":[62,63],"#冯志强#工作经历#广东泰信实业有限公司(国企)#{6}":[64,65],"#冯志强#工作经历#点石资讯有限公司(合资)":[66,77],"#冯志强#工作经历#点石资讯有限公司(合资)#{1}":[68,71],"#冯志强#工作经历#点石资讯有限公司(合资)#{2}":[72,72],"#冯志强#工作经历#点石资讯有限公司(合资)#{3}":[73,73],"#冯志强#工作经历#点石资讯有限公司(合资)#{4}":[74,75],"#冯志强#工作经历#点石资讯有限公司(合资)#{5}":[76,77],"#冯志强#工作经历#昆明博通信息网络技术有限公司(民营)":[78,86],"#冯志强#工作经历#昆明博通信息网络技术有限公司(民营)#{1}":[80,81],"#冯志强#工作经历#昆明博通信息网络技术有限公司(民营)#{2}":[82,82],"#冯志强#工作经历#昆明博通信息网络技术有限公司(民营)#{3}":[83,84],"#冯志强#工作经历#昆明博通信息网络技术有限公司(民营)#{4}":[85,86],"#冯志强#工作经历#云南百姓服务网有限公司(国企)":[87,95],"#冯志强#工作经历#云南百姓服务网有限公司(国企)#{1}":[89,90],"#冯志强#工作经历#云南百姓服务网有限公司(国企)#{2}":[91,91],"#冯志强#工作经历#云南百姓服务网有限公司(国企)#{3}":[92,93],"#冯志强#工作经历#云南百姓服务网有限公司(国企)#{4}":[94,95],"#冯志强#工作经历#云南汇友系统集成有限公司(民营)":[96,104],"#冯志强#工作经历#云南汇友系统集成有限公司(民营)#{1}":[98,99],"#冯志强#工作经历#云南汇友系统集成有限公司(民营)#{2}":[100,100],"#冯志强#工作经历#云南汇友系统集成有限公司(民营)#{3}":[101,102],"#冯志强#工作经历#云南汇友系统集成有限公司(民营)#{4}":[103,104],"#冯志强#项目经验(节选)":[105,200],"#冯志强#项目经验(节选)#{1}":[107,108],"#冯志强#项目经验(节选)#南京智慧城市项目":[109,125],"#冯志强#项目经验(节选)#南京智慧城市项目#{1}":[111,114],"#冯志强#项目经验(节选)#南京智慧城市项目#{2}":[115,115],"#冯志强#项目经验(节选)#南京智慧城市项目#{3}":[116,117],"#冯志强#项目经验(节选)#南京智慧城市项目#{4}":[118,119],"#冯志强#项目经验(节选)#南京智慧城市项目#{5}":[120,120],"#冯志强#项目经验(节选)#南京智慧城市项目#{6}":[121,121],"#冯志强#项目经验(节选)#南京智慧城市项目#{7}":[122,123],"#冯志强#项目经验(节选)#南京智慧城市项目#{8}":[124,125],"#冯志强#项目经验(节选)#深圳大运会软件系统":[126,141],"#冯志强#项目经验(节选)#深圳大运会软件系统#{1}":[128,131],"#冯志强#项目经验(节选)#深圳大运会软件系统#{2}":[132,133],"#冯志强#项目经验(节选)#深圳大运会软件系统#{3}":[134,135],"#冯志强#项目经验(节选)#深圳大运会软件系统#{4}":[136,136],"#冯志强#项目经验(节选)#深圳大运会软件系统#{5}":[137,137],"#冯志强#项目经验(节选)#深圳大运会软件系统#{6}":[138,139],"#冯志强#项目经验(节选)#深圳大运会软件系统#{7}":[140,141],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件":[142,156],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{1}":[144,147],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{2}":[148,149],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{3}":[150,151],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{4}":[152,152],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{5}":[153,154],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{6}":[155,156],"#冯志强#项目经验(节选)#沈阳机场二期改造":[157,173],"#冯志强#项目经验(节选)#沈阳机场二期改造#{1}":[159,162],"#冯志强#项目经验(节选)#沈阳机场二期改造#{2}":[163,163],"#冯志强#项目经验(节选)#沈阳机场二期改造#{3}":[164,165],"#冯志强#项目经验(节选)#沈阳机场二期改造#{4}":[166,167],"#冯志强#项目经验(节选)#沈阳机场二期改造#{5}":[168,168],"#冯志强#项目经验(节选)#沈阳机场二期改造#{6}":[169,169],"#冯志强#项目经验(节选)#沈阳机场二期改造#{7}":[170,171],"#冯志强#项目经验(节选)#沈阳机场二期改造#{8}":[172,173],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成":[174,190],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{1}":[176,179],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{2}":[180,180],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{3}":[181,182],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{4}":[183,184],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{5}":[185,185],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{6}":[186,186],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{7}":[187,188],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{8}":[189,190],"#冯志强#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统":[191,200],"#冯志强#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{1}":[193,196],"#冯志强#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{2}":[197,198],"#冯志强#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{3}":[199,200],"#冯志强[2]":[201,352],"#冯志强[2]#{1}":[203,208],"#冯志强[2]#📝 职业综述":[209,217],"#冯志强[2]#📝 职业综述#{1}":[211,211],"#冯志强[2]#📝 职业综述#{2}":[212,212],"#冯志强[2]#📝 职业综述#{3}":[213,213],"#冯志强[2]#📝 职业综述#{4}":[214,215],"#冯志强[2]#📝 职业综述#{5}":[216,217],"#冯志强[2]#🛠 核心技术栈":[218,244],"#冯志强[2]#🛠 核心技术栈#{1}":[220,221],"#冯志强[2]#🛠 核心技术栈#{2}":[222,222],"#冯志强[2]#🛠 核心技术栈#{3}":[223,223],"#冯志强[2]#🛠 核心技术栈#{4}":[224,225],"#冯志强[2]#🛠 核心技术栈#{5}":[226,227],"#冯志强[2]#🛠 核心技术栈#{6}":[228,228],"#冯志强[2]#🛠 核心技术栈#{7}":[229,230],"#冯志强[2]#🛠 核心技术栈#{8}":[231,232],"#冯志强[2]#🛠 核心技术栈#{9}":[233,233],"#冯志强[2]#🛠 核心技术栈#{10}":[234,235],"#冯志强[2]#🛠 核心技术栈#{11}":[236,237],"#冯志强[2]#🛠 核心技术栈#{12}":[238,238],"#冯志强[2]#🛠 核心技术栈#{13}":[239,239],"#冯志强[2]#🛠 核心技术栈#{14}":[240,240],"#冯志强[2]#🛠 核心技术栈#{15}":[241,242],"#冯志强[2]#🛠 核心技术栈#{16}":[243,244],"#冯志强[2]#💼 工作经历":[245,286],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人":[247,259],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{1}":[249,252],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{2}":[253,253],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{3}":[254,254],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{4}":[255,255],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{5}":[256,257],"#冯志强[2]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{6}":[258,259],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师":[260,269],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{1}":[262,263],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{2}":[264,264],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{3}":[265,265],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{4}":[266,267],"#冯志强[2]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{5}":[268,269],"#冯志强[2]#💼 工作经历#**点石资讯有限公司** | 软件工程师":[270,278],"#冯志强[2]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{1}":[272,273],"#冯志强[2]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{2}":[274,274],"#冯志强[2]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{3}":[275,276],"#冯志强[2]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{4}":[277,278],"#冯志强[2]#💼 工作经历#**早期职业经历 (1998-2000)**":[279,286],"#冯志强[2]#💼 工作经历#**早期职业经历 (1998-2000)**#{1}":[281,281],"#冯志强[2]#💼 工作经历#**早期职业经历 (1998-2000)**#{2}":[282,282],"#冯志强[2]#💼 工作经历#**早期职业经历 (1998-2000)**#{3}":[283,284],"#冯志强[2]#💼 工作经历#**早期职业经历 (1998-2000)**#{4}":[285,286],"#冯志强[2]#🏆 代表性项目 (Project Highlights)":[287,318],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#{1}":[289,290],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**1. 广州新白云机场信息系统集成 (AODB/集成)**":[291,297],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{1}":[293,293],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{2}":[294,294],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{3}":[295,295],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{4}":[296,297],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**2. 广州亚运会 / 深圳大运会 信息中心系统**":[298,304],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{1}":[300,300],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{2}":[301,301],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{3}":[302,302],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{4}":[303,304],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**3. 天津/沈阳 机场二期扩建工程**":[305,310],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**3. 天津/沈阳 机场二期扩建工程**#{1}":[307,307],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**3. 天津/沈阳 机场二期扩建工程**#{2}":[308,308],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**3. 天津/沈阳 机场二期扩建工程**#{3}":[309,310],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**4. 南京智慧城市展示与控制系统**":[311,318],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**4. 南京智慧城市展示与控制系统**#{1}":[313,313],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**4. 南京智慧城市展示与控制系统**#{2}":[314,314],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**4. 南京智慧城市展示与控制系统**#{3}":[315,316],"#冯志强[2]#🏆 代表性项目 (Project Highlights)#**4. 南京智慧城市展示与控制系统**#{4}":[317,318],"#冯志强[2]#🎓 教育背景":[319,328],"#冯志强[2]#🎓 教育背景#{1}":[321,323],"#冯志强[2]#🎓 教育背景#{2}":[324,324],"#冯志强[2]#🎓 教育背景#{3}":[325,326],"#冯志强[2]#🎓 教育背景#{4}":[327,328],"#冯志强[2]#🗣 语言与兴趣":[329,352],"#冯志强[2]#🗣 语言与兴趣#{1}":[331,331],"#冯志强[2]#🗣 语言与兴趣#{2}":[332,333],"#冯志强[2]#🗣 语言与兴趣#{3}":[334,335],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:":[336,352],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:#{1}":[338,338],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:#{2}":[339,340],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:#{3}":[341,342],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:#{4}":[343,345],"#冯志强[2]#🗣 语言与兴趣#💡 给你的修改说明:#{5}":[346,352],"#冯志强[3]":[353,493],"#冯志强[3]#{1}":[355,360],"#冯志强[3]#📝 职业综述":[361,369],"#冯志强[3]#📝 职业综述#{1}":[363,363],"#冯志强[3]#📝 职业综述#{2}":[364,364],"#冯志强[3]#📝 职业综述#{3}":[365,365],"#冯志强[3]#📝 职业综述#{4}":[366,367],"#冯志强[3]#📝 职业综述#{5}":[368,369],"#冯志强[3]#🛠 核心技术栈":[370,395],"#冯志强[3]#🛠 核心技术栈#{1}":[372,373],"#冯志强[3]#🛠 核心技术栈#{2}":[374,374],"#冯志强[3]#🛠 核心技术栈#{3}":[375,375],"#冯志强[3]#🛠 核心技术栈#{4}":[376,377],"#冯志强[3]#🛠 核心技术栈#{5}":[378,379],"#冯志强[3]#🛠 核心技术栈#{6}":[380,380],"#冯志强[3]#🛠 核心技术栈#{7}":[381,382],"#冯志强[3]#🛠 核心技术栈#{8}":[383,384],"#冯志强[3]#🛠 核心技术栈#{9}":[385,385],"#冯志强[3]#🛠 核心技术栈#{10}":[386,387],"#冯志强[3]#🛠 核心技术栈#{11}":[388,389],"#冯志强[3]#🛠 核心技术栈#{12}":[390,390],"#冯志强[3]#🛠 核心技术栈#{13}":[391,391],"#冯志强[3]#🛠 核心技术栈#{14}":[392,393],"#冯志强[3]#🛠 核心技术栈#{15}":[394,395],"#冯志强[3]#💼 工作经历":[396,437],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人":[398,410],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{1}":[400,403],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{2}":[404,404],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{3}":[405,405],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{4}":[406,406],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{5}":[407,408],"#冯志强[3]#💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{6}":[409,410],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师":[411,420],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{1}":[413,414],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{2}":[415,415],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{3}":[416,416],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{4}":[417,418],"#冯志强[3]#💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{5}":[419,420],"#冯志强[3]#💼 工作经历#**点石资讯有限公司** | 软件工程师":[421,429],"#冯志强[3]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{1}":[423,424],"#冯志强[3]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{2}":[425,425],"#冯志强[3]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{3}":[426,427],"#冯志强[3]#💼 工作经历#**点石资讯有限公司** | 软件工程师#{4}":[428,429],"#冯志强[3]#💼 工作经历#**早期职业经历 (1998-2000)**":[430,437],"#冯志强[3]#💼 工作经历#**早期职业经历 (1998-2000)**#{1}":[432,432],"#冯志强[3]#💼 工作经历#**早期职业经历 (1998-2000)**#{2}":[433,433],"#冯志强[3]#💼 工作经历#**早期职业经历 (1998-2000)**#{3}":[434,435],"#冯志强[3]#💼 工作经历#**早期职业经历 (1998-2000)**#{4}":[436,437],"#冯志强[3]#🏆 代表性项目":[438,479],"#冯志强[3]#🏆 代表性项目#{1}":[440,441],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**":[442,451],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{1}":[444,444],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{2}":[445,445],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{3}":[446,446],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{4}":[447,447],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{5}":[448,449],"#冯志强[3]#🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{6}":[450,451],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**":[452,461],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{1}":[454,454],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{2}":[455,455],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{3}":[456,456],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{4}":[457,457],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{5}":[458,459],"#冯志强[3]#🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{6}":[460,461],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**":[462,470],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{1}":[464,464],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{2}":[465,465],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{3}":[466,466],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{4}":[467,468],"#冯志强[3]#🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{5}":[469,470],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**":[471,479],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{1}":[473,473],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{2}":[474,474],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{3}":[475,475],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{4}":[476,477],"#冯志强[3]#🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{5}":[478,479],"#冯志强[3]#🎓 教育背景":[480,489],"#冯志强[3]#🎓 教育背景#{1}":[482,484],"#冯志强[3]#🎓 教育背景#{2}":[485,485],"#冯志强[3]#🎓 教育背景#{3}":[486,487],"#冯志强[3]#🎓 教育背景#{4}":[488,489],"#冯志强[3]#🗣 语言与兴趣":[490,493],"#冯志强[3]#🗣 语言与兴趣#{1}":[492,492],"#冯志强[3]#🗣 语言与兴趣#{2}":[493,493]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_CIIMS_Configuration_md.ajson b/.smart-env/multi/100-project_Work_Airport_CIIMS_Configuration_md.ajson deleted file mode 100644 index ab1b844..0000000 --- a/.smart-env/multi/100-project_Work_Airport_CIIMS_Configuration_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/CIIMS Configuration.md": {"path":"100-project/Work/Airport/CIIMS Configuration.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1wzrgun","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1699866719357,"size":1159,"at":1766986878039,"hash":"1wzrgun"},"blocks":{"#":[1,26]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,12],[16,26]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Chengdu_Maintenance_md.ajson b/.smart-env/multi/100-project_Work_Airport_Chengdu_Maintenance_md.ajson deleted file mode 100644 index 28fb1fe..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Chengdu_Maintenance_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Chengdu/Maintenance.md": {"path":"100-project/Work/Airport/Chengdu/Maintenance.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"f63byv","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1737685728138,"size":4158,"at":1766986879407,"hash":"f63byv"},"blocks":{"#elastic search":[3,163],"#elastic search#{1}":[4,15],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**":[16,46],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:":[18,46],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{1}":[19,23],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{2}":[20,23],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{3}":[24,35],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{4}":[25,35],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{5}":[36,46],"#elastic search##**仅通过 SSH 服务端设置超时(方案一)**#**步骤说明**:#{6}":[37,46],"#elastic search##**参数解释**:":[47,59],"#elastic search##**参数解释**:#{1}":[48,48],"#elastic search##**参数解释**:#{2}":[49,51],"#elastic search##**参数解释**:#{3}":[52,52],"#elastic search##**参数解释**:#{4}":[53,59],"#elastic search##**验证配置**:":[60,71],"#elastic search##**验证配置**:#{1}":[61,66],"#elastic search##**验证配置**:#{2}":[62,66],"#elastic search##**验证配置**:#{3}":[67,67],"#elastic search##**验证配置**:#{4}":[68,71],"#elastic search##**注意事项**:":[72,84],"#elastic search##**注意事项**:#{1}":[73,73],"#elastic search##**注意事项**:#{2}":[74,76],"#elastic search##**注意事项**:#{3}":[77,77],"#elastic search##**注意事项**:#{4}":[78,84],"#elastic search##**总结**":[85,163],"#elastic search##**总结**#{1}":[86,163]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[20,22],[25,29],[31,34],[37,43],[62,64],[79,81],[89,100],[102,104],[108,111],[113,119],[121,123],[125,137],[139,144],[146,151]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Chengdu_MsgExchangeApi_patch_md.ajson b/.smart-env/multi/100-project_Work_Airport_Chengdu_MsgExchangeApi_patch_md.ajson deleted file mode 100644 index 6ed008d..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Chengdu_MsgExchangeApi_patch_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Chengdu/MsgExchangeApi patch.md": {"path":"100-project/Work/Airport/Chengdu/MsgExchangeApi patch.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"l848iv","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1702281425253,"size":53,"at":1766986879407,"hash":"l848iv"},"blocks":{"#":[3,5]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Chengdu_Office_Test_Env_md.ajson b/.smart-env/multi/100-project_Work_Airport_Chengdu_Office_Test_Env_md.ajson deleted file mode 100644 index d5df740..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Chengdu_Office_Test_Env_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Chengdu/Office Test Env.md": {"path":"100-project/Work/Airport/Chengdu/Office Test Env.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1c22sa3","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1705043888385,"size":5209,"at":1766986879407,"hash":"1c22sa3"},"blocks":{"##Server":[3,11],"##Server#{1}":[5,11],"##Component":[12,40],"##Component#{1}":[13,33],"##Component#{2}":[34,40],"##Deployment":[41,202],"##Deployment#App Stack":[43,202],"##Deployment#App Stack#{1}":[44,45],"##Deployment#App Stack#{2}":[46,46],"##Deployment#App Stack#{3}":[47,202]},"outlinks":[{"title":"local git","target":"https://gitea.int.it2000.com.cn/cdia/app-stack","line":44}],"task_lines":[],"tasks":{},"codeblock_ranges":[[49,112],[116,202]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Chengdu_Single_Node_Server_for_Test_md.ajson b/.smart-env/multi/100-project_Work_Airport_Chengdu_Single_Node_Server_for_Test_md.ajson deleted file mode 100644 index 24166f9..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Chengdu_Single_Node_Server_for_Test_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Chengdu/Single Node Server for Test.md": {"path":"100-project/Work/Airport/Chengdu/Single Node Server for Test.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1yrrm2r","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1705044215355,"size":171,"at":1766986879407,"hash":"1yrrm2r"},"blocks":{"##基础设施":[3,11],"##基础设施#{1}":[4,5],"##基础设施#{2}":[6,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Dev_Env_md.ajson b/.smart-env/multi/100-project_Work_Airport_Dev_Env_md.ajson deleted file mode 100644 index 1a26340..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Dev_Env_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Dev Env.md": {"path":"100-project/Work/Airport/Dev Env.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1i6cydq","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1732069512000,"size":613,"at":1766986878039,"hash":"1i6cydq"},"blocks":{"#":[2,23]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,16],[18,22]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram-MacBook_Pro_md.ajson b/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram-MacBook_Pro_md.ajson deleted file mode 100644 index 43f51a2..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram-MacBook_Pro_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Guangzhou/New Telegram-MacBook Pro.md": {"path":"100-project/Work/Airport/Guangzhou/New Telegram-MacBook Pro.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14w1h52","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1737106596810,"size":18044,"at":1766986879407,"hash":"14w1h52"},"blocks":{"#技术选型":[3,24],"#技术选型##串口数据接收":[4,20],"#技术选型##串口数据接收#{1}":[5,20],"#技术选型##串口数据接收#{2}":[8,20],"#技术选型##消息队列":[21,24],"#技术选型##消息队列#{1}":[22,24],"#架构设计":[25,1102],"#架构设计#{1}":[27,33],"#架构设计#{2}":[34,34],"#架构设计#{3}":[35,35],"#架构设计#{4}":[36,36],"#架构设计#{5}":[37,37],"#架构设计#{6}":[38,38],"#架构设计#{7}":[39,39],"#架构设计#{8}":[40,41],"#架构设计#{9}":[42,43],"#架构设计##系统总线适配":[44,48],"#架构设计##系统总线适配#{1}":[45,48],"#架构设计##串口转消息队列":[49,53],"#架构设计##串口转消息队列#{1}":[50,53],"#架构设计##电报存储":[54,224],"#架构设计##电报存储#{1}":[55,224],"#架构设计##电报解析,电报存储,电报转发":[225,227],"#架构设计##电报解析,电报存储,电报转发#{1}":[226,227],"#架构设计##管理界面":[228,483],"#架构设计##管理界面#{1}":[229,483],"#架构设计#Store":[484,1102],"#架构设计#Store#{1}":[486,1102]},"outlinks":[{"title":"Flowbite Svelte","target":"https://flowbite-svelte.com/","line":239}],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,10],[16,20],[64,120],[124,220],[222,223],[254,258],[261,265],[268,271],[274,276],[279,281],[284,286],[290,417],[420,473],[479,481],[488,515],[520,838],[846,980],[985,1099]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram_md.ajson b/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram_md.ajson deleted file mode 100644 index fbdb127..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Guangzhou_New_Telegram_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Guangzhou/New Telegram.md": {"path":"100-project/Work/Airport/Guangzhou/New Telegram.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1i2jgu4","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1736923285499,"size":12547,"at":1766986879407,"hash":"1i2jgu4"},"blocks":{"#技术选型":[3,24],"#技术选型##串口数据接收":[4,20],"#技术选型##串口数据接收#{1}":[5,20],"#技术选型##串口数据接收#{2}":[8,20],"#技术选型##消息队列":[21,24],"#技术选型##消息队列#{1}":[22,24],"#架构设计":[25,584],"#架构设计#{1}":[27,33],"#架构设计#{2}":[34,34],"#架构设计#{3}":[35,35],"#架构设计#{4}":[36,36],"#架构设计#{5}":[37,37],"#架构设计#{6}":[38,38],"#架构设计#{7}":[39,39],"#架构设计#{8}":[40,41],"#架构设计#{9}":[42,43],"#架构设计##系统总线适配":[44,48],"#架构设计##系统总线适配#{1}":[45,48],"#架构设计##串口转消息队列":[49,53],"#架构设计##串口转消息队列#{1}":[50,53],"#架构设计##电报存储":[54,224],"#架构设计##电报存储#{1}":[55,224],"#架构设计##电报解析,电报存储,电报转发":[225,227],"#架构设计##电报解析,电报存储,电报转发#{1}":[226,227],"#架构设计##管理界面":[228,483],"#架构设计##管理界面#{1}":[229,483],"#架构设计#Store":[484,584],"#架构设计#Store#{1}":[486,584]},"outlinks":[{"title":"Flowbite Svelte","target":"https://flowbite-svelte.com/","line":239}],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,10],[16,20],[64,120],[124,220],[222,223],[254,258],[261,265],[268,271],[274,276],[279,281],[284,286],[290,417],[420,473],[479,481],[488,508],[513,516],[523,584]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Guangzhou_Telegram_Parse_md.ajson b/.smart-env/multi/100-project_Work_Airport_Guangzhou_Telegram_Parse_md.ajson deleted file mode 100644 index ba742d2..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Guangzhou_Telegram_Parse_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Guangzhou/Telegram Parse.md": {"path":"100-project/Work/Airport/Guangzhou/Telegram Parse.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"9jvci3","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1721105504000,"size":145,"at":1766986879407,"hash":"9jvci3"},"blocks":{"#":[4,14]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Guangzhou_meilisearch_md.ajson b/.smart-env/multi/100-project_Work_Airport_Guangzhou_meilisearch_md.ajson deleted file mode 100644 index 9a62d8a..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Guangzhou_meilisearch_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Guangzhou/meilisearch.md": {"path":"100-project/Work/Airport/Guangzhou/meilisearch.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1rr4pzl","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1719287652000,"size":906,"at":1766986879407,"hash":"1rr4pzl"},"blocks":{"#":[2,41]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,21],[24,26],[28,34],[36,41]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Micronaut_XML_md.ajson b/.smart-env/multi/100-project_Work_Airport_Micronaut_XML_md.ajson deleted file mode 100644 index 23c3dd2..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Micronaut_XML_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Micronaut XML.md": {"path":"100-project/Work/Airport/Micronaut XML.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"q8vtp0","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1744183494097,"size":7706,"at":1766986878039,"hash":"q8vtp0"},"blocks":{"#Implementing XML Response Formatting in Micronaut Applications":[3,213],"#Implementing XML Response Formatting in Micronaut Applications#{1}":[5,6],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies":[7,27],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies#{1}":[9,10],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies#Maven Configuration":[11,21],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies#Maven Configuration#{1}":[13,21],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies#Gradle Configuration":[22,27],"#Implementing XML Response Formatting in Micronaut Applications#Adding Required Dependencies#Gradle Configuration#{1}":[24,27],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes":[28,83],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes#{1}":[30,31],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes#Java Implementation":[32,58],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes#Java Implementation#{1}":[34,58],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes#Kotlin Implementation":[59,83],"#Implementing XML Response Formatting in Micronaut Applications#Creating XML-Compatible Data Classes#Kotlin Implementation#{1}":[61,83],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses":[84,140],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses#{1}":[86,87],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses#Method 1: Content Negotiation Using @Produces":[88,110],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses#Method 1: Content Negotiation Using @Produces#{1}":[90,110],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses#Method 2: Manual Content Type Selection":[111,140],"#Implementing XML Response Formatting in Micronaut Applications#Implementing Controllers for XML Responses#Method 2: Manual Content Type Selection#{1}":[113,140],"#Implementing XML Response Formatting in Micronaut Applications#Handling Nested Objects":[141,167],"#Implementing XML Response Formatting in Micronaut Applications#Handling Nested Objects#{1}":[143,167],"#Implementing XML Response Formatting in Micronaut Applications#Testing XML Responses":[168,184],"#Implementing XML Response Formatting in Micronaut Applications#Testing XML Responses#{1}":[170,184],"#Implementing XML Response Formatting in Micronaut Applications#Conclusion":[185,213],"#Implementing XML Response Formatting in Micronaut Applications#Conclusion#{1}":[187,213]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[13,18],[24,26],[34,55],[61,80],[92,107],[115,137],[145,164],[172,174],[178,183]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_POC_Telegram_md.ajson b/.smart-env/multi/100-project_Work_Airport_POC_Telegram_md.ajson deleted file mode 100644 index 5a0c359..0000000 --- a/.smart-env/multi/100-project_Work_Airport_POC_Telegram_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/POC/Telegram.md": {"path":"100-project/Work/Airport/POC/Telegram.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"pob85r","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1736413057000,"size":368,"at":1766986879407,"hash":"pob85r"},"blocks":{"##Dev":[3,16],"##Dev#Windows COM Simulator":[5,16],"##Dev#Windows COM Simulator#{1}":[7,16]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Refactor_CIIMS_proxy_md.ajson b/.smart-env/multi/100-project_Work_Airport_Refactor_CIIMS_proxy_md.ajson deleted file mode 100644 index 3ba663e..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Refactor_CIIMS_proxy_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Refactor/CIIMS/proxy.md": {"path":"100-project/Work/Airport/Refactor/CIIMS/proxy.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"fo9c7j","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1733368267000,"size":67,"at":1766986879407,"hash":"fo9c7j"},"blocks":{"#":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_Refactor_Requirement_Message_Distributor_md.ajson b/.smart-env/multi/100-project_Work_Airport_Refactor_Requirement_Message_Distributor_md.ajson deleted file mode 100644 index 73e94b1..0000000 --- a/.smart-env/multi/100-project_Work_Airport_Refactor_Requirement_Message_Distributor_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/Refactor/Requirement/Message Distributor.md": {"path":"100-project/Work/Airport/Refactor/Requirement/Message Distributor.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"wzqi64","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1732586418000,"size":15,"at":1766986879407,"hash":"wzqi64"},"blocks":{"#根据路由":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_oracle_docker_can't_run_md.ajson b/.smart-env/multi/100-project_Work_Airport_oracle_docker_can't_run_md.ajson deleted file mode 100644 index e487d91..0000000 --- a/.smart-env/multi/100-project_Work_Airport_oracle_docker_can't_run_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/oracle/docker can't run.md": {"path":"100-project/Work/Airport/oracle/docker can't run.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mna741","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1732153386392,"size":5056,"at":1766986879407,"hash":"1mna741"},"blocks":{"#":[2,5],"###**Problem Overview**":[6,21],"###**Problem Overview**#{1}":[8,14],"###**Problem Overview**#{2}":[15,19],"###**Problem Overview**#{3}":[20,21],"###**Root Cause**":[22,39],"###**Root Cause**#{1}":[24,25],"###**Root Cause**#{2}":[26,29],"###**Root Cause**#{3}":[30,33],"###**Root Cause**#{4}":[34,37],"###**Root Cause**#{5}":[38,39],"###**Solution**":[40,112],"###**Solution**#{1}":[42,43],"###**Solution**#{2}":[44,51],"###**Solution**#{3}":[46,51],"###**Solution**#{4}":[52,69],"###**Solution**#{5}":[56,69],"###**Solution**#{6}":[70,77],"###**Solution**#{7}":[74,77],"###**Solution**#{8}":[78,85],"###**Solution**#{9}":[82,85],"###**Solution**#{10}":[86,99],"###**Solution**#{11}":[90,99],"###**Solution**#{12}":[100,112],"###**Solution**#{13}":[104,112],"###**Explanation of the Solution**":[113,123],"###**Explanation of the Solution**#{1}":[115,118],"###**Explanation of the Solution**#{2}":[119,121],"###**Explanation of the Solution**#{3}":[122,123],"###**Additional Considerations**":[124,144],"###**Additional Considerations**#{1}":[126,129],"###**Additional Considerations**#{2}":[130,136],"###**Additional Considerations**#{3}":[137,142],"###**Additional Considerations**#{4}":[143,144],"###**Summary**":[145,161],"###**Summary**#{1}":[147,149],"###**Summary**#{2}":[150,154],"###**Summary**#{3}":[155,161]},"outlinks":[{"title":"JiscSD/rdss-archivematica Issue #65","target":"https://github.com/JiscSD/rdss-archivematica/issues/65","line":139},{"title":"Enalean/docker-tuleap-aio Issue #57","target":"https://github.com/Enalean/docker-tuleap-aio/issues/57","line":140},{"title":"moby/moby Issue #28705","target":"https://github.com/moby/moby/issues/28705","line":141}],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13],[46,48],[56,58],[66,68],[74,76],[82,84],[90,92],[96,98],[104,107]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_oracle_files_md.ajson b/.smart-env/multi/100-project_Work_Airport_oracle_files_md.ajson deleted file mode 100644 index 88ec6be..0000000 --- a/.smart-env/multi/100-project_Work_Airport_oracle_files_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/oracle/files.md": {"path":"100-project/Work/Airport/oracle/files.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"czxrnm","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1732174739514,"size":13001,"at":1766986879407,"hash":"czxrnm"},"blocks":{"#":[2,373]},"outlinks":[{"title":"Enalean/docker-tuleap-aio#57","target":"https://github.com/Enalean/docker-tuleap-aio/issues/57","line":369},{"title":"https://github.com/JiscSD/rdss-archivematica/issues/65","target":"https://github.com/JiscSD/rdss-archivematica/issues/65","line":369},{"title":"moby/moby#28705","target":"https://github.com/moby/moby/issues/28705","line":369}],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,60],[64,102],[107,118],[122,186],[189,199],[203,311],[314,320],[323,354],[357,359],[364,372]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_oracle_oracheck_md.ajson b/.smart-env/multi/100-project_Work_Airport_oracle_oracheck_md.ajson deleted file mode 100644 index 0050827..0000000 --- a/.smart-env/multi/100-project_Work_Airport_oracle_oracheck_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/oracle/oracheck.md": {"path":"100-project/Work/Airport/oracle/oracheck.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5yo7ul","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1732087615000,"size":7122,"at":1766986879407,"hash":"5yo7ul"},"blocks":{"#":[1,154]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Airport_维护_md.ajson b/.smart-env/multi/100-project_Work_Airport_维护_md.ajson deleted file mode 100644 index f2e0b0d..0000000 --- a/.smart-env/multi/100-project_Work_Airport_维护_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Airport/维护.md": {"path":"100-project/Work/Airport/维护.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16jdw1c","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1746686342432,"size":16246,"at":1766986878039,"hash":"16jdw1c"},"blocks":{"#":[4,623]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[13,15],[18,20],[23,25],[35,45],[48,613],[618,623]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Ali_RAM_md.ajson b/.smart-env/multi/100-project_Work_Ali_RAM_md.ajson deleted file mode 100644 index 169c415..0000000 --- a/.smart-env/multi/100-project_Work_Ali_RAM_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Ali/RAM.md": {"path":"100-project/Work/Ali/RAM.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"dfgrw7","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1719469069000,"size":349,"at":1766986878039,"hash":"dfgrw7"},"blocks":{"#":[1,21]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[14,21]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_DM_database_8_md.ajson b/.smart-env/multi/100-project_Work_DM_database_8_md.ajson deleted file mode 100644 index 7d04a0f..0000000 --- a/.smart-env/multi/100-project_Work_DM_database_8_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/DM database 8.md": {"path":"100-project/Work/DM database 8.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ho9ufp","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1719566420880,"size":4739,"at":1766986877914,"hash":"ho9ufp"},"blocks":{"#":[3,194]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,8],[12,14],[18,21],[25,27],[30,40],[43,155],[158,192]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Gitlab_rest_api_md.ajson b/.smart-env/multi/100-project_Work_Gitlab_rest_api_md.ajson deleted file mode 100644 index 42e78d2..0000000 --- a/.smart-env/multi/100-project_Work_Gitlab_rest_api_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Gitlab/rest api.md": {"path":"100-project/Work/Gitlab/rest api.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1u67ytl","at":1766986877917},"class_name":"SmartSource","last_import":{"mtime":1710230836660,"size":361,"at":1766986878039,"hash":"1u67ytl"},"blocks":{"#":[1,12]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Jump_Server_md.ajson b/.smart-env/multi/100-project_Work_Jump_Server_md.ajson deleted file mode 100644 index 9cf7974..0000000 --- a/.smart-env/multi/100-project_Work_Jump_Server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Jump Server.md": {"path":"100-project/Work/Jump Server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"cnqtf4","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1700121001000,"size":56,"at":1766986877914,"hash":"cnqtf4"},"blocks":{"#":[3,9]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_NVI_API_Key_md.ajson b/.smart-env/multi/100-project_Work_NVI_API_Key_md.ajson deleted file mode 100644 index 869ff7c..0000000 --- a/.smart-env/multi/100-project_Work_NVI_API_Key_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/NVI API Key.md": {"path":"100-project/Work/NVI API Key.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16x5354","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1751269921619,"size":148,"at":1766986877914,"hash":"16x5354"},"blocks":{"#":[1,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,7]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Nacos_with_Self_Signed_Certificate_md.ajson b/.smart-env/multi/100-project_Work_Nacos_with_Self_Signed_Certificate_md.ajson deleted file mode 100644 index 3625978..0000000 --- a/.smart-env/multi/100-project_Work_Nacos_with_Self_Signed_Certificate_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Nacos with Self Signed Certificate.md": {"path":"100-project/Work/Nacos with Self Signed Certificate.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"13azx3x","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1729236116850,"size":14361,"at":1766986877914,"hash":"13azx3x"},"blocks":{"#":[2,7],"##**Overview**":[8,19],"##**Overview**#{1}":[10,10],"##**Overview**#{2}":[11,11],"##**Overview**#{3}":[12,12],"##**Overview**#{4}":[13,13],"##**Overview**#{5}":[14,14],"##**Overview**#{6}":[15,15],"##**Overview**#{7}":[16,17],"##**Overview**#{8}":[18,19],"##**Prerequisites**":[20,28],"##**Prerequisites**#{1}":[22,22],"##**Prerequisites**#{2}":[23,23],"##**Prerequisites**#{3}":[24,24],"##**Prerequisites**#{4}":[25,26],"##**Prerequisites**#{5}":[27,28],"##**Step 1: Install cfssl and cfssljson**":[29,77],"##**Step 1: Install cfssl and cfssljson**#{1}":[31,32],"##**Step 1: Install cfssl and cfssljson**#**1.1. Download the Binaries**":[33,54],"##**Step 1: Install cfssl and cfssljson**#**1.1. Download the Binaries**#**For Linux:**":[35,44],"##**Step 1: Install cfssl and cfssljson**#**1.1. Download the Binaries**#**For Linux:**#{1}":[37,44],"##**Step 1: Install cfssl and cfssljson**#**1.1. Download the Binaries**#**For macOS:**":[45,54],"##**Step 1: Install cfssl and cfssljson**#**1.1. Download the Binaries**#**For macOS:**#{1}":[47,54],"##**Step 1: Install cfssl and cfssljson**#**1.2. Make the Binaries Executable**":[55,60],"##**Step 1: Install cfssl and cfssljson**#**1.2. Make the Binaries Executable**#{1}":[57,60],"##**Step 1: Install cfssl and cfssljson**#**1.3. Move the Binaries to Your PATH**":[61,68],"##**Step 1: Install cfssl and cfssljson**#**1.3. Move the Binaries to Your PATH**#{1}":[63,68],"##**Step 1: Install cfssl and cfssljson**#**1.4. Verify Installation**":[69,77],"##**Step 1: Install cfssl and cfssljson**#**1.4. Verify Installation**#{1}":[71,77],"##**Step 2: Generate a Self-Signed CA Certificate**":[78,142],"##**Step 2: Generate a Self-Signed CA Certificate**#{1}":[80,81],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.1. Create a CA Configuration File (`ca-config.json`)**":[82,101],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.1. Create a CA Configuration File (`ca-config.json`)**#{1}":[84,101],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.2. Create a CA Certificate Signing Request (`ca-csr.json`)**":[102,124],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.2. Create a CA Certificate Signing Request (`ca-csr.json`)**#{1}":[104,124],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**":[125,142],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**#{1}":[127,134],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**#{2}":[135,135],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**#{3}":[136,136],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**#{4}":[137,138],"##**Step 2: Generate a Self-Signed CA Certificate**#**2.3. Generate the CA Certificate and Key**#{5}":[139,142],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**":[143,200],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.1. Create a Server Certificate Signing Request (`nacos-csr.json`)**":[145,176],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.1. Create a Server Certificate Signing Request (`nacos-csr.json`)**#{1}":[147,172],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.1. Create a Server Certificate Signing Request (`nacos-csr.json`)**#{2}":[173,173],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.1. Create a Server Certificate Signing Request (`nacos-csr.json`)**#{3}":[174,176],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.2. Generate the Server Certificate and Key**":[177,190],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.2. Generate the Server Certificate and Key**#{1}":[179,186],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.2. Generate the Server Certificate and Key**#{2}":[187,187],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.2. Generate the Server Certificate and Key**#{3}":[188,188],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.2. Generate the Server Certificate and Key**#{4}":[189,190],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.3. Verify the Certificates**":[191,200],"##**Step 3: Generate a Server Certificate for Nacos Signed by the CA**#**3.3. Verify the Certificates**#{1}":[193,200],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**":[201,261],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#{1}":[203,204],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.1. Convert the Certificates to PKCS#12 Format (If Necessary)**":[205,215],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.1. Convert the Certificates to PKCS#12 Format (If Necessary)**#{1}":[207,212],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.1. Convert the Certificates to PKCS#12 Format (If Necessary)**#{2}":[213,213],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.1. Convert the Certificates to PKCS#12 Format (If Necessary)**#{3}":[214,215],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**":[216,255],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**#**Option A: Standalone Nacos (Embedded Tomcat)**":[218,233],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**#**Option A: Standalone Nacos (Embedded Tomcat)**#{1}":[220,231],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**#**Option A: Standalone Nacos (Embedded Tomcat)**#{2}":[232,233],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**#**Option B: Nacos with External Tomcat or Nginx**":[234,255],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.2. Configure Nacos to Use SSL**#**Option B: Nacos with External Tomcat or Nginx**#{1}":[236,255],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.3. Restart the Nacos Server**":[256,261],"##**Step 4: Configure the Nacos Server to Use the Server Certificate**#**4.3. Restart the Nacos Server**#{1}":[258,261],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**":[262,330],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#{1}":[264,265],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.1. Convert the CA Certificate to DER Format**":[266,273],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.1. Convert the CA Certificate to DER Format**#{1}":[268,273],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**":[274,316],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#{1}":[276,277],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#**Example Dockerfile:**":[278,316],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#**Example Dockerfile:**#{1}":[280,312],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#**Example Dockerfile:**#{2}":[313,313],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#**Example Dockerfile:**#{3}":[314,314],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.2. Update Your Dockerfile**#**Example Dockerfile:**#{4}":[315,316],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.3. Build the Docker Image**":[317,322],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.3. Build the Docker Image**#{1}":[319,322],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.4. Run the Docker Container**":[323,330],"##**Step 5: Import the CA Certificate into Your Spring Boot Application's Docker Container**#**5.4. Run the Docker Container**#{1}":[325,330],"##**Step 6: Configure Your Spring Boot Application**":[331,360],"##**Step 6: Configure Your Spring Boot Application**#{1}":[333,334],"##**Step 6: Configure Your Spring Boot Application**#**6.1. Update Application Properties**":[335,346],"##**Step 6: Configure Your Spring Boot Application**#**6.1. Update Application Properties**#{1}":[337,346],"##**Step 6: Configure Your Spring Boot Application**#**6.2. Disable Hostname Verification (If Necessary)**":[347,360],"##**Step 6: Configure Your Spring Boot Application**#**6.2. Disable Hostname Verification (If Necessary)**#{1}":[349,360],"##**Step 7: Test the Setup**":[361,369],"##**Step 7: Test the Setup**#{1}":[363,364],"##**Step 7: Test the Setup**#{2}":[365,365],"##**Step 7: Test the Setup**#{3}":[366,367],"##**Step 7: Test the Setup**#{4}":[368,369],"##**Additional Considerations**":[370,435],"##**Additional Considerations**#**Using a Custom Trust Store**":[372,400],"##**Additional Considerations**#**Using a Custom Trust Store**#{1}":[374,375],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.1. Create a Custom Trust Store**":[376,387],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.1. Create a Custom Trust Store**#{1}":[378,387],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.2. Set JVM Options to Use the Custom Trust Store**":[388,394],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.2. Set JVM Options to Use the Custom Trust Store**#{1}":[390,394],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.3. Update the ENTRYPOINT**":[395,400],"##**Additional Considerations**#**Using a Custom Trust Store**#**5.2.3. Update the ENTRYPOINT**#{1}":[397,400],"##**Additional Considerations**#**Handling Sensitive Information**":[401,428],"##**Additional Considerations**#**Handling Sensitive Information**#{1}":[403,404],"##**Additional Considerations**#**Handling Sensitive Information**#**Using Build Arguments**":[405,428],"##**Additional Considerations**#**Handling Sensitive Information**#**Using Build Arguments**#{1}":[407,428],"##**Additional Considerations**#**Securing Private Keys**":[429,435],"##**Additional Considerations**#**Securing Private Keys**#{1}":[431,431],"##**Additional Considerations**#**Securing Private Keys**#{2}":[432,433],"##**Additional Considerations**#**Securing Private Keys**#{3}":[434,435],"##**Troubleshooting**":[436,477],"##**Troubleshooting**#**Common Issues and Solutions**":[438,467],"##**Troubleshooting**#**Common Issues and Solutions**#**SSLHandshakeException**":[440,444],"##**Troubleshooting**#**Common Issues and Solutions**#**SSLHandshakeException**#{1}":[442,442],"##**Troubleshooting**#**Common Issues and Solutions**#**SSLHandshakeException**#{2}":[443,444],"##**Troubleshooting**#**Common Issues and Solutions**#**Hostname Verification Failure**":[445,452],"##**Troubleshooting**#**Common Issues and Solutions**#**Hostname Verification Failure**#{1}":[447,447],"##**Troubleshooting**#**Common Issues and Solutions**#**Hostname Verification Failure**#{2}":[448,452],"##**Troubleshooting**#**Common Issues and Solutions**#**Keytool Not Found**":[453,457],"##**Troubleshooting**#**Common Issues and Solutions**#**Keytool Not Found**#{1}":[455,455],"##**Troubleshooting**#**Common Issues and Solutions**#**Keytool Not Found**#{2}":[456,457],"##**Troubleshooting**#**Common Issues and Solutions**#**Incorrect Keystore Password**":[458,462],"##**Troubleshooting**#**Common Issues and Solutions**#**Incorrect Keystore Password**#{1}":[460,460],"##**Troubleshooting**#**Common Issues and Solutions**#**Incorrect Keystore Password**#{2}":[461,462],"##**Troubleshooting**#**Common Issues and Solutions**#**Certificate Not Found**":[463,467],"##**Troubleshooting**#**Common Issues and Solutions**#**Certificate Not Found**#{1}":[465,465],"##**Troubleshooting**#**Common Issues and Solutions**#**Certificate Not Found**#{2}":[466,467],"##**Troubleshooting**#**Testing the Trust Store**":[468,477],"##**Troubleshooting**#**Testing the Trust Store**#{1}":[470,477],"##**Summary**":[478,491],"##**Summary**#{1}":[480,481],"##**Summary**#{2}":[482,482],"##**Summary**#{3}":[483,483],"##**Summary**#{4}":[484,484],"##**Summary**#{5}":[485,485],"##**Summary**#{6}":[486,487],"##**Summary**#{7}":[488,491],"##**Next Steps**":[492,499],"##**Next Steps**#{1}":[494,494],"##**Next Steps**#{2}":[495,495],"##**Next Steps**#{3}":[496,497],"##**Next Steps**#{4}":[498,499],"##**References**":[500,508],"##**References**#{1}":[502,502],"##**References**#{2}":[503,503],"##**References**#{3}":[504,505],"##**References**#{4}":[506,508]},"outlinks":[{"title":"cfssl GitHub Repository","target":"https://github.com/cloudflare/cfssl","line":502},{"title":"Nacos Documentation","target":"https://nacos.io/en-us/docs/what-is-nacos.html","line":503},{"title":"Spring Boot SSL Configuration","target":"https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-configure-ssl","line":504}],"task_lines":[],"tasks":{},"codeblock_ranges":[[37,43],[47,53],[57,59],[63,65],[71,74],[86,100],[106,123],[129,131],[149,171],[181,183],[195,197],[209,211],[224,230],[240,254],[270,272],[280,309],[319,321],[325,327],[341,345],[353,355],[378,386],[390,393],[397,399],[407,421],[425,427],[472,474]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Oracle_Clean_md.ajson b/.smart-env/multi/100-project_Work_Oracle_Clean_md.ajson deleted file mode 100644 index 324f5f3..0000000 --- a/.smart-env/multi/100-project_Work_Oracle_Clean_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Oracle/Clean.md": {"path":"100-project/Work/Oracle/Clean.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1dahfa0","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1722850615220,"size":1274,"at":1766986878359,"hash":"1dahfa0"},"blocks":{"#":[1,64]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Oracle_RAC_mantainence_md.ajson b/.smart-env/multi/100-project_Work_Oracle_RAC_mantainence_md.ajson deleted file mode 100644 index cd08cc8..0000000 --- a/.smart-env/multi/100-project_Work_Oracle_RAC_mantainence_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Oracle/RAC mantainence.md": {"path":"100-project/Work/Oracle/RAC mantainence.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"bajai0","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1700791666989,"size":101,"at":1766986878359,"hash":"bajai0"},"blocks":{"#":[2,10]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,8]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Remote_Desktop_md.ajson b/.smart-env/multi/100-project_Work_Remote_Desktop_md.ajson deleted file mode 100644 index 36cb00d..0000000 --- a/.smart-env/multi/100-project_Work_Remote_Desktop_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Remote Desktop.md": {"path":"100-project/Work/Remote Desktop.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gb4f8u","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1737506714000,"size":152,"at":1766986877914,"hash":"1gb4f8u"},"blocks":{"#Rustdesk":[3,18],"#Rustdesk#GZZN OFFICE":[4,18],"#Rustdesk#GZZN OFFICE#win 10 desktop":[6,11],"#Rustdesk#GZZN OFFICE#win 10 desktop#{1}":[7,11],"#Rustdesk#GZZN OFFICE#opensuse desktop":[12,18],"#Rustdesk#GZZN OFFICE#opensuse desktop#{1}":[13,18]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,10],[14,16]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_SigStore_Install_md.ajson b/.smart-env/multi/100-project_Work_SigStore_Install_md.ajson deleted file mode 100644 index d3730f6..0000000 --- a/.smart-env/multi/100-project_Work_SigStore_Install_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/SigStore/Install.md": {"path":"100-project/Work/SigStore/Install.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vbmtce","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1680161076836,"size":198,"at":1766986878359,"hash":"vbmtce"},"blocks":{"#":[3,12]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,10]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_Win10VM_Win10_md.ajson b/.smart-env/multi/100-project_Work_Win10VM_Win10_md.ajson deleted file mode 100644 index 10599ab..0000000 --- a/.smart-env/multi/100-project_Work_Win10VM_Win10_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/Win10VM/Win10.md": {"path":"100-project/Work/Win10VM/Win10.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"wf7l4a","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1736320607414,"size":1353,"at":1766986878359,"hash":"wf7l4a"},"blocks":{"#":[3,33]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[27,32]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_forgejo_install_md.ajson b/.smart-env/multi/100-project_Work_forgejo_install_md.ajson deleted file mode 100644 index d81c310..0000000 --- a/.smart-env/multi/100-project_Work_forgejo_install_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/forgejo/install.md": {"path":"100-project/Work/forgejo/install.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gq29lh","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1725001558344,"size":4215,"at":1766986878359,"hash":"1gq29lh"},"blocks":{"#":[3,4],"###Step 1: Disable Forgejo's Internal SSH Server":[5,12],"###Step 1: Disable Forgejo's Internal SSH Server#{1}":[6,12],"###Step 2: Configure the Host SSH Server":[13,36],"###Step 2: Configure the Host SSH Server#{1}":[14,36],"###Step 3: Update Forgejo Configuration":[37,65],"###Step 3: Update Forgejo Configuration#{1}":[38,65],"##Prerequisites":[66,70],"##Prerequisites#{1}":[68,68],"##Prerequisites#{2}":[69,70],"##Configuration Steps":[71,131],"##Configuration Steps#1. Create a Bind Account in FreeIPA":[73,99],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{1}":[75,87],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{2}":[77,87],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{3}":[88,93],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{4}":[90,93],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{5}":[94,99],"##Configuration Steps#1. Create a Bind Account in FreeIPA#{6}":[96,99],"##Configuration Steps#2. Configure Forgejo":[100,131],"##Configuration Steps#2. Configure Forgejo#{1}":[102,102],"##Configuration Steps#2. Configure Forgejo#{2}":[103,103],"##Configuration Steps#2. Configure Forgejo#{3}":[104,118],"##Configuration Steps#2. Configure Forgejo#{4}":[119,120],"##Configuration Steps#2. Configure Forgejo#{5}":[121,131]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,11],[16,18],[22,29],[33,35],[45,47],[51,57],[77,86],[90,92],[96,98]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_freeipa_md.ajson b/.smart-env/multi/100-project_Work_freeipa_md.ajson deleted file mode 100644 index 796ca38..0000000 --- a/.smart-env/multi/100-project_Work_freeipa_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/freeipa.md": {"path":"100-project/Work/freeipa.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1wur66a","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1724983352548,"size":537,"at":1766986877914,"hash":"1wur66a"},"blocks":{"#":[3,32]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,13],[18,20],[23,25],[29,31]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_nmcli_md.ajson b/.smart-env/multi/100-project_Work_nmcli_md.ajson deleted file mode 100644 index 7395154..0000000 --- a/.smart-env/multi/100-project_Work_nmcli_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/nmcli.md": {"path":"100-project/Work/nmcli.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1jbq44w","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1758767159388,"size":106,"at":1766986877914,"hash":"1jbq44w"},"blocks":{"#":[2,5]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,4]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_sBOM_ref_articles_md.ajson b/.smart-env/multi/100-project_Work_sBOM_ref_articles_md.ajson deleted file mode 100644 index 5b16085..0000000 --- a/.smart-env/multi/100-project_Work_sBOM_ref_articles_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/sBOM/ref/articles.md": {"path":"100-project/Work/sBOM/ref/articles.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mm4fhv","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1678152213000,"size":143,"at":1766986879407,"hash":"1mm4fhv"},"blocks":{"#":[2,4]},"outlinks":[{"title":"什麼是SBOM (軟體物料清單)? - 網路安全解決方案 - 艾索科技","target":"什麼是SBOM (軟體物料清單)? - 網路安全解決方案 - 艾索科技","line":2},{"title":"如何使用微软的开源工具生成 SBOM - 知乎","target":"如何使用微软的开源工具生成 SBOM - 知乎","line":4}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_从化应急_dm_database_md.ajson b/.smart-env/multi/100-project_Work_从化应急_dm_database_md.ajson deleted file mode 100644 index 91dbded..0000000 --- a/.smart-env/multi/100-project_Work_从化应急_dm_database_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/从化应急/dm database.md": {"path":"100-project/Work/从化应急/dm database.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16xl8s4","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1725506334000,"size":2278,"at":1766986878359,"hash":"16xl8s4"},"blocks":{"#install":[3,126],"#install#prepare":[4,61],"#install#prepare#user and group":[6,12],"#install#prepare#user and group#{1}":[7,12],"#install#prepare#limit":[13,47],"#install#prepare#limit#{1}":[15,47],"#install#prepare#database directories":[48,61],"#install#prepare#database directories#{1}":[50,61],"#install#mount iso":[62,69],"#install#mount iso#{1}":[64,69],"#install#command line install":[70,88],"#install#command line install#{1}":[72,82],"#install#command line install#execute as root":[83,88],"#install#command line install#execute as root#{1}":[84,88],"#install#dmdba env":[89,103],"#install#dmdba env#{1}":[91,103],"#install#create instance":[104,111],"#install#create instance#{1}":[106,111],"#install#install service":[112,126],"#install#install service#{1}":[114,126]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[7,11],[15,17],[19,34],[38,40],[43,46],[50,60],[64,68],[72,75],[84,86],[91,95],[97,101],[106,110],[114,118],[121,125]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_从化应急_login_server_md.ajson b/.smart-env/multi/100-project_Work_从化应急_login_server_md.ajson deleted file mode 100644 index a0a5163..0000000 --- a/.smart-env/multi/100-project_Work_从化应急_login_server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/从化应急/login server.md": {"path":"100-project/Work/从化应急/login server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"j9u67b","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1725522472000,"size":192,"at":1766986878359,"hash":"j9u67b"},"blocks":{"#":[3,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_公文交换_compile_gcc_13_md.ajson b/.smart-env/multi/100-project_Work_公文交换_compile_gcc_13_md.ajson deleted file mode 100644 index 512ec0e..0000000 --- a/.smart-env/multi/100-project_Work_公文交换_compile_gcc_13_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/公文交换/compile gcc 13.md": {"path":"100-project/Work/公文交换/compile gcc 13.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10wj1kp","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1762249096000,"size":8584,"at":1766986878359,"hash":"10wj1kp"},"blocks":{"#":[4,5],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)":[6,406],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#{1}":[8,12],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#一、系统准备":[13,28],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#一、系统准备#1️⃣ 更新系统并安装构建依赖":[15,28],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#一、系统准备#1️⃣ 更新系统并安装构建依赖#{1}":[17,28],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#二、可选但推荐:升级 binutils (2.40)":[29,68],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#二、可选但推荐:升级 binutils (2.40)#2️⃣ 构建并安装":[31,49],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#二、可选但推荐:升级 binutils (2.40)#2️⃣ 构建并安装#{1}":[33,49],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#二、可选但推荐:升级 binutils (2.40)#3️⃣ 激活新版 binutils":[50,68],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#二、可选但推荐:升级 binutils (2.40)#3️⃣ 激活新版 binutils#{1}":[52,68],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码":[69,153],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#4️⃣ 获取源码":[71,79],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#4️⃣ 获取源码#{1}":[73,79],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)":[80,153],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{1}":[82,87],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{2}":[88,89],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{3}":[90,91],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{4}":[92,93],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{5}":[94,96],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#三、下载并准备 GCC 13.3.0 源码#5️⃣ 下载依赖库(推荐)#{6}":[97,153],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0":[154,209],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#6️⃣ 创建构建目录(out-of-tree)":[156,162],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#6️⃣ 创建构建目录(out-of-tree)#{1}":[158,162],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数":[163,189],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{1}":[165,178],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{2}":[179,180],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{3}":[181,182],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{4}":[183,184],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{5}":[185,187],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#7️⃣ 配置参数#{6}":[188,189],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#8️⃣ 编译与安装":[190,209],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#8️⃣ 编译与安装#{1}":[192,198],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#8️⃣ 编译与安装#{2}":[199,200],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#8️⃣ 编译与安装#{3}":[201,209],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#四、构建并安装 GCC 13.3.0#8️⃣ 编译与安装#{4}":[203,209],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#五、启用与测试新 GCC":[210,250],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#五、启用与测试新 GCC#9️⃣ 临时启用":[212,218],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#五、启用与测试新 GCC#9️⃣ 临时启用#{1}":[214,218],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#五、启用与测试新 GCC#🔟 验证版本":[219,250],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#五、启用与测试新 GCC#🔟 验证版本#{1}":[221,250],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理":[251,300],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#11️⃣ 持久化环境变量":[253,274],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#11️⃣ 持久化环境变量#{1}":[255,274],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)":[275,300],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)#{1}":[277,285],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)#{2}":[286,291],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)#{3}":[288,291],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)#{4}":[292,300],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#六、长期使用与并存管理#12️⃣ 运行时库兼容性(关键)#{5}":[294,300],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#七、常见问题与修复要点":[301,311],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#七、常见问题与修复要点#{1}":[303,311],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#八、验证构建质量(可选)":[312,325],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#八、验证构建质量(可选)#{1}":[314,325],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#✅ 总结:完整流程一览":[326,406],"#🧭 GCC 13.3.0 从源码构建指南(适用于 Kylin Linux Advanced Server V10 / RHEL 系)#✅ 总结:完整流程一览#{1}":[328,406]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[17,23],[33,48],[52,54],[58,61],[73,78],[82,84],[108,151],[158,161],[165,174],[192,195],[203,205],[214,217],[221,224],[228,230],[234,241],[245,247],[257,261],[265,271],[279,281],[288,290],[294,296],[316,320],[328,356],[366,372],[374,377],[379,384],[386,388],[391,405]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_公文交换_login_md.ajson b/.smart-env/multi/100-project_Work_公文交换_login_md.ajson deleted file mode 100644 index 57c641d..0000000 --- a/.smart-env/multi/100-project_Work_公文交换_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/公文交换/login.md": {"path":"100-project/Work/公文交换/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"lh3qc4","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1762321502316,"size":548,"at":1766986878359,"hash":"lh3qc4"},"blocks":{"#":[1,76]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[11,13],[18,20],[24,26],[30,32],[36,38],[42,44],[48,50],[54,56],[60,62],[66,68],[73,75]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_公文交换_servers_md.ajson b/.smart-env/multi/100-project_Work_公文交换_servers_md.ajson deleted file mode 100644 index a8439ec..0000000 --- a/.smart-env/multi/100-project_Work_公文交换_servers_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/公文交换/servers.md": {"path":"100-project/Work/公文交换/servers.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"gofks5","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1762242543000,"size":414,"at":1766986878359,"hash":"gofks5"},"blocks":{"#":[3,17]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_公文交换_不明确的问题_md.ajson b/.smart-env/multi/100-project_Work_公文交换_不明确的问题_md.ajson deleted file mode 100644 index c0ef157..0000000 --- a/.smart-env/multi/100-project_Work_公文交换_不明确的问题_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/公文交换/不明确的问题.md": {"path":"100-project/Work/公文交换/不明确的问题.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"gjy1s2","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1724221780254,"size":2739,"at":1766986878359,"hash":"gjy1s2"},"blocks":{"#":[2,76]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,11],[13,26],[31,33],[35,37],[42,44],[46,49],[53,55],[57,60],[64,68],[70,73]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_公文交换_升级openssh_md.ajson b/.smart-env/multi/100-project_Work_公文交换_升级openssh_md.ajson deleted file mode 100644 index 4e52562..0000000 --- a/.smart-env/multi/100-project_Work_公文交换_升级openssh_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/公文交换/升级openssh.md": {"path":"100-project/Work/公文交换/升级openssh.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"91mskp","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1762318277608,"size":14113,"at":1766986878359,"hash":"91mskp"},"blocks":{"#":[3,637],"##{1}":[73,407],"##{2}":[408,418],"##{3}":[419,444],"##{4}":[445,451],"##{5}":[452,456],"##{6}":[457,637]},"outlinks":[],"metadata":{"tags":["#,或直接删除。例如:"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[7,11],[13,16],[19,24],[30,32],[37,39],[40,42],[47,49],[51,54],[56,58],[60,62],[64,66],[69,71],[74,76],[87,89],[93,95],[98,100],[102,104],[106,108],[110,112],[115,117],[119,121],[125,127],[129,131],[133,145],[148,150],[154,384],[388,390],[394,402],[409,414],[422,424],[426,428],[430,432],[434,436],[440,442],[446,448],[453,455],[459,461],[464,466],[468,473],[480,484],[488,490],[493,497],[501,503],[507,512],[515,524],[527,529],[532,537],[539,542],[544,547],[554,556],[558,561],[566,570],[574,576],[579,583],[587,589],[593,598],[602,611],[614,616],[619,624],[626,629],[631,634]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_商务局_login_md.ajson b/.smart-env/multi/100-project_Work_商务局_login_md.ajson deleted file mode 100644 index ee5a3f6..0000000 --- a/.smart-env/multi/100-project_Work_商务局_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/商务局/login.md": {"path":"100-project/Work/商务局/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"niwl0j","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1730883996708,"size":4137,"at":1766986878359,"hash":"niwl0j"},"blocks":{"#商务局堡垒机和服务器账号密码":[1,55],"#商务局堡垒机和服务器账号密码#{1}":[3,55]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[21,23],[29,31],[36,38]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_商务局_maintanence_md.ajson b/.smart-env/multi/100-project_Work_商务局_maintanence_md.ajson deleted file mode 100644 index 3dba9bd..0000000 --- a/.smart-env/multi/100-project_Work_商务局_maintanence_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/商务局/maintanence.md": {"path":"100-project/Work/商务局/maintanence.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7g1ou8","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1730883771361,"size":1111,"at":1766986878359,"hash":"7g1ou8"},"blocks":{"###13":[3,12],"###13#{1}":[4,12],"###14":[13,24],"###14#{1}":[14,24],"###38":[25,32],"###38#{1}":[26,32],"###39":[33,39],"###39#{1}":[34,39],"###40":[40,46],"###40#{1}":[41,46],"###41":[47,52],"###41#{1}":[48,52],"###42":[53,58],"###42#{1}":[54,58],"###44":[59,65],"###44#{1}":[60,65],"###45":[66,71],"###45#{1}":[67,71],"###46":[72,82],"###46#{1}":[73,82]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[15,17],[19,22],[27,29],[35,37],[42,44],[49,51],[55,57],[61,63],[68,70],[74,76],[79,81]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_商务局_漏洞处理_md.ajson b/.smart-env/multi/100-project_Work_商务局_漏洞处理_md.ajson deleted file mode 100644 index a8c03f9..0000000 --- a/.smart-env/multi/100-project_Work_商务局_漏洞处理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/商务局/漏洞处理.md": {"path":"100-project/Work/商务局/漏洞处理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"uoojeo","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1732256194000,"size":473,"at":1766986878359,"hash":"uoojeo"},"blocks":{"##主机漏洞:":[2,18],"##主机漏洞:#13,14,21,23,30,31:":[3,7],"##主机漏洞:#13,14,21,23,30,31:#{1}":[4,7],"##主机漏洞:#39,40,41,42,44,45,46,56,58,60,61,62,64,65,66,67":[8,12],"##主机漏洞:#39,40,41,42,44,45,46,56,58,60,61,62,64,65,66,67#{1}":[9,12],"##主机漏洞:#22,38":[13,18],"##主机漏洞:#22,38#{1}":[14,18]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_login_md.ajson b/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_login_md.ajson deleted file mode 100644 index f8fc769..0000000 --- a/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/增城区信息化项目管理系统/login.md": {"path":"100-project/Work/增城区信息化项目管理系统/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"y1y0c2","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1726281302000,"size":438,"at":1766986878359,"hash":"y1y0c2"},"blocks":{"#":[1,18]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_oracle_md.ajson b/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_oracle_md.ajson deleted file mode 100644 index c939696..0000000 --- a/.smart-env/multi/100-project_Work_增城区信息化项目管理系统_oracle_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/增城区信息化项目管理系统/oracle.md": {"path":"100-project/Work/增城区信息化项目管理系统/oracle.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1eaimrx","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1726733242000,"size":11987,"at":1766986878359,"hash":"1eaimrx"},"blocks":{"#":[1,97],"##{1}":[17,24],"##{2}":[25,34],"##{3}":[35,52],"##{4}":[53,67],"##{5}":[68,79],"##{6}":[80,80],"##{7}":[81,81],"##{8}":[82,82],"##{9}":[83,97],"###**Understanding NLS_LANG and Character Sets**":[98,106],"###**Understanding NLS_LANG and Character Sets**#{1}":[100,100],"###**Understanding NLS_LANG and Character Sets**#{2}":[101,102],"###**Understanding NLS_LANG and Character Sets**#{3}":[103,106],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**":[107,194],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**1. Determine the Character Sets**":[109,122],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**1. Determine the Character Sets**#{1}":[111,122],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**":[123,143],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{1}":[125,125],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{2}":[126,127],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{3}":[128,131],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{4}":[132,137],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{5}":[134,137],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{6}":[138,143],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**2. Set NLS_LANG for Export**#{7}":[140,143],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**3. Perform the Export (`exp`)**":[144,153],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**3. Perform the Export (`exp`)**#{1}":[146,151],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**3. Perform the Export (`exp`)**#{2}":[152,153],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**4. Transfer the Dump File**":[154,157],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**4. Transfer the Dump File**#{1}":[156,157],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**":[158,178],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{1}":[160,160],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{2}":[161,162],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{3}":[163,166],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{4}":[167,172],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{5}":[169,172],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{6}":[173,178],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**5. Set NLS_LANG for Import**#{7}":[175,178],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**6. Perform the Import (`imp`)**":[179,188],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**6. Perform the Import (`imp`)**#{1}":[181,186],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**6. Perform the Import (`imp`)**#{2}":[187,188],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**7. Verify the Imported Data**":[189,194],"###**Steps for Exporting and Importing Between Different NLS_LANG Settings**#**7. Verify the Imported Data**#{1}":[191,194],"###**Detailed Explanation**":[195,217],"###**Detailed Explanation**#**Why Set NLS_LANG to the Database Character Set?**":[197,206],"###**Detailed Explanation**#**Why Set NLS_LANG to the Database Character Set?**#{1}":[199,202],"###**Detailed Explanation**#**Why Set NLS_LANG to the Database Character Set?**#{2}":[203,206],"###**Detailed Explanation**#**Understanding Character Set Conversion**":[207,217],"###**Detailed Explanation**#**Understanding Character Set Conversion**#{1}":[209,211],"###**Detailed Explanation**#**Understanding Character Set Conversion**#{2}":[212,215],"###**Detailed Explanation**#**Understanding Character Set Conversion**#{3}":[216,217],"###**Example Scenario**":[218,259],"###**Example Scenario**#{1}":[220,221],"###**Example Scenario**#{2}":[222,222],"###**Example Scenario**#{3}":[223,224],"###**Example Scenario**#{4}":[225,226],"###**Example Scenario**#{5}":[227,227],"###**Example Scenario**#{6}":[228,229],"###**Example Scenario**#**Export Steps**":[230,243],"###**Example Scenario**#**Export Steps**#{1}":[232,237],"###**Example Scenario**#**Export Steps**#{2}":[234,237],"###**Example Scenario**#**Export Steps**#{3}":[238,243],"###**Example Scenario**#**Export Steps**#{4}":[240,243],"###**Example Scenario**#**Import Steps**":[244,259],"###**Example Scenario**#**Import Steps**#{1}":[246,251],"###**Example Scenario**#**Import Steps**#{2}":[248,251],"###**Example Scenario**#**Import Steps**#{3}":[252,259],"###**Example Scenario**#**Import Steps**#{4}":[254,259],"###**Additional Considerations**":[260,281],"###**Additional Considerations**#**Character Set Compatibility**":[262,266],"###**Additional Considerations**#**Character Set Compatibility**#{1}":[264,264],"###**Additional Considerations**#**Character Set Compatibility**#{2}":[265,266],"###**Additional Considerations**#**Testing**":[267,270],"###**Additional Considerations**#**Testing**#{1}":[269,270],"###**Additional Considerations**#**Data Pump Utilities**":[271,275],"###**Additional Considerations**#**Data Pump Utilities**#{1}":[273,273],"###**Additional Considerations**#**Data Pump Utilities**#{2}":[274,275],"###**Additional Considerations**#**Locale-Specific Data**":[276,281],"###**Additional Considerations**#**Locale-Specific Data**#{1}":[278,279],"###**Additional Considerations**#**Locale-Specific Data**#{2}":[280,281],"###**Common Mistakes to Avoid**":[282,294],"###**Common Mistakes to Avoid**#**Setting NLS_LANG to the Wrong Character Set**":[284,288],"###**Common Mistakes to Avoid**#**Setting NLS_LANG to the Wrong Character Set**#{1}":[286,286],"###**Common Mistakes to Avoid**#**Setting NLS_LANG to the Wrong Character Set**#{2}":[287,288],"###**Common Mistakes to Avoid**#**Ignoring NCHAR and NVARCHAR Data**":[289,294],"###**Common Mistakes to Avoid**#**Ignoring NCHAR and NVARCHAR Data**#{1}":[291,292],"###**Common Mistakes to Avoid**#**Ignoring NCHAR and NVARCHAR Data**#{2}":[293,294],"###**Frequently Asked Questions**":[295,310],"###**Frequently Asked Questions**#{1}":[297,298],"###**Frequently Asked Questions**#{2}":[299,300],"###**Frequently Asked Questions**#{3}":[301,302],"###**Frequently Asked Questions**#{4}":[303,304],"###**Frequently Asked Questions**#{5}":[305,306],"###**Frequently Asked Questions**#{6}":[307,308],"###**Frequently Asked Questions**#{7}":[309,310],"###**Summary of Steps**":[311,338],"###**Summary of Steps**#{1}":[313,316],"###**Summary of Steps**#{2}":[317,320],"###**Summary of Steps**#{3}":[321,324],"###**Summary of Steps**#{4}":[325,328],"###**Summary of Steps**#{5}":[329,332],"###**Summary of Steps**#{6}":[333,336],"###**Summary of Steps**#{7}":[337,338],"###**Example Commands**":[339,374],"###**Example Commands**#**Export Command**":[341,356],"###**Example Commands**#**Export Command**#{1}":[343,349],"###**Example Commands**#**Export Command**#{2}":[345,349],"###**Example Commands**#**Export Command**#{3}":[350,356],"###**Example Commands**#**Export Command**#{4}":[352,356],"###**Example Commands**#**Import Command**":[357,374],"###**Example Commands**#**Import Command**#{1}":[359,365],"###**Example Commands**#**Import Command**#{2}":[361,365],"###**Example Commands**#**Import Command**#{3}":[366,374],"###**Example Commands**#**Import Command**#{4}":[368,374],"###**Final Tips**":[375,386],"###**Final Tips**#{1}":[377,377],"###**Final Tips**#{2}":[378,378],"###**Final Tips**#{3}":[379,380],"###**Final Tips**#{4}":[381,386]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[1,11],[21,23],[29,31],[39,41],[49,51],[57,64],[72,74],[85,87],[113,115],[119,121],[134,136],[140,142],[148,150],[169,171],[175,177],[183,185],[234,236],[240,242],[248,250],[254,256],[345,348],[352,355],[361,364],[368,371]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_Deployment_md.ajson b/.smart-env/multi/100-project_Work_工信_Deployment_md.ajson deleted file mode 100644 index 8386d9e..0000000 --- a/.smart-env/multi/100-project_Work_工信_Deployment_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/Deployment.md": {"path":"100-project/Work/工信/Deployment.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"i0mzel","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1747968285914,"size":32562,"at":1766986878359,"hash":"i0mzel"},"blocks":{"#":[1,21],"##Proxysql":[22,711],"##Proxysql#{1}":[24,711],"#mariadb cluster":[712,1191],"#mariadb cluster#{1}":[714,719],"#mariadb cluster#gzii-db-3:":[720,797],"#mariadb cluster#gzii-db-3:#{1}":[722,797],"#mariadb cluster#gzii-db-4":[798,1111],"#mariadb cluster#gzii-db-4#{1}":[800,1111],"#mariadb cluster#etcd":[1112,1191],"#mariadb cluster#etcd#{1}":[1114,1117],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd":[1118,1191],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{1}":[1120,1130],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{2}":[1123,1130],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{3}":[1131,1150],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{4}":[1134,1150],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{5}":[1151,1163],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{6}":[1154,1163],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{7}":[1164,1191],"#mariadb cluster#etcd#✅ Step-by-Step to Add `root` User in etcd#{8}":[1167,1191]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[13,19],[27,29],[33,95],[99,239],[244,296],[300,382],[387,431],[434,438],[441,444],[447,450],[453,455],[459,495],[500,508],[512,516],[519,526],[532,674],[682,686],[706,708],[715,717],[723,734],[738,747],[751,796],[801,812],[815,824],[829,874],[881,883],[885,887],[892,894],[899,901],[903,911],[914,921],[924,929],[931,933],[936,939],[944,947],[952,955],[958,960],[962,964],[967,969],[974,979],[983,990],[993,1058],[1062,1071],[1075,1108],[1123,1125],[1134,1137],[1139,1141],[1144,1146],[1154,1160],[1167,1169],[1175,1177],[1184,1186]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_Login_md.ajson b/.smart-env/multi/100-project_Work_工信_Login_md.ajson deleted file mode 100644 index b2980ea..0000000 --- a/.smart-env/multi/100-project_Work_工信_Login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/Login.md": {"path":"100-project/Work/工信/Login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"yu3hg4","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1766543719787,"size":1010,"at":1766986878359,"hash":"yu3hg4"},"blocks":{"##win desktop":[1,10],"##win desktop#{1}":[3,10],"##堡垒机":[11,48],"##堡垒机#{1}":[13,48],"##零信任VPN:":[49,131],"##零信任VPN:#{1}":[51,131]},"outlinks":[{"title":"Pasted image 20240909145917.png","target":"Pasted image 20240909145917.png","line":92,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[[19,21],[25,27],[29,31],[33,35],[37,39],[57,59],[61,63],[78,80],[83,85],[94,100],[104,106],[109,111],[114,116],[119,121],[127,129]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_PERCONA_XTRADB_CLUSTER_md.ajson b/.smart-env/multi/100-project_Work_工信_PERCONA_XTRADB_CLUSTER_md.ajson deleted file mode 100644 index 35718c4..0000000 --- a/.smart-env/multi/100-project_Work_工信_PERCONA_XTRADB_CLUSTER_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/PERCONA XTRADB CLUSTER.md": {"path":"100-project/Work/工信/PERCONA XTRADB CLUSTER.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"4n1cus","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1732847203600,"size":3961,"at":1766986878359,"hash":"4n1cus"},"blocks":{"#XtraDB Cluster install":[2,200],"#XtraDB Cluster install#requirement":[4,56],"#XtraDB Cluster install#requirement#docker":[5,6],"#XtraDB Cluster install#requirement#host":[7,14],"#XtraDB Cluster install#requirement#host#{1}":[9,14],"#XtraDB Cluster install#requirement#sysctl":[15,23],"#XtraDB Cluster install#requirement#sysctl#{1}":[16,23],"#XtraDB Cluster install#requirement#iptables":[24,36],"#XtraDB Cluster install#requirement#iptables#{1}":[25,36],"#XtraDB Cluster install#requirement#firewalld":[37,56],"#XtraDB Cluster install#requirement#firewalld#{1}":[39,56],"#XtraDB Cluster install#cluster":[57,57],"#XtraDB Cluster install#node 1":[58,200],"#XtraDB Cluster install#node 1#image":[60,63],"#XtraDB Cluster install#node 1#image#{1}":[61,63],"#XtraDB Cluster install#node 1#ssl":[64,92],"#XtraDB Cluster install#node 1#ssl#{1}":[65,92],"#XtraDB Cluster install#node 1#etcd":[93,114],"#XtraDB Cluster install#node 1#etcd#{1}":[94,114],"#XtraDB Cluster install#node 1#bootstrap":[115,200],"#XtraDB Cluster install#node 1#bootstrap#{1}":[118,200]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[9,13],[16,22],[25,29],[32,35],[39,41],[44,55],[61,63],[65,67],[70,89],[94,111],[118,120],[123,125],[131,141],[144,155],[159,161],[164,169],[172,177],[182,186],[189,194],[197,199]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_iptables_md.ajson b/.smart-env/multi/100-project_Work_工信_iptables_md.ajson deleted file mode 100644 index e10cc53..0000000 --- a/.smart-env/multi/100-project_Work_工信_iptables_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/iptables.md": {"path":"100-project/Work/工信/iptables.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1kjqxh9","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1736129964613,"size":1850,"at":1766986878359,"hash":"1kjqxh9"},"blocks":{"#":[2,5],"###**1. Check Current iptables Rules**":[6,15],"###**1. Check Current iptables Rules**#{1}":[8,15],"###**2. Add Rules to Allow All Traffic on the Subnet**":[16,40],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.1. Allow Incoming Traffic**":[18,23],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.1. Allow Incoming Traffic**#{1}":[20,23],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.2. Allow Outgoing Traffic**":[24,29],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.2. Allow Outgoing Traffic**#{1}":[26,29],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.3. Allow Forwarded Traffic (if needed)**":[30,40],"###**2. Add Rules to Allow All Traffic on the Subnet**#**2.3. Allow Forwarded Traffic (if needed)**#{1}":[32,40],"###**3. Save the iptables Configuration**":[41,70],"###**3. Save the iptables Configuration**#{1}":[43,44],"###**3. Save the iptables Configuration**#**3.1. Save Rules (Legacy Method)**":[45,52],"###**3. Save the iptables Configuration**#**3.1. Save Rules (Legacy Method)**#{1}":[47,52],"###**3. Save the iptables Configuration**#**3.2. For Systems Using `netfilter-persistent`**":[53,60],"###**3. Save the iptables Configuration**#**3.2. For Systems Using `netfilter-persistent`**#{1}":[55,60],"###**3. Save the iptables Configuration**#**3.3. For RHEL-Based Systems**":[61,70],"###**3. Save the iptables Configuration**#**3.3. For RHEL-Based Systems**#{1}":[63,70],"###**4. Verify Rules**":[71,80],"###**4. Verify Rules**#{1}":[73,80],"###**5. Optional: Test Connectivity**":[81,90],"###**5. Optional: Test Connectivity**#{1}":[83,90],"###**6. Debugging (if needed)**":[91,103],"###**6. Debugging (if needed)**#{1}":[93,94],"###**6. Debugging (if needed)**#{2}":[95,100],"###**6. Debugging (if needed)**#{3}":[97,100],"###**6. Debugging (if needed)**#{4}":[101,102],"###**6. Debugging (if needed)**#{5}":[103,103]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,12],[20,22],[26,28],[34,37],[49,51],[57,59],[65,67],[75,77],[85,87],[97,99]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_处理-MacBook_Pro_md.ajson b/.smart-env/multi/100-project_Work_工信_处理-MacBook_Pro_md.ajson deleted file mode 100644 index 7dc4c1e..0000000 --- a/.smart-env/multi/100-project_Work_工信_处理-MacBook_Pro_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/处理-MacBook Pro.md": {"path":"100-project/Work/工信/处理-MacBook Pro.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"mmqva5","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1753842187000,"size":13955,"at":1766986878359,"hash":"mmqva5"},"blocks":{"#":[2,31],"##docker ce install":[32,324],"##docker ce install#{1}":[34,105],"##docker ce install#Steps:":[106,154],"##docker ce install#Steps:#{1}":[108,116],"##docker ce install#Steps:#{2}":[110,116],"##docker ce install#Steps:#{3}":[117,123],"##docker ce install#Steps:#{4}":[119,123],"##docker ce install#Steps:#{5}":[124,154],"##docker ce install#Steps:#{6}":[126,154],"##docker ce install#**1. Update Timezone in a Running Container**":[155,175],"##docker ce install#**1. Update Timezone in a Running Container**#{1}":[156,157],"##docker ce install#**1. Update Timezone in a Running Container**#**a. Using `exec` to set the timezone**":[158,167],"##docker ce install#**1. Update Timezone in a Running Container**#**a. Using `exec` to set the timezone**#{1}":[159,167],"##docker ce install#**1. Update Timezone in a Running Container**#**b. Set the timezone environment variable**":[168,175],"##docker ce install#**1. Update Timezone in a Running Container**#**b. Set the timezone environment variable**#{1}":[169,175],"##docker ce install#**2. Set Timezone at Container Creation**":[176,194],"##docker ce install#**2. Set Timezone at Container Creation**#{1}":[177,178],"##docker ce install#**2. Set Timezone at Container Creation**#**a. Add a `TZ` environment variable**":[179,184],"##docker ce install#**2. Set Timezone at Container Creation**#**a. Add a `TZ` environment variable**#{1}":[180,184],"##docker ce install#**2. Set Timezone at Container Creation**#**b. Mount the `/etc/localtime` file**":[185,194],"##docker ce install#**2. Set Timezone at Container Creation**#**b. Mount the `/etc/localtime` file**#{1}":[186,194],"##docker ce install#**3. Update Dockerfile for Persistent Changes**":[195,210],"##docker ce install#**3. Update Dockerfile for Persistent Changes**#{1}":[196,210],"##docker ce install#**4. Verify the Timezone**":[211,218],"##docker ce install#**4. Verify the Timezone**#{1}":[212,218],"##docker ce install#Summary:":[219,324],"##docker ce install#Summary:#{1}":[220,220],"##docker ce install#Summary:#{2}":[221,221],"##docker ce install#Summary:#{3}":[222,223],"##docker ce install#Summary:#{4}":[224,324],"##一、通过 Admin 接口在线修改":[325,358],"##一、通过 Admin 接口在线修改#{1}":[327,334],"##一、通过 Admin 接口在线修改#{2}":[329,334],"##一、通过 Admin 接口在线修改#{3}":[335,335],"##一、通过 Admin 接口在线修改#{4}":[336,341],"##一、通过 Admin 接口在线修改#{5}":[342,347],"##一、通过 Admin 接口在线修改#{6}":[344,347],"##一、通过 Admin 接口在线修改#{7}":[348,358],"##一、通过 Admin 接口在线修改#{8}":[350,358],"##二、修改配置文件":[359,387],"##二、修改配置文件#{1}":[361,362],"##二、修改配置文件#{2}":[363,371],"##二、修改配置文件#{3}":[365,371],"##二、修改配置文件#{4}":[372,387],"##二、修改配置文件#{5}":[374,387],"##三、针对单条规则定制超时":[388,559],"##三、针对单条规则定制超时#{1}":[390,559]},"outlinks":[{"title":"proxysql.com","target":"https://proxysql.com/documentation/global-variables/mysql-variables/?utm_source=chatgpt.com \"MySQL Variables - ProxySQL\"","line":354},{"title":"proxysql.com","target":"https://proxysql.com/documentation/main-runtime/?utm_source=chatgpt.com \"Main (runtime tables definition","line":403}],"task_lines":[],"tasks":{},"codeblock_ranges":[[19,27],[35,37],[39,42],[44,47],[49,69],[73,75],[78,87],[92,95],[98,100],[110,113],[119,122],[126,128],[133,139],[142,146],[160,162],[164,166],[170,172],[181,183],[187,189],[198,202],[205,207],[213,215],[227,229],[231,233],[235,238],[239,241],[244,248],[250,254],[262,264],[269,288],[291,293],[297,299],[302,308],[311,313],[316,318],[329,331],[338,340],[344,346],[350,352],[365,370],[374,376],[380,383],[392,401],[411,413],[417,419],[425,505],[507,509],[515,531],[535,559]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_工信_处理_md.ajson b/.smart-env/multi/100-project_Work_工信_处理_md.ajson deleted file mode 100644 index b8ce680..0000000 --- a/.smart-env/multi/100-project_Work_工信_处理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/工信/处理.md": {"path":"100-project/Work/工信/处理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"193l1q","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1766562015191,"size":8027,"at":1766986878359,"hash":"193l1q"},"blocks":{"#":[2,31],"##docker ce install":[32,343],"##docker ce install#{1}":[34,105],"##docker ce install#Steps:":[106,154],"##docker ce install#Steps:#{1}":[108,116],"##docker ce install#Steps:#{2}":[110,116],"##docker ce install#Steps:#{3}":[117,123],"##docker ce install#Steps:#{4}":[119,123],"##docker ce install#Steps:#{5}":[124,154],"##docker ce install#Steps:#{6}":[126,154],"##docker ce install#**1. Update Timezone in a Running Container**":[155,175],"##docker ce install#**1. Update Timezone in a Running Container**#{1}":[156,157],"##docker ce install#**1. Update Timezone in a Running Container**#**a. Using `exec` to set the timezone**":[158,167],"##docker ce install#**1. Update Timezone in a Running Container**#**a. Using `exec` to set the timezone**#{1}":[159,167],"##docker ce install#**1. Update Timezone in a Running Container**#**b. Set the timezone environment variable**":[168,175],"##docker ce install#**1. Update Timezone in a Running Container**#**b. Set the timezone environment variable**#{1}":[169,175],"##docker ce install#**2. Set Timezone at Container Creation**":[176,194],"##docker ce install#**2. Set Timezone at Container Creation**#{1}":[177,178],"##docker ce install#**2. Set Timezone at Container Creation**#**a. Add a `TZ` environment variable**":[179,184],"##docker ce install#**2. Set Timezone at Container Creation**#**a. Add a `TZ` environment variable**#{1}":[180,184],"##docker ce install#**2. Set Timezone at Container Creation**#**b. Mount the `/etc/localtime` file**":[185,194],"##docker ce install#**2. Set Timezone at Container Creation**#**b. Mount the `/etc/localtime` file**#{1}":[186,194],"##docker ce install#**3. Update Dockerfile for Persistent Changes**":[195,210],"##docker ce install#**3. Update Dockerfile for Persistent Changes**#{1}":[196,210],"##docker ce install#**4. Verify the Timezone**":[211,218],"##docker ce install#**4. Verify the Timezone**#{1}":[212,218],"##docker ce install#Summary:":[219,343],"##docker ce install#Summary:#{1}":[220,220],"##docker ce install#Summary:#{2}":[221,221],"##docker ce install#Summary:#{3}":[222,223],"##docker ce install#Summary:#{4}":[224,343]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[19,27],[35,37],[39,42],[44,47],[49,69],[73,75],[78,87],[92,95],[98,100],[110,113],[119,122],[126,128],[133,139],[142,146],[160,162],[164,166],[170,172],[181,183],[187,189],[198,202],[205,207],[213,215],[227,229],[231,233],[235,238],[239,241],[244,248],[250,254],[262,264],[269,288],[291,293],[297,299],[302,308],[311,313],[316,318],[323,325],[329,331],[334,340]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_deploy_md.ajson b/.smart-env/multi/100-project_Work_市发改委_deploy_md.ajson deleted file mode 100644 index d73dd3e..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_deploy_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/deploy.md": {"path":"100-project/Work/市发改委/deploy.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"yugdsl","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1762766764043,"size":24708,"at":1766986878359,"hash":"yugdsl"},"blocks":{"#Production 3":[3,1044],"#Production 3##server password":[5,15],"#Production 3##server password#{1}":[6,15],"#Production 3##docker swarm":[16,24],"#Production 3##docker swarm#{1}":[17,24],"#Production 3#中间件":[25,1044],"#Production 3#中间件#docker":[27,66],"#Production 3#中间件#docker#{1}":[29,66],"#Production 3#中间件#zookeeper":[67,99],"#Production 3#中间件#zookeeper#{1}":[70,99],"#Production 3#中间件#dmdb":[100,202],"#Production 3#中间件#dmdb#{1}":[101,202],"#Production 3#中间件#redis":[203,298],"#Production 3#中间件#redis#{1}":[205,298],"#Production 3#中间件#mongodb":[299,355],"#Production 3#中间件#mongodb#{1}":[301,355],"#Production 3#中间件#minio":[356,513],"#Production 3#中间件#minio#{1}":[358,361],"#Production 3#中间件#minio#root user:":[362,370],"#Production 3#中间件#minio#root user:#{1}":[363,370],"#Production 3#中间件#minio#配置帐号:":[371,513],"#Production 3#中间件#minio#配置帐号:#{1}":[372,513],"#Production 3#中间件#docker install":[514,1044],"#Production 3#中间件#docker install#{1}":[516,1044]},"outlinks":[{"title":" -d /data/tmp ","target":"-d /data/tmp","line":1004}],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[12,14],[17,19],[21,23],[29,64],[70,72],[75,98],[101,103],[107,109],[111,113],[117,123],[125,127],[129,131],[133,135],[138,142],[145,156],[161,163],[166,173],[175,180],[182,187],[191,194],[196,198],[205,207],[211,213],[215,222],[225,229],[232,237],[240,243],[246,250],[253,258],[261,265],[268,271],[274,277],[280,296],[301,303],[306,314],[318,321],[323,325],[327,338],[340,350],[353,355],[358,360],[363,365],[367,369],[373,375],[378,395],[398,400],[403,406],[408,410],[412,414],[418,422],[426,428],[431,435],[440,442],[444,465],[468,470],[472,474],[477,479],[481,502],[504,506],[510,512],[516,519],[523,547],[549,674],[678,734],[743,873],[876,879],[881,883],[888,890],[892,894],[897,902],[908,911],[915,917],[921,923],[926,968],[973,975],[977,979],[982,986],[988,992],[996,998],[1003,1006],[1010,1012],[1016,1018],[1024,1026]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_login-MacBook_Pro_md.ajson b/.smart-env/multi/100-project_Work_市发改委_login-MacBook_Pro_md.ajson deleted file mode 100644 index 6b2a384..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_login-MacBook_Pro_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/login-MacBook Pro.md": {"path":"100-project/Work/市发改委/login-MacBook Pro.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"5g3afk","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1760337290924,"size":4101,"at":1766986878359,"hash":"5g3afk"},"blocks":{"#发改委登录信息":[1,246],"#发改委登录信息#VPN":[3,40],"#发改委登录信息#VPN#{1}":[5,40],"#发改委登录信息#二期服务器":[41,108],"#发改委登录信息#二期服务器#二期堡垒机":[43,69],"#发改委登录信息#二期服务器#二期堡垒机#{1}":[45,69],"#发改委登录信息#二期服务器#二期服务器":[70,94],"#发改委登录信息#二期服务器#二期服务器#{1}":[72,94],"#发改委登录信息#二期服务器#二期数据库":[95,108],"#发改委登录信息#二期服务器#二期数据库#{1}":[97,108],"#发改委登录信息#三期测试服务器":[109,150],"#发改委登录信息#三期测试服务器#三期测试堡垒机":[111,129],"#发改委登录信息#三期测试服务器#三期测试堡垒机#{1}":[113,129],"#发改委登录信息#三期测试服务器#三期测试服务器":[130,150],"#发改委登录信息#三期测试服务器#三期测试服务器#{1}":[132,150],"#发改委登录信息#三期正式服务器":[151,246],"#发改委登录信息#三期正式服务器#三期正式堡垒机":[153,186],"#发改委登录信息#三期正式服务器#三期正式堡垒机#{1}":[155,186],"#发改委登录信息#三期正式服务器#三期正式服务器":[187,246],"#发改委登录信息#三期正式服务器#三期正式服务器#{1}":[189,246]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[15,17],[20,22],[26,28],[31,33],[36,38],[51,54],[56,58],[60,62],[64,66],[86,88],[90,92],[101,105],[119,122],[139,141],[145,147],[163,165],[167,169],[172,174],[176,178],[181,183],[207,209],[211,217],[219,223],[225,229],[231,235],[242,244]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_login_md.ajson b/.smart-env/multi/100-project_Work_市发改委_login_md.ajson deleted file mode 100644 index 4d4b040..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/login.md": {"path":"100-project/Work/市发改委/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16me6vn","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1766563960627,"size":4193,"at":1766986878359,"hash":"16me6vn"},"blocks":{"#发改委登录信息":[1,297],"#发改委登录信息#公司电脑":[4,32],"#发改委登录信息#公司电脑#{1}":[6,32],"#发改委登录信息#VPN":[33,76],"#发改委登录信息#VPN#{1}":[35,76],"#发改委登录信息#二期服务器":[77,130],"#发改委登录信息#二期服务器#二期堡垒机":[79,108],"#发改委登录信息#二期服务器#二期堡垒机#{1}":[81,108],"#发改委登录信息#二期服务器#二期服务器":[109,116],"#发改委登录信息#二期服务器#二期服务器#{1}":[111,116],"#发改委登录信息#二期服务器#二期数据库":[117,130],"#发改委登录信息#二期服务器#二期数据库#{1}":[119,130],"#发改委登录信息#三期测试服务器":[131,185],"#发改委登录信息#三期测试服务器#三期测试堡垒机":[133,164],"#发改委登录信息#三期测试服务器#三期测试堡垒机#{1}":[135,164],"#发改委登录信息#三期测试服务器#三期测试服务器":[165,185],"#发改委登录信息#三期测试服务器#三期测试服务器#{1}":[167,185],"#发改委登录信息#三期正式服务器":[186,297],"#发改委登录信息#三期正式服务器#三期正式堡垒机":[188,230],"#发改委登录信息#三期正式服务器#三期正式堡垒机#{1}":[190,230],"#发改委登录信息#三期正式服务器#三期正式服务器":[231,297],"#发改委登录信息#三期正式服务器#三期正式服务器#{1}":[233,297]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,10],[13,15],[18,20],[23,25],[27,29],[48,50],[52,54],[57,59],[63,65],[67,69],[71,73],[87,90],[92,94],[95,97],[99,101],[104,106],[113,115],[123,127],[140,142],[145,148],[150,152],[154,156],[174,176],[180,182],[196,198],[201,203],[205,207],[210,212],[215,217],[219,221],[223,225],[251,253],[258,260],[265,271],[273,277],[279,283],[285,289],[294,296]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_production_md.ajson b/.smart-env/multi/100-project_Work_市发改委_production_md.ajson deleted file mode 100644 index 0fa1cf9..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_production_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/production.md": {"path":"100-project/Work/市发改委/production.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1i59o7g","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1750214889806,"size":27954,"at":1766986878359,"hash":"1i59o7g"},"blocks":{"##Stagging 3":[3,910],"##Stagging 3#堡垒机":[5,24],"##Stagging 3#堡垒机#{1}":[7,24],"##Stagging 3#server password":[25,29],"##Stagging 3#server password#{1}":[26,29],"##Stagging 3#nacos":[30,43],"##Stagging 3#nacos#{1}":[32,43],"##Stagging 3#nacos config detail":[44,657],"##Stagging 3#nacos config detail#{1}":[46,657],"##Stagging 3#docker stack":[658,781],"##Stagging 3#docker stack#{1}":[660,781],"##Stagging 3#nginx":[782,910],"##Stagging 3#nginx#{1}":[784,910],"##Production 3":[911,1035],"##Production 3#{1}":[913,1022],"##Production 3#mino":[1023,1026],"##Production 3#mino#{1}":[1024,1026],"##Production 3#redis":[1027,1035],"##Production 3#redis#{1}":[1028,1035]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[7,9],[11,13],[15,17],[20,22],[26,28],[32,34],[36,38],[40,42],[46,136],[139,179],[182,250],[253,369],[372,397],[400,575],[577,596],[599,629],[632,655],[660,779],[784,903],[907,908],[916,918],[920,922],[924,926],[931,1021]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_ref_minio_md.ajson b/.smart-env/multi/100-project_Work_市发改委_ref_minio_md.ajson deleted file mode 100644 index f4a2702..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_ref_minio_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/ref/minio.md": {"path":"100-project/Work/市发改委/ref/minio.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qxpavf","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1727075023937,"size":15781,"at":1766986879407,"hash":"qxpavf"},"blocks":{"#":[1,6],"##**Table of Contents**":[7,20],"##**Table of Contents**#{1}":[9,9],"##**Table of Contents**#{2}":[10,10],"##**Table of Contents**#{3}":[11,11],"##**Table of Contents**#{4}":[12,12],"##**Table of Contents**#{5}":[13,13],"##**Table of Contents**#{6}":[14,14],"##**Table of Contents**#{7}":[15,15],"##**Table of Contents**#{8}":[16,16],"##**Table of Contents**#{9}":[17,18],"##**Table of Contents**#{10}":[19,20],"##**1. Prerequisites**":[21,31],"##**1. Prerequisites**#{1}":[23,24],"##**1. Prerequisites**#{2}":[25,25],"##**1. Prerequisites**#{3}":[26,26],"##**1. Prerequisites**#{4}":[27,27],"##**1. Prerequisites**#{5}":[28,29],"##**1. Prerequisites**#{6}":[30,31],"##**2. Understanding MinIO Users and Policies**":[32,47],"##**2. Understanding MinIO Users and Policies**#**a. Users**":[34,37],"##**2. Understanding MinIO Users and Policies**#**a. Users**#{1}":[36,37],"##**2. Understanding MinIO Users and Policies**#**b. Policies**":[38,47],"##**2. Understanding MinIO Users and Policies**#**b. Policies**#{1}":[40,41],"##**2. Understanding MinIO Users and Policies**#**b. Policies**#{2}":[42,42],"##**2. Understanding MinIO Users and Policies**#**b. Policies**#{3}":[43,43],"##**2. Understanding MinIO Users and Policies**#**b. Policies**#{4}":[44,45],"##**2. Understanding MinIO Users and Policies**#**b. Policies**#{5}":[46,47],"##**3. Installing and Configuring MinIO Client (`mc`)**":[48,120],"##**3. Installing and Configuring MinIO Client (`mc`)**#{1}":[50,51],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**":[52,83],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{1}":[54,59],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{2}":[56,59],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{3}":[60,65],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{4}":[62,65],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{5}":[66,71],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{6}":[68,71],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{7}":[72,83],"##**3. Installing and Configuring MinIO Client (`mc`)**#**a. Download and Install `mc`**#{8}":[74,83],"##**3. Installing and Configuring MinIO Client (`mc`)**#**b. Configure `mc` to Connect to Your MinIO Server**":[84,120],"##**3. Installing and Configuring MinIO Client (`mc`)**#**b. Configure `mc` to Connect to Your MinIO Server**#{1}":[86,87],"##**3. Installing and Configuring MinIO Client (`mc`)**#**b. Configure `mc` to Connect to Your MinIO Server**#{2}":[88,99],"##**3. Installing and Configuring MinIO Client (`mc`)**#**b. Configure `mc` to Connect to Your MinIO Server**#{3}":[100,120],"##**3. Installing and Configuring MinIO Client (`mc`)**#**b. Configure `mc` to Connect to Your MinIO Server**#{4}":[102,120],"##**4. Creating a Full Access Policy**":[121,194],"##**4. Creating a Full Access Policy**#{1}":[123,124],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**":[125,162],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**#{1}":[127,132],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**#{2}":[129,132],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**#{3}":[133,158],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**#{4}":[135,158],"##**4. Creating a Full Access Policy**#**a. Define the Policy JSON**#{5}":[159,162],"##**4. Creating a Full Access Policy**#**b. Validate the Policy JSON**":[163,172],"##**4. Creating a Full Access Policy**#**b. Validate the Policy JSON**#{1}":[165,172],"##**4. Creating a Full Access Policy**#**c. Create the Policy in MinIO**":[173,194],"##**4. Creating a Full Access Policy**#**c. Create the Policy in MinIO**#{1}":[175,194],"##**5. Creating the API User and Assigning the Policy**":[195,265],"##**5. Creating the API User and Assigning the Policy**#{1}":[197,198],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**":[199,243],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#{1}":[201,202],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 1: Manual Key Generation**":[203,225],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 1: Manual Key Generation**#{1}":[205,211],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 1: Manual Key Generation**#{2}":[207,211],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 1: Manual Key Generation**#{3}":[212,225],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 1: Manual Key Generation**#{4}":[214,225],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 2: Using MinIO Client (`mc`) to Create User with Keys**":[226,243],"##**5. Creating the API User and Assigning the Policy**#**a. Create the API User**#**Method 2: Using MinIO Client (`mc`) to Create User with Keys**#{1}":[228,243],"##**5. Creating the API User and Assigning the Policy**#**b. Attach the Policy to the User**":[244,265],"##**5. Creating the API User and Assigning the Policy**#**b. Attach the Policy to the User**#{1}":[246,265],"##**6. Verifying the API User**":[266,382],"##**6. Verifying the API User**#{1}":[268,269],"##**6. Verifying the API User**#**a. List Users**":[270,289],"##**6. Verifying the API User**#**a. List Users**#{1}":[272,289],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**":[290,382],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{1}":[292,293],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{2}":[294,305],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{3}":[296,305],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{4}":[306,318],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{5}":[308,318],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{6}":[319,330],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{7}":[321,330],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{8}":[331,342],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{9}":[333,342],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{10}":[343,354],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{11}":[345,354],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{12}":[355,366],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{13}":[357,366],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{14}":[367,382],"##**6. Verifying the API User**#**b. Test Access with API User Credentials**#{15}":[369,382],"##**7. Best Practices**":[383,419],"##**7. Best Practices**#{1}":[385,386],"##**7. Best Practices**#**a. Principle of Least Privilege**":[387,393],"##**7. Best Practices**#**a. Principle of Least Privilege**#{1}":[389,389],"##**7. Best Practices**#**a. Principle of Least Privilege**#{2}":[390,391],"##**7. Best Practices**#**a. Principle of Least Privilege**#{3}":[392,393],"##**7. Best Practices**#**b. Regularly Rotate Credentials**":[394,398],"##**7. Best Practices**#**b. Regularly Rotate Credentials**#{1}":[396,396],"##**7. Best Practices**#**b. Regularly Rotate Credentials**#{2}":[397,398],"##**7. Best Practices**#**c. Use Strong, Unique Credentials**":[399,403],"##**7. Best Practices**#**c. Use Strong, Unique Credentials**#{1}":[401,401],"##**7. Best Practices**#**c. Use Strong, Unique Credentials**#{2}":[402,403],"##**7. Best Practices**#**d. Monitor and Audit User Activities**":[404,408],"##**7. Best Practices**#**d. Monitor and Audit User Activities**#{1}":[406,406],"##**7. Best Practices**#**d. Monitor and Audit User Activities**#{2}":[407,408],"##**7. Best Practices**#**e. Secure Storage of Credentials**":[409,413],"##**7. Best Practices**#**e. Secure Storage of Credentials**#{1}":[411,411],"##**7. Best Practices**#**e. Secure Storage of Credentials**#{2}":[412,413],"##**7. Best Practices**#**f. Limit User Lifespans**":[414,419],"##**7. Best Practices**#**f. Limit User Lifespans**#{1}":[416,417],"##**7. Best Practices**#**f. Limit User Lifespans**#{2}":[418,419],"##**8. Example: Creating an API User with Full Access**":[420,591],"##**8. Example: Creating an API User with Full Access**#{1}":[422,423],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**":[424,462],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{1}":[426,431],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{2}":[428,431],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{3}":[432,450],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{4}":[434,450],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{5}":[451,454],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{6}":[455,462],"##**8. Example: Creating an API User with Full Access**#**Step 1: Define the Full Access Policy**#{7}":[457,462],"##**8. Example: Creating an API User with Full Access**#**Step 2: Add the Policy to MinIO**":[463,474],"##**8. Example: Creating an API User with Full Access**#**Step 2: Add the Policy to MinIO**#{1}":[465,474],"##**8. Example: Creating an API User with Full Access**#**Step 3: Create the API User**":[475,506],"##**8. Example: Creating an API User with Full Access**#**Step 3: Create the API User**#{1}":[477,492],"##**8. Example: Creating an API User with Full Access**#**Step 3: Create the API User**#{2}":[479,492],"##**8. Example: Creating an API User with Full Access**#**Step 3: Create the API User**#{3}":[493,506],"##**8. Example: Creating an API User with Full Access**#**Step 3: Create the API User**#{4}":[495,506],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**":[507,591],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{1}":[509,514],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{2}":[511,514],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{3}":[515,527],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{4}":[517,527],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{5}":[528,539],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{6}":[530,539],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{7}":[540,551],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{8}":[542,551],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{9}":[552,563],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{10}":[554,563],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{11}":[564,575],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{12}":[566,575],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{13}":[576,591],"##**8. Example: Creating an API User with Full Access**#**Step 4: Test the API User**#{14}":[578,591],"##**9. Additional Resources**":[592,612],"##**9. Additional Resources**#{1}":[594,598],"##**9. Additional Resources**#{2}":[599,601],"##**9. Additional Resources**#{3}":[602,606],"##**9. Additional Resources**#{4}":[607,610],"##**9. Additional Resources**#{5}":[611,612],"##**Conclusion**":[613,627],"##**Conclusion**#{1}":[615,618],"##**Conclusion**#{2}":[619,620],"##**Conclusion**#{3}":[621,622],"##**Conclusion**#{4}":[623,624],"##**Conclusion**#{5}":[625,627]},"outlinks":[{"title":"Prerequisites","target":"#prerequisites","line":9},{"title":"Understanding MinIO Users and Policies","target":"#understanding-minio-users-and-policies","line":10},{"title":"Installing and Configuring MinIO Client (`mc`)","target":"#installing-and-configuring-minio-client-mc","line":11},{"title":"Creating a Full Access Policy","target":"#creating-a-full-access-policy","line":12},{"title":"Creating the API User and Assigning the Policy","target":"#creating-the-api-user-and-assigning-the-policy","line":13},{"title":"Verifying the API User","target":"#verifying-the-api-user","line":14},{"title":"Best Practices","target":"#best-practices","line":15},{"title":"Example: Creating an API User with Full Access","target":"#example-creating-an-api-user-with-full-access","line":16},{"title":"Additional Resources","target":"#additional-resources","line":17},{"title":"JSONLint","target":"https://jsonlint.com/","line":165},{"title":"AWS Secrets Manager","target":"https://aws.amazon.com/secrets-manager/","line":411},{"title":"Kubernetes Secrets","target":"https://kubernetes.io/docs/concepts/configuration/secret/","line":411},{"title":"HashiCorp Vault","target":"https://www.vaultproject.io/","line":411},{"title":"MinIO Client (`mc`) Quickstart Guide","target":"https://docs.min.io/docs/minio-client-quickstart-guide.html","line":595},{"title":"MinIO Admin API","target":"https://docs.min.io/docs/minio-admin-complete-guide.html","line":596},{"title":"MinIO Policy Documentation","target":"https://docs.min.io/docs/minio-policy-guide.html","line":597},{"title":"MinIO Security Best Practices","target":"https://docs.min.io/docs/minio-security.html","line":600},{"title":"HashiCorp Vault","target":"https://www.vaultproject.io/","line":603},{"title":"AWS Secrets Manager","target":"https://aws.amazon.com/secrets-manager/","line":604},{"title":"Kubernetes Secrets","target":"https://kubernetes.io/docs/concepts/configuration/secret/","line":605},{"title":"MinIO GitHub Repository","target":"https://github.com/minio/minio","line":608},{"title":"MinIO Community Slack","target":"https://slack.min.io/","line":609},{"title":"MinIO documentation","target":"https://docs.min.io/","line":627},{"title":"MinIO community","target":"https://min.io/community.html","line":627}],"task_lines":[],"tasks":{},"codeblock_ranges":[[56,58],[62,64],[68,70],[74,76],[80,82],[90,92],[96,98],[102,104],[108,111],[129,131],[135,150],[167,169],[177,179],[183,185],[189,191],[207,210],[214,217],[221,224],[230,232],[236,238],[248,250],[254,256],[260,262],[272,274],[278,280],[284,288],[296,298],[302,304],[308,310],[314,317],[321,323],[327,329],[333,335],[339,341],[345,347],[351,353],[357,359],[363,365],[369,371],[375,377],[428,430],[434,449],[457,459],[465,467],[471,473],[479,484],[488,491],[495,498],[502,505],[511,513],[517,519],[523,526],[530,532],[536,538],[542,544],[548,550],[554,556],[560,562],[566,568],[572,574],[578,580],[584,586]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_等保修复_md.ajson b/.smart-env/multi/100-project_Work_市发改委_等保修复_md.ajson deleted file mode 100644 index 1275b31..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_等保修复_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/等保修复.md": {"path":"100-project/Work/市发改委/等保修复.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"v4xyd9","at":1766986878041},"class_name":"SmartSource","last_import":{"mtime":1763114371475,"size":9435,"at":1766986878359,"hash":"v4xyd9"},"blocks":{"#":[2,7],"##一步一步来(复制黏贴即可)":[8,78],"##一步一步来(复制黏贴即可)#{1}":[10,17],"##一步一步来(复制黏贴即可)#{2}":[13,17],"##一步一步来(复制黏贴即可)#{3}":[18,78],"##一步一步来(复制黏贴即可)#{4}":[21,78],"##为什么这样改(要点)":[79,95],"##为什么这样改(要点)#{1}":[81,84],"##为什么这样改(要点)#{2}":[85,88],"##为什么这样改(要点)#{3}":[89,90],"##为什么这样改(要点)#{4}":[91,93],"##为什么这样改(要点)#{5}":[94,95],"##测试(非常重要)":[96,131],"##测试(非常重要)#{1}":[98,99],"##测试(非常重要)#{2}":[100,107],"##测试(非常重要)#{3}":[103,107],"##测试(非常重要)#{4}":[108,110],"##测试(非常重要)#{5}":[111,112],"##测试(非常重要)#{6}":[113,114],"##测试(非常重要)#{7}":[115,117],"##测试(非常重要)#{8}":[118,126],"##测试(非常重要)#{9}":[121,126],"##测试(非常重要)#{10}":[127,129],"##测试(非常重要)#{11}":[130,131],"##回滚(若出现问题)":[132,146],"##回滚(若出现问题)#{1}":[134,146],"##额外建议(可选)":[147,281],"##额外建议(可选)#{1}":[149,150],"##额外建议(可选)#{2}":[151,152],"##额外建议(可选)#{3}":[153,155],"##额外建议(可选)#{4}":[156,159],"##额外建议(可选)#{5}":[160,161],"##额外建议(可选)#{6}":[162,164],"##额外建议(可选)#{7}":[165,281]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[13,16],[21,66],[68,74],[103,106],[121,125],[136,141],[172,176],[180,227],[230,234],[237,242],[246,249],[252,255],[257,262],[264,267],[269,273],[275,280]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_等保问题描述_md.ajson b/.smart-env/multi/100-project_Work_市发改委_等保问题描述_md.ajson deleted file mode 100644 index e18c05a..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_等保问题描述_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/等保问题描述.md": {"path":"100-project/Work/市发改委/等保问题描述.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1v1bwfu","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1762486296511,"size":17374,"at":1766986878359,"hash":"1v1bwfu"},"blocks":{"#":[1,341]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_维护_md.ajson b/.smart-env/multi/100-project_Work_市发改委_维护_md.ajson deleted file mode 100644 index b7bce30..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_维护_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/维护.md": {"path":"100-project/Work/市发改委/维护.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10d9lcw","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1766563943749,"size":5987,"at":1766986878359,"hash":"10d9lcw"},"blocks":{"##一、远程桌面":[3,67],"##一、远程桌面#Office Windows Desktop":[5,20],"##一、远程桌面#Office Windows Desktop#{1}":[7,12],"##一、远程桌面#Office Windows Desktop#{2}":[9,12],"##一、远程桌面#Office Windows Desktop#{3}":[13,20],"##一、远程桌面#Office Windows Desktop#{4}":[15,20],"##一、远程桌面#VM Windows 10":[21,49],"##一、远程桌面#VM Windows 10#{1}":[23,49],"##一、远程桌面#VM Windows 10#{2}":[25,49],"##一、远程桌面#GZZN Opensuse Desktop":[50,67],"##一、远程桌面#GZZN Opensuse Desktop#{1}":[52,67],"##二、服务器信息":[68,84],"##二、服务器信息#服务器密码":[70,75],"##二、服务器信息#服务器密码#{1}":[72,75],"##二、服务器信息#服务器使用":[76,84],"##二、服务器信息#服务器使用#{1}":[78,79],"##二、服务器信息#服务器使用#{2}":[80,82],"##二、服务器信息#服务器使用#{3}":[83,84],"##三、二期资源":[85,102],"##三、二期资源#主机 10.194.62.26":[87,92],"##三、二期资源#主机 10.194.62.26#{1}":[89,92],"##三、二期资源#内存百分比脚本":[93,102],"##三、二期资源#内存百分比脚本#{1}":[95,102],"##四、工具与探针":[103,160],"##四、工具与探针#工具下载":[105,110],"##四、工具与探针#工具下载#{1}":[107,110],"##四、工具与探针#探针安装":[111,116],"##四、工具与探针#探针安装#{1}":[113,116],"##四、工具与探针#安装失败节点":[117,131],"##四、工具与探针#安装失败节点#{1}":[119,120],"##四、工具与探针#安装失败节点#{2}":[121,122],"##四、工具与探针#安装失败节点#{3}":[123,124],"##四、工具与探针#安装失败节点#{4}":[125,126],"##四、工具与探针#安装失败节点#{5}":[127,128],"##四、工具与探针#安装失败节点#{6}":[129,131],"##四、工具与探针#探针测试":[132,138],"##四、工具与探针#探针测试#{1}":[134,138],"##四、工具与探针#手动运行探针":[139,152],"##四、工具与探针#手动运行探针#{1}":[141,152],"##四、工具与探针#抓包验证":[153,160],"##四、工具与探针#抓包验证#{1}":[155,160],"##五、数据迁移生产环境":[161,373],"##五、数据迁移生产环境#1. MinIO 迁移":[163,183],"##五、数据迁移生产环境#1. MinIO 迁移#{1}":[165,166],"##五、数据迁移生产环境#1. MinIO 迁移#{2}":[167,168],"##五、数据迁移生产环境#1. MinIO 迁移#{3}":[169,170],"##五、数据迁移生产环境#1. MinIO 迁移#{4}":[171,172],"##五、数据迁移生产环境#1. MinIO 迁移#{5}":[173,175],"##五、数据迁移生产环境#1. MinIO 迁移#{6}":[176,183],"##五、数据迁移生产环境#2. Elasticsearch 迁移":[184,289],"##五、数据迁移生产环境#2. Elasticsearch 迁移#{1}":[186,187],"##五、数据迁移生产环境#2. Elasticsearch 迁移#{2}":[188,189],"##五、数据迁移生产环境#2. Elasticsearch 迁移#{3}":[190,191],"##五、数据迁移生产环境#2. Elasticsearch 迁移#{4}":[192,194],"##五、数据迁移生产环境#2. Elasticsearch 迁移#elasticdump 工具":[195,229],"##五、数据迁移生产环境#2. Elasticsearch 迁移#elasticdump 工具#{1}":[197,229],"##五、数据迁移生产环境#2. Elasticsearch 迁移#Snapshot 方式":[230,289],"##五、数据迁移生产环境#2. Elasticsearch 迁移#Snapshot 方式#{1}":[232,289],"##五、数据迁移生产环境#3. MongoDB 迁移":[290,373],"##五、数据迁移生产环境#3. MongoDB 迁移#{1}":[292,293],"##五、数据迁移生产环境#3. MongoDB 迁移#{2}":[294,295],"##五、数据迁移生产环境#3. MongoDB 迁移#{3}":[296,297],"##五、数据迁移生产环境#3. MongoDB 迁移#{4}":[298,299],"##五、数据迁移生产环境#3. MongoDB 迁移#{5}":[300,302],"##五、数据迁移生产环境#3. MongoDB 迁移#{6}":[303,373]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[9,11],[15,17],[25,27],[30,32],[36,39],[42,44],[53,55],[57,59],[62,64],[72,74],[89,91],[95,99],[107,109],[113,115],[134,137],[141,145],[149,151],[155,157],[178,180],[197,199],[203,208],[212,228],[234,238],[242,250],[254,256],[260,262],[266,273],[277,286],[305,314],[318,321],[325,332],[340,345],[350,352],[354,356],[365,367],[370,372]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_市发改委_达梦_md.ajson b/.smart-env/multi/100-project_Work_市发改委_达梦_md.ajson deleted file mode 100644 index 7f8eb52..0000000 --- a/.smart-env/multi/100-project_Work_市发改委_达梦_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/市发改委/达梦.md": {"path":"100-project/Work/市发改委/达梦.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"n2b45l","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1762762016827,"size":6758,"at":1766986878359,"hash":"n2b45l"},"blocks":{"#":[3,108],"##管理工具下载(WIN)":[109,110],"##管理工具下载(WIN)#{1}":[110,110],"##管理工具的安装使用(安装选择组件,只安装客户端就行)":[111,202],"##管理工具的安装使用(安装选择组件,只安装客户端就行)#{1}":[112,154],"##管理工具的安装使用(安装选择组件,只安装客户端就行)#{2}":[155,155],"##管理工具的安装使用(安装选择组件,只安装客户端就行)#{3}":[156,157],"##管理工具的安装使用(安装选择组件,只安装客户端就行)#{4}":[158,158],"##管理工具的安装使用(安装选择组件,只安装客户端就行)#{5}":[159,202]},"outlinks":[],"metadata":{"tags":["#数据库系统用户密码修改后妥善保存,一旦丢失无法找回。","#如果不够可调整"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_广汽_ubuntu_md.ajson b/.smart-env/multi/100-project_Work_广汽_ubuntu_md.ajson deleted file mode 100644 index 0769e20..0000000 --- a/.smart-env/multi/100-project_Work_广汽_ubuntu_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/广汽/ubuntu.md": {"path":"100-project/Work/广汽/ubuntu.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ed2fqi","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1726284727000,"size":82,"at":1766986878359,"hash":"1ed2fqi"},"blocks":{"#":[2,8]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_广汽_基线_md.ajson b/.smart-env/multi/100-project_Work_广汽_基线_md.ajson deleted file mode 100644 index d34af3a..0000000 --- a/.smart-env/multi/100-project_Work_广汽_基线_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/广汽/基线.md": {"path":"100-project/Work/广汽/基线.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1cblpku","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1723086059000,"size":928,"at":1766986878359,"hash":"1cblpku"},"blocks":{"#":[4,50]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,49]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_广汽_漏洞处理_md.ajson b/.smart-env/multi/100-project_Work_广汽_漏洞处理_md.ajson deleted file mode 100644 index 1de0686..0000000 --- a/.smart-env/multi/100-project_Work_广汽_漏洞处理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/广汽/漏洞处理.md": {"path":"100-project/Work/广汽/漏洞处理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1u96f5h","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1723517432000,"size":4777,"at":1766986878359,"hash":"1u96f5h"},"blocks":{"#":[3,147],"##{1}":[53,60],"##{2}":[61,72],"##{3}":[73,80],"##{4}":[81,147]},"outlinks":[{"title":"https://10.8.82.16/","target":"https://10.8.82.16/","line":7}],"task_lines":[],"tasks":{},"codeblock_ranges":[[55,57],[63,69],[75,77],[83,85]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_物联网AIOT_ref_ThingsBoard_md.ajson b/.smart-env/multi/100-project_Work_物联网AIOT_ref_ThingsBoard_md.ajson deleted file mode 100644 index 372b440..0000000 --- a/.smart-env/multi/100-project_Work_物联网AIOT_ref_ThingsBoard_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/物联网AIOT/ref/ThingsBoard.md": {"path":"100-project/Work/物联网AIOT/ref/ThingsBoard.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"72r0a5","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1755827573461,"size":330,"at":1766986879407,"hash":"72r0a5"},"blocks":{"#install":[2,11],"#install#{1}":[4,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,9]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_物联网AIOT_ref_培训记录整理_md.ajson b/.smart-env/multi/100-project_Work_物联网AIOT_ref_培训记录整理_md.ajson deleted file mode 100644 index 5d27355..0000000 --- a/.smart-env/multi/100-project_Work_物联网AIOT_ref_培训记录整理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/物联网AIOT/ref/培训记录整理.md": {"path":"100-project/Work/物联网AIOT/ref/培训记录整理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14tblcs","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1760930173217,"size":9118,"at":1766986879407,"hash":"14tblcs"},"blocks":{"#":[3,120],"##{1}":[4,4],"##{2}":[5,9],"##{3}":[10,13],"##{4}":[14,14],"##{5}":[15,15],"##{6}":[16,16],"##{7}":[17,19],"##{8}":[20,22],"##{9}":[23,27],"##{10}":[28,28],"##{11}":[29,30],"##{12}":[31,36],"##{13}":[37,39],"##{14}":[40,41],"##{15}":[42,48],"##{16}":[49,52],"##{17}":[53,56],"##{18}":[57,61],"##{19}":[62,62],"##{20}":[63,71],"##{21}":[72,75],"##{22}":[76,78],"##{23}":[79,82],"##{24}":[83,85],"##{25}":[86,89],"##{26}":[90,93],"##{27}":[94,98],"##{28}":[99,99],"##{29}":[100,100],"##{30}":[101,101],"##{31}":[102,102],"##{32}":[103,105],"##{33}":[106,106],"##{34}":[107,107],"##{35}":[108,108],"##{36}":[109,109],"##{37}":[110,110],"##{38}":[111,113],"##{39}":[114,114],"##{40}":[115,115],"##{41}":[116,116],"##{42}":[117,117],"##{43}":[118,120]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_物联网AIOT_ref_设备添加_md.ajson b/.smart-env/multi/100-project_Work_物联网AIOT_ref_设备添加_md.ajson deleted file mode 100644 index 062e151..0000000 --- a/.smart-env/multi/100-project_Work_物联网AIOT_ref_设备添加_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/物联网AIOT/ref/设备添加.md": {"path":"100-project/Work/物联网AIOT/ref/设备添加.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"e30km2","at":1766986879323},"class_name":"SmartSource","last_import":{"mtime":1760930362321,"size":8058,"at":1766986879407,"hash":"e30km2"},"blocks":{"#":[4,163],"##{1}":[5,11],"##{2}":[12,26],"##{3}":[27,27],"##{4}":[28,31],"##{5}":[32,32],"##{6}":[33,38],"##{7}":[39,43],"##{8}":[44,44],"##{9}":[45,48],"##{10}":[49,50],"##{11}":[51,54],"##{12}":[55,55],"##{13}":[56,59],"##{14}":[60,63],"##{15}":[64,64],"##{16}":[65,73],"##{17}":[74,78],"##{18}":[79,79],"##{19}":[80,84],"##{20}":[85,86],"##{21}":[87,90],"##{22}":[91,91],"##{23}":[92,95],"##{24}":[96,100],"##{25}":[101,101],"##{26}":[102,102],"##{27}":[103,103],"##{28}":[104,106],"##{29}":[107,107],"##{30}":[108,108],"##{31}":[109,109],"##{32}":[110,112],"##{33}":[113,116],"##{34}":[117,119],"##{35}":[120,123],"##{36}":[124,124],"##{37}":[125,127],"##{38}":[128,131],"##{39}":[132,135],"##{40}":[136,139],"##{41}":[140,142],"##{42}":[143,147],"##{43}":[148,148],"##{44}":[149,149],"##{45}":[150,150],"##{46}":[151,151],"##{47}":[152,152],"##{48}":[153,155],"##{49}":[156,156],"##{50}":[157,157],"##{51}":[158,158],"##{52}":[159,159],"##{53}":[160,160],"##{54}":[161,163]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_物联网AIOT_测试环境_md.ajson b/.smart-env/multi/100-project_Work_物联网AIOT_测试环境_md.ajson deleted file mode 100644 index 8f0797f..0000000 --- a/.smart-env/multi/100-project_Work_物联网AIOT_测试环境_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/物联网AIOT/测试环境.md": {"path":"100-project/Work/物联网AIOT/测试环境.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"2cwxxg","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1755679908483,"size":54,"at":1766986878359,"hash":"2cwxxg"},"blocks":{"#":[2,4]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_物联网AIOT_维护_md.ajson b/.smart-env/multi/100-project_Work_物联网AIOT_维护_md.ajson deleted file mode 100644 index db9c43c..0000000 --- a/.smart-env/multi/100-project_Work_物联网AIOT_维护_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/物联网AIOT/维护.md": {"path":"100-project/Work/物联网AIOT/维护.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"lq77o4","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1760944204135,"size":159,"at":1766986878359,"hash":"lq77o4"},"blocks":{"#":[3,14]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,6]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺住建_login_md.ajson b/.smart-env/multi/100-project_Work_番禺住建_login_md.ajson deleted file mode 100644 index a3965d3..0000000 --- a/.smart-env/multi/100-project_Work_番禺住建_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺住建/login.md": {"path":"100-project/Work/番禺住建/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1da78qb","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1758250638442,"size":606,"at":1766986878359,"hash":"1da78qb"},"blocks":{"#":[1,4],"#堡垒机":[5,16],"#堡垒机#{1}":[7,16],"#番禺住健服务器密码更新":[17,73],"#番禺住健服务器密码更新#服务器":[19,73],"#番禺住健服务器密码更新#服务器#{1}":[21,73]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[11,13],[23,25],[29,31],[35,57],[59,61],[65,67],[69,71]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺住建_maintanance_md.ajson b/.smart-env/multi/100-project_Work_番禺住建_maintanance_md.ajson deleted file mode 100644 index bab9401..0000000 --- a/.smart-env/multi/100-project_Work_番禺住建_maintanance_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺住建/maintanance.md": {"path":"100-project/Work/番禺住建/maintanance.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x3zg63","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1758263655326,"size":51873,"at":1766986878359,"hash":"x3zg63"},"blocks":{"#172.25.101.113:":[2,43],"#172.25.101.113:#nacos":[3,10],"#172.25.101.113:#nacos#{1}":[4,10],"#172.25.101.113:#redis":[11,15],"#172.25.101.113:#redis#{1}":[12,15],"#172.25.101.113:#harbor":[16,23],"#172.25.101.113:#harbor#{1}":[18,23],"#172.25.101.113:#minio":[24,34],"#172.25.101.113:#minio#{1}":[26,34],"#172.25.101.113:#tomcat":[35,43],"#172.25.101.113:#tomcat#{1}":[37,43],"#172.25.101.39":[44,63],"#172.25.101.39#wyn":[45,49],"#172.25.101.39#wyn#{1}":[46,49],"#172.25.101.39#pyresb":[50,55],"#172.25.101.39#pyresb#{1}":[51,55],"#172.25.101.39#nginx":[56,63],"#172.25.101.39#nginx#{1}":[57,63],"#mysql":[64,1294],"#mysql#{1}":[65,1294]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,8],[12,14],[18,21],[26,28],[31,33],[37,40],[46,48],[51,54],[57,60],[67,71],[73,75],[77,79],[81,83],[85,87],[89,92],[94,96],[99,101],[104,106],[109,111],[125,224],[228,254],[257,280],[284,303],[308,1037],[1042,1220],[1224,1226],[1229,1294]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺信用_Login_md.ajson b/.smart-env/multi/100-project_Work_番禺信用_Login_md.ajson deleted file mode 100644 index 10cedb6..0000000 --- a/.smart-env/multi/100-project_Work_番禺信用_Login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺信用/Login.md": {"path":"100-project/Work/番禺信用/Login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1rvttow","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1734077379110,"size":324,"at":1766986878359,"hash":"1rvttow"},"blocks":{"#":[2,2],"##vpn":[3,11],"##vpn#{1}":[5,11],"#堡垒机":[12,43],"#堡垒机#{1}":[14,43]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[8,10],[18,20],[25,27],[33,35],[39,41]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺公文_login_md.ajson b/.smart-env/multi/100-project_Work_番禺公文_login_md.ajson deleted file mode 100644 index 6e11319..0000000 --- a/.smart-env/multi/100-project_Work_番禺公文_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺公文/login.md": {"path":"100-project/Work/番禺公文/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gc0ee7","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1745546197000,"size":90,"at":1766986878359,"hash":"1gc0ee7"},"blocks":{"#堡垒机":[1,11],"#堡垒机#{1}":[3,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[7,9]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺公文_问题处理_md.ajson b/.smart-env/multi/100-project_Work_番禺公文_问题处理_md.ajson deleted file mode 100644 index 4d7a126..0000000 --- a/.smart-env/multi/100-project_Work_番禺公文_问题处理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺公文/问题处理.md": {"path":"100-project/Work/番禺公文/问题处理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12gxb0m","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1736324787737,"size":1386,"at":1766986878359,"hash":"12gxb0m"},"blocks":{"#":[2,99]},"outlinks":[{"title":"https://218.20.201.210","target":"https://218.20.201.210/","line":11}],"task_lines":[],"tasks":{},"codeblock_ranges":[[15,17],[52,56],[59,64],[68,74],[86,89],[94,99]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺城中村_maintanance_md.ajson b/.smart-env/multi/100-project_Work_番禺城中村_maintanance_md.ajson deleted file mode 100644 index 96dd761..0000000 --- a/.smart-env/multi/100-project_Work_番禺城中村_maintanance_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺城中村/maintanance.md": {"path":"100-project/Work/番禺城中村/maintanance.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1vc32ko","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1728461582000,"size":1113,"at":1766986878359,"hash":"1vc32ko"},"blocks":{"#":[3,65]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,9],[12,16],[20,22],[26,28],[31,34],[37,40],[43,48],[51,57],[60,64]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺城中村_登陆_md.ajson b/.smart-env/multi/100-project_Work_番禺城中村_登陆_md.ajson deleted file mode 100644 index 3d60d34..0000000 --- a/.smart-env/multi/100-project_Work_番禺城中村_登陆_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺城中村/登陆.md": {"path":"100-project/Work/番禺城中村/登陆.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"myiwnj","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1728547463511,"size":1327,"at":1766986878359,"hash":"myiwnj"},"blocks":{"#番禺城中城服务器登陆流程":[1,55],"#番禺城中城服务器登陆流程##vpn":[3,14],"#番禺城中城服务器登陆流程##vpn#{1}":[5,14],"#番禺城中城服务器登陆流程##堡垒机":[15,31],"#番禺城中城服务器登陆流程##堡垒机#{1}":[17,31],"#番禺城中城服务器登陆流程##服务器":[32,48],"#番禺城中城服务器登陆流程##服务器#{1}":[34,48],"#番禺城中城服务器登陆流程##登陆顺序":[49,55],"#番禺城中城服务器登陆流程##登陆顺序#{1}":[51,55]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,11],[17,25],[27,29],[45,47]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_番禺城中村_配置_md.ajson b/.smart-env/multi/100-project_Work_番禺城中村_配置_md.ajson deleted file mode 100644 index a3cc4c1..0000000 --- a/.smart-env/multi/100-project_Work_番禺城中村_配置_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/番禺城中村/配置.md": {"path":"100-project/Work/番禺城中村/配置.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"k3kp8l","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1728459400000,"size":3072,"at":1766986878359,"hash":"k3kp8l"},"blocks":{"#番禺政务中心配置信息":[1,191],"#番禺政务中心配置信息#{1}":[3,6],"#番禺政务中心配置信息#VPN":[7,14],"#番禺政务中心配置信息#VPN#{1}":[9,14],"#番禺政务中心配置信息#堡垒机":[15,22],"#番禺政务中心配置信息#堡垒机#{1}":[17,22],"#番禺政务中心配置信息#服务器登录账号密码":[23,30],"#番禺政务中心配置信息#服务器登录账号密码#{1}":[25,30],"#番禺政务中心配置信息#数据库信息":[31,75],"#番禺政务中心配置信息#数据库信息#{1}":[33,75],"#番禺政务中心配置信息#Redis信息":[76,91],"#番禺政务中心配置信息#Redis信息#{1}":[78,91],"#番禺政务中心配置信息#Naocs信息":[92,113],"#番禺政务中心配置信息#Naocs信息#{1}":[94,113],"#番禺政务中心配置信息#ES信息":[114,129],"#番禺政务中心配置信息#ES信息#{1}":[116,129],"#番禺政务中心配置信息#nginx信息":[130,139],"#番禺政务中心配置信息#nginx信息#{1}":[132,139],"#番禺政务中心配置信息#minio信息":[140,164],"#番禺政务中心配置信息#minio信息#{1}":[142,164],"#番禺政务中心配置信息#mongo信息":[165,191],"#番禺政务中心配置信息#mongo信息#{1}":[167,191],"#测试环境":[192,204],"#测试环境#zookeeper":[194,204],"#测试环境#zookeeper#{1}":[196,204]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_禺好办_md.ajson b/.smart-env/multi/100-project_Work_禺好办_md.ajson deleted file mode 100644 index d053db7..0000000 --- a/.smart-env/multi/100-project_Work_禺好办_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/禺好办.md": {"path":"100-project/Work/禺好办.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"9yq9vt","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1723104026000,"size":291,"at":1766986877914,"hash":"9yq9vt"},"blocks":{"#":[3,28]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_自动驾驶_数据流向_md.ajson b/.smart-env/multi/100-project_Work_自动驾驶_数据流向_md.ajson deleted file mode 100644 index 953b104..0000000 --- a/.smart-env/multi/100-project_Work_自动驾驶_数据流向_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/自动驾驶/数据流向.md": {"path":"100-project/Work/自动驾驶/数据流向.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7a4m4a","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1761019757000,"size":7337,"at":1766986878359,"hash":"7a4m4a"},"blocks":{"#":[3,317]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,18],[22,28],[39,82],[84,118],[120,137],[143,175],[177,192],[194,260]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_自动驾驶_系统架构_md.ajson b/.smart-env/multi/100-project_Work_自动驾驶_系统架构_md.ajson deleted file mode 100644 index 1eae65a..0000000 --- a/.smart-env/multi/100-project_Work_自动驾驶_系统架构_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/自动驾驶/系统架构.md": {"path":"100-project/Work/自动驾驶/系统架构.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1frrml8","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1761020986000,"size":7611,"at":1766986878359,"hash":"1frrml8"},"blocks":{"#":[3,254]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,45],[59,66],[74,104],[112,143],[154,173],[177,181]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟数据中心_Dev_md.ajson b/.smart-env/multi/100-project_Work_虚拟数据中心_Dev_md.ajson deleted file mode 100644 index c2d7e66..0000000 --- a/.smart-env/multi/100-project_Work_虚拟数据中心_Dev_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟数据中心/Dev.md": {"path":"100-project/Work/虚拟数据中心/Dev.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"t9ctwi","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1725431974545,"size":1853,"at":1766986878359,"hash":"t9ctwi"},"blocks":{"#虚拟数据中心总线测试环境_20240523":[1,131],"#虚拟数据中心总线测试环境_20240523#{1}":[3,8],"#虚拟数据中心总线测试环境_20240523#一、应用服务(zms、zmsm)":[9,44],"#虚拟数据中心总线测试环境_20240523#一、应用服务(zms、zmsm)#{1}":[11,44],"#虚拟数据中心总线测试环境_20240523#二、数据库":[45,74],"#虚拟数据中心总线测试环境_20240523#二、数据库#MYSQL":[47,58],"#虚拟数据中心总线测试环境_20240523#二、数据库#MYSQL#{1}":[49,58],"#虚拟数据中心总线测试环境_20240523#二、数据库#Redis":[59,74],"#虚拟数据中心总线测试环境_20240523#二、数据库#Redis#{1}":[61,74],"#虚拟数据中心总线测试环境_20240523#三、支撑组件(Kafka、Zookeeper)":[75,131],"#虚拟数据中心总线测试环境_20240523#三、支撑组件(Kafka、Zookeeper)#Kafka":[77,110],"#虚拟数据中心总线测试环境_20240523#三、支撑组件(Kafka、Zookeeper)#Kafka#{1}":[79,110],"#虚拟数据中心总线测试环境_20240523#三、支撑组件(Kafka、Zookeeper)#Zookeeper":[111,131],"#虚拟数据中心总线测试环境_20240523#三、支撑组件(Kafka、Zookeeper)#Zookeeper#{1}":[113,131]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[17,25],[35,41],[67,71],[87,97],[99,103],[105,109],[121,129]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟数据中心_login_md.ajson b/.smart-env/multi/100-project_Work_虚拟数据中心_login_md.ajson deleted file mode 100644 index 9ae3d07..0000000 --- a/.smart-env/multi/100-project_Work_虚拟数据中心_login_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟数据中心/login.md": {"path":"100-project/Work/虚拟数据中心/login.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"18xweh6","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1761898905076,"size":425,"at":1766986878359,"hash":"18xweh6"},"blocks":{"#":[2,56]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[22,24],[27,29],[33,35],[44,46],[51,53]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟数据中心_prod_md.ajson b/.smart-env/multi/100-project_Work_虚拟数据中心_prod_md.ajson deleted file mode 100644 index cb1383f..0000000 --- a/.smart-env/multi/100-project_Work_虚拟数据中心_prod_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟数据中心/prod.md": {"path":"100-project/Work/虚拟数据中心/prod.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12p43p1","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1725443034802,"size":49856,"at":1766986878359,"hash":"12p43p1"},"blocks":{"#广州市虚拟数据中心二、三级总线部署":[3,2162],"#广州市虚拟数据中心二、三级总线部署#部署架构图":[5,10],"#广州市虚拟数据中心二、三级总线部署#部署架构图#{1}":[7,10],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:":[11,2162],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87":[13,1513],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#访问地址":[15,18],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#访问地址#{1}":[17,18],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Nginx代理配置":[19,73],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Nginx代理配置#{1}":[21,73],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Redis配置信息":[74,92],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Redis配置信息#{1}":[76,92],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Zookeeper配置信息":[93,141],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Zookeeper配置信息#{1}":[95,141],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Kafka配置信息":[142,162],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Kafka配置信息#{1}":[144,162],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#MYSQL配置信息":[163,177],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#MYSQL配置信息#{1}":[165,177],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息":[178,674],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zms":[180,442],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zms#基本配置":[182,197],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zms#基本配置#{1}":[184,197],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zms#关键配置":[198,442],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zms#关键配置#{1}":[200,442],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zmsm":[443,533],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zmsm#基本配置":[445,457],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zmsm#基本配置#{1}":[447,457],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zmsm#关键配置":[458,533],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#zmsm#关键配置#{1}":[460,533],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#sysapi":[534,619],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#sysapi#基本配置":[536,550],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#sysapi#基本配置#{1}":[538,550],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#sysapi#关键配置":[551,619],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#sysapi#关键配置#{1}":[553,619],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#oauthapi":[620,674],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#oauthapi#基本配置":[622,636],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#oauthapi#基本配置#{1}":[624,636],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#oauthapi#关键配置":[637,674],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#APPS应用配置信息#oauthapi#关键配置#{1}":[639,674],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87##":[675,1331],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###{1}":[677,678],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###vdcapi":[679,799],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###vdcapi#基本配置":[681,695],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###vdcapi#基本配置#{1}":[683,695],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###vdcapi#关键配置":[696,799],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###vdcapi#关键配置#{1}":[698,799],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###xnsj-gateway":[800,933],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###xnsj-gateway#基本配置":[802,816],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###xnsj-gateway#基本配置#{1}":[804,816],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###xnsj-gateway#关键配置":[817,933],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###xnsj-gateway#关键配置#{1}":[819,933],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###zmsmapi":[934,1018],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###zmsmapi#基本配置":[936,950],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###zmsmapi#基本配置#{1}":[938,950],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###zmsmapi#关键配置":[951,1018],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###zmsmapi#关键配置#{1}":[953,1018],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###woapi":[1019,1154],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###woapi#基本配置":[1021,1035],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###woapi#基本配置#{1}":[1023,1035],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###woapi#关键配置":[1036,1154],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###woapi#关键配置#{1}":[1038,1154],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###dgovapi":[1155,1254],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###dgovapi#基本配置":[1157,1171],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###dgovapi#基本配置#{1}":[1159,1171],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###dgovapi#关键配置":[1172,1254],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###dgovapi#关键配置#{1}":[1174,1254],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###sync-dsjpt":[1255,1331],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###sync-dsjpt#基本配置":[1257,1271],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###sync-dsjpt#基本配置#{1}":[1259,1271],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###sync-dsjpt#关键配置":[1272,1331],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87###sync-dsjpt#关键配置#{1}":[1274,1331],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#单容器实例服务启动命令":[1332,1364],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#单容器实例服务启动命令#{1}":[1334,1364],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Docker Stack服务管理脚本":[1365,1513],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Docker Stack服务管理脚本##服务启动":[1367,1378],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Docker Stack服务管理脚本##服务启动#{1}":[1369,1378],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Docker Stack服务管理脚本##脚本模板":[1379,1513],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#二级中心(荔湾):10.196.76.87#Docker Stack服务管理脚本##脚本模板#{1}":[1381,1513],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161":[1514,1827],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#访问地址":[1516,1521],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#访问地址#{1}":[1518,1521],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Nginx代理配置":[1522,1576],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Nginx代理配置#{1}":[1524,1576],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Redis配置信息":[1577,1595],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Redis配置信息#{1}":[1579,1595],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Zookeeper配置信息":[1596,1646],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Zookeeper配置信息#{1}":[1598,1646],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Kafka配置信息":[1647,1667],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Kafka配置信息#{1}":[1649,1667],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#MYSQL配置信息":[1668,1680],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#MYSQL配置信息#{1}":[1670,1680],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Docker Stack服务管理脚本":[1681,1827],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Docker Stack服务管理脚本##服务启动":[1683,1694],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Docker Stack服务管理脚本##服务启动#{1}":[1685,1694],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Docker Stack服务管理脚本##脚本模板":[1695,1827],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾逢源街):10.194.67.161#Docker Stack服务管理脚本##脚本模板#{1}":[1697,1827],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162":[1828,2146],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#访问地址":[1830,1835],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#访问地址#{1}":[1832,1835],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Nginx代理配置":[1836,1890],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Nginx代理配置#{1}":[1838,1890],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Redis配置信息":[1891,1909],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Redis配置信息#{1}":[1893,1909],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Zookeeper配置信息":[1910,1963],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Zookeeper配置信息#{1}":[1912,1963],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Kafka配置信息":[1964,1986],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Kafka配置信息#{1}":[1966,1986],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#MYSQL配置信息":[1987,2001],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#MYSQL配置信息#{1}":[1989,2001],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Docker Stack服务管理脚本":[2002,2146],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Docker Stack服务管理脚本##服务启动":[2004,2015],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Docker Stack服务管理脚本##服务启动#{1}":[2006,2015],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Docker Stack服务管理脚本##脚本模板":[2016,2146],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#三级中心(荔湾白鹤洞街):10.194.67.162#Docker Stack服务管理脚本##脚本模板#{1}":[2018,2146],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#其它中心:10.196.76.89【部署中】":[2147,2162],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#其它中心:10.196.76.89【部署中】#MYSQL配置信息":[2149,2162],"#广州市虚拟数据中心二、三级总线部署#CMDB信息:#其它中心:10.196.76.89【部署中】#MYSQL配置信息#{1}":[2151,2162]},"outlinks":[{"title":"image-20220210150915590","target":"https://s2.loli.net/2022/02/10/7kdRmTjSIaKqrOE.png","line":7,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[[23,70],[80,89],[99,138],[148,159],[169,174],[184,196],[200,227],[231,396],[400,413],[417,435],[447,456],[460,530],[538,547],[553,581],[585,616],[624,633],[639,655],[659,673],[683,692],[698,743],[747,796],[804,813],[819,858],[862,930],[938,947],[953,974],[978,1015],[1023,1032],[1038,1091],[1095,1151],[1159,1168],[1174,1211],[1215,1251],[1259,1268],[1274,1292],[1296,1328],[1334,1361],[1369,1375],[1381,1506],[1526,1573],[1583,1592],[1602,1643],[1653,1664],[1674,1679],[1685,1691],[1697,1822],[1840,1887],[1897,1906],[1916,1960],[1970,1981],[1993,1998],[2006,2012],[2018,2143],[2155,2160]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟数据中心_proxysql_upgrade_md.ajson b/.smart-env/multi/100-project_Work_虚拟数据中心_proxysql_upgrade_md.ajson deleted file mode 100644 index ce09bc5..0000000 --- a/.smart-env/multi/100-project_Work_虚拟数据中心_proxysql_upgrade_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟数据中心/proxysql upgrade.md": {"path":"100-project/Work/虚拟数据中心/proxysql upgrade.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"c6v9ac","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1724380974820,"size":73,"at":1766986878359,"hash":"c6v9ac"},"blocks":{"#":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟数据中心_问题处理_md.ajson b/.smart-env/multi/100-project_Work_虚拟数据中心_问题处理_md.ajson deleted file mode 100644 index ab5094d..0000000 --- a/.smart-env/multi/100-project_Work_虚拟数据中心_问题处理_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟数据中心/问题处理.md": {"path":"100-project/Work/虚拟数据中心/问题处理.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"pteesy","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1761903347701,"size":24655,"at":1766986878359,"hash":"pteesy"},"blocks":{"#":[1,42],"##{1}":[29,42],"###1. **敏感标记的设置**":[43,46],"###1. **敏感标记的设置**#{1}":[44,46],"###2. **严格控制访问**":[47,50],"###2. **严格控制访问**#{1}":[48,50],"###3. **强制访问控制机制**":[51,54],"###3. **强制访问控制机制**#{1}":[52,54],"###4. **系统配置与监控**":[55,58],"###4. **系统配置与监控**#{1}":[56,58],"###5. **培训与测试**":[59,84],"###5. **培训与测试**#{1}":[60,84],"###Steps to Configure the Connection Control Plugin":[85,166],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**":[87,111],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**#{1}":[88,89],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**#{2}":[90,103],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**#{3}":[92,103],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**#{4}":[104,111],"###Steps to Configure the Connection Control Plugin#1. **Install the Plugin**#{5}":[106,111],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**":[112,148],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{1}":[113,114],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{2}":[115,116],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{3}":[117,124],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{4}":[125,126],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{5}":[127,135],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{6}":[136,137],"###Steps to Configure the Connection Control Plugin#2. **Configure the Plugin**#{7}":[138,148],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**":[149,166],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**#{1}":[151,152],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**#{2}":[153,158],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**#{3}":[155,158],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**#{4}":[159,166],"###Steps to Configure the Connection Control Plugin#3. **Monitor and Adjust Settings**#{5}":[161,166],"###Summary":[167,891],"###Summary#{1}":[169,169],"###Summary#{2}":[170,170],"###Summary#{3}":[171,171],"###Summary#{4}":[172,173],"###Summary#{5}":[174,891],"#Port 22":[892,1060],"#Port 22#{1}":[893,1060]},"outlinks":[{"title":":space:","target":":space:","line":438},{"title":":space:","target":":space:","line":439},{"title":":space:","target":":space:","line":440},{"title":":space:","target":":space:","line":540},{"title":":space:","target":":space:","line":541},{"title":":space:","target":":space:","line":542},{"title":":space:","target":":space:","line":716},{"title":":space:","target":":space:","line":717},{"title":":space:","target":":space:","line":718},{"title":":space:","target":":space:","line":785},{"title":":space:","target":":space:","line":787},{"title":":space:","target":":space:","line":789}],"metadata":{"tags":["#Port"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[35,39],[66,69],[73,81],[92,95],[99,102],[106,108],[119,121],[129,132],[140,145],[155,157],[161,163],[179,197],[199,203],[208,212],[217,221],[226,231],[248,251],[254,256],[258,262],[266,270],[281,285],[290,296],[300,303],[307,314],[316,320],[325,329],[335,339],[342,345],[352,360],[362,365],[370,376],[382,385],[394,396],[399,403],[405,409],[411,413],[418,420],[422,424],[428,431],[433,437],[441,443],[445,447],[449,453],[463,466],[469,472],[476,478],[480,484],[488,495],[497,500],[502,506],[512,514],[517,521],[525,528],[534,539],[544,546],[550,552],[557,560],[563,568],[578,582],[585,587],[591,599],[603,607],[612,615],[618,620],[623,626],[629,633],[637,639],[641,645],[652,655],[657,661],[667,670],[672,679],[688,691],[694,696],[698,701],[704,708],[713,715],[719,721],[724,728],[730,735],[745,749],[752,754],[757,762],[767,770],[773,776],[781,784],[791,796],[801,806],[809,812],[817,820],[822,824],[841,845],[849,851],[855,860],[863,866],[870,875],[880,883],[886,891],[914,919],[921,926],[928,932],[934,936],[952,955],[957,961],[966,969],[978,980],[982,991],[999,1003],[1015,1019],[1032,1037]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_虚拟机_cloud_install_image_md.ajson b/.smart-env/multi/100-project_Work_虚拟机_cloud_install_image_md.ajson deleted file mode 100644 index 9de7b0f..0000000 --- a/.smart-env/multi/100-project_Work_虚拟机_cloud_install_image_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/虚拟机/cloud install image.md": {"path":"100-project/Work/虚拟机/cloud install image.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"la87a4","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1724388944033,"size":3966,"at":1766986878359,"hash":"la87a4"},"blocks":{"#":[3,137]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,137]]}, \ No newline at end of file diff --git a/.smart-env/multi/100-project_Work_道路秩序_server_md.ajson b/.smart-env/multi/100-project_Work_道路秩序_server_md.ajson deleted file mode 100644 index 5a50211..0000000 --- a/.smart-env/multi/100-project_Work_道路秩序_server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:100-project/Work/道路秩序/server.md": {"path":"100-project/Work/道路秩序/server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qvurfi","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1728357462368,"size":2971,"at":1766986878359,"hash":"qvurfi"},"blocks":{"#番禺政务中心配置信息":[1,177],"#番禺政务中心配置信息#服务器登录账号密码":[3,10],"#番禺政务中心配置信息#服务器登录账号密码#{1}":[5,10],"#番禺政务中心配置信息#数据库信息":[11,12],"#番禺政务中心配置信息#数据库账号密码":[13,61],"#番禺政务中心配置信息#数据库账号密码#{1}":[14,61],"#番禺政务中心配置信息#Redis信息":[62,77],"#番禺政务中心配置信息#Redis信息#{1}":[64,77],"#番禺政务中心配置信息#Naocs信息":[78,99],"#番禺政务中心配置信息#Naocs信息#{1}":[80,99],"#番禺政务中心配置信息#ES信息":[100,115],"#番禺政务中心配置信息#ES信息#{1}":[102,115],"#番禺政务中心配置信息#nginx信息":[116,125],"#番禺政务中心配置信息#nginx信息#{1}":[118,125],"#番禺政务中心配置信息#minio信息":[126,150],"#番禺政务中心配置信息#minio信息#{1}":[128,150],"#番禺政务中心配置信息#mongo信息":[151,177],"#番禺政务中心配置信息#mongo信息#{1}":[153,177],"#测试环境":[178,190],"#测试环境#zookeeper":[180,190],"#测试环境#zookeeper#{1}":[182,190]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Blog_=Draft=_Project_Manager_for_solo_person_md.ajson b/.smart-env/multi/200-area_Blog_=Draft=_Project_Manager_for_solo_person_md.ajson deleted file mode 100644 index 5e7016c..0000000 --- a/.smart-env/multi/200-area_Blog_=Draft=_Project_Manager_for_solo_person_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Blog/=Draft= Project Manager for solo person.md": {"path":"200-area/Blog/=Draft= Project Manager for solo person.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"106frog","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1590031057000,"size":957,"at":1766986877914,"hash":"106frog"},"blocks":{"#":[1,9],"##{1}":[1,1],"##{2}":[2,5],"##{3}":[7,9]},"outlinks":[{"title":"ClickUp","target":"ClickUp","line":1},{"title":"Drafts","target":"Drafts","line":1},{"title":"Notion","target":"Notion","line":1},{"title":"Productivity","target":"Productivity","line":1},{"title":"Project Management","target":"Project Management","line":1},{"title":"Todoist","target":"Todoist","line":1},{"title":"=Draft= 5 Projects Rules","target":"=Draft= 5 Projects Rules","line":4},{"title":"ClickUp","target":"ClickUp","line":4},{"title":"Notion","target":"Notion","line":4},{"title":"Project Management","target":"Project Management","line":4},{"title":"Todoist","target":"Todoist","line":4}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Blog_Blog_md.ajson b/.smart-env/multi/200-area_Blog_Blog_md.ajson deleted file mode 100644 index a7122df..0000000 --- a/.smart-env/multi/200-area_Blog_Blog_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Blog/Blog.md": {"path":"200-area/Blog/Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1dnisgs","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1627685419000,"size":88,"at":1766986877914,"hash":"1dnisgs"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/Blog/Blog.md": {"path":"200-area/Blog/Blog.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"td5sr9","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991356749,"size":198,"at":1766994016490,"hash":"td5sr9"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/Blog/Blog.md","metadata":{"title":"Blog","type":"area-hub","tags":["#area","#para","#blog","#writing"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Blog_Feedback_sessions_md.ajson b/.smart-env/multi/200-area_Blog_Feedback_sessions_md.ajson deleted file mode 100644 index 80d88a0..0000000 --- a/.smart-env/multi/200-area_Blog_Feedback_sessions_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Blog/Feedback sessions.md": {"path":"200-area/Blog/Feedback sessions.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1yrj95o","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1627596006000,"size":287,"at":1766986877914,"hash":"1yrj95o"},"blocks":{"###Things to look out for:":[1,20],"###Things to look out for:#{1}":[3,12],"###Things to look out for:#{2}":[13,13],"###Things to look out for:#{3}":[14,14],"###Things to look out for:#{4}":[15,15],"###Things to look out for:#{5}":[16,16],"###Things to look out for:#{6}":[17,17],"###Things to look out for:#{7}":[18,18],"###Things to look out for:#{8}":[19,20]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Blog_Hugo_Version_Change_md.ajson b/.smart-env/multi/200-area_Blog_Hugo_Version_Change_md.ajson deleted file mode 100644 index bd994cc..0000000 --- a/.smart-env/multi/200-area_Blog_Hugo_Version_Change_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Blog/Hugo Version Change.md": {"path":"200-area/Blog/Hugo Version Change.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"qiq9oh","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":154,"at":1766986877914,"hash":"qiq9oh"},"blocks":{"##Notes:":[1,6],"##Notes:#{1}":[3,3],"##Notes:#{2}":[4,4],"##Notes:#{3}":[5,5],"##Notes:#{4}":[6,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Blog_Writing_cheatsheet_md.ajson b/.smart-env/multi/200-area_Blog_Writing_cheatsheet_md.ajson deleted file mode 100644 index af8b62f..0000000 --- a/.smart-env/multi/200-area_Blog_Writing_cheatsheet_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Blog/Writing cheatsheet.md": {"path":"200-area/Blog/Writing cheatsheet.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"17xer90","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1627595937000,"size":642,"at":1766986877914,"hash":"17xer90"},"blocks":{"###C.R.I.B.S":[1,6],"###C.R.I.B.S#{1}":[2,2],"###C.R.I.B.S#{2}":[3,3],"###C.R.I.B.S#{3}":[4,4],"###C.R.I.B.S#{4}":[5,5],"###C.R.I.B.S#{5}":[6,6],"###Writing Tips":[7,14],"###Writing Tips#{1}":[8,8],"###Writing Tips#{2}":[9,9],"###Writing Tips#{3}":[10,10],"###Writing Tips#{4}":[11,11],"###Writing Tips#{5}":[12,12],"###Writing Tips#{6}":[13,14],"###Editing":[15,21],"###Editing#{1}":[16,16],"###Editing#{2}":[17,17],"###Editing#{3}":[18,18],"###Editing#{4}":[19,19],"###Editing#{5}":[20,21]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Finance_Annual_Salary_to_Weekly_md.ajson b/.smart-env/multi/200-area_Finance_Annual_Salary_to_Weekly_md.ajson deleted file mode 100644 index 65baa3d..0000000 --- a/.smart-env/multi/200-area_Finance_Annual_Salary_to_Weekly_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Finance/Annual Salary to Weekly.md": {"path":"200-area/Finance/Annual Salary to Weekly.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10bcan","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":365,"at":1766986877914,"hash":"10bcan"},"blocks":{"##Notes:":[1,12],"##Notes:#Calculate approximate":[3,7],"##Notes:#Calculate approximate#{1}":[4,4],"##Notes:#Calculate approximate#{2}":[5,5],"##Notes:#Calculate approximate#{3}":[6,7],"##Notes:#Calculate new percent":[8,12],"##Notes:#Calculate new percent#{1}":[9,9],"##Notes:#Calculate new percent#{2}":[10,10],"##Notes:#Calculate new percent#{3}":[11,12]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Finance_Finance_md.ajson b/.smart-env/multi/200-area_Finance_Finance_md.ajson deleted file mode 100644 index 348a353..0000000 --- a/.smart-env/multi/200-area_Finance_Finance_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Finance/Finance.md": {"path":"200-area/Finance/Finance.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1l7y10z","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1627685399000,"size":91,"at":1766986877914,"hash":"1l7y10z"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/Finance/Finance.md": {"path":"200-area/Finance/Finance.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ylco2k","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991356874,"size":198,"at":1766994016490,"hash":"1ylco2k"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/Finance/Finance.md","metadata":{"title":"Finance","type":"area-hub","tags":["#area","#para","#finance"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_GFW_Bills_md.ajson b/.smart-env/multi/200-area_GFW_Bills_md.ajson deleted file mode 100644 index 90a3c9f..0000000 --- a/.smart-env/multi/200-area_GFW_Bills_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/GFW/Bills.md": {"path":"200-area/GFW/Bills.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"wujre1","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1750212940183,"size":968,"at":1766986877914,"hash":"wujre1"},"blocks":{"#":[3,4],"###D套餐 (200G)":[5,63],"###D套餐 (200G)#{1}":[7,63],"##¥0.8 /G":[64,82],"##¥0.8 /G#{1}":[65,82]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_GFW_Clash_热点升级_md.ajson b/.smart-env/multi/200-area_GFW_Clash_热点升级_md.ajson deleted file mode 100644 index 53a0a34..0000000 --- a/.smart-env/multi/200-area_GFW_Clash_热点升级_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/GFW/Clash 热点升级.md": {"path":"200-area/GFW/Clash 热点升级.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1pm49p7","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1679746231000,"size":151,"at":1766986877914,"hash":"1pm49p7"},"blocks":{"#":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_GFW_providers_md.ajson b/.smart-env/multi/200-area_GFW_providers_md.ajson deleted file mode 100644 index 7e46e12..0000000 --- a/.smart-env/multi/200-area_GFW_providers_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/GFW/providers.md": {"path":"200-area/GFW/providers.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14lfijv","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1678845743844,"size":1,"at":1766986877914,"hash":"14lfijv"},"blocks":{},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Health_Health_md.ajson b/.smart-env/multi/200-area_Health_Health_md.ajson deleted file mode 100644 index 0fd288f..0000000 --- a/.smart-env/multi/200-area_Health_Health_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Health/Health.md": {"path":"200-area/Health/Health.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"caagwi","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1627685383000,"size":90,"at":1766986877914,"hash":"caagwi"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/Health/Health.md": {"path":"200-area/Health/Health.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14u3woy","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991364839,"size":195,"at":1766994016490,"hash":"14u3woy"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/Health/Health.md","metadata":{"title":"Health","type":"area-hub","tags":["#area","#para","#health"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Health_自行车_md.ajson b/.smart-env/multi/200-area_Health_自行车_md.ajson deleted file mode 100644 index 291057b..0000000 --- a/.smart-env/multi/200-area_Health_自行车_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Health/自行车.md": {"path":"200-area/Health/自行车.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x7dmvp","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1678261408830,"size":1299,"at":1766986877914,"hash":"x7dmvp"},"blocks":{"###数据同步":[2,74],"###数据同步#{1}":[4,7],"###数据同步#{2}":[8,9],"###数据同步#{3}":[10,23],"###数据同步#{4}":[24,30],"###数据同步#{5}":[26,30],"###数据同步#{6}":[31,31],"###数据同步#{7}":[32,43],"###数据同步#{8}":[44,74],"###数据同步#{9}":[46,74]},"outlinks":[{"title":"DailySync · GitLab","target":"DailySync · GitLab","line":5}],"task_lines":[],"tasks":{},"codeblock_ranges":[[11,14],[18,21],[26,29],[33,41],[46,69]]}, -"smart_sources:200-area/Health/自行车.md": {"path":"200-area/Health/自行车.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"sy3j1j","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991546374,"size":1416,"at":1766994016490,"hash":"sy3j1j"},"blocks":{"#---frontmatter---":[1,7],"###数据同步":[9,81],"###数据同步#{1}":[11,14],"###数据同步#{2}":[15,16],"###数据同步#{3}":[17,30],"###数据同步#{4}":[31,37],"###数据同步#{5}":[33,37],"###数据同步#{6}":[38,38],"###数据同步#{7}":[39,50],"###数据同步#{8}":[51,81],"###数据同步#{9}":[53,81]},"outlinks":[{"title":"DailySync · GitLab","target":"DailySync · GitLab","line":12}],"task_lines":[],"tasks":{},"codeblock_ranges":[[18,21],[25,28],[33,36],[40,48],[53,76]],"key":"200-area/Health/自行车.md","metadata":{"title":"自行车","tags":["#health","#garmin","#cycling","#data-sync"],"lang":"zh","created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_House_Apartment_md.ajson b/.smart-env/multi/200-area_House_Apartment_md.ajson deleted file mode 100644 index 8dcbbbe..0000000 --- a/.smart-env/multi/200-area_House_Apartment_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/House/Apartment.md": {"path":"200-area/House/Apartment.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ixzasg","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1621430236000,"size":98,"at":1766986877914,"hash":"ixzasg"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_House_Brand_and_models_md.ajson b/.smart-env/multi/200-area_House_Brand_and_models_md.ajson deleted file mode 100644 index d73d65b..0000000 --- a/.smart-env/multi/200-area_House_Brand_and_models_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/House/Brand and models.md": {"path":"200-area/House/Brand and models.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"iwz3e0","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627595768000,"size":181,"at":1766986877914,"hash":"iwz3e0"},"blocks":{"##Notes:":[2,17],"##Notes:#{1}":[4,4],"##Notes:#{2}":[5,6],"##Notes:#{3}":[7,7],"##Notes:#{4}":[8,9],"##Notes:#{5}":[10,10],"##Notes:#{6}":[11,12],"##Notes:#{7}":[13,13],"##Notes:#{8}":[14,15],"##Notes:#{9}":[16,16],"##Notes:#{10}":[17,17]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, -"smart_sources:200-area/House/Brand and models.md": {"path":"200-area/House/Brand and models.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1351zo2","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991433137,"size":296,"at":1766994016490,"hash":"1351zo2"},"blocks":{"#---frontmatter---":[1,6],"##Notes:":[8,23],"##Notes:#{1}":[10,10],"##Notes:#{2}":[11,12],"##Notes:#{3}":[13,13],"##Notes:#{4}":[14,15],"##Notes:#{5}":[16,16],"##Notes:#{6}":[17,18],"##Notes:#{7}":[19,19],"##Notes:#{8}":[20,21],"##Notes:#{9}":[22,22],"##Notes:#{10}":[23,23]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[],"key":"200-area/House/Brand and models.md","metadata":{"title":"Brand and Models","tags":["#house","#brands","#products","#reference"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_House_House_md.ajson b/.smart-env/multi/200-area_House_House_md.ajson deleted file mode 100644 index ef1ee10..0000000 --- a/.smart-env/multi/200-area_House_House_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/House/House.md": {"path":"200-area/House/House.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"z7lzxk","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627685344000,"size":89,"at":1766986877914,"hash":"z7lzxk"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/House/House.md": {"path":"200-area/House/House.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ba4sy0","at":1766994016407},"class_name":"SmartSource","last_import":{"mtime":1766991364957,"size":198,"at":1766994016490,"hash":"ba4sy0"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/House/House.md","metadata":{"title":"House","type":"area-hub","tags":["#area","#para","#house","#home"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_House_Moving_tip_md.ajson b/.smart-env/multi/200-area_House_Moving_tip_md.ajson deleted file mode 100644 index 5a7cb27..0000000 --- a/.smart-env/multi/200-area_House_Moving_tip_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/House/Moving tip.md": {"path":"200-area/House/Moving tip.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1g55wti","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627595650000,"size":194,"at":1766986877914,"hash":"1g55wti"},"blocks":{"##Notes:":[1,4],"##Notes:#{1}":[3,4]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_Filesystem_limitation_md.ajson b/.smart-env/multi/200-area_Job_Filesystem_limitation_md.ajson deleted file mode 100644 index ca230b7..0000000 --- a/.smart-env/multi/200-area_Job_Filesystem_limitation_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/Filesystem limitation.md": {"path":"200-area/Job/Filesystem limitation.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1e6k4yf","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626726607000,"size":506,"at":1766986877914,"hash":"1e6k4yf"},"blocks":{"#":[1,16]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[4,14]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_Gradle_cheatsheet_md.ajson b/.smart-env/multi/200-area_Job_Gradle_cheatsheet_md.ajson deleted file mode 100644 index 3ef23fe..0000000 --- a/.smart-env/multi/200-area_Job_Gradle_cheatsheet_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/Gradle cheatsheet.md": {"path":"200-area/Job/Gradle cheatsheet.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ac4amy","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":542,"at":1766986877914,"hash":"1ac4amy"},"blocks":{"#":[1,16]},"outlinks":[{"title":"Gradle Java Plugin","target":"https://docs.gradle.org/current/userguide/java_plugin.html","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[[5,14]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_Install_IPA_server_md.ajson b/.smart-env/multi/200-area_Job_Install_IPA_server_md.ajson deleted file mode 100644 index 8c2cb36..0000000 --- a/.smart-env/multi/200-area_Job_Install_IPA_server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/Install IPA server.md": {"path":"200-area/Job/Install IPA server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"11196fp","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1718260992570,"size":334,"at":1766986877914,"hash":"11196fp"},"blocks":{"#":[1,10]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[1,9]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_The_Omnipresence_of_Work_-_More_to_That_md.ajson b/.smart-env/multi/200-area_Job_The_Omnipresence_of_Work_-_More_to_That_md.ajson deleted file mode 100644 index 68e1733..0000000 --- a/.smart-env/multi/200-area_Job_The_Omnipresence_of_Work_-_More_to_That_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/The Omnipresence of Work - More to That.md": {"path":"200-area/Job/The Omnipresence of Work - More to That.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"xpvnf9","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627684795000,"size":2477,"at":1766986877914,"hash":"xpvnf9"},"blocks":{"#":[1,4],"##Highlights:":[5,57],"##Highlights:#{1}":[7,57]},"outlinks":[{"title":"moretothat.com","target":"moretothat.com","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_block_sudo_to_specific_command_md.ajson b/.smart-env/multi/200-area_Job_block_sudo_to_specific_command_md.ajson deleted file mode 100644 index 33cb504..0000000 --- a/.smart-env/multi/200-area_Job_block_sudo_to_specific_command_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/block sudo to specific command.md": {"path":"200-area/Job/block sudo to specific command.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1tm8msl","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626726584000,"size":1242,"at":1766986877914,"hash":"1tm8msl"},"blocks":{"#":[1,24]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,6],[14,16],[21,23]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Job_curl_POST_examples_md.ajson b/.smart-env/multi/200-area_Job_curl_POST_examples_md.ajson deleted file mode 100644 index fe9bbb2..0000000 --- a/.smart-env/multi/200-area_Job_curl_POST_examples_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Job/curl POST examples.md": {"path":"200-area/Job/curl POST examples.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1uy18m2","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626739368000,"size":3665,"at":1766986877914,"hash":"1uy18m2"},"blocks":{"#":[3,42]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_Design_Your_Habits_md.ajson b/.smart-env/multi/200-area_Personal_Development_Design_Your_Habits_md.ajson deleted file mode 100644 index 1bed720..0000000 --- a/.smart-env/multi/200-area_Personal_Development_Design_Your_Habits_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Personal Development/Design Your Habits.md": {"path":"200-area/Personal Development/Design Your Habits.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12s3hfe","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":760,"at":1766986877914,"hash":"12s3hfe"},"blocks":{"#":[1,2],"##Highlights:":[3,47],"##Highlights:#{1}":[5,5],"##Highlights:#{2}":[6,6],"##Highlights:#{3}":[7,7],"##Highlights:#{4}":[8,9],"##Highlights:#{5}":[10,12],"##Highlights:#{6}":[13,13],"##Highlights:#{7}":[14,14],"##Highlights:#{8}":[15,15],"##Highlights:#{9}":[16,17],"##Highlights:#{10}":[18,30],"##Highlights:#{11}":[31,31],"##Highlights:#{12}":[32,33],"##Highlights:#{13}":[34,47]},"outlinks":[{"title":"Tiago Forte","target":"Tiago Forte","line":1},{"title":"5F3572EE-362D-44EB-A27A-6E05D50D8D5D.jpg","target":"5F3572EE-362D-44EB-A27A-6E05D50D8D5D.jpg","line":26,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, -"smart_sources:200-area/Personal Development/Design Your Habits.md": {"path":"200-area/Personal Development/Design Your Habits.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1npj3aq","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766991537864,"size":895,"at":1766994016490,"hash":"1npj3aq"},"blocks":{"#---frontmatter---":[1,7],"#":[9,10],"##Highlights:":[11,55],"##Highlights:#{1}":[13,13],"##Highlights:#{2}":[14,14],"##Highlights:#{3}":[15,15],"##Highlights:#{4}":[16,17],"##Highlights:#{5}":[18,20],"##Highlights:#{6}":[21,21],"##Highlights:#{7}":[22,22],"##Highlights:#{8}":[23,23],"##Highlights:#{9}":[24,25],"##Highlights:#{10}":[26,38],"##Highlights:#{11}":[39,39],"##Highlights:#{12}":[40,41],"##Highlights:#{13}":[42,55]},"outlinks":[{"title":"Tiago Forte","target":"Tiago Forte","line":9},{"title":"5F3572EE-362D-44EB-A27A-6E05D50D8D5D.jpg","target":"5F3572EE-362D-44EB-A27A-6E05D50D8D5D.jpg","line":34,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[],"key":"200-area/Personal Development/Design Your Habits.md","metadata":{"title":"Design Your Habits","tags":["#personal-development","#habits","#productivity"],"lang":"en","created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_Excitement_map_md.ajson b/.smart-env/multi/200-area_Personal_Development_Excitement_map_md.ajson deleted file mode 100644 index d23acdc..0000000 --- a/.smart-env/multi/200-area_Personal_Development_Excitement_map_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/Excitement map.md": {"path":"200-area/Personal Development/Excitement map.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"4wk8qo","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":404,"at":1766986877914,"hash":"4wk8qo"},"blocks":{"#":[1,1]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_Personal_Development_md.ajson b/.smart-env/multi/200-area_Personal_Development_Personal_Development_md.ajson deleted file mode 100644 index 1c0ccb9..0000000 --- a/.smart-env/multi/200-area_Personal_Development_Personal_Development_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Personal Development/Personal Development.md": {"path":"200-area/Personal Development/Personal Development.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"prt7xx","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627685469000,"size":104,"at":1766986877914,"hash":"prt7xx"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/Personal Development/Personal Development.md": {"path":"200-area/Personal Development/Personal Development.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"fqpyuy","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766991373085,"size":245,"at":1766994016490,"hash":"fqpyuy"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/Personal Development/Personal Development.md","metadata":{"title":"Personal Development","type":"area-hub","tags":["#area","#para","#personal-development","#growth"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_System_Architec_产出(Deliverables)_md.ajson b/.smart-env/multi/200-area_Personal_Development_System_Architec_产出(Deliverables)_md.ajson deleted file mode 100644 index 4182448..0000000 --- a/.smart-env/multi/200-area_Personal_Development_System_Architec_产出(Deliverables)_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/System Architec/产出(Deliverables).md": {"path":"200-area/Personal Development/System Architec/产出(Deliverables).md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1vyjqp4","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1760514842989,"size":4764,"at":1766986878359,"hash":"1vyjqp4"},"blocks":{"#---frontmatter---":[1,6],"#":[8,9],"##1. 核心产出一览(知道它们各自解决什么问题)":[10,23],"##1. 核心产出一览(知道它们各自解决什么问题)#{1}":[11,11],"##1. 核心产出一览(知道它们各自解决什么问题)#{2}":[12,12],"##1. 核心产出一览(知道它们各自解决什么问题)#{3}":[13,13],"##1. 核心产出一览(知道它们各自解决什么问题)#{4}":[14,14],"##1. 核心产出一览(知道它们各自解决什么问题)#{5}":[15,15],"##1. 核心产出一览(知道它们各自解决什么问题)#{6}":[16,16],"##1. 核心产出一览(知道它们各自解决什么问题)#{7}":[17,17],"##1. 核心产出一览(知道它们各自解决什么问题)#{8}":[18,18],"##1. 核心产出一览(知道它们各自解决什么问题)#{9}":[19,19],"##1. 核心产出一览(知道它们各自解决什么问题)#{10}":[20,20],"##1. 核心产出一览(知道它们各自解决什么问题)#{11}":[21,21],"##1. 核心产出一览(知道它们各自解决什么问题)#{12}":[22,23],"##2. 每个产出的“最少集”字段(记住这 6 个)":[24,31],"##2. 每个产出的“最少集”字段(记住这 6 个)#{1}":[25,25],"##2. 每个产出的“最少集”字段(记住这 6 个)#{2}":[26,26],"##2. 每个产出的“最少集”字段(记住这 6 个)#{3}":[27,27],"##2. 每个产出的“最少集”字段(记住这 6 个)#{4}":[28,28],"##2. 每个产出的“最少集”字段(记住这 6 个)#{5}":[29,29],"##2. 每个产出的“最少集”字段(记住这 6 个)#{6}":[30,31],"##3. 度量与验证(避免“看不见/对不齐”)":[32,37],"##3. 度量与验证(避免“看不见/对不齐”)#{1}":[33,33],"##3. 度量与验证(避免“看不见/对不齐”)#{2}":[34,34],"##3. 度量与验证(避免“看不见/对不齐”)#{3}":[35,35],"##3. 度量与验证(避免“看不见/对不齐”)#{4}":[36,37],"##4. 生命周期(它们不是一次性交付)":[38,43],"##4. 生命周期(它们不是一次性交付)#{1}":[39,39],"##4. 生命周期(它们不是一次性交付)#{2}":[40,40],"##4. 生命周期(它们不是一次性交付)#{3}":[41,41],"##4. 生命周期(它们不是一次性交付)#{4}":[42,43],"##5. 交叉约束(这些关系要牢记)":[44,49],"##5. 交叉约束(这些关系要牢记)#{1}":[45,45],"##5. 交叉约束(这些关系要牢记)#{2}":[46,46],"##5. 交叉约束(这些关系要牢记)#{3}":[47,47],"##5. 交叉约束(这些关系要牢记)#{4}":[48,49],"##6. 检查清单(评审时逐条过)":[50,57],"##6. 检查清单(评审时逐条过)#{1}":[51,51],"##6. 检查清单(评审时逐条过)#{2}":[52,52],"##6. 检查清单(评审时逐条过)#{3}":[53,53],"##6. 检查清单(评审时逐条过)#{4}":[54,54],"##6. 检查清单(评审时逐条过)#{5}":[55,55],"##6. 检查清单(评审时逐条过)#{6}":[56,57],"##7. 常见反模式(踩坑黑名单)":[58,65],"##7. 常见反模式(踩坑黑名单)#{1}":[59,59],"##7. 常见反模式(踩坑黑名单)#{2}":[60,60],"##7. 常见反模式(踩坑黑名单)#{3}":[61,61],"##7. 常见反模式(踩坑黑名单)#{4}":[62,62],"##7. 常见反模式(踩坑黑名单)#{5}":[63,63],"##7. 常见反模式(踩坑黑名单)#{6}":[64,65],"##8. 记忆卡(一分钟回顾)":[66,69],"##8. 记忆卡(一分钟回顾)#{1}":[67,67],"##8. 记忆卡(一分钟回顾)#{2}":[68,69]},"outlinks":[],"metadata":{"title":"架构目标 · 产出(Deliverables)知识点总结","tags":["#architecture","#deliverables","#knowledge-base"],"created":"<% tp.file.creation_date('YYYY-MM-DD') %>","updated":"<% tp.file.last_modified_date('YYYY-MM-DD HH:mm') %>"},"task_lines":[51,52,53,54,55,56],"tasks":{"incomplete":{"all":[51,52,53,54,55,56],"top":[51,52,53,54,55,56]}},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_System_Architec_决策方法_md.ajson b/.smart-env/multi/200-area_Personal_Development_System_Architec_决策方法_md.ajson deleted file mode 100644 index 92dc391..0000000 --- a/.smart-env/multi/200-area_Personal_Development_System_Architec_决策方法_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/System Architec/决策方法.md": {"path":"200-area/Personal Development/System Architec/决策方法.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"sgbczs","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1760516185503,"size":12229,"at":1766986878359,"hash":"sgbczs"},"blocks":{"#":[2,6],"##1) 方法家族(知道用什么)":[7,23],"##1) 方法家族(知道用什么)#{1}":[9,10],"##1) 方法家族(知道用什么)#{2}":[11,12],"##1) 方法家族(知道用什么)#{3}":[13,14],"##1) 方法家族(知道用什么)#{4}":[15,16],"##1) 方法家族(知道用什么)#{5}":[17,18],"##1) 方法家族(知道用什么)#{6}":[19,20],"##1) 方法家族(知道用什么)#{7}":[21,23],"##2) 统一流程(Playbook)":[24,40],"##2) 统一流程(Playbook)#{1}":[26,27],"##2) 统一流程(Playbook)#{2}":[28,29],"##2) 统一流程(Playbook)#{3}":[30,31],"##2) 统一流程(Playbook)#{4}":[32,33],"##2) 统一流程(Playbook)#{5}":[34,35],"##2) 统一流程(Playbook)#{6}":[36,37],"##2) 统一流程(Playbook)#{7}":[38,40],"##3) 最小公式(随手可用)":[41,57],"##3) 最小公式(随手可用)#{1}":[43,44],"##3) 最小公式(随手可用)#{2}":[45,46],"##3) 最小公式(随手可用)#{3}":[47,48],"##3) 最小公式(随手可用)#{4}":[49,50],"##3) 最小公式(随手可用)#{5}":[51,52],"##3) 最小公式(随手可用)#{6}":[53,54],"##3) 最小公式(随手可用)#{7}":[55,57],"##4) 权衡维度(打分建议)":[58,74],"##4) 权衡维度(打分建议)#{1}":[60,61],"##4) 权衡维度(打分建议)#{2}":[62,63],"##4) 权衡维度(打分建议)#{3}":[64,65],"##4) 权衡维度(打分建议)#{4}":[66,67],"##4) 权衡维度(打分建议)#{5}":[68,69],"##4) 权衡维度(打分建议)#{6}":[70,72],"##4) 权衡维度(打分建议)#{7}":[73,74],"##5) 模板速用":[75,136],"##5) 模板速用#5.1 Trade-off Matrix(权衡矩阵)":[77,84],"##5) 模板速用#5.1 Trade-off Matrix(权衡矩阵)#{1}":[79,84],"##5) 模板速用#5.2 Utility Tree(简版)":[85,101],"##5) 模板速用#5.2 Utility Tree(简版)#{1}":[87,101],"##5) 模板速用#5.3 ADR(Architecture Decision Record)":[102,121],"##5) 模板速用#5.3 ADR(Architecture Decision Record)#{1}":[104,121],"##5) 模板速用#5.4 风险登记(Risk Register)":[122,128],"##5) 模板速用#5.4 风险登记(Risk Register)#{1}":[124,128],"##5) 模板速用#5.5 WSJF / CoD(优先级)":[129,136],"##5) 模板速用#5.5 WSJF / CoD(优先级)#{1}":[131,136],"##6) 验证要点(决策“落地就绪”)":[137,149],"##6) 验证要点(决策“落地就绪”)#{1}":[139,140],"##6) 验证要点(决策“落地就绪”)#{2}":[141,142],"##6) 验证要点(决策“落地就绪”)#{3}":[143,144],"##6) 验证要点(决策“落地就绪”)#{4}":[145,146],"##6) 验证要点(决策“落地就绪”)#{5}":[147,149],"##7) 常见反模式(避免)":[150,162],"##7) 常见反模式(避免)#{1}":[152,153],"##7) 常见反模式(避免)#{2}":[154,155],"##7) 常见反模式(避免)#{3}":[156,157],"##7) 常见反模式(避免)#{4}":[158,159],"##7) 常见反模式(避免)#{5}":[160,162],"##8) 记忆卡(60 秒回顾)":[163,175],"##8) 记忆卡(60 秒回顾)#{1}":[165,166],"##8) 记忆卡(60 秒回顾)#{2}":[167,168],"##8) 记忆卡(60 秒回顾)#{3}":[169,171],"##8) 记忆卡(60 秒回顾)#{4}":[172,175],"##现在最常用的决策方法(工程实践版)":[176,313],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)":[178,194],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{1}":[180,181],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{2}":[182,183],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{3}":[184,185],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{4}":[186,187],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{5}":[188,189],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{6}":[190,192],"##现在最常用的决策方法(工程实践版)#1) RFC / 设计提案评审(Design Doc / RFC Review)#{7}":[193,194],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)":[195,211],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{1}":[197,198],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{2}":[199,200],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{3}":[201,202],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{4}":[203,204],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{5}":[205,206],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{6}":[207,209],"##现在最常用的决策方法(工程实践版)#2) 权衡矩阵(Trade-off Matrix)#{7}":[210,211],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)":[212,228],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{1}":[214,215],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{2}":[216,217],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{3}":[218,219],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{4}":[220,221],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{5}":[222,223],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{6}":[224,226],"##现在最常用的决策方法(工程实践版)#3) ADR(Architecture Decision Record)#{7}":[227,228],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)":[229,245],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{1}":[231,232],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{2}":[233,234],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{3}":[235,236],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{4}":[237,238],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{5}":[239,240],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{6}":[241,243],"##现在最常用的决策方法(工程实践版)#4) 轻量 ATAM(场景化权衡)#{7}":[244,245],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)":[246,262],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{1}":[248,249],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{2}":[250,251],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{3}":[252,253],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{4}":[254,255],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{5}":[256,257],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{6}":[258,260],"##现在最常用的决策方法(工程实践版)#5) 实验/金丝雀 + 守护指标(Experiment / Canary with SLO Gates)#{7}":[261,262],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)":[263,279],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{1}":[265,266],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{2}":[267,268],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{3}":[269,270],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{4}":[271,272],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{5}":[273,274],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{6}":[275,277],"##现在最常用的决策方法(工程实践版)#6) WSJF / RICE(优先级排序)#{7}":[278,279],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)":[280,296],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{1}":[282,283],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{2}":[284,285],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{3}":[286,287],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{4}":[288,289],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{5}":[290,291],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{6}":[292,294],"##现在最常用的决策方法(工程实践版)#7) 风险登记+触发器(Risk Register with Triggers)#{7}":[295,296],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)":[297,313],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{1}":[299,300],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{2}":[301,302],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{3}":[303,304],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{4}":[305,306],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{5}":[307,308],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{6}":[309,311],"##现在最常用的决策方法(工程实践版)#8) 成本模型 / TCO 评估(含停机成本)#{7}":[312,313],"##80/20 标配组合(推荐你实际落地就用这套)":[314,334],"##80/20 标配组合(推荐你实际落地就用这套)#{1}":[316,317],"##80/20 标配组合(推荐你实际落地就用这套)#{2}":[318,319],"##80/20 标配组合(推荐你实际落地就用这套)#{3}":[320,321],"##80/20 标配组合(推荐你实际落地就用这套)#{4}":[322,323],"##80/20 标配组合(推荐你实际落地就用这套)#{5}":[324,325],"##80/20 标配组合(推荐你实际落地就用这套)#{6}":[326,327],"##80/20 标配组合(推荐你实际落地就用这套)#{7}":[328,329],"##80/20 标配组合(推荐你实际落地就用这套)#{8}":[330,332],"##80/20 标配组合(推荐你实际落地就用这套)#{9}":[333,334],"##一页式对照表(可贴墙)":[335,349],"##一页式对照表(可贴墙)#{1}":[337,349],"##可复制的最小模板片段":[350,366],"##可复制的最小模板片段#{1}":[352,366]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[87,100],[104,120]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_System_Architec_架构目标(Architecture_Goals)_md.ajson b/.smart-env/multi/200-area_Personal_Development_System_Architec_架构目标(Architecture_Goals)_md.ajson deleted file mode 100644 index f0029e4..0000000 --- a/.smart-env/multi/200-area_Personal_Development_System_Architec_架构目标(Architecture_Goals)_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/System Architec/架构目标(Architecture Goals).md": {"path":"200-area/Personal Development/System Architec/架构目标(Architecture Goals).md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"19lbknt","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1760514383493,"size":4635,"at":1766986878359,"hash":"19lbknt"},"blocks":{"#---frontmatter---":[1,6],"#":[8,9],"##1. 目标框架(Framework)":[10,15],"##1. 目标框架(Framework)#{1}":[11,11],"##1. 目标框架(Framework)#{2}":[12,12],"##1. 目标框架(Framework)#{3}":[13,13],"##1. 目标框架(Framework)#{4}":[14,15],"##2. 维度与指标(Dimensions & KPIs)":[16,28],"##2. 维度与指标(Dimensions & KPIs)#{1}":[17,28],"##3. SMART 化表达(Examples)":[29,35],"##3. SMART 化表达(Examples)#{1}":[30,30],"##3. SMART 化表达(Examples)#{2}":[31,31],"##3. SMART 化表达(Examples)#{3}":[32,32],"##3. SMART 化表达(Examples)#{4}":[33,33],"##3. SMART 化表达(Examples)#{5}":[34,35],"##4. 制定流程(Playbook)":[36,51],"##4. 制定流程(Playbook)#{1}":[37,44],"##4. 制定流程(Playbook)#Trade-off Matrix(简表)":[45,51],"##4. 制定流程(Playbook)#Trade-off Matrix(简表)#{1}":[46,51],"##5. 落地抓手(Engineering Levers)":[52,58],"##5. 落地抓手(Engineering Levers)#{1}":[53,53],"##5. 落地抓手(Engineering Levers)#{2}":[54,54],"##5. 落地抓手(Engineering Levers)#{3}":[55,55],"##5. 落地抓手(Engineering Levers)#{4}":[56,56],"##5. 落地抓手(Engineering Levers)#{5}":[57,58],"##6. 冲突与解法(Trade-offs)":[59,64],"##6. 冲突与解法(Trade-offs)#{1}":[60,60],"##6. 冲突与解法(Trade-offs)#{2}":[61,61],"##6. 冲突与解法(Trade-offs)#{3}":[62,62],"##6. 冲突与解法(Trade-offs)#{4}":[63,64],"##7. 评审清单(Checklist)":[65,75],"##7. 评审清单(Checklist)#{1}":[66,66],"##7. 评审清单(Checklist)#{2}":[67,67],"##7. 评审清单(Checklist)#{3}":[68,68],"##7. 评审清单(Checklist)#{4}":[69,69],"##7. 评审清单(Checklist)#{5}":[70,70],"##7. 评审清单(Checklist)#{6}":[71,71],"##7. 评审清单(Checklist)#{7}":[72,72],"##7. 评审清单(Checklist)#{8}":[73,73],"##7. 评审清单(Checklist)#{9}":[74,75],"##8. 模板(Templates)":[76,89],"##8. 模板(Templates)#8.1 SLO 模板":[78,89],"##8. 模板(Templates)#8.1 SLO 模板#{1}":[79,89]},"outlinks":[],"metadata":{"title":"架构目标(Architecture Goals)总结","tags":["#architecture","#goals","#SLO","#NFR","#governance"],"created":"<% tp.file.creation_date('YYYY-MM-DD') %>","updated":"<% tp.file.last_modified_date('YYYY-MM-DD HH:mm') %>"},"task_lines":[66,67,68,69,70,71,72,73,74],"tasks":{"incomplete":{"all":[66,67,68,69,70,71,72,73,74],"top":[66,67,68,69,70,71,72,73,74]}},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_System_Architec_系统架构分析员知识体系_md.ajson b/.smart-env/multi/200-area_Personal_Development_System_Architec_系统架构分析员知识体系_md.ajson deleted file mode 100644 index a84e99d..0000000 --- a/.smart-env/multi/200-area_Personal_Development_System_Architec_系统架构分析员知识体系_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/System Architec/系统架构分析员知识体系.md": {"path":"200-area/Personal Development/System Architec/系统架构分析员知识体系.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"u4q1ml","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1760512776410,"size":7380,"at":1766986878359,"hash":"u4q1ml"},"blocks":{"#系统架构分析员·知识点清单(精要版)":[1,152],"#系统架构分析员·知识点清单(精要版)#{1}":[3,6],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)":[7,15],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{1}":[8,8],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{2}":[9,9],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{3}":[10,10],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{4}":[11,11],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{5}":[12,13],"#系统架构分析员·知识点清单(精要版)#0. 基本方法与思维(必会)#{6}":[14,15],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)":[16,24],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{1}":[17,17],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{2}":[18,18],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{3}":[19,19],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{4}":[20,20],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{5}":[21,22],"#系统架构分析员·知识点清单(精要版)#1. 架构原则与模式(必会)#{6}":[23,24],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)":[25,32],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)#{1}":[26,26],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)#{2}":[27,27],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)#{3}":[28,28],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)#{4}":[29,30],"#系统架构分析员·知识点清单(精要版)#2. 需求与建模(必会)#{5}":[31,32],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)":[33,41],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{1}":[34,34],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{2}":[35,35],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{3}":[36,36],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{4}":[37,37],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{5}":[38,39],"#系统架构分析员·知识点清单(精要版)#3. 后端与中间件(必会)#{6}":[40,41],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)":[42,50],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{1}":[43,43],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{2}":[44,44],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{3}":[45,45],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{4}":[46,46],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{5}":[47,48],"#系统架构分析员·知识点清单(精要版)#4. 数据与存储(必会)#{6}":[49,50],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)":[51,59],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{1}":[52,52],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{2}":[53,53],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{3}":[54,54],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{4}":[55,55],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{5}":[56,57],"#系统架构分析员·知识点清单(精要版)#5. 基础设施与云原生(必会)#{6}":[58,59],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)":[60,67],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)#{1}":[61,61],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)#{2}":[62,62],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)#{3}":[63,63],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)#{4}":[64,65],"#系统架构分析员·知识点清单(精要版)#6. CI/CD 与发布治理(必会)#{5}":[66,67],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)":[68,76],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{1}":[69,69],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{2}":[70,70],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{3}":[71,71],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{4}":[72,72],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{5}":[73,74],"#系统架构分析员·知识点清单(精要版)#7. 安全(必会)#{6}":[75,76],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)":[77,84],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)#{1}":[78,78],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)#{2}":[79,79],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)#{3}":[80,80],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)#{4}":[81,82],"#系统架构分析员·知识点清单(精要版)#8. 可靠性与韧性(必会)#{5}":[83,84],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)":[85,92],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)#{1}":[86,86],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)#{2}":[87,87],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)#{3}":[88,88],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)#{4}":[89,90],"#系统架构分析员·知识点清单(精要版)#9. 性能工程(必会)#{5}":[91,92],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)":[93,100],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)#{1}":[94,94],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)#{2}":[95,95],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)#{3}":[96,96],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)#{4}":[97,98],"#系统架构分析员·知识点清单(精要版)#10. 可观测性(必会)#{5}":[99,100],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)":[101,108],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)#{1}":[102,102],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)#{2}":[103,103],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)#{3}":[104,104],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)#{4}":[105,106],"#系统架构分析员·知识点清单(精要版)#11. 前端与客户端(进阶)#{5}":[107,108],"#系统架构分析员·知识点清单(精要版)#12. 成本与治理(进阶)":[109,115],"#系统架构分析员·知识点清单(精要版)#12. 成本与治理(进阶)#{1}":[110,110],"#系统架构分析员·知识点清单(精要版)#12. 成本与治理(进阶)#{2}":[111,111],"#系统架构分析员·知识点清单(精要版)#12. 成本与治理(进阶)#{3}":[112,113],"#系统架构分析员·知识点清单(精要版)#12. 成本与治理(进阶)#{4}":[114,115],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)":[116,124],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{1}":[117,117],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{2}":[118,118],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{3}":[119,119],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{4}":[120,120],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{5}":[121,122],"#系统架构分析员·知识点清单(精要版)#13. 领域化知识(选修,按行业取舍)#{6}":[123,124],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)":[125,135],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{1}":[126,126],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{2}":[127,127],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{3}":[128,128],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{4}":[129,129],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{5}":[130,130],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{6}":[131,131],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{7}":[132,133],"#系统架构分析员·知识点清单(精要版)#14. 反模式与常见坑(必会)#{8}":[134,135],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)":[136,143],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)#{1}":[137,137],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)#{2}":[138,138],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)#{3}":[139,139],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)#{4}":[140,141],"#系统架构分析员·知识点清单(精要版)#15. 清单与模板(实用)#{5}":[142,143],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)":[144,152],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{1}":[145,145],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{2}":[146,146],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{3}":[147,147],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{4}":[148,148],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{5}":[149,150],"#系统架构分析员·知识点清单(精要版)#16. 术语速览(检索用)#{6}":[151,152],"#学习路径(对标知识点)":[153,158],"#学习路径(对标知识点)#{1}":[154,154],"#学习路径(对标知识点)#{2}":[155,155],"#学习路径(对标知识点)#{3}":[156,158]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Personal_Development_remark42_md.ajson b/.smart-env/multi/200-area_Personal_Development_remark42_md.ajson deleted file mode 100644 index ba9771d..0000000 --- a/.smart-env/multi/200-area_Personal_Development_remark42_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Personal Development/remark42.md": {"path":"200-area/Personal Development/remark42.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1mksjnd","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1678434390175,"size":677,"at":1766986877914,"hash":"1mksjnd"},"blocks":{"#":[1,29]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[13,16],[22,24],[26,29]]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Productivity_Daily_Productive_Hours_md.ajson b/.smart-env/multi/200-area_Productivity_Daily_Productive_Hours_md.ajson deleted file mode 100644 index 4efdeb6..0000000 --- a/.smart-env/multi/200-area_Productivity_Daily_Productive_Hours_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Productivity/Daily Productive Hours.md": {"path":"200-area/Productivity/Daily Productive Hours.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1huptsv","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627596376000,"size":133,"at":1766986877914,"hash":"1huptsv"},"blocks":{"#":[1,2],"##{1}":[1,1],"##{2}":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Productivity_Productivity_md.ajson b/.smart-env/multi/200-area_Productivity_Productivity_md.ajson deleted file mode 100644 index f1bc7d7..0000000 --- a/.smart-env/multi/200-area_Productivity_Productivity_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Productivity/Productivity.md": {"path":"200-area/Productivity/Productivity.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1yiwplf","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627685499000,"size":96,"at":1766986877914,"hash":"1yiwplf"},"blocks":{"###Notes":[1,7],"###Notes#{1}":[2,7]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:200-area/Productivity/Productivity.md": {"path":"200-area/Productivity/Productivity.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"8pod21","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766991373206,"size":213,"at":1766994016490,"hash":"8pod21"},"blocks":{"#---frontmatter---":[1,7],"###Notes":[9,15],"###Notes#{1}":[10,15]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[10,13]],"key":"200-area/Productivity/Productivity.md","metadata":{"title":"Productivity","type":"area-hub","tags":["#area","#para","#productivity"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Productivity_Task_triage_md.ajson b/.smart-env/multi/200-area_Productivity_Task_triage_md.ajson deleted file mode 100644 index 228993b..0000000 --- a/.smart-env/multi/200-area_Productivity_Task_triage_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:200-area/Productivity/Task triage.md": {"path":"200-area/Productivity/Task triage.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"503497","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1626404444000,"size":669,"at":1766986877914,"hash":"503497"},"blocks":{"#":[1,17],"##{1}":[1,4],"##{2}":[5,8],"##{3}":[9,12],"##{4}":[13,17]},"outlinks":[{"title":"Nala","target":"Nala","line":4}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, -"smart_sources:200-area/Productivity/Task triage.md": {"path":"200-area/Productivity/Task triage.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"k5z67z","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766991432899,"size":780,"at":1766994016490,"hash":"k5z67z"},"blocks":{"#---frontmatter---":[1,6],"#":[8,24],"##{1}":[8,11],"##{2}":[12,15],"##{3}":[16,19],"##{4}":[20,24]},"outlinks":[{"title":"Nala","target":"Nala","line":11}],"task_lines":[],"tasks":{},"codeblock_ranges":[],"key":"200-area/Productivity/Task triage.md","metadata":{"title":"Task Triage","tags":["#productivity","#task-management","#prioritization"],"created":"2025-12-29","updated":"2025-12-29"}}, \ No newline at end of file diff --git a/.smart-env/multi/200-area_Productivity_Timesheet_md.ajson b/.smart-env/multi/200-area_Productivity_Timesheet_md.ajson deleted file mode 100644 index 9dcc17f..0000000 --- a/.smart-env/multi/200-area_Productivity_Timesheet_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:200-area/Productivity/Timesheet.md": {"path":"200-area/Productivity/Timesheet.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hk13ty","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627313495000,"size":272,"at":1766986877914,"hash":"hk13ty"},"blocks":{"###Week view":[1,11],"###Week view#{1}":[3,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[6,10]]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Apple_App_Password_md.ajson b/.smart-env/multi/300-resources_Apple_App_Password_md.ajson deleted file mode 100644 index c4ae21f..0000000 --- a/.smart-env/multi/300-resources_Apple_App_Password_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Apple App Password.md": {"path":"300-resources/Apple App Password.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1y9skss","at":1766986877786},"class_name":"SmartSource","last_import":{"mtime":1716778835361,"size":39,"at":1766986877914,"hash":"1y9skss"},"blocks":{"#":[1,1],"#cuyx-xyxz-dqko-akwl":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Community_Audience_is_a_super_power_md.ajson b/.smart-env/multi/300-resources_Community_Audience_is_a_super_power_md.ajson deleted file mode 100644 index 843a93c..0000000 --- a/.smart-env/multi/300-resources_Community_Audience_is_a_super_power_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Community/Audience is a super power.md": {"path":"300-resources/Community/Audience is a super power.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1wmtj35","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590021834000,"size":1255,"at":1766986877914,"hash":"1wmtj35"},"blocks":{"#":[1,3],"##Highlights:":[4,32],"##Highlights:#{1}":[6,32]},"outlinks":[{"title":"Audience","target":"Audience","line":1},{"title":"Community","target":"Community","line":1},{"title":"Podcast","target":"Podcast","line":1},{"title":"The Future Belongs to Creators","target":"The Future Belongs to Creators","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Community_Community_md.ajson b/.smart-env/multi/300-resources_Community_Community_md.ajson deleted file mode 100644 index 1c93a6d..0000000 --- a/.smart-env/multi/300-resources_Community_Community_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Community/Community.md": {"path":"300-resources/Community/Community.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12th9nj","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686497000,"size":95,"at":1766986877914,"hash":"12th9nj"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Community/Community.md": {"path":"300-resources/Community/Community.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"hcexte","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687734,"size":97,"at":1766994016490,"hash":"hcexte"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Community/Community.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Community_How_to_build_community_around_your_publication_md.ajson b/.smart-env/multi/300-resources_Community_How_to_build_community_around_your_publication_md.ajson deleted file mode 100644 index fab59ec..0000000 --- a/.smart-env/multi/300-resources_Community_How_to_build_community_around_your_publication_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Community/How to build community around your publication.md": {"path":"300-resources/Community/How to build community around your publication.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1y3bd56","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590030335000,"size":2341,"at":1766986877914,"hash":"1y3bd56"},"blocks":{"#":[1,4],"##Highlights:":[5,29],"##Highlights:#{1}":[6,6],"##Highlights:#{2}":[7,7],"##Highlights:#{3}":[8,9],"##Highlights:#{4}":[10,12],"##Highlights:#{5}":[13,14],"##Highlights:#{6}":[15,15],"##Highlights:#{7}":[16,16],"##Highlights:#{8}":[17,21],"##Highlights:#{9}":[22,24],"##Highlights:#{10}":[25,25],"##Highlights:#{11}":[26,26],"##Highlights:#{12}":[27,28],"##Highlights:#{13}":[29,29]},"outlinks":[{"title":"Article","target":"Article","line":1},{"title":"Community","target":"Community","line":1},{"title":"Email Marketing","target":"Email Marketing","line":1}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Community_Matrix_Server_md.ajson b/.smart-env/multi/300-resources_Community_Matrix_Server_md.ajson deleted file mode 100644 index 7634d25..0000000 --- a/.smart-env/multi/300-resources_Community_Matrix_Server_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Community/Matrix Server.md": {"path":"300-resources/Community/Matrix Server.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"dez6eq","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1682498181724,"size":2135,"at":1766986877914,"hash":"dez6eq"},"blocks":{"#":[3,115]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[65,79]]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Cooking_7_Low-Sodium_Lunches_Under_400_Calories_md.ajson b/.smart-env/multi/300-resources_Cooking_7_Low-Sodium_Lunches_Under_400_Calories_md.ajson deleted file mode 100644 index 4a9139b..0000000 --- a/.smart-env/multi/300-resources_Cooking_7_Low-Sodium_Lunches_Under_400_Calories_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Cooking/7 Low-Sodium Lunches Under 400 Calories.md": {"path":"300-resources/Cooking/7 Low-Sodium Lunches Under 400 Calories.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gd82p3","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590022114000,"size":2390,"at":1766986877914,"hash":"1gd82p3"},"blocks":{"#":[1,43]},"outlinks":[{"title":"SLOW COOKER CHICKEN ADOBO WITH PINEAPPLE","target":"https://blog.myfitnesspal.com/slow-cooker-chicken-adobo-with-pineapple/","line":1},{"title":"SALMON AND SPINACH FRITTATA","target":"https://blog.myfitnesspal.com/salmon-and-spinach-frittata/","line":7},{"title":"THAI CURRY TOFU OVER SWEET POTATOES","target":"https://blog.myfitnesspal.com/thai-curry-tofu-over-sweet-potatoes/","line":14},{"title":"BARLEY AND PROVENCAL VEGETABLES IN VINAIGRETTE","target":"https://blog.myfitnesspal.com/barley-and-provencal-vegetables-in-vinaigrette/","line":20},{"title":"SALMON CAKES ON MIXED GREENS","target":"https://blog.myfitnesspal.com/salmon-cakes-on-mixed-green-salad","line":26},{"title":"DUKKAH-CRUSTED CHICKEN SHAWARMA SALAD WITH TAHINI RANCH","target":"https://blog.myfitnesspal.com/dukkah-crusted-chicken-shawarma-salad-with-tahini-ranch/","line":32},{"title":"CREAMY CAULIFLOWER AND CARROT SOUP","target":"https://blog.myfitnesspal.com/creamy-cauliflower-and-carrot-soup/","line":38}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Cooking_Cooking_md.ajson b/.smart-env/multi/300-resources_Cooking_Cooking_md.ajson deleted file mode 100644 index d79d44b..0000000 --- a/.smart-env/multi/300-resources_Cooking_Cooking_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Cooking/Cooking.md": {"path":"300-resources/Cooking/Cooking.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"otmihq","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686501000,"size":93,"at":1766986877914,"hash":"otmihq"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Cooking/Cooking.md": {"path":"300-resources/Cooking/Cooking.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"30sag0","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687735,"size":95,"at":1766994016490,"hash":"30sag0"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Cooking/Cooking.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Cooking_Easy_Mini_Quiche_Recipe_md.ajson b/.smart-env/multi/300-resources_Cooking_Easy_Mini_Quiche_Recipe_md.ajson deleted file mode 100644 index 90745d6..0000000 --- a/.smart-env/multi/300-resources_Cooking_Easy_Mini_Quiche_Recipe_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Cooking/Easy Mini Quiche Recipe.md": {"path":"300-resources/Cooking/Easy Mini Quiche Recipe.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"rxb910","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590023673000,"size":605,"at":1766986877914,"hash":"rxb910"},"blocks":{"##Ingredients":[1,7],"##Ingredients#{1}":[2,2],"##Ingredients#{2}":[3,3],"##Ingredients#{3}":[4,4],"##Ingredients#{4}":[5,5],"##Ingredients#{5}":[6,6],"##Ingredients#{6}":[7,7],"##Directions":[8,18],"##Directions#{1}":[9,9],"##Directions#{2}":[10,10],"##Directions#{3}":[11,11],"##Directions#{4}":[12,12],"##Directions#{5}":[13,13],"##Directions#{6}":[14,14],"##Directions#{7}":[15,15],"##Directions#{8}":[16,18]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Cooking_芹菜炒牛肉_md.ajson b/.smart-env/multi/300-resources_Cooking_芹菜炒牛肉_md.ajson deleted file mode 100644 index c2948da..0000000 --- a/.smart-env/multi/300-resources_Cooking_芹菜炒牛肉_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Cooking/芹菜炒牛肉.md": {"path":"300-resources/Cooking/芹菜炒牛肉.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"vrhomu","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1681791394000,"size":919,"at":1766986877914,"hash":"vrhomu"},"blocks":{"#":[2,27],"##{1}":[4,4],"##{2}":[5,5],"##{3}":[6,6],"##{4}":[7,7],"##{5}":[8,8],"##{6}":[9,9],"##{7}":[10,10],"##{8}":[11,11],"##{9}":[12,12],"##{10}":[13,13],"##{11}":[14,17],"##{12}":[18,18],"##{13}":[19,19],"##{14}":[20,20],"##{15}":[21,21],"##{16}":[22,25],"##{17}":[26,26],"##{18}":[27,27]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Cooking_酸黄瓜_md.ajson b/.smart-env/multi/300-resources_Cooking_酸黄瓜_md.ajson deleted file mode 100644 index f1eabba..0000000 --- a/.smart-env/multi/300-resources_Cooking_酸黄瓜_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Cooking/酸黄瓜.md": {"path":"300-resources/Cooking/酸黄瓜.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1qnicfl","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1681745428000,"size":2656,"at":1766986877914,"hash":"1qnicfl"},"blocks":{"#":[2,48],"##{1}":[6,6],"##{2}":[7,7],"##{3}":[8,8],"##{4}":[9,9],"##{5}":[10,13],"##{6}":[14,15],"##{7}":[16,17],"##{8}":[18,19],"##{9}":[20,21],"##{10}":[22,23],"##{11}":[24,25],"##{12}":[26,30],"##{13}":[31,31],"##{14}":[32,32],"##{15}":[33,36],"##{16}":[37,38],"##{17}":[39,40],"##{18}":[41,42],"##{19}":[43,44],"##{20}":[45,48]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Development_Better_developers_Using_from_X_import_Y_in_Python_md.ajson b/.smart-env/multi/300-resources_Development_Better_developers_Using_from_X_import_Y_in_Python_md.ajson deleted file mode 100644 index b3b1841..0000000 --- a/.smart-env/multi/300-resources_Development_Better_developers_Using_from_X_import_Y_in_Python_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Development/Better developers Using from X import Y in Python.md": {"path":"300-resources/Development/Better developers Using from X import Y in Python.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7agpmf","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627596551000,"size":2129,"at":1766986877914,"hash":"7agpmf"},"blocks":{"#":[1,4],"##Highlights:":[5,37],"##Highlights:#{1}":[7,37]},"outlinks":[{"title":"Reuven Lerner","target":"Reuven Lerner","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Development_Development_md.ajson b/.smart-env/multi/300-resources_Development_Development_md.ajson deleted file mode 100644 index a9a4803..0000000 --- a/.smart-env/multi/300-resources_Development_Development_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Development/Development.md": {"path":"300-resources/Development/Development.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10w7v7e","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686505000,"size":97,"at":1766986877914,"hash":"10w7v7e"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Development/Development.md": {"path":"300-resources/Development/Development.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"11nqpm","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687736,"size":99,"at":1766994016490,"hash":"11nqpm"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Development/Development.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Development_Mock_Patching_md.ajson b/.smart-env/multi/300-resources_Development_Mock_Patching_md.ajson deleted file mode 100644 index b0365b7..0000000 --- a/.smart-env/multi/300-resources_Development_Mock_Patching_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Development/Mock Patching.md": {"path":"300-resources/Development/Mock Patching.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"19eyl69","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590026211000,"size":512,"at":1766986877914,"hash":"19eyl69"},"blocks":{"##Highlights:":[1,5],"##Highlights:#{1}":[2,5]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Development_Monogo_md.ajson b/.smart-env/multi/300-resources_Development_Monogo_md.ajson deleted file mode 100644 index f08181d..0000000 --- a/.smart-env/multi/300-resources_Development_Monogo_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Development/Monogo.md": {"path":"300-resources/Development/Monogo.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1h7594s","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1697794143740,"size":93,"at":1766986877914,"hash":"1h7594s"},"blocks":{"#":[3,3]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Development_better_developers_computers_are_cheap_people_are_expensive_md.ajson b/.smart-env/multi/300-resources_Development_better_developers_computers_are_cheap_people_are_expensive_md.ajson deleted file mode 100644 index a063c30..0000000 --- a/.smart-env/multi/300-resources_Development_better_developers_computers_are_cheap_people_are_expensive_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Development/better developers computers are cheap people are expensive.md": {"path":"300-resources/Development/better developers computers are cheap people are expensive.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gncj68","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627596558000,"size":1845,"at":1766986877914,"hash":"1gncj68"},"blocks":{"#":[1,4],"##Highlights:":[5,35],"##Highlights:#{1}":[7,35]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Drawing_Drawing_md.ajson b/.smart-env/multi/300-resources_Drawing_Drawing_md.ajson deleted file mode 100644 index 71cc49d..0000000 --- a/.smart-env/multi/300-resources_Drawing_Drawing_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Drawing/Drawing.md": {"path":"300-resources/Drawing/Drawing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1u540e","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686508000,"size":93,"at":1766986877914,"hash":"1u540e"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Drawing/Drawing.md": {"path":"300-resources/Drawing/Drawing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1hc5w3f","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687782,"size":95,"at":1766994016490,"hash":"1hc5w3f"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Drawing/Drawing.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Drawing_Improving_guide_md.ajson b/.smart-env/multi/300-resources_Drawing_Improving_guide_md.ajson deleted file mode 100644 index ddc203c..0000000 --- a/.smart-env/multi/300-resources_Drawing_Improving_guide_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Drawing/Improving guide.md": {"path":"300-resources/Drawing/Improving guide.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"dzkjy5","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590024019000,"size":590,"at":1766986877914,"hash":"dzkjy5"},"blocks":{"#":[1,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Gaming_Gaming_md.ajson b/.smart-env/multi/300-resources_Gaming_Gaming_md.ajson deleted file mode 100644 index b1ae5fa..0000000 --- a/.smart-env/multi/300-resources_Gaming_Gaming_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Gaming/Gaming.md": {"path":"300-resources/Gaming/Gaming.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"p297hz","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686511000,"size":92,"at":1766986877914,"hash":"p297hz"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Gaming/Gaming.md": {"path":"300-resources/Gaming/Gaming.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1iq4aag","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687802,"size":94,"at":1766994016490,"hash":"1iq4aag"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Gaming/Gaming.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Gaming_Interesting_games_md.ajson b/.smart-env/multi/300-resources_Gaming_Interesting_games_md.ajson deleted file mode 100644 index e127523..0000000 --- a/.smart-env/multi/300-resources_Gaming_Interesting_games_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Gaming/Interesting games.md": {"path":"300-resources/Gaming/Interesting games.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1td7too","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590030411000,"size":117,"at":1766986877914,"hash":"1td7too"},"blocks":{"#":[1,6],"##{1}":[1,1],"##{2}":[2,2],"##{3}":[3,3],"##{4}":[4,4],"##{5}":[5,5],"##{6}":[6,6]},"outlinks":[{"title":"Space Station 13","target":"https://spacestation13.com/","line":6}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Marketing_Beginners_Guide_to_Product_Qualified_Leads_(PQL)_md.ajson b/.smart-env/multi/300-resources_Marketing_Beginners_Guide_to_Product_Qualified_Leads_(PQL)_md.ajson deleted file mode 100644 index e5dd7e6..0000000 --- a/.smart-env/multi/300-resources_Marketing_Beginners_Guide_to_Product_Qualified_Leads_(PQL)_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Marketing/Beginners Guide to Product Qualified Leads (PQL).md": {"path":"300-resources/Marketing/Beginners Guide to Product Qualified Leads (PQL).md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12fa6uo","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590030736000,"size":7103,"at":1766986877914,"hash":"12fa6uo"},"blocks":{"#":[1,74]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Marketing_Clusters_md.ajson b/.smart-env/multi/300-resources_Marketing_Clusters_md.ajson deleted file mode 100644 index 6c594b3..0000000 --- a/.smart-env/multi/300-resources_Marketing_Clusters_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Marketing/Clusters.md": {"path":"300-resources/Marketing/Clusters.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16jbkba","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1589253687000,"size":646,"at":1766986877914,"hash":"16jbkba"},"blocks":{"#":[1,2],"##Highlights:":[3,10],"##Highlights:#{1}":[5,10]},"outlinks":[{"title":"Audience","target":"Audience","line":1},{"title":"Customer","target":"Customer","line":1},{"title":"Email","target":"Email","line":1},{"title":"Local","target":"Local","line":1},{"title":"Marketing","target":"Marketing","line":1},{"title":"Seth Godin","target":"Seth Godin","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Marketing_Consumers_Are_Hungry_For_An_Experience-Based_Connection_With_Your_Brand_md.ajson b/.smart-env/multi/300-resources_Marketing_Consumers_Are_Hungry_For_An_Experience-Based_Connection_With_Your_Brand_md.ajson deleted file mode 100644 index 3987172..0000000 --- a/.smart-env/multi/300-resources_Marketing_Consumers_Are_Hungry_For_An_Experience-Based_Connection_With_Your_Brand_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Marketing/Consumers Are Hungry For An Experience-Based Connection With Your Brand.md": {"path":"300-resources/Marketing/Consumers Are Hungry For An Experience-Based Connection With Your Brand.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"zvnvk1","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590024343000,"size":2953,"at":1766986877914,"hash":"zvnvk1"},"blocks":{"#":[1,29]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Marketing_Marketing_md.ajson b/.smart-env/multi/300-resources_Marketing_Marketing_md.ajson deleted file mode 100644 index 489cc0c..0000000 --- a/.smart-env/multi/300-resources_Marketing_Marketing_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Marketing/Marketing.md": {"path":"300-resources/Marketing/Marketing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gji25a","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1627686514000,"size":95,"at":1766986877914,"hash":"1gji25a"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Marketing/Marketing.md": {"path":"300-resources/Marketing/Marketing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"114rxwr","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687783,"size":97,"at":1766994016490,"hash":"114rxwr"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Marketing/Marketing.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Marketing_Validation_is_backwards_md.ajson b/.smart-env/multi/300-resources_Marketing_Validation_is_backwards_md.ajson deleted file mode 100644 index dfa1b12..0000000 --- a/.smart-env/multi/300-resources_Marketing_Validation_is_backwards_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Marketing/Validation is backwards.md": {"path":"300-resources/Marketing/Validation is backwards.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"gene7t","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1590025074000,"size":1806,"at":1766986877914,"hash":"gene7t"},"blocks":{"#":[1,4],"##Highlights:":[5,19],"##Highlights:#{1}":[7,19]},"outlinks":[{"title":"Article","target":"Article","line":1},{"title":"Entrepreneurship","target":"Entrepreneurship","line":1},{"title":"Marketing","target":"Marketing","line":1},{"title":"Validation","target":"Validation","line":1},{"title":"Alex Hillman","target":"Alex Hillman","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Network_Cookies_md.ajson b/.smart-env/multi/300-resources_Network_Cookies_md.ajson deleted file mode 100644 index b83e12c..0000000 --- a/.smart-env/multi/300-resources_Network_Cookies_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Network/Cookies.md": {"path":"300-resources/Network/Cookies.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"pgo9pa","at":1766986877789},"class_name":"SmartSource","last_import":{"mtime":1679750928000,"size":1503,"at":1766986877914,"hash":"pgo9pa"},"blocks":{"#":[2,75]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[3,75]]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Network_Domains_md.ajson b/.smart-env/multi/300-resources_Network_Domains_md.ajson deleted file mode 100644 index 5be9a00..0000000 --- a/.smart-env/multi/300-resources_Network_Domains_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Network/Domains.md": {"path":"300-resources/Network/Domains.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"cqkzms","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1679538209585,"size":888,"at":1766986877914,"hash":"cqkzms"},"blocks":{"##[namesilo](https://www.namesilo.com/)":[2,10],"##[namesilo](https://www.namesilo.com/)#{1}":[4,10]},"outlinks":[{"title":"namesilo","target":"https://www.namesilo.com/","line":2},{"title":"chans.xyz","target":"https://www.namesilo.com/account_domain_manage_domain.php?domain=ZmVmZGZlZmZmZQZkZmN=13q31n34o45582non28pn73105o22597","line":6},{"title":"microai.life","target":"https://www.namesilo.com/account_domain_manage_domain.php?domain=ZmRmAQZlZmNmAmZjZmVmAN==q19846r2nq4s712o124257q2q6o18rp9","line":7},{"title":"windy.me","target":"https://www.namesilo.com/account_domain_manage_domain.php?domain=ZmDmAmZ0ZmNmZQZ19p74nq1121o27rqo5oro36o3900p35n3","line":8},{"title":"wsvc.info","target":"https://www.namesilo.com/account_domain_manage_domain.php?domain=ZmtmZmZlZmHmZwZm535r1pqq3r87nn739340o572ss1785o4","line":9}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Network_Openwrt_md.ajson b/.smart-env/multi/300-resources_Network_Openwrt_md.ajson deleted file mode 100644 index 0ac9116..0000000 --- a/.smart-env/multi/300-resources_Network_Openwrt_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Network/Openwrt.md": {"path":"300-resources/Network/Openwrt.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"128318q","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1680051401000,"size":573,"at":1766986877914,"hash":"128318q"},"blocks":{"#ipv6":[3,44],"#ipv6#dhcpv6":[5,44],"#ipv6#dhcpv6#{1}":[7,7],"#ipv6#dhcpv6#{2}":[8,19],"#ipv6#dhcpv6#{3}":[20,20],"#ipv6#dhcpv6#{4}":[21,22],"#ipv6#dhcpv6#{5}":[23,23],"#ipv6#dhcpv6#{6}":[24,44]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[35,41]]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_7_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_7_md.ajson deleted file mode 100644 index cf3187f..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_7_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/BASB - Cohort 10 - Class 7.md": {"path":"300-resources/Personal Knowledge Management/BASB - Cohort 10 - Class 7.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ddra6w","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589411794000,"size":218,"at":1766986877914,"hash":"ddra6w"},"blocks":{"#":[1,3],"##{1}":[1,1],"##{2}":[2,2],"##{3}":[3,3]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_8_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_8_md.ajson deleted file mode 100644 index 72e12ea..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_BASB_-_Cohort_10_-_Class_8_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/BASB - Cohort 10 - Class 8.md": {"path":"300-resources/Personal Knowledge Management/BASB - Cohort 10 - Class 8.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1pe08zh","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589411807000,"size":199,"at":1766986877914,"hash":"1pe08zh"},"blocks":{"#":[1,2],"##{1}":[1,1],"##{2}":[2,2]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Dickens_deep_work_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_Dickens_deep_work_md.ajson deleted file mode 100644 index 82d2bef..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Dickens_deep_work_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/Dickens deep work.md": {"path":"300-resources/Personal Knowledge Management/Dickens deep work.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"13juhtc","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1588886574000,"size":264,"at":1766986877914,"hash":"13juhtc"},"blocks":{"#":[1,1]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Images_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_Images_md.ajson deleted file mode 100644 index fabf909..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Images_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/Images.md": {"path":"300-resources/Personal Knowledge Management/Images.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1f456bl","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589422407000,"size":136,"at":1766986877914,"hash":"1f456bl"},"blocks":{"#":[1,3]},"outlinks":[{"title":"https://i.imgur.com/CGmrkYZ.png","target":"https://i.imgur.com/CGmrkYZ.png","line":1,"embedded":true},{"title":"https://i.imgur.com/hSFUNYX.png","target":"https://i.imgur.com/hSFUNYX.png","line":2,"embedded":true}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_from_class_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_from_class_md.ajson deleted file mode 100644 index 5a85edf..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_from_class_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/PARA Notes from class.md": {"path":"300-resources/Personal Knowledge Management/PARA Notes from class.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1h8bkb","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589413689000,"size":349,"at":1766986877914,"hash":"1h8bkb"},"blocks":{"#":[1,3],"##{1}":[1,1],"##{2}":[2,2],"##{3}":[3,3]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_md.ajson deleted file mode 100644 index 3e98b76..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_PARA_Notes_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/PARA Notes.md": {"path":"300-resources/Personal Knowledge Management/PARA Notes.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1woic7m","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589413200000,"size":1708,"at":1766986877914,"hash":"1woic7m"},"blocks":{"##P.A.R.A":[2,7],"##P.A.R.A#{1}":[3,7],"##Definitions":[8,16],"##Definitions#{1}":[9,9],"##Definitions#{2}":[10,10],"##Definitions#{3}":[11,11],"##Definitions#{4}":[12,13],"##Definitions#{5}":[14,16],"##Workflow":[17,44],"##Workflow#Projects flow":[18,24],"##Workflow#Projects flow#{1}":[19,24],"##Workflow#Areas flow":[25,31],"##Workflow#Areas flow#{1}":[26,31],"##Workflow#Resources flow":[32,38],"##Workflow#Resources flow#{1}":[33,38],"##Workflow#Archive flow":[39,44],"##Workflow#Archive flow#{1}":[40,44]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Personal_Knowledge_Management_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_Personal_Knowledge_Management_md.ajson deleted file mode 100644 index a377adc..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Personal_Knowledge_Management_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/Personal Knowledge Management.md": {"path":"300-resources/Personal Knowledge Management/Personal Knowledge Management.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1bbvz6u","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1627686516000,"size":115,"at":1766986877914,"hash":"1bbvz6u"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Personal Knowledge Management/Personal Knowledge Management.md": {"path":"300-resources/Personal Knowledge Management/Personal Knowledge Management.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"18gbhvq","at":1766994016408},"class_name":"SmartSource","last_import":{"mtime":1766992687802,"size":117,"at":1766994016490,"hash":"18gbhvq"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Personal Knowledge Management/Personal Knowledge Management.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Why_I_Keep_a_Research_Blog_by_Gregory_Gundersen_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_Why_I_Keep_a_Research_Blog_by_Gregory_Gundersen_md.ajson deleted file mode 100644 index ad9ba09..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_Why_I_Keep_a_Research_Blog_by_Gregory_Gundersen_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/Why I Keep a Research Blog by Gregory Gundersen.md": {"path":"300-resources/Personal Knowledge Management/Why I Keep a Research Blog by Gregory Gundersen.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"xg3a5x","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590030897000,"size":5354,"at":1766986877914,"hash":"xg3a5x"},"blocks":{"#":[1,54]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Personal_Knowledge_Management_arc42_arc42-template-EN_md.ajson b/.smart-env/multi/300-resources_Personal_Knowledge_Management_arc42_arc42-template-EN_md.ajson deleted file mode 100644 index f48e38d..0000000 --- a/.smart-env/multi/300-resources_Personal_Knowledge_Management_arc42_arc42-template-EN_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Personal Knowledge Management/arc42/arc42-template-EN.md": {"path":"300-resources/Personal Knowledge Management/arc42/arc42-template-EN.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"fxhc34","at":1766986878042},"class_name":"SmartSource","last_import":{"mtime":1674888732000,"size":28492,"at":1766986878359,"hash":"fxhc34"},"blocks":{"#":[1,19],"#Introduction and Goals {#section-introduction-and-goals}":[20,141],"#Introduction and Goals {#section-introduction-and-goals}#{1}":[22,24],"#Introduction and Goals {#section-introduction-and-goals}#{2}":[25,26],"#Introduction and Goals {#section-introduction-and-goals}#{3}":[27,28],"#Introduction and Goals {#section-introduction-and-goals}#{4}":[29,30],"#Introduction and Goals {#section-introduction-and-goals}#{5}":[31,32],"#Introduction and Goals {#section-introduction-and-goals}#{6}":[33,34],"#Introduction and Goals {#section-introduction-and-goals}#Requirements Overview {#_requirements_overview}":[35,66],"#Introduction and Goals {#section-introduction-and-goals}#Requirements Overview {#_requirements_overview}#{1}":[37,66],"#Introduction and Goals {#section-introduction-and-goals}#Quality Goals {#_quality_goals}":[67,98],"#Introduction and Goals {#section-introduction-and-goals}#Quality Goals {#_quality_goals}#{1}":[69,98],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}":[99,141],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{1}":[101,107],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{2}":[108,109],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{3}":[110,111],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{4}":[112,113],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{5}":[114,115],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{6}":[116,117],"#Introduction and Goals {#section-introduction-and-goals}#Stakeholders {#_stakeholders}#{7}":[118,141],"#Architecture Constraints {#section-architecture-constraints}":[142,172],"#Architecture Constraints {#section-architecture-constraints}#{1}":[144,172],"#System Scope and Context {#section-system-scope-and-context}":[173,273],"#System Scope and Context {#section-system-scope-and-context}#{1}":[175,200],"#System Scope and Context {#section-system-scope-and-context}#{2}":[201,202],"#System Scope and Context {#section-system-scope-and-context}#{3}":[203,204],"#System Scope and Context {#section-system-scope-and-context}#{4}":[205,207],"#System Scope and Context {#section-system-scope-and-context}#Business Context {#_business_context}":[208,240],"#System Scope and Context {#section-system-scope-and-context}#Business Context {#_business_context}#{1}":[210,240],"#System Scope and Context {#section-system-scope-and-context}#Technical Context {#_technical_context}":[241,273],"#System Scope and Context {#section-system-scope-and-context}#Technical Context {#_technical_context}#{1}":[243,273],"#Solution Strategy {#section-solution-strategy}":[274,313],"#Solution Strategy {#section-solution-strategy}#{1}":[276,282],"#Solution Strategy {#section-solution-strategy}#{2}":[283,284],"#Solution Strategy {#section-solution-strategy}#{3}":[285,285],"#Solution Strategy {#section-solution-strategy}#{4}":[286,287],"#Solution Strategy {#section-solution-strategy}#{5}":[288,289],"#Solution Strategy {#section-solution-strategy}#{6}":[290,290],"#Solution Strategy {#section-solution-strategy}#{7}":[291,313],"#Building Block View {#section-building-block-view}":[314,516],"#Building Block View {#section-building-block-view}#{1}":[316,359],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}":[360,467],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{1}":[362,364],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{2}":[365,366],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{3}":[367,368],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{4}":[369,369],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{5}":[370,380],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{6}":[381,381],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#{7}":[382,420],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}":[421,453],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{1}":[423,425],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{2}":[426,427],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{3}":[428,428],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{4}":[429,431],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{5}":[432,432],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{6}":[433,434],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{7}":[435,436],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{8}":[437,437],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{9}":[438,439],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{10}":[440,441],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_1}#{11}":[442,453],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_2}":[454,457],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_2}#{1}":[456,457],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_n}":[458,461],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_black_box_n}#{1}":[460,461],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_interface_1}":[462,465],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_interface_1}#{1}":[464,465],"#Building Block View {#section-building-block-view}#Whitebox Overall System {#_whitebox_overall_system}#\\ {#__name_interface_m}":[466,467],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}":[468,494],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#{1}":[470,478],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_1_emphasis}":[479,484],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_1_emphasis}#{1}":[481,484],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_2_emphasis}":[485,490],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_2_emphasis}#{1}":[487,490],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_m_emphasis}":[491,494],"#Building Block View {#section-building-block-view}#Level 2 {#_level_2}#White Box *\\* {#_white_box_emphasis_building_block_m_emphasis}#{1}":[493,494],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}":[495,516],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#{1}":[497,502],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block x.1\\_\\> {#_white_box_building_block_x_1}":[503,508],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block x.1\\_\\> {#_white_box_building_block_x_1}#{1}":[505,508],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block x.2\\_\\> {#_white_box_building_block_x_2}":[509,512],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block x.2\\_\\> {#_white_box_building_block_x_2}#{1}":[511,512],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block y.1\\_\\> {#_white_box_building_block_y_1}":[513,516],"#Building Block View {#section-building-block-view}#Level 3 {#_level_3}#White Box \\<\\_building block y.1\\_\\> {#_white_box_building_block_y_1}#{1}":[515,516],"#Runtime View {#section-runtime-view}":[517,584],"#Runtime View {#section-runtime-view}#{1}":[519,525],"#Runtime View {#section-runtime-view}#{2}":[526,526],"#Runtime View {#section-runtime-view}#{3}":[527,528],"#Runtime View {#section-runtime-view}#{4}":[529,529],"#Runtime View {#section-runtime-view}#{5}":[530,531],"#Runtime View {#section-runtime-view}#{6}":[532,533],"#Runtime View {#section-runtime-view}#{7}":[534,535],"#Runtime View {#section-runtime-view}#{8}":[536,556],"#Runtime View {#section-runtime-view}#{9}":[557,558],"#Runtime View {#section-runtime-view}#{10}":[559,560],"#Runtime View {#section-runtime-view}#{11}":[561,562],"#Runtime View {#section-runtime-view}#{12}":[563,564],"#Runtime View {#section-runtime-view}#{13}":[565,566],"#Runtime View {#section-runtime-view}#{14}":[567,568],"#Runtime View {#section-runtime-view}#{15}":[569,571],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_1}":[572,578],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_1}#{1}":[574,575],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_1}#{2}":[576,576],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_1}#{3}":[577,578],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_2}":[579,580],"#Runtime View {#section-runtime-view}#... {#_}":[581,582],"#Runtime View {#section-runtime-view}#\\ {#__runtime_scenario_n}":[583,584],"#Deployment View {#section-deployment-view}":[585,691],"#Deployment View {#section-deployment-view}#{1}":[587,592],"#Deployment View {#section-deployment-view}#{2}":[593,593],"#Deployment View {#section-deployment-view}#{3}":[594,597],"#Deployment View {#section-deployment-view}#{4}":[598,598],"#Deployment View {#section-deployment-view}#{5}":[599,627],"#Deployment View {#section-deployment-view}#{6}":[628,628],"#Deployment View {#section-deployment-view}#{7}":[629,631],"#Deployment View {#section-deployment-view}#{8}":[632,632],"#Deployment View {#section-deployment-view}#{9}":[633,638],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}":[639,670],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{1}":[641,642],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{2}":[643,643],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{3}":[644,646],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{4}":[647,647],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{5}":[648,649],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{6}":[650,651],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{7}":[652,653],"#Deployment View {#section-deployment-view}#Infrastructure Level 1 {#_infrastructure_level_1}#{8}":[654,670],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}":[671,691],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#{1}":[673,677],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_1_emphasis}":[678,681],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_1_emphasis}#{1}":[680,681],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_2_emphasis}":[682,687],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_2_emphasis}#{1}":[684,687],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_n_emphasis}":[688,691],"#Deployment View {#section-deployment-view}#Infrastructure Level 2 {#_infrastructure_level_2}#*\\* {#__emphasis_infrastructure_element_n_emphasis}#{1}":[690,691],"#Cross-cutting Concepts {#section-concepts}":[692,783],"#Cross-cutting Concepts {#section-concepts}#{1}":[694,702],"#Cross-cutting Concepts {#section-concepts}#{2}":[703,704],"#Cross-cutting Concepts {#section-concepts}#{3}":[705,706],"#Cross-cutting Concepts {#section-concepts}#{4}":[707,708],"#Cross-cutting Concepts {#section-concepts}#{5}":[709,709],"#Cross-cutting Concepts {#section-concepts}#{6}":[710,711],"#Cross-cutting Concepts {#section-concepts}#{7}":[712,713],"#Cross-cutting Concepts {#section-concepts}#{8}":[714,730],"#Cross-cutting Concepts {#section-concepts}#{9}":[731,732],"#Cross-cutting Concepts {#section-concepts}#{10}":[733,733],"#Cross-cutting Concepts {#section-concepts}#{11}":[734,735],"#Cross-cutting Concepts {#section-concepts}#{12}":[736,737],"#Cross-cutting Concepts {#section-concepts}#{13}":[738,738],"#Cross-cutting Concepts {#section-concepts}#{14}":[739,746],"#Cross-cutting Concepts {#section-concepts}#{15}":[747,748],"#Cross-cutting Concepts {#section-concepts}#{16}":[749,750],"#Cross-cutting Concepts {#section-concepts}#{17}":[751,752],"#Cross-cutting Concepts {#section-concepts}#{18}":[753,754],"#Cross-cutting Concepts {#section-concepts}#{19}":[755,756],"#Cross-cutting Concepts {#section-concepts}#{20}":[757,758],"#Cross-cutting Concepts {#section-concepts}#{21}":[759,760],"#Cross-cutting Concepts {#section-concepts}#{22}":[761,769],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_1_emphasis}":[770,773],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_1_emphasis}#{1}":[772,773],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_2_emphasis}":[774,779],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_2_emphasis}#{1}":[776,779],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_n_emphasis}":[780,783],"#Cross-cutting Concepts {#section-concepts}#*\\* {#__emphasis_concept_n_emphasis}#{1}":[782,783],"#Architecture Decisions {#section-design-decisions}":[784,825],"#Architecture Decisions {#section-design-decisions}#{1}":[786,814],"#Architecture Decisions {#section-design-decisions}#{2}":[815,815],"#Architecture Decisions {#section-design-decisions}#{3}":[816,818],"#Architecture Decisions {#section-design-decisions}#{4}":[819,820],"#Architecture Decisions {#section-design-decisions}#{5}":[821,822],"#Architecture Decisions {#section-design-decisions}#{6}":[823,825],"#Quality Requirements {#section-quality-scenarios}":[826,922],"#Quality Requirements {#section-quality-scenarios}#{1}":[828,849],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}":[850,880],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}#{1}":[852,872],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}#{2}":[873,873],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}#{3}":[874,875],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}#{4}":[876,877],"#Quality Requirements {#section-quality-scenarios}#Quality Tree {#_quality_tree}#{5}":[878,880],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}":[881,922],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}#{1}":[883,894],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}#{2}":[895,895],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}#{3}":[896,900],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}#{4}":[901,901],"#Quality Requirements {#section-quality-scenarios}#Quality Scenarios {#_quality_scenarios}#{5}":[902,922],"#Risks and Technical Debts {#section-technical-risks}":[923,953],"#Risks and Technical Debts {#section-technical-risks}#{1}":[925,953],"#Glossary {#section-glossary}":[954,990],"#Glossary {#section-glossary}#{1}":[956,971],"#Glossary {#section-glossary}#{2}":[972,973],"#Glossary {#section-glossary}#{3}":[974,975],"#Glossary {#section-glossary}#{4}":[976,990]},"outlinks":[{"title":"Introduction and Goals","target":"https://docs.arc42.org/section-1/","line":64},{"title":"Categories of Quality\nRequirements","target":"images/01_2_iso-25010-topics-EN.drawio.png","line":81,"embedded":true},{"title":"Architecture Constraints","target":"https://docs.arc42.org/section-2/","line":170},{"title":"Context and Scope","target":"https://docs.arc42.org/section-3/","line":205},{"title":"Solution Strategy","target":"https://docs.arc42.org/section-4/","line":311},{"title":"Hierarchy of building blocks","target":"images/05_building_blocks-EN.png","line":346,"embedded":true},{"title":"Building Block View","target":"https://docs.arc42.org/section-5/","line":357},{"title":"Runtime View","target":"https://docs.arc42.org/section-6/","line":569},{"title":"Deployment View","target":"https://docs.arc42.org/section-7/","line":636},{"title":"Possible topics for crosscutting\nconcepts","target":"images/08-Crosscutting-Concepts-Structure-EN.png","line":764,"embedded":true},{"title":"Concepts","target":"https://docs.arc42.org/section-8/","line":767},{"title":"Documenting Architecture\n Decisions","target":"https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions","line":815},{"title":"Architecture Decisions","target":"https://docs.arc42.org/section-9/","line":823},{"title":"Quality Requirements","target":"https://docs.arc42.org/section-10/","line":847},{"title":"Risks and Technical Debt","target":"https://docs.arc42.org/section-11/","line":951},{"title":"Glossary","target":"https://docs.arc42.org/section-12/","line":980}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Productivity_Busy_is_a_choice_productive_is_a_skill_md.ajson b/.smart-env/multi/300-resources_Productivity_Busy_is_a_choice_productive_is_a_skill_md.ajson deleted file mode 100644 index cec7cce..0000000 --- a/.smart-env/multi/300-resources_Productivity_Busy_is_a_choice_productive_is_a_skill_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Productivity/Busy is a choice productive is a skill.md": {"path":"300-resources/Productivity/Busy is a choice productive is a skill.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"erhawm","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590025886000,"size":302,"at":1766986877914,"hash":"erhawm"},"blocks":{"#":[1,5]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Productivity_Craftsmanship_–_The_Alternative_to_the_Four_Hour_Work_Week_Mindset_md.ajson b/.smart-env/multi/300-resources_Productivity_Craftsmanship_–_The_Alternative_to_the_Four_Hour_Work_Week_Mindset_md.ajson deleted file mode 100644 index 3587e7f..0000000 --- a/.smart-env/multi/300-resources_Productivity_Craftsmanship_–_The_Alternative_to_the_Four_Hour_Work_Week_Mindset_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Productivity/Craftsmanship – The Alternative to the Four Hour Work Week Mindset.md": {"path":"300-resources/Productivity/Craftsmanship – The Alternative to the Four Hour Work Week Mindset.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"r5228q","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590025918000,"size":1830,"at":1766986877914,"hash":"r5228q"},"blocks":{"#":[1,17]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Productivity_How_to_Be_a_Productive_Powerhouse_Using_Time_Blocking_md.ajson b/.smart-env/multi/300-resources_Productivity_How_to_Be_a_Productive_Powerhouse_Using_Time_Blocking_md.ajson deleted file mode 100644 index 4b8c021..0000000 --- a/.smart-env/multi/300-resources_Productivity_How_to_Be_a_Productive_Powerhouse_Using_Time_Blocking_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Productivity/How to Be a Productive Powerhouse Using Time Blocking.md": {"path":"300-resources/Productivity/How to Be a Productive Powerhouse Using Time Blocking.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1gxwzxb","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1589935252000,"size":5681,"at":1766986877914,"hash":"1gxwzxb"},"blocks":{"#":[1,4],"##Highlights:":[5,52],"##Highlights:#{1}":[7,52]},"outlinks":[{"title":"Article","target":"Article","line":1},{"title":"Productivity","target":"Productivity","line":1},{"title":"Scheduling","target":"Scheduling","line":1},{"title":"Time Blocking","target":"Time Blocking","line":1},{"title":"Charlie Gilkey","target":"Charlie Gilkey","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Productivity_Productivity_md.ajson b/.smart-env/multi/300-resources_Productivity_Productivity_md.ajson deleted file mode 100644 index 1926068..0000000 --- a/.smart-env/multi/300-resources_Productivity_Productivity_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Productivity/Productivity.md": {"path":"300-resources/Productivity/Productivity.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"kbr5y6","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1627686520000,"size":98,"at":1766986877914,"hash":"kbr5y6"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Productivity/Productivity.md": {"path":"300-resources/Productivity/Productivity.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"k0inuc","at":1766994016561},"class_name":"SmartSource","last_import":{"mtime":1766992687783,"size":100,"at":1766994016699,"hash":"k0inuc"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Productivity/Productivity.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Productivity_The_language_of_SMART_goals_5_ways_to_fix_your_bad_goal-setting_habits_md.ajson b/.smart-env/multi/300-resources_Productivity_The_language_of_SMART_goals_5_ways_to_fix_your_bad_goal-setting_habits_md.ajson deleted file mode 100644 index c4d4cf8..0000000 --- a/.smart-env/multi/300-resources_Productivity_The_language_of_SMART_goals_5_ways_to_fix_your_bad_goal-setting_habits_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Productivity/The language of SMART goals 5 ways to fix your bad goal-setting habits.md": {"path":"300-resources/Productivity/The language of SMART goals 5 ways to fix your bad goal-setting habits.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"116qi6w","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590026143000,"size":5252,"at":1766986877914,"hash":"116qi6w"},"blocks":{"#":[1,32],"##{1}":[5,5],"##{2}":[6,6],"##{3}":[7,7],"##{4}":[8,8],"##{5}":[9,12],"##{6}":[13,14],"##{7}":[15,16],"##{8}":[17,18],"##{9}":[19,20],"##{10}":[21,22],"##{11}":[23,32]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Travel_Travel_md.ajson b/.smart-env/multi/300-resources_Travel_Travel_md.ajson deleted file mode 100644 index f72c1cd..0000000 --- a/.smart-env/multi/300-resources_Travel_Travel_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Travel/Travel.md": {"path":"300-resources/Travel/Travel.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1c8ejdo","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1627686522000,"size":92,"at":1766986877914,"hash":"1c8ejdo"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Travel/Travel.md": {"path":"300-resources/Travel/Travel.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"u786i8","at":1766994016561},"class_name":"SmartSource","last_import":{"mtime":1766992687809,"size":94,"at":1766994016699,"hash":"u786i8"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Travel/Travel.md"}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Writing_Create_suspense_md.ajson b/.smart-env/multi/300-resources_Writing_Create_suspense_md.ajson deleted file mode 100644 index 18f7a69..0000000 --- a/.smart-env/multi/300-resources_Writing_Create_suspense_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Writing/Create suspense.md": {"path":"300-resources/Writing/Create suspense.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1rnsf4x","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590026322000,"size":1871,"at":1766986877915,"hash":"1rnsf4x"},"blocks":{"#":[1,11]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Writing_James_clear_on_writing_md.ajson b/.smart-env/multi/300-resources_Writing_James_clear_on_writing_md.ajson deleted file mode 100644 index 528dcdd..0000000 --- a/.smart-env/multi/300-resources_Writing_James_clear_on_writing_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Writing/James clear on writing.md": {"path":"300-resources/Writing/James clear on writing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ji5pm6","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590026380000,"size":426,"at":1766986877915,"hash":"ji5pm6"},"blocks":{"#":[1,9],"##{1}":[2,2],"##{2}":[3,3],"##{3}":[4,4],"##{4}":[5,5],"##{5}":[6,6],"##{6}":[7,9]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Writing_Opinion_How_Not_to_Be_Alone_by_Jonathan_Safran_Foer_md.ajson b/.smart-env/multi/300-resources_Writing_Opinion_How_Not_to_Be_Alone_by_Jonathan_Safran_Foer_md.ajson deleted file mode 100644 index 3c41d73..0000000 --- a/.smart-env/multi/300-resources_Writing_Opinion_How_Not_to_Be_Alone_by_Jonathan_Safran_Foer_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:300-resources/Writing/Opinion How Not to Be Alone by Jonathan Safran Foer.md": {"path":"300-resources/Writing/Opinion How Not to Be Alone by Jonathan Safran Foer.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"9h5ykl","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1590030971000,"size":1727,"at":1766986877915,"hash":"9h5ykl"},"blocks":{"#":[1,4],"##Highlights:":[5,20],"##Highlights:#{1}":[7,20]},"outlinks":[{"title":"Article","target":"Article","line":1},{"title":"Writing","target":"Writing","line":1},{"title":"Writing intro","target":"Writing intro","line":1},{"title":"Writing Swipe","target":"Writing Swipe","line":1},{"title":"Jonathan Safran","target":"Jonathan Safran","line":2}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/300-resources_Writing_Writing_md.ajson b/.smart-env/multi/300-resources_Writing_Writing_md.ajson deleted file mode 100644 index 0d48745..0000000 --- a/.smart-env/multi/300-resources_Writing_Writing_md.ajson +++ /dev/null @@ -1,3 +0,0 @@ - -"smart_sources:300-resources/Writing/Writing.md": {"path":"300-resources/Writing/Writing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"ylynh5","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1627686524000,"size":93,"at":1766986877915,"hash":"ylynh5"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]]}, -"smart_sources:300-resources/Writing/Writing.md": {"path":"300-resources/Writing/Writing.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"10hg78u","at":1766994016561},"class_name":"SmartSource","last_import":{"mtime":1766992687809,"size":95,"at":1766994016699,"hash":"10hg78u"},"blocks":{"###Notes":[1,6],"###Notes#{1}":[2,6]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[[2,5]],"key":"300-resources/Writing/Writing.md"}, \ No newline at end of file diff --git a/.smart-env/multi/400-archive_2023-11-19_md.ajson b/.smart-env/multi/400-archive_2023-11-19_md.ajson deleted file mode 100644 index 5719180..0000000 --- a/.smart-env/multi/400-archive_2023-11-19_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:400-archive/2023-11-19.md": {"path":"400-archive/2023-11-19.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"12fq0qj","at":1766986877786},"class_name":"SmartSource","last_import":{"mtime":1700369046000,"size":136,"at":1766986877914,"hash":"12fq0qj"},"blocks":{"##Sequences to Stop and Start RAC Services":[2,4],"##Sequences to Stop and Start RAC Services#{1}":[3,4]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/400-archive_Docker_Overlay2_Cleanup_5_Ways_to_Reclaim_Disk_Space_-_Virtualization_Howto_md.ajson b/.smart-env/multi/400-archive_Docker_Overlay2_Cleanup_5_Ways_to_Reclaim_Disk_Space_-_Virtualization_Howto_md.ajson deleted file mode 100644 index d9e66a5..0000000 --- a/.smart-env/multi/400-archive_Docker_Overlay2_Cleanup_5_Ways_to_Reclaim_Disk_Space_-_Virtualization_Howto_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:400-archive/Docker Overlay2 Cleanup 5 Ways to Reclaim Disk Space - Virtualization Howto.md": {"path":"400-archive/Docker Overlay2 Cleanup 5 Ways to Reclaim Disk Space - Virtualization Howto.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"14lr70c","at":1766986877786},"class_name":"SmartSource","last_import":{"mtime":1706692189634,"size":16914,"at":1766986877914,"hash":"14lr70c"},"blocks":{"#---frontmatter---":[1,5],"#":[6,7],"##Table of contents":[8,28],"##Table of contents#{1}":[10,10],"##Table of contents#{2}":[11,14],"##Table of contents#{3}":[15,19],"##Table of contents#{4}":[20,22],"##Table of contents#{5}":[23,23],"##Table of contents#{6}":[24,24],"##Table of contents#{7}":[25,25],"##Table of contents#{8}":[26,26],"##Table of contents#{9}":[27,28],"##Disk space issues on a Docker host":[29,36],"##Disk space issues on a Docker host#{1}":[31,36],"##What is the Overlay file system?":[37,62],"##What is the Overlay file system?#{1}":[39,44],"##What is the Overlay file system?#Filesystem layers structure":[45,50],"##What is the Overlay file system?#Filesystem layers structure#{1}":[47,50],"##What is the Overlay file system?#Disk space usage":[51,56],"##What is the Overlay file system?#Disk space usage#{1}":[53,56],"##What is the Overlay file system?#Overlay and Overlay2":[57,62],"##What is the Overlay file system?#Overlay and Overlay2#{1}":[59,62],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup":[63,151],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#{1}":[65,66],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Docker System Overview":[67,89],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Docker System Overview#{1}":[69,89],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Prune Unwanted Docker Objects":[90,115],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Prune Unwanted Docker Objects#{1}":[92,115],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Addressing Dangling and Unused Images":[116,129],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Addressing Dangling and Unused Images#{1}":[118,129],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Container and Volume Prune":[130,151],"##1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup#Container and Volume Prune#{1}":[132,151],"##2\\. Manual Deletion":[152,179],"##2\\. Manual Deletion#{1}":[154,155],"##2\\. Manual Deletion#Deleting Unused Images and Unused Containers":[156,171],"##2\\. Manual Deletion#Deleting Unused Images and Unused Containers#{1}":[158,171],"##2\\. Manual Deletion#Checking Disk Usage":[172,179],"##2\\. Manual Deletion#Checking Disk Usage#{1}":[174,179],"##3\\. Log Management":[180,194],"##3\\. Log Management#{1}":[182,194],"##4\\. Specialized Cleanup in a Kubernetes Context":[195,214],"##4\\. Specialized Cleanup in a Kubernetes Context#{1}":[197,214],"##5\\. Completely refresh docker":[215,228],"##5\\. Completely refresh docker#{1}":[217,228],"##Frequently Asked Questions":[229,261],"##Frequently Asked Questions#{1}":[231,261],"##Wrapping up":[262,266],"##Wrapping up#{1}":[264,266]},"outlinks":[{"title":"Disk space issues on a Docker host","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-disk-space-issues-on-a-docker-host","line":10},{"title":"What is the Overlay file system?","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-what-is-the-overlay-file-system","line":11},{"title":"Filesystem layers structure","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-filesystem-layers-structure","line":12},{"title":"Disk space usage","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-disk-space-usage","line":13},{"title":"Overlay and Overlay2","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-overlay-and-overlay2","line":14},{"title":"1\\. Utilizing Docker’s Built-In Commands for Docker Overlay2 Cleanup","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-1-utilizing-docker-s-built-in-commands-for-docker-overlay2-cleanup","line":15},{"title":"Docker System Overview","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-docker-system-overview","line":16},{"title":"Prune Unwanted Docker Objects","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-prune-unwanted-docker-objects","line":17},{"title":"Addressing Dangling and Unused Images","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-addressing-dangling-and-unused-images","line":18},{"title":"Container and Volume Prune","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-container-and-volume-prune","line":19},{"title":"2\\. Manual Deletion","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-2-manual-deletion","line":20},{"title":"Deleting Unused Images and Unused Containers","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-deleting-unused-images-and-unused-containers","line":21},{"title":"Checking Disk Usage","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-checking-disk-usage","line":22},{"title":"3\\. Log Management","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-3-log-management","line":23},{"title":"4\\. Specialized Cleanup in a Kubernetes Context","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-4-specialized-cleanup-in-a-kubernetes-context","line":24},{"title":"5\\. Completely refresh docker","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-5-completely-refresh-docker","line":25},{"title":"Frequently Asked Questions","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-frequently-asked-questions","line":26},{"title":"Wrapping up","target":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/#h-wrapping-up","line":27},{"title":"Docker host in production or in your home lab","target":"https://www.virtualizationhowto.com/2023/04/excalidraw-whiteboard-ultimate-docker-self-hosted-home-lab-diagramming/","line":31},{"title":"![Disk full which needs docker overlay2 cleanup","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Disk-full-which-needs-Docker-overlay2-cleanup.png","line":33},{"title":"Docker engine manage containers","target":"https://www.virtualizationhowto.com/2023/04/ansible-docker-container-management-playbooks/","line":39},{"title":"disk space","target":"https://www.virtualizationhowto.com/2022/09/proxmox-create-iso-storage-location-disk-space-error/","line":41},{"title":"Docker containers are easily moved between hosts","target":"https://www.virtualizationhowto.com/2022/12/move-docker-container-to-another-host/","line":49},{"title":"containers and images","target":"https://www.virtualizationhowto.com/2021/05/new-windows-server-2022-container-image-preview-install/","line":61},{"title":"![Docker system df command","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Docker-system-df-command.png","line":80},{"title":"![Running the docker system df with normal output","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Running-the-docker-system-df-with-normal-output.png","line":86},{"title":"![Docker overlay2 cleanup using docker system prune command","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Docker-overlay2-cleanup-using-docker-system-prune-command.png","line":112},{"title":"docker image","target":"https://www.virtualizationhowto.com/2022/09/iis-to-docker-image-with-windows-admin-center/","line":118},{"title":"![Pruning docker images","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Pruning-docker-images.png","line":126},{"title":"docker container","target":"https://www.virtualizationhowto.com/2022/05/best-docker-containers-for-home-server/","line":132},{"title":"![Docker container prune when troubleshooting docker overlay2 cleanup","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Docker-container-prune-when-troubleshooting-Docker-overlay2-cleanup.png","line":142},{"title":"![Docker overlay2 cleanup with docker volume prune","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Docker-overlay2-cleanup-with-Docker-volume-prune.png","line":148},{"title":"![Removing dangling and exited containers manually","target":"https://www.virtualizationhowto.com/wp-content/uploads/2023/11/Removing-dangling-and-exited-containers-manually.png","line":168},{"title":"Kubernetes setup","target":"https://www.virtualizationhowto.com/2021/07/setup-kubernetes-ubuntu-20-04-step-by-step-cluster-configuration/","line":197}],"metadata":{"page-title":"Docker Overlay2 Cleanup: 5 Ways to Reclaim Disk Space - Virtualization Howto","url":"https://www.virtualizationhowto.com/2023/11/docker-overlay2-cleanup-5-ways-to-reclaim-disk-space/","date":"2024-01-31 17:09:30"},"task_lines":[],"tasks":{},"codeblock_ranges":[[71,76],[98,104],[106,108],[120,122],[134,140],[160,166],[176,178],[184,193],[199,211],[221,227]]}, \ No newline at end of file diff --git a/.smart-env/multi/400-archive_未命名_md.ajson b/.smart-env/multi/400-archive_未命名_md.ajson deleted file mode 100644 index c593d31..0000000 --- a/.smart-env/multi/400-archive_未命名_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:400-archive/未命名.md": {"path":"400-archive/未命名.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"k5clho","at":1766986877786},"class_name":"SmartSource","last_import":{"mtime":1697632991000,"size":15,"at":1766986877914,"hash":"k5clho"},"blocks":{"#":[1,1]},"outlinks":[],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/Clippings_A_collection_of_prompts_for_generating_high_quality_code_md.ajson b/.smart-env/multi/Clippings_A_collection_of_prompts_for_generating_high_quality_code_md.ajson deleted file mode 100644 index 56df6ff..0000000 --- a/.smart-env/multi/Clippings_A_collection_of_prompts_for_generating_high_quality_code_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:Clippings/A collection of prompts for generating high quality code.md": {"path":"Clippings/A collection of prompts for generating high quality code.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1274f9i","at":1766986877787},"class_name":"SmartSource","last_import":{"mtime":1762399880000,"size":19628,"at":1766986877914,"hash":"1274f9i"},"blocks":{"#---frontmatter---":[1,11],"#":[12,15],"#My Standard Prompt for Code Generation":[16,34],"#My Standard Prompt for Code Generation#{1}":[18,21],"#My Standard Prompt for Code Generation#{2}":[22,22],"#My Standard Prompt for Code Generation#{3}":[23,23],"#My Standard Prompt for Code Generation#{4}":[24,24],"#My Standard Prompt for Code Generation#{5}":[25,25],"#My Standard Prompt for Code Generation#{6}":[26,26],"#My Standard Prompt for Code Generation#{7}":[27,27],"#My Standard Prompt for Code Generation#{8}":[28,28],"#My Standard Prompt for Code Generation#{9}":[29,29],"#My Standard Prompt for Code Generation#{10}":[30,34],"#Reviewing and Understanding AI-Generated Code":[35,47],"#Reviewing and Understanding AI-Generated Code#{1}":[37,43],"#Reviewing and Understanding AI-Generated Code#{2}":[44,44],"#Reviewing and Understanding AI-Generated Code#{3}":[45,45],"#Reviewing and Understanding AI-Generated Code#{4}":[46,47],"#Using AI for Code Reviews and Improvements":[48,63],"#Using AI for Code Reviews and Improvements#{1}":[50,56],"#Using AI for Code Reviews and Improvements#{2}":[57,57],"#Using AI for Code Reviews and Improvements#{3}":[58,58],"#Using AI for Code Reviews and Improvements#{4}":[59,59],"#Using AI for Code Reviews and Improvements#{5}":[60,60],"#Using AI for Code Reviews and Improvements#{6}":[61,61],"#Using AI for Code Reviews and Improvements#{7}":[62,63],"#Prompt Ideas for Various Coding Tasks":[64,337],"#Prompt Ideas for Various Coding Tasks#{1}":[66,68],"#Prompt Ideas for Various Coding Tasks#{2}":[69,69],"#Prompt Ideas for Various Coding Tasks#{3}":[70,70],"#Prompt Ideas for Various Coding Tasks#{4}":[71,71],"#Prompt Ideas for Various Coding Tasks#{5}":[72,73],"#Prompt Ideas for Various Coding Tasks#{6}":[74,77],"#Prompt Ideas for Various Coding Tasks#{7}":[78,78],"#Prompt Ideas for Various Coding Tasks#{8}":[79,79],"#Prompt Ideas for Various Coding Tasks#{9}":[80,80],"#Prompt Ideas for Various Coding Tasks#{10}":[81,82],"#Prompt Ideas for Various Coding Tasks#{11}":[83,93],"#Prompt Ideas for Various Coding Tasks#{12}":[94,94],"#Prompt Ideas for Various Coding Tasks#{13}":[95,95],"#Prompt Ideas for Various Coding Tasks#{14}":[96,96],"#Prompt Ideas for Various Coding Tasks#{15}":[97,108],"#Prompt Ideas for Various Coding Tasks#Comments":[109,337],"#Prompt Ideas for Various Coding Tasks#Comments#{1}":[111,337]},"outlinks":[{"title":"LorestForest","target":"LorestForest","line":5},{"title":"SOP","target":"https://www.reddit.com/r/ClaudeAI/comments/1f0ya1t/i_used_claude_to_write_an_sop_for_using_claude/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","line":12},{"title":"here","target":"https://aalapdavjekar.medium.com/02484af85dd7","line":101},{"title":"0 points","target":"https://reddit.com/","line":111},{"title":"4 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkubbvx/","line":117},{"title":"5 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/llda49d/","line":123},{"title":"4 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/ll3qluw/","line":127},{"title":"2 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/ll414ut/","line":131},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkr1ybl/","line":135},{"title":"\\-6 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkq73fa/","line":139},{"title":"0 points","target":"https://reddit.com/","line":143},{"title":"评论图像","target":"https://preview.redd.it/a-collection-of-prompts-for-generating-high-quality-code-v0-01qi0pcvevld1.jpeg?width=320&crop=smart&auto=webp&s=1f610dc4dc1f2d23ab7d7fe0a75b40ea3f04bc1c","line":147,"embedded":true},{"title":"\\-2 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkqmodi/","line":149},{"title":"评论图像","target":"https://preview.redd.it/a-collection-of-prompts-for-generating-high-quality-code-v0-01qi0pcvevld1.jpeg?width=320&crop=smart&auto=webp&s=1f610dc4dc1f2d23ab7d7fe0a75b40ea3f04bc1c","line":153,"embedded":true},{"title":"0 points","target":"https://reddit.com/","line":155},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkrhmwj/","line":159},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkpu2sd/","line":163},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":167},{"title":"0 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkpu2tw/","line":169},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":173},{"title":"0 points","target":"https://reddit.com/","line":175},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":179},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lkrvnqk/","line":181},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":185},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lvze9sz/","line":187},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":191},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/lvzea0u/","line":193},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":197},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/m671fa8/","line":199},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":203},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/m671fbg/","line":205},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":209},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mbggb27/","line":211},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":215},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mbggb38/","line":217},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":221},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mbgges2/","line":223},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":227},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mbggeti/","line":229},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":233},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mdg0i1b/","line":235},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":239},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mdg0i3x/","line":241},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":245},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mdn5qvo/","line":247},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/meon1z8/","line":251},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":255},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/meon20r/","line":257},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":261},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/miggspc/","line":263},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":267},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/miggss6/","line":269},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":273},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mry1koi/","line":275},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":279},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mry1kr0/","line":281},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":285},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mwqhgra/","line":287},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":291},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mwqhgtq/","line":293},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":297},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/mym5zv4/","line":299},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/n0xwf1f/","line":303},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":307},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/n0xwf4b/","line":309},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":313},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/n7f9xga/","line":315},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":319},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/n7f9xi9/","line":321},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":325},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/nizk7s0/","line":327},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":331},{"title":"1 points","target":"https://reddit.com/r/ChatGPTCoding/comments/1f51y8s/comment/nizk7u6/","line":333},{"title":"*contact the moderators of this subreddit*","target":"https://www.reddit.com/message/compose/?to=/r/ChatGPTCoding","line":337}],"metadata":{"title":"A collection of prompts for generating high quality code...","source":"https://www.reddit.com/r/ChatGPTCoding/comments/1f51y8s/a_collection_of_prompts_for_generating_high/","author":["[[LorestForest]]"],"published":"2024-08-31","created":"2025-11-06","description":null,"tags":["#clippings"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/Clippings_Centos_7_真是低配小鸡的福音!_-_V2EX_md.ajson b/.smart-env/multi/Clippings_Centos_7_真是低配小鸡的福音!_-_V2EX_md.ajson deleted file mode 100644 index 50d6536..0000000 --- a/.smart-env/multi/Clippings_Centos_7_真是低配小鸡的福音!_-_V2EX_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:Clippings/Centos 7 真是低配小鸡的福音! - V2EX.md": {"path":"Clippings/Centos 7 真是低配小鸡的福音! - V2EX.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1asii3u","at":1766986877787},"class_name":"SmartSource","last_import":{"mtime":1741578092125,"size":4851,"at":1766986877914,"hash":"1asii3u"},"blocks":{"#---frontmatter---":[1,11],"#":[12,61]},"outlinks":[{"title":"V2EX","target":"V2EX","line":5},{"title":"首页","target":"https://v2ex.com/","line":12},{"title":"登录","target":"https://v2ex.com/signin","line":12},{"title":"注册","target":"https://v2ex.com/signup","line":12},{"title":"登录","target":"https://v2ex.com/signin","line":16},{"title":"现在注册","target":"https://v2ex.com/signup","line":16},{"title":"Fedora","target":"http://fedoraproject.org/","line":18},{"title":"网易开源镜像站","target":"http://mirrors.163.com/","line":18},{"title":"CentOS","target":"http://www.centos.org/","line":18},{"title":"Ubuntu","target":"http://www.ubuntu.com/","line":18},{"title":"V2EX","target":"https://v2ex.com/","line":20},{"title":"Linux","target":"https://v2ex.com/go/linux","line":20},{"title":"Tounea","target":"https://v2ex.com/member/Tounea","line":20},{"title":"![","target":"https://i.imgur.com/Vt3TnKr.png","line":29},{"title":"centos","target":"https://v2ex.com/tag/centos","line":31},{"title":"memory","target":"https://v2ex.com/tag/memory","line":31},{"title":"Performance","target":"https://v2ex.com/tag/Performance","line":31},{"title":"w568w","target":"https://v2ex.com/member/w568w","line":35},{"title":"MoeDisk","target":"https://v2ex.com/member/MoeDisk","line":38},{"title":"LuminousKK","target":"https://v2ex.com/member/LuminousKK","line":41},{"title":"adoal","target":"https://v2ex.com/member/adoal","line":44},{"title":"duzhuo","target":"https://v2ex.com/member/duzhuo","line":47},{"title":"DinnyXu","target":"https://v2ex.com/member/DinnyXu","line":50},{"title":"totoro625","target":"https://v2ex.com/member/totoro625","line":53},{"title":"duzhuo","target":"https://v2ex.com/member/duzhuo","line":56},{"title":"moefishtang","target":"https://v2ex.com/member/moefishtang","line":56},{"title":"博客","target":"https://blog.v2ex.com/","line":59},{"title":"关于","target":"https://v2ex.com/about","line":59},{"title":"FAQ","target":"https://v2ex.com/faq","line":59},{"title":"帮助文档","target":"https://v2ex.com/help","line":59},{"title":"API","target":"https://v2ex.com/help/api","line":59},{"title":"Select Language","target":"https://v2ex.com/select/language","line":59},{"title":"实用小工具","target":"https://v2ex.com/tools","line":59},{"title":"JFK 23:36","target":"https://v2ex.com/worldclock#jfk","line":59},{"title":"LAX 20:36","target":"https://v2ex.com/worldclock#lax","line":59},{"title":"PVG 11:36","target":"https://v2ex.com/worldclock#pvg","line":59},{"title":"UTC 03:36","target":"https://v2ex.com/worldclock#utc","line":59},{"title":"CodeLauncher","target":"https://cl.v2ex.pro/","line":60}],"metadata":{"title":"Centos 7 真是低配小鸡的福音! - V2EX","source":"https://v2ex.com/t/1117168#reply10","author":["[[V2EX]]"],"published":"2025-03-10","created":"2025-03-10","description":"Linux - @Tounea - 之前买了一个 1 核 512MB 的小鸡,安装 debian 11 系统,发现启动某些服务,结果服务死活起不来,最后查看内核日志,发现是被系统进程 kill 掉了,原因是可用内存不足,一看系统内存,已","tags":["#clippings"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/Clippings_How_to_create_your_own_testing_framework_using_ChatGPT_md.ajson b/.smart-env/multi/Clippings_How_to_create_your_own_testing_framework_using_ChatGPT_md.ajson deleted file mode 100644 index 5d75682..0000000 --- a/.smart-env/multi/Clippings_How_to_create_your_own_testing_framework_using_ChatGPT_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:Clippings/How to create your own testing framework using ChatGPT.md": {"path":"Clippings/How to create your own testing framework using ChatGPT.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1ltwo4y","at":1766986877787},"class_name":"SmartSource","last_import":{"mtime":1762400014000,"size":30027,"at":1766986877914,"hash":"1ltwo4y"},"blocks":{"#---frontmatter---":[1,11],"#":[12,13],"###Introduction: The AI Revolution in Quality Assurance":[14,34],"###Introduction: The AI Revolution in Quality Assurance#{1}":[16,21],"###Introduction: The AI Revolution in Quality Assurance#{2}":[22,22],"###Introduction: The AI Revolution in Quality Assurance#{3}":[23,23],"###Introduction: The AI Revolution in Quality Assurance#{4}":[24,24],"###Introduction: The AI Revolution in Quality Assurance#{5}":[25,26],"###Introduction: The AI Revolution in Quality Assurance#{6}":[27,34],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade":[35,48],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade#{1}":[37,40],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade#{2}":[41,41],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade#{3}":[42,42],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade#{4}":[43,44],"###The Manual Bottleneck: Why Test Case Generation Needs an Upgrade#{5}":[45,48],"###The Rise of LLMs in QA: A Look Beyond ChatGPT":[49,62],"###The Rise of LLMs in QA: A Look Beyond ChatGPT#{1}":[51,54],"###The Rise of LLMs in QA: A Look Beyond ChatGPT#{2}":[55,55],"###The Rise of LLMs in QA: A Look Beyond ChatGPT#{3}":[56,56],"###The Rise of LLMs in QA: A Look Beyond ChatGPT#{4}":[57,58],"###The Rise of LLMs in QA: A Look Beyond ChatGPT#{5}":[59,62],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA":[63,81],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#{1}":[65,66],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#General-Purpose Powerhouses":[67,74],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#General-Purpose Powerhouses#{1}":[69,70],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#General-Purpose Powerhouses#{2}":[71,71],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#General-Purpose Powerhouses#{3}":[72,72],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#General-Purpose Powerhouses#{4}":[73,74],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#Code-Specific LLMs":[75,81],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#Code-Specific LLMs#{1}":[77,78],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#Code-Specific LLMs#{2}":[79,79],"###Choosing Your AI Partner: A Guide to Modern LLMs for QA#Code-Specific LLMs#{3}":[80,81],"###The Art of the Prompt: Universal Principles for Any LLM":[82,92],"###The Art of the Prompt: Universal Principles for Any LLM#{1}":[84,85],"###The Art of the Prompt: Universal Principles for Any LLM#{2}":[86,86],"###The Art of the Prompt: Universal Principles for Any LLM#{3}":[87,87],"###The Art of the Prompt: Universal Principles for Any LLM#{4}":[88,88],"###The Art of the Prompt: Universal Principles for Any LLM#{5}":[89,90],"###The Art of the Prompt: Universal Principles for Any LLM#{6}":[91,92],"###Practical GPT Prompts for Every Testing Scenario":[93,174],"###Practical GPT Prompts for Every Testing Scenario#{1}":[95,96],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story":[97,116],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{1}":[99,110],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{2}":[111,111],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{3}":[112,112],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{4}":[113,113],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{5}":[114,114],"###Practical GPT Prompts for Every Testing Scenario#A. Generating Functional Test Cases from a User Story#{6}":[115,116],"###Practical GPT Prompts for Every Testing Scenario#B. Identifying Edge Cases and Negative Scenarios":[117,128],"###Practical GPT Prompts for Every Testing Scenario#B. Identifying Edge Cases and Negative Scenarios#{1}":[119,128],"###Practical GPT Prompts for Every Testing Scenario#C. Creating Security-Focused Test Cases":[129,136],"###Practical GPT Prompts for Every Testing Scenario#C. Creating Security-Focused Test Cases#{1}":[131,136],"###Practical GPT Prompts for Every Testing Scenario#D. Generating BDD Scenarios in Gherkin Format":[137,174],"###Practical GPT Prompts for Every Testing Scenario#D. Generating BDD Scenarios in Gherkin Format#{1}":[139,174],"##From Prompt to Practically Automated Tests":[175,195],"##From Prompt to Practically Automated Tests#{1}":[177,182],"##From Prompt to Practically Automated Tests#{2}":[183,183],"##From Prompt to Practically Automated Tests#{3}":[184,185],"##From Prompt to Practically Automated Tests#{4}":[186,195],"##Playwright":[196,211],"##Playwright#{1}":[198,201],"##Playwright#{2}":[202,202],"##Playwright#{3}":[203,203],"##Playwright#{4}":[204,204],"##Playwright#{5}":[205,206],"##Playwright#{6}":[207,208],"##Playwright#{7}":[209,209],"##Playwright#{8}":[210,211],"##WebdriverIO":[212,227],"##WebdriverIO#{1}":[214,217],"##WebdriverIO#{2}":[218,218],"##WebdriverIO#{3}":[219,219],"##WebdriverIO#{4}":[220,220],"##WebdriverIO#{5}":[221,222],"##WebdriverIO#{6}":[223,224],"##WebdriverIO#{7}":[225,225],"##WebdriverIO#{8}":[226,227],"##CloudQA":[228,243],"##CloudQA#{1}":[230,233],"##CloudQA#{2}":[234,234],"##CloudQA#{3}":[235,235],"##CloudQA#{4}":[236,236],"##CloudQA#{5}":[237,238],"##CloudQA#{6}":[239,240],"##CloudQA#{7}":[241,241],"##CloudQA#{8}":[242,243],"##Summary Table":[244,257],"##Summary Table#{1}":[246,257],"##Case Study 1: SaaS Company Boosts Test Coverage and Developer Confidence":[258,261],"##Case Study 1: SaaS Company Boosts Test Coverage and Developer Confidence#{1}":[260,261],"##Case Study 2: Reducing Flaky Tests with Iterative Prompt Refinement":[262,265],"##Case Study 2: Reducing Flaky Tests with Iterative Prompt Refinement#{1}":[264,265],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage":[266,328],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#{1}":[268,271],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation":[272,282],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{1}":[274,275],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{2}":[276,276],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{3}":[277,277],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{4}":[278,278],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{5}":[279,280],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#The Strategic Benefits of AI-Driven Test Generation#{6}":[281,282],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework":[283,297],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{1}":[285,288],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{2}":[289,289],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{3}":[290,291],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{4}":[292,293],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{5}":[294,294],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{6}":[295,295],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Limitations and Best Practices: A Realistic Framework#{7}":[296,297],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Conclusion: Your Future as an AI-Powered QA Strategist":[298,301],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Conclusion: Your Future as an AI-Powered QA Strategist#{1}":[300,301],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)":[302,328],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{1}":[304,305],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{2}":[306,307],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{3}":[308,310],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{4}":[311,311],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{5}":[312,312],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{6}":[313,313],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{7}":[314,314],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{8}":[315,315],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{9}":[316,316],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{10}":[317,317],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{11}":[318,318],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{12}":[319,319],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{13}":[320,320],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{14}":[321,321],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{15}":[322,322],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{16}":[323,323],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{17}":[324,324],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{18}":[325,325],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{19}":[326,326],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{20}":[327,327],"##Case Study 3: Expanding Mobile and Cross-Browser Coverage#Frequently Asked Questions (FAQs)#{21}":[328,328]},"outlinks":[{"title":"Syna","target":"Syna","line":5},{"title":"Explore the Future of QA Today","target":"https://app.cloudqa.io/Account/Register?source=MainHeader \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":12},{"title":"Register Now","target":"https://cloudqa.io/webinars/gpt-automation \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":31},{"title":"qa automation, regression test cases","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03073915/visual-selection-12-768x478.png","line":33,"embedded":true},{"title":"qa automation, self healing tests","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074924/visual-selection-13-768x747.png","line":47,"embedded":true},{"title":"qa automation, self healing automation","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074910/visual-selection-15-768x457.png","line":149,"embedded":true},{"title":"qa and automation, qa automation","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074903/visual-selection-16-768x697.png","line":171,"embedded":true},{"title":"qa and automation, automatic test case generation tools","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074849/visual-selection-17-1024x352.png","line":192,"embedded":true},{"title":"qa and automation, regression test cases","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074843/visual-selection-18-768x829.png","line":270,"embedded":true},{"title":"qa and automation, self healing tests","target":"https://d1ax5wqehib729.cloudfront.net/wp-content/uploads/2025/09/03074918/visual-selection-14-768x768.png","line":281,"embedded":true},{"title":"Link to PDF \n\t","target":"https://www.gptaiflow.com/assets/files/2025-01-18-pdf-1-TechAI-Goolge-whitepaper_Prompt%20Engineering_v4-af36dcc7a49bb7269a58b1c9b89a8ae1.pdf \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":311},{"title":"https://aqua-cloud.io/prompt-engineering-for-testers/ \n\t","target":"https://aqua-cloud.io/prompt-engineering-for-testers/ \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":314},{"title":"https://help.openai.com/en/articles/6654000-best-practices-for-prompt-engineering-with-the-openai-api \n\t","target":"https://help.openai.com/en/articles/6654000-best-practices-for-prompt-engineering-with-the-openai-api \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":316},{"title":"https://www.practitest.com/resource-center/blog/chatgpt-prompts-for-software-testing/ \n\t","target":"https://www.practitest.com/resource-center/blog/chatgpt-prompts-for-software-testing/ \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":320},{"title":"https://testrigor.com/chatgpt-for-test-automation/ \n\t","target":"https://testrigor.com/chatgpt-for-test-automation/ \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":322},{"title":"https://www.news.aakashg.com/p/prompt-engineering \n\t","target":"https://www.news.aakashg.com/p/prompt-engineering \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":324},{"title":"https://www.refontelearning.com/blog/prompt-engineering-trends-2025-skills-youll-need-to-stay-competitive \n\t","target":"https://www.refontelearning.com/blog/prompt-engineering-trends-2025-skills-youll-need-to-stay-competitive \"What are the Best Automatic Test Case Generation Tools Available? Qa Automation\"","line":326}],"metadata":{"title":"How to create your own testing framework using ChatGPT?","source":"https://cloudqa.io/gpt-prompts-test-case-generation-qa-automation-2025/","author":["[[Syna]]"],"published":"2025-09-03","created":"2025-11-06","description":"Self Healing Tests | The Ultimate Guide to GPT Prompts for Test Case Generation in 2025 | Create Robust | CloudQA","tags":["#clippings"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/Clippings_foxcode_-_NEW_CLI_md.ajson b/.smart-env/multi/Clippings_foxcode_-_NEW_CLI_md.ajson deleted file mode 100644 index 77b0d38..0000000 --- a/.smart-env/multi/Clippings_foxcode_-_NEW_CLI_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:Clippings/foxcode - NEW CLI.md": {"path":"Clippings/foxcode - NEW CLI.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x27zbw","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1766716354383,"size":3619,"at":1766986877914,"hash":"x27zbw"},"blocks":{"#---frontmatter---":[1,10],"##API密钥管理":[11,152],"##API密钥管理#{1}":[13,14],"##API密钥管理#各渠道可用额度":[15,68],"##API密钥管理#各渠道可用额度#{1}":[17,68],"##API密钥管理#您的API密钥":[69,78],"##API密钥管理#您的API密钥#coding":[71,78],"##API密钥管理#您的API密钥#coding#{1}":[73,78],"##API密钥管理#使用教程":[79,90],"##API密钥管理#使用教程#{1}":[81,90],"##API密钥管理#Windows 系统":[91,114],"##API密钥管理#Windows 系统#方法1:配置settings.json":[93,97],"##API密钥管理#Windows 系统#方法1:配置settings.json#{1}":[95,95],"##API密钥管理#Windows 系统#方法1:配置settings.json#{2}":[96,97],"##API密钥管理#Windows 系统#方法2:临时设置(仅当前终端有效)":[98,101],"##API密钥管理#Windows 系统#方法2:临时设置(仅当前终端有效)#{1}":[100,101],"##API密钥管理#Windows 系统#方法3:永久设置(全局生效)":[102,114],"##API密钥管理#Windows 系统#方法3:永久设置(全局生效)#{1}":[104,109],"##API密钥管理#Windows 系统#方法3:永久设置(全局生效)#{2}":[110,112],"##API密钥管理#Windows 系统#方法3:永久设置(全局生效)#{3}":[113,114],"##API密钥管理#macOS 系统":[115,132],"##API密钥管理#macOS 系统#方法1:配置settings.json":[117,121],"##API密钥管理#macOS 系统#方法1:配置settings.json#{1}":[119,119],"##API密钥管理#macOS 系统#方法1:配置settings.json#{2}":[120,121],"##API密钥管理#macOS 系统#方法2:临时设置(仅当前终端有效)":[122,125],"##API密钥管理#macOS 系统#方法2:临时设置(仅当前终端有效)#{1}":[124,125],"##API密钥管理#macOS 系统#方法3:永久设置":[126,132],"##API密钥管理#macOS 系统#方法3:永久设置#{1}":[128,128],"##API密钥管理#macOS 系统#方法3:永久设置#{2}":[129,130],"##API密钥管理#macOS 系统#方法3:永久设置#{3}":[131,132],"##API密钥管理#Linux 系统":[133,149],"##API密钥管理#Linux 系统#方法1:配置settings.json":[135,138],"##API密钥管理#Linux 系统#方法1:配置settings.json#{1}":[137,138],"##API密钥管理#Linux 系统#方法2:临时设置(仅当前终端有效)":[139,142],"##API密钥管理#Linux 系统#方法2:临时设置(仅当前终端有效)#{1}":[141,142],"##API密钥管理#Linux 系统#方法3:永久设置":[143,149],"##API密钥管理#Linux 系统#方法3:永久设置#{1}":[145,145],"##API密钥管理#Linux 系统#方法3:永久设置#{2}":[146,147],"##API密钥管理#Linux 系统#方法3:永久设置#{3}":[148,149],"##API密钥管理#通用验证方法":[150,152],"##API密钥管理#通用验证方法#{1}":[152,152]},"outlinks":[],"metadata":{"title":"API密钥管理 - NEW CLI","source":"https://foxcode.rjj.cc/api-keys","author":null,"published":null,"created":"2025-12-26","description":"创建和管理您的API访问密钥","tags":["#clippings"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/ReadItLater_Inbox_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson b/.smart-env/multi/ReadItLater_Inbox_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson deleted file mode 100644 index cef7c13..0000000 --- a/.smart-env/multi/ReadItLater_Inbox_MiniCPM-oREADME_zh_md_at_main_·_OpenBMBMiniCPM-o_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:ReadItLater Inbox/MiniCPM-oREADME_zh.md at main · OpenBMBMiniCPM-o.md": {"path":"ReadItLater Inbox/MiniCPM-oREADME_zh.md at main · OpenBMBMiniCPM-o.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"es4t2r","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1740451633000,"size":65948,"at":1766986877914,"hash":"es4t2r"},"blocks":{"#":[1,2],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)":[3,410],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#{1}":[5,6],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#{2}":[7,8],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#{3}":[9,11],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志":[12,63],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志#{1}":[14,15],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶":[16,63],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{1}":[18,19],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{2}":[20,21],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{3}":[22,23],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{4}":[24,25],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{5}":[26,27],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{6}":[28,29],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{7}":[30,31],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{8}":[32,33],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{9}":[34,35],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{10}":[36,37],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{11}":[38,41],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{12}":[42,43],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{13}":[44,44],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{14}":[45,45],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{15}":[46,46],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{16}":[47,47],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{17}":[48,48],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{18}":[49,49],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{19}":[50,50],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{20}":[51,51],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{21}":[52,52],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{22}":[53,53],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{23}":[54,54],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{24}":[55,55],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{25}":[56,56],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{26}":[57,57],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{27}":[58,58],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{28}":[59,59],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{29}":[60,60],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{30}":[61,61],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#更新日志##📌 置顶#{31}":[62,63],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录":[64,241],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{1}":[66,67],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{2}":[68,68],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{3}":[69,69],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{4}":[70,70],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{5}":[71,84],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{6}":[85,85],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{7}":[86,86],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{8}":[87,88],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{9}":[89,90],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{10}":[91,92],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{11}":[93,94],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{12}":[95,96],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{13}":[97,98],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{14}":[99,100],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{15}":[101,103],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{16}":[104,105],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{17}":[106,106],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{18}":[107,107],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{19}":[108,109],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#{20}":[110,111],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#性能评估":[112,229],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#性能评估#{1}":[114,229],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#典型示例":[230,241],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#目录#典型示例#{1}":[232,241],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6":[242,369],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{1}":[244,247],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{2}":[248,249],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{3}":[250,251],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{4}":[252,253],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{5}":[254,255],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{6}":[256,257],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#{7}":[258,260],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#性能评估":[261,353],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#性能评估#{1}":[263,353],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#典型示例":[354,369],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#MiniCPM-V 2.6#典型示例#{1}":[356,369],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#历史版本模型":[370,380],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#历史版本模型#{1}":[372,380],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗":[381,410],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#{1}":[383,386],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#Online Demo":[387,392],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#Online Demo#{1}":[389,392],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#本地 WebUI Demo":[393,410],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{1}":[395,400],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{2}":[401,402],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{3}":[403,408],"#[MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o](https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md)#Chat with Our Demo on Gradio 🤗#本地 WebUI Demo#{4}":[409,410],"#Make sure Node and PNPM is installed.":[411,416],"#Make sure Node and PNPM is installed.#{1}":[412,416],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.":[417,737],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#{1}":[418,432],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理":[433,737],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#{1}":[435,436],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#模型库":[437,451],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#模型库#{1}":[439,451],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话":[452,737],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#{1}":[454,502],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#多图对话":[503,529],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#多图对话#{1}":[505,529],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#少样本上下文对话":[530,563],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#少样本上下文对话#{1}":[532,563],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#视频对话":[564,616],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#视频对话#{1}":[566,616],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话":[617,737],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#{1}":[619,634],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick":[635,656],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{1}":[637,640],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{2}":[641,642],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#Mimick#{3}":[643,656],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#可配置声音的语音对话":[657,700],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#可配置声音的语音对话#{1}":[659,700],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#更多语音任务":[701,737],"#为https创建自签名证书, 要申请浏览器摄像头和麦克风权限须启动https.#推理#多轮对话#语音对话#更多语音任务#{1}":[703,737],"#在新闻中,一个年轻男性兴致勃勃地说:“祝福亲爱的祖国母亲美丽富强!”他用低音调和低音量,慢慢地说出了这句话。":[738,738],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.":[739,1055],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#{1}":[740,763],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.###多模态流式交互":[764,900],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.###多模态流式交互#{1}":[766,900],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##多卡推理":[901,906],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##多卡推理#{1}":[903,906],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##Mac 推理":[907,940],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##Mac 推理#{1}":[909,940],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理":[941,955],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{1}":[943,950],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{2}":[951,952],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{3}":[953,953],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.##基于 llama.cpp、ollama、vLLM 的高效推理#{4}":[954,955],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调":[956,991],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#{1}":[958,959],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#简易微调":[960,967],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#简易微调#{1}":[962,967],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 Align-Anything":[968,975],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 Align-Anything#{1}":[970,975],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 LLaMA-Factory":[976,983],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 LLaMA-Factory#{1}":[978,983],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 SWIFT 框架":[984,991],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#微调#使用 SWIFT 框架#{1}":[986,991],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#FAQs":[992,997],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#FAQs#{1}":[994,997],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性":[998,1007],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{1}":[1000,1003],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{2}":[1004,1004],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{3}":[1005,1005],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型局限性#{4}":[1006,1007],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议":[1008,1015],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{1}":[1010,1011],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{2}":[1012,1012],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{3}":[1013,1013],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#模型协议#{4}":[1014,1015],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#声明":[1016,1023],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#声明#{1}":[1018,1023],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#机构":[1024,1029],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#机构#{1}":[1026,1029],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#🌟 Star History":[1030,1035],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#🌟 Star History#{1}":[1032,1035],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#支持技术和其他多模态项目":[1036,1043],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#支持技术和其他多模态项目#{1}":[1038,1043],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#引用":[1044,1055],"#Delighting in a surprised tone, an adult male with low pitch and low volume comments:\"One even gave my little dog a biscuit\" This dialogue takes place at a leisurely pace, delivering a sense of excitement and surprise in the context.#引用#{1}":[1046,1055]},"outlinks":[{"title":"Article","target":"Article","line":1},{"title":"ReadItLater","target":"ReadItLater","line":1},{"title":"MiniCPM-o/README_zh.md at main · OpenBMB/MiniCPM-o","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md","line":3},{"title":"这里","target":"https://openbmb.notion.site/MiniCPM-o-2-6-A-GPT-4o-Level-MLLM-for-Vision-Speech-and-Multimodal-Live-Streaming-on-Your-Phone-185ede1b7a558042b5d5e45e6b237da9","line":20},{"title":"Align-Anything","target":"https://github.com/PKU-Alignment/align-anything","line":22},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-omni/examples/llava/README-minicpmo2.6.md","line":24},{"title":"vllm","target":"https://github.com/OpenBMB/MiniCPM-o?tab=readme-ov-file#efficient-inference-with-llamacpp-ollama-vllm","line":24},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":24},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-int4","line":28},{"title":"官方仓库","target":"https://github.com/ggerganov/llama.cpp","line":32},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":32},{"title":"这里","target":"https://arxiv.org/abs/2408.01800","line":36},{"title":"这里","target":"https://huggingface.co/spaces/openbmb/MiniCPM-Llama3-V-2_5","line":38},{"title":"微调文档","target":"https://github.com/OpenBMB/MiniCPM-V/tree/main/finetune","line":44},{"title":"微调","target":"https://github.com/modelscope/ms-swift/issues/1613","line":45},{"title":"官方仓库","target":"https://github.com/ggerganov/llama.cpp","line":46},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf/tree/main","line":46},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":47},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-V/blob/main/docs/inference_on_multiple_gpus.md","line":48},{"title":"这里","target":"https://github.com/OpenBMB/MiniCPM-V/tree/main/finetune#model-fine-tuning-memory-usage-statistics","line":49},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-v2.5/examples/minicpmv/README.md","line":50},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/tree/minicpm-v2.5/examples/minicpm-v2.5","line":50},{"title":"这里","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf/tree/main","line":50},{"title":"支持流式输出和自定义系统提示词","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5#usage","line":51},{"title":"llama.cpp","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#llamacpp-%E9%83%A8%E7%BD%B2","line":52},{"title":"gguf","target":"https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5-gguf","line":52},{"title":"这里","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/compare_with_phi-3_vision.md","line":53},{"title":"简易微调","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/finetune/readme.md","line":54},{"title":"高效推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%89%8B%E6%9C%BA%E7%AB%AF%E9%83%A8%E7%BD%B2","line":54},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":55},{"title":"demo","target":"https://huggingface.co/spaces/openbmb/MiniCPM-V-2","line":56},{"title":"WebUI Demo","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0webui-demo%E9%83%A8%E7%BD%B2","line":57},{"title":"微调","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v-2%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":58},{"title":"这里","target":"https://openbmb.vercel.app/minicpm-v-2","line":59},{"title":"OpenCompass","target":"https://rank.opencompass.org.cn/leaderboard-multimodal","line":59},{"title":"Jintao","target":"https://github.com/Jintao-Huang","line":60},{"title":"微调","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":60},{"title":"MiniCPM-o 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#minicpm-o-26","line":68},{"title":"MiniCPM-V 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#minicpm-v-26","line":69},{"title":"Chat with Our Demo on Gradio 🤗","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#chat-with-our-demo-on-gradio-","line":70},{"title":"推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%8E%A8%E7%90%86","line":71},{"title":"模型库","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%A8%A1%E5%9E%8B%E5%BA%93","line":72},{"title":"多轮对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E8%BD%AE%E5%AF%B9%E8%AF%9D","line":73},{"title":"多图对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E5%9B%BE%E5%AF%B9%E8%AF%9D","line":74},{"title":"少样本上下文对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%B0%91%E6%A0%B7%E6%9C%AC%E4%B8%8A%E4%B8%8B%E6%96%87%E5%AF%B9%E8%AF%9D","line":75},{"title":"视频对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E8%A7%86%E9%A2%91%E5%AF%B9%E8%AF%9D","line":76},{"title":"语音对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E8%AF%AD%E9%9F%B3%E5%AF%B9%E8%AF%9D","line":77},{"title":"Mimick","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#mimick","line":78},{"title":"可配置声音的语音对话","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%8F%AF%E9%85%8D%E7%BD%AE%E5%A3%B0%E9%9F%B3%E7%9A%84%E8%AF%AD%E9%9F%B3%E5%AF%B9%E8%AF%9D","line":79},{"title":"更多语音任务","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9B%B4%E5%A4%9A%E8%AF%AD%E9%9F%B3%E4%BB%BB%E5%8A%A1","line":80},{"title":"多模态流式交互","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E6%A8%A1%E6%80%81%E6%B5%81%E5%BC%8F%E4%BA%A4%E4%BA%92","line":81},{"title":"多卡推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%A4%9A%E5%8D%A1%E6%8E%A8%E7%90%86","line":82},{"title":"Mac 推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#mac-%E6%8E%A8%E7%90%86","line":83},{"title":"基于 llama.cpp、ollama、vLLM 的高效推理","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%9F%BA%E4%BA%8E-llamacppollamavllm-%E7%9A%84%E9%AB%98%E6%95%88%E6%8E%A8%E7%90%86","line":84},{"title":"微调","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%BE%AE%E8%B0%83","line":85},{"title":"FAQs","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#faqs","line":86},{"title":"模型局限性","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%A8%A1%E5%9E%8B%E5%B1%80%E9%99%90%E6%80%A7","line":87},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM","line":97},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V/","line":97},{"title":"RLHF-V","target":"https://rlhf-v.github.io/","line":97},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpm-omni/examples/llava/README-minicpmo2.6.md","line":101},{"title":"LLaMA-Factory","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/llamafactory_train_and_infer.md","line":101},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E5%9F%BA%E4%BA%8E-llamacppollamavllm-%E7%9A%84%E9%AB%98%E6%95%88%E6%8E%A8%E7%90%86","line":101},{"title":"Gradio","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0-webui-demo-","line":101},{"title":"GGUF","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":101},{"title":"int4","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":101},{"title":"demo","target":"https://minicpm-omni-webdemo-us.modelbest.cn/","line":101},{"title":"![","target":"ReadItLater Inbox/assets/minicpm-o-26-framework-v2.png","line":110},{"title":"![","target":"ReadItLater Inbox/assets/radar.jpg","line":116},{"title":"AudioEvals","target":"https://github.com/OpenBMB/UltraEval-Audio","line":195},{"title":"![","target":"ReadItLater Inbox/assets/2dot6_o_demo_video_img.png","line":236},{"title":"![bike","target":"ReadItLater Inbox/assets/bike-1.png","line":238},{"title":"![diagram","target":"ReadItLater Inbox/assets/diagram.png","line":238},{"title":"![math","target":"ReadItLater Inbox/assets/math.png","line":238},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM","line":254},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V/","line":254},{"title":"demo","target":"http://120.92.209.146:8887/","line":258},{"title":"llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/blob/minicpmv-main/examples/llava/README-minicpmv2.6.md","line":258},{"title":"Gradio","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#%E6%9C%AC%E5%9C%B0-webui-demo-","line":258},{"title":"vLLM","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#vllm-%E9%83%A8%E7%BD%B2-","line":258},{"title":"ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":258},{"title":"GGUF","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":258},{"title":"int4","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":258},{"title":"![","target":"ReadItLater Inbox/assets/radar_final.png","line":265},{"title":"![Bike","target":"ReadItLater Inbox/assets/Bike.png","line":358},{"title":"![Code","target":"ReadItLater Inbox/assets/Code.png","line":358},{"title":"![medal","target":"ReadItLater Inbox/assets/medal.png","line":358},{"title":"![Mem","target":"ReadItLater Inbox/assets/Mem.png","line":358},{"title":"![Menu","target":"ReadItLater Inbox/assets/Menu-1.png","line":358},{"title":"![elec","target":"ReadItLater Inbox/assets/elec.png","line":362},{"title":"![Menu","target":"ReadItLater Inbox/assets/Menu.png","line":362},{"title":"![","target":"ReadItLater Inbox/assets/ai.gif","line":366},{"title":"![","target":"ReadItLater Inbox/assets/beer.gif","line":366},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_llama3_v2dot5.md","line":376},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_v2.md","line":377},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/minicpm_v1.md","line":378},{"title":"文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/omnilmm.md","line":379},{"title":"![","target":"https://camo.githubusercontent.com/0aad2cc35d9b929ec7344ece3bbe7884c9618b501d29c029fffc324932e3f50d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f67726164696f2d6170702f67726164696f","line":385},{"title":"MiniCPM-V 2.6","target":"http://120.92.209.146:8887/","line":391},{"title":"MiniCPM-Llama3-V 2.5","target":"https://huggingface.co/spaces/openbmb/MiniCPM-Llama3-V-2_5","line":391},{"title":"MiniCPM-V 2.0","target":"https://huggingface.co/spaces/openbmb/MiniCPM-V-2","line":391},{"title":"文档","target":"https://modelbest.feishu.cn/wiki/RnjjwnUT7idMSdklQcacd2ktnyN","line":397},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6","line":443},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":443},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-gguf","line":444},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":444},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-o-2_6-int4","line":445},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":445},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6","line":446},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":446},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-gguf","line":447},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":447},{"title":"🤗","target":"https://huggingface.co/openbmb/MiniCPM-V-2_6-int4","line":448},{"title":"![","target":"ReadItLater Inbox/assets/modelscope_logo.png","line":448},{"title":"历史版本模型","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/README_zh.md#legacy-models","line":450},{"title":"![","target":"ReadItLater Inbox/assets/show_demo.jpg","line":460},{"title":"教程","target":"https://github.com/OpenBMB/MiniCPM-V/blob/main/docs/inference_on_multiple_gpus.md","line":905},{"title":"我们的fork llama.cpp","target":"https://github.com/OpenBMB/llama.cpp/tree/minicpmv-main/examples/llava/README-minicpmv2.6.md","line":945},{"title":"我们的fork ollama","target":"https://github.com/OpenBMB/ollama/blob/minicpm-v2.6/examples/minicpm-v2.6/README.md","line":947},{"title":"图文示例","target":"https://docs.vllm.ai/en/latest/getting_started/examples/vision_language.html","line":953},{"title":"音频示例","target":"https://docs.vllm.ai/en/latest/getting_started/examples/audio_language.html","line":954},{"title":"参考文档","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/finetune/readme.md","line":966},{"title":"Align-Anything","target":"https://github.com/PKU-Alignment/align-anything","line":972},{"title":"数据集、模型和评测","target":"https://huggingface.co/datasets/PKU-Alignment/align-anything","line":972},{"title":"MiniCPM-o 2.6","target":"https://github.com/PKU-Alignment/align-anything/tree/main/scripts","line":974},{"title":"MiniCPM-o 2.6 | MiniCPM-V 2.6","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/llamafactory_train_and_infer.md","line":982},{"title":"MiniCPM-V 2.6","target":"https://github.com/modelscope/ms-swift/issues/1613","line":990},{"title":"MiniCPM-V 2.0","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v-2%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":990},{"title":"MiniCPM-V 1.0","target":"https://github.com/modelscope/swift/blob/main/docs/source/Multi-Modal/minicpm-v%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md","line":990},{"title":"FAQs","target":"https://github.com/OpenBMB/MiniCPM-o/blob/main/docs/faqs.md","line":996},{"title":"Apache-2.0","target":"https://github.com/OpenBMB/MiniCPM/blob/main/LICENSE","line":1012},{"title":"“MiniCPM模型商用许可协议.md”","target":"https://github.com/OpenBMB/MiniCPM/blob/main/MiniCPM%E6%A8%A1%E5%9E%8B%E5%95%86%E7%94%A8%E8%AE%B8%E5%8F%AF%E5%8D%8F%E8%AE%AE.md","line":1013},{"title":"“问卷”","target":"https://modelbest.feishu.cn/share/base/form/shrcnpV5ZT9EJ6xYjh3Kx0J6v8g","line":1014},{"title":"Star History Chart","target":"https://camo.githubusercontent.com/81c0177bdfeaa118be4e602dea7caac117e91c835e412c3750f74290f21d6150/68747470733a2f2f6170692e737461722d686973746f72792e636f6d2f7376673f7265706f733d4f70656e424d422f4d696e6943504d2d6f26747970653d44617465","line":1034,"embedded":true},{"title":"VisCPM","target":"https://github.com/OpenBMB/VisCPM/tree/main","line":1042},{"title":"RLAIF-V","target":"https://github.com/RLHF-V/RLAIF-V","line":1042},{"title":"RLHF-V","target":"https://github.com/RLHF-V/RLHF-V","line":1042},{"title":"LLaVA-UHD","target":"https://github.com/thunlp/LLaVA-UHD","line":1042}],"metadata":{"tags":["#Try"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[497,501]]}, \ No newline at end of file diff --git a/.smart-env/multi/ReadItLater_Inbox_Note_2024-12-31_15-23-42_md.ajson b/.smart-env/multi/ReadItLater_Inbox_Note_2024-12-31_15-23-42_md.ajson deleted file mode 100644 index bd6361d..0000000 --- a/.smart-env/multi/ReadItLater_Inbox_Note_2024-12-31_15-23-42_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:ReadItLater Inbox/Note 2024-12-31 15-23-42.md": {"path":"ReadItLater Inbox/Note 2024-12-31 15-23-42.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"sxw1u8","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1735629822000,"size":33,"at":1766986877914,"hash":"sxw1u8"},"blocks":{"#":[1,3]},"outlinks":[{"title":"ReadItLater","target":"ReadItLater","line":1},{"title":"Textsnippet","target":"Textsnippet","line":1}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/ReadItLater_Inbox_Note_2025-12-01_09-50-38_md.ajson b/.smart-env/multi/ReadItLater_Inbox_Note_2025-12-01_09-50-38_md.ajson deleted file mode 100644 index ef920e4..0000000 --- a/.smart-env/multi/ReadItLater_Inbox_Note_2025-12-01_09-50-38_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:ReadItLater Inbox/Note 2025-12-01 09-50-38.md": {"path":"ReadItLater Inbox/Note 2025-12-01 09-50-38.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"sxw1u8","at":1766986877788},"class_name":"SmartSource","last_import":{"mtime":1764553838172,"size":33,"at":1766986877914,"hash":"sxw1u8"},"blocks":{"#":[1,3]},"outlinks":[{"title":"ReadItLater","target":"ReadItLater","line":1},{"title":"Textsnippet","target":"Textsnippet","line":1}],"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_activeNote_把software下的ai和personal下的ai内容整理合并一下@20251205_104718_md.ajson b/.smart-env/multi/copilot_copilot-conversations_activeNote_把software下的ai和personal下的ai内容整理合并一下@20251205_104718_md.ajson deleted file mode 100644 index c7996c4..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_activeNote_把software下的ai和personal下的ai内容整理合并一下@20251205_104718_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/activeNote_把software下的ai和personal下的ai内容整理合并一下@20251205_104718.md": {"path":"copilot/copilot-conversations/activeNote_把software下的ai和personal下的ai内容整理合并一下@20251205_104718.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"6cjnp3","at":1766986877790},"class_name":"SmartSource","last_import":{"mtime":1764902905790,"size":1681,"at":1766986877915,"hash":"6cjnp3"},"blocks":{"#---frontmatter---":[1,7],"#":[9,22],"##{1}":[19,22],"##建议的合并结构":[23,47],"##建议的合并结构#{1}":[25,26],"##建议的合并结构#1. API 密钥管理(合并到统一配置)":[27,31],"##建议的合并结构#1. API 密钥管理(合并到统一配置)#{1}":[28,28],"##建议的合并结构#1. API 密钥管理(合并到统一配置)#{2}":[29,29],"##建议的合并结构#1. API 密钥管理(合并到统一配置)#{3}":[30,31],"##建议的合并结构#2. AI 服务分类":[32,42],"##建议的合并结构#2. AI 服务分类#{1}":[33,37],"##建议的合并结构#2. AI 服务分类#{2}":[38,42],"##建议的合并结构#3. 使用场景与配置":[43,47],"##建议的合并结构#3. 使用场景与配置#{1}":[44,44],"##建议的合并结构#3. 使用场景与配置#{2}":[45,45],"##建议的合并结构#3. 使用场景与配置#{3}":[46,47],"##下一步":[48,56],"##下一步#{1}":[50,50],"##下一步#{2}":[51,51],"##下一步#{3}":[52,52],"##下一步#{4}":[53,54],"##下一步#{5}":[55,56]},"outlinks":[{"title":"openrouter","target":"openrouter","line":19}],"metadata":{"epoch":1764902838833,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","tags":["#copilot-conversation"],"topic":"合并AI笔记"},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_activeNote_根据现在的内容,先整理一份出来@20251129_101308_md.ajson b/.smart-env/multi/copilot_copilot-conversations_activeNote_根据现在的内容,先整理一份出来@20251129_101308_md.ajson deleted file mode 100644 index 5cbb537..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_activeNote_根据现在的内容,先整理一份出来@20251129_101308_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/activeNote_根据现在的内容,先整理一份出来@20251129_101308.md": {"path":"copilot/copilot-conversations/activeNote_根据现在的内容,先整理一份出来@20251129_101308.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"535mzr","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1764383646000,"size":10499,"at":1766986878039,"hash":"535mzr"},"blocks":{"#---frontmatter---":[1,9],"#":[11,22],"##📝 职业综述":[23,31],"##📝 职业综述#{1}":[25,25],"##📝 职业综述#{2}":[26,26],"##📝 职业综述#{3}":[27,27],"##📝 职业综述#{4}":[28,29],"##📝 职业综述#{5}":[30,31],"##🛠 核心技术栈":[32,57],"##🛠 核心技术栈#{1}":[34,35],"##🛠 核心技术栈#{2}":[36,36],"##🛠 核心技术栈#{3}":[37,37],"##🛠 核心技术栈#{4}":[38,39],"##🛠 核心技术栈#{5}":[40,41],"##🛠 核心技术栈#{6}":[42,42],"##🛠 核心技术栈#{7}":[43,44],"##🛠 核心技术栈#{8}":[45,46],"##🛠 核心技术栈#{9}":[47,47],"##🛠 核心技术栈#{10}":[48,49],"##🛠 核心技术栈#{11}":[50,51],"##🛠 核心技术栈#{12}":[52,52],"##🛠 核心技术栈#{13}":[53,53],"##🛠 核心技术栈#{14}":[54,55],"##🛠 核心技术栈#{15}":[56,57],"##💼 工作经历":[58,99],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人":[60,72],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{1}":[62,65],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{2}":[66,66],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{3}":[67,67],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{4}":[68,68],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{5}":[69,70],"##💼 工作经历#**广州智能科技发展有限公司** | 架构师 / 技术负责人#{6}":[71,72],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师":[73,82],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{1}":[75,76],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{2}":[77,77],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{3}":[78,78],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{4}":[79,80],"##💼 工作经历#**广东泰信实业有限公司** | 软件工程师#{5}":[81,82],"##💼 工作经历#**点石资讯有限公司** | 软件工程师":[83,91],"##💼 工作经历#**点石资讯有限公司** | 软件工程师#{1}":[85,86],"##💼 工作经历#**点石资讯有限公司** | 软件工程师#{2}":[87,87],"##💼 工作经历#**点石资讯有限公司** | 软件工程师#{3}":[88,89],"##💼 工作经历#**点石资讯有限公司** | 软件工程师#{4}":[90,91],"##💼 工作经历#**早期职业经历 (1998-2000)**":[92,99],"##💼 工作经历#**早期职业经历 (1998-2000)**#{1}":[94,94],"##💼 工作经历#**早期职业经历 (1998-2000)**#{2}":[95,95],"##💼 工作经历#**早期职业经历 (1998-2000)**#{3}":[96,97],"##💼 工作经历#**早期职业经历 (1998-2000)**#{4}":[98,99],"##🏆 代表性项目":[100,141],"##🏆 代表性项目#{1}":[102,103],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**":[104,113],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{1}":[106,106],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{2}":[107,107],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{3}":[108,108],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{4}":[109,109],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{5}":[110,111],"##🏆 代表性项目#**1. 广州新白云机场信息系统集成 (AODB/集成)**#{6}":[112,113],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**":[114,123],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{1}":[116,116],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{2}":[117,117],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{3}":[118,118],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{4}":[119,119],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{5}":[120,121],"##🏆 代表性项目#**2. 广州亚运会 / 深圳大运会 信息中心系统**#{6}":[122,123],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**":[124,132],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{1}":[126,126],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{2}":[127,127],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{3}":[128,128],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{4}":[129,130],"##🏆 代表性项目#**3. 天津/沈阳 机场二期扩建工程**#{5}":[131,132],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**":[133,141],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{1}":[135,135],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{2}":[136,136],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{3}":[137,137],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{4}":[138,139],"##🏆 代表性项目#**4. 南京智慧城市展示与控制系统**#{5}":[140,141],"##🎓 教育背景":[142,151],"##🎓 教育背景#{1}":[144,146],"##🎓 教育背景#{2}":[147,147],"##🎓 教育背景#{3}":[148,149],"##🎓 教育背景#{4}":[150,151],"##🗣 语言与兴趣":[152,252],"##🗣 语言与兴趣#{1}":[154,154],"##🗣 语言与兴趣#{2}":[155,155],"##🗣 语言与兴趣#{3}":[156,165],"##🗣 语言与兴趣#{4}":[166,166],"##🗣 语言与兴趣#{5}":[167,170],"##🗣 语言与兴趣#{6}":[171,171],"##🗣 语言与兴趣#{7}":[172,173],"##🗣 语言与兴趣#{8}":[174,176],"##🗣 语言与兴趣#{9}":[177,177],"##🗣 语言与兴趣#{10}":[178,178],"##🗣 语言与兴趣#{11}":[179,180],"##🗣 语言与兴趣#{12}":[181,252]},"outlinks":[],"metadata":{"epoch":1764382388758,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"内容整理","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[191,200],[204,213],[223,232],[242,251]]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_修正明显问题_更新资料:_教育经历_华南理工大学_985_19949-1998@20251118_203134_md.ajson b/.smart-env/multi/copilot_copilot-conversations_修正明显问题_更新资料:_教育经历_华南理工大学_985_19949-1998@20251118_203134_md.ajson deleted file mode 100644 index 7543cd4..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_修正明显问题_更新资料:_教育经历_华南理工大学_985_19949-1998@20251118_203134_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/修正明显问题_更新资料:_教育经历_华南理工大学_985_19949-1998@20251118_203134.md": {"path":"copilot/copilot-conversations/修正明显问题_更新资料:_教育经历_华南理工大学_985_19949-1998@20251118_203134.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1kxl4vd","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763476321000,"size":18416,"at":1766986878039,"hash":"1kxl4vd"},"blocks":{"#---frontmatter---":[1,9],"#":[11,32],"##{1}":[24,24],"##{2}":[25,25],"##{3}":[26,26],"##{4}":[27,32],"#冯志强":[33,281],"#冯志强#{1}":[35,36],"#冯志强#{2}":[37,37],"#冯志强#{3}":[38,39],"#冯志强#{4}":[40,41],"#冯志强#求职意向":[42,49],"#冯志强#求职意向#{1}":[44,44],"#冯志强#求职意向#{2}":[45,45],"#冯志强#求职意向#{3}":[46,47],"#冯志强#求职意向#{4}":[48,49],"#冯志强#个人优势":[50,59],"#冯志强#个人优势#{1}":[52,52],"#冯志强#个人优势#{2}":[53,53],"#冯志强#个人优势#{3}":[54,54],"#冯志强#个人优势#{4}":[55,55],"#冯志强#个人优势#{5}":[56,57],"#冯志强#个人优势#{6}":[58,59],"#冯志强#工作经历":[60,140],"#冯志强#工作经历#广州智能科技发展有限公司":[62,82],"#冯志强#工作经历#广州智能科技发展有限公司#{1}":[64,67],"#冯志强#工作经历#广州智能科技发展有限公司#{2}":[68,68],"#冯志强#工作经历#广州智能科技发展有限公司#{3}":[69,69],"#冯志强#工作经历#广州智能科技发展有限公司#{4}":[70,70],"#冯志强#工作经历#广州智能科技发展有限公司#{5}":[71,71],"#冯志强#工作经历#广州智能科技发展有限公司#{6}":[72,73],"#冯志强#工作经历#广州智能科技发展有限公司#{7}":[74,75],"#冯志强#工作经历#广州智能科技发展有限公司#{8}":[76,76],"#冯志强#工作经历#广州智能科技发展有限公司#{9}":[77,77],"#冯志强#工作经历#广州智能科技发展有限公司#{10}":[78,78],"#冯志强#工作经历#广州智能科技发展有限公司#{11}":[79,80],"#冯志强#工作经历#广州智能科技发展有限公司#{12}":[81,82],"#冯志强#工作经历#广东泰信实业有限公司":[83,95],"#冯志强#工作经历#广东泰信实业有限公司#{1}":[85,88],"#冯志强#工作经历#广东泰信实业有限公司#{2}":[89,89],"#冯志强#工作经历#广东泰信实业有限公司#{3}":[90,90],"#冯志强#工作经历#广东泰信实业有限公司#{4}":[91,91],"#冯志强#工作经历#广东泰信实业有限公司#{5}":[92,93],"#冯志强#工作经历#广东泰信实业有限公司#{6}":[94,95],"#冯志强#工作经历#点石资讯有限公司":[96,107],"#冯志强#工作经历#点石资讯有限公司#{1}":[98,101],"#冯志强#工作经历#点石资讯有限公司#{2}":[102,102],"#冯志强#工作经历#点石资讯有限公司#{3}":[103,103],"#冯志强#工作经历#点石资讯有限公司#{4}":[104,105],"#冯志强#工作经历#点石资讯有限公司#{5}":[106,107],"#冯志强#工作经历#昆明博通信息网络技术有限公司":[108,118],"#冯志强#工作经历#昆明博通信息网络技术有限公司#{1}":[110,113],"#冯志强#工作经历#昆明博通信息网络技术有限公司#{2}":[114,114],"#冯志强#工作经历#昆明博通信息网络技术有限公司#{3}":[115,116],"#冯志强#工作经历#昆明博通信息网络技术有限公司#{4}":[117,118],"#冯志强#工作经历#云南百姓服务网有限公司":[119,129],"#冯志强#工作经历#云南百姓服务网有限公司#{1}":[121,124],"#冯志强#工作经历#云南百姓服务网有限公司#{2}":[125,125],"#冯志强#工作经历#云南百姓服务网有限公司#{3}":[126,127],"#冯志强#工作经历#云南百姓服务网有限公司#{4}":[128,129],"#冯志强#工作经历#云南汇友系统集成有限公司":[130,140],"#冯志强#工作经历#云南汇友系统集成有限公司#{1}":[132,135],"#冯志强#工作经历#云南汇友系统集成有限公司#{2}":[136,136],"#冯志强#工作经历#云南汇友系统集成有限公司#{3}":[137,138],"#冯志强#工作经历#云南汇友系统集成有限公司#{4}":[139,140],"#冯志强#项目经验(节选)":[141,272],"#冯志强#项目经验(节选)#南京智慧城市项目":[143,159],"#冯志强#项目经验(节选)#南京智慧城市项目#{1}":[145,148],"#冯志强#项目经验(节选)#南京智慧城市项目#{2}":[149,149],"#冯志强#项目经验(节选)#南京智慧城市项目#{3}":[150,151],"#冯志强#项目经验(节选)#南京智慧城市项目#{4}":[152,153],"#冯志强#项目经验(节选)#南京智慧城市项目#{5}":[154,154],"#冯志强#项目经验(节选)#南京智慧城市项目#{6}":[155,155],"#冯志强#项目经验(节选)#南京智慧城市项目#{7}":[156,157],"#冯志强#项目经验(节选)#南京智慧城市项目#{8}":[158,159],"#冯志强#项目经验(节选)#深圳大运会软件系统":[160,175],"#冯志强#项目经验(节选)#深圳大运会软件系统#{1}":[162,165],"#冯志强#项目经验(节选)#深圳大运会软件系统#{2}":[166,167],"#冯志强#项目经验(节选)#深圳大运会软件系统#{3}":[168,169],"#冯志强#项目经验(节选)#深圳大运会软件系统#{4}":[170,170],"#冯志强#项目经验(节选)#深圳大运会软件系统#{5}":[171,171],"#冯志强#项目经验(节选)#深圳大运会软件系统#{6}":[172,173],"#冯志强#项目经验(节选)#深圳大运会软件系统#{7}":[174,175],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件":[176,190],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{1}":[178,181],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{2}":[182,183],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{3}":[184,185],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{4}":[186,186],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{5}":[187,188],"#冯志强#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{6}":[189,190],"#冯志强#项目经验(节选)#沈阳机场二期改造":[191,207],"#冯志强#项目经验(节选)#沈阳机场二期改造#{1}":[193,196],"#冯志强#项目经验(节选)#沈阳机场二期改造#{2}":[197,197],"#冯志强#项目经验(节选)#沈阳机场二期改造#{3}":[198,199],"#冯志强#项目经验(节选)#沈阳机场二期改造#{4}":[200,201],"#冯志强#项目经验(节选)#沈阳机场二期改造#{5}":[202,202],"#冯志强#项目经验(节选)#沈阳机场二期改造#{6}":[203,203],"#冯志强#项目经验(节选)#沈阳机场二期改造#{7}":[204,205],"#冯志强#项目经验(节选)#沈阳机场二期改造#{8}":[206,207],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成":[208,224],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{1}":[210,213],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{2}":[214,214],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{3}":[215,216],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{4}":[217,218],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{5}":[219,219],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{6}":[220,220],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{7}":[221,222],"#冯志强#项目经验(节选)#天津滨海国际机场系统集成#{8}":[223,224],"#冯志强#项目经验(节选)#番禺政府公文归档系统":[225,240],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{1}":[227,230],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{2}":[231,232],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{3}":[233,234],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{4}":[235,235],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{5}":[236,236],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{6}":[237,238],"#冯志强#项目经验(节选)#番禺政府公文归档系统#{7}":[239,240],"#冯志强#项目经验(节选)#广州软件蓝领施训系统":[241,256],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{1}":[243,246],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{2}":[247,248],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{3}":[249,250],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{4}":[251,251],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{5}":[252,252],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{6}":[253,254],"#冯志强#项目经验(节选)#广州软件蓝领施训系统#{7}":[255,256],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统":[257,272],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{1}":[259,262],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{2}":[263,264],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{3}":[265,266],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{4}":[267,267],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{5}":[268,268],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{6}":[269,270],"#冯志强#项目经验(节选)#广州市委秘书处公文分发系统#{7}":[271,272],"#冯志强#教育经历":[273,281],"#冯志强#教育经历#{1}":[275,275],"#冯志强#教育经历#{2}":[276,276],"#冯志强#教育经历#{3}":[277,277],"#冯志强#教育经历#{4}":[278,281],"#冯志强[2]":[282,667],"#冯志强[2]#{1}":[284,285],"#冯志强[2]#{2}":[286,286],"#冯志强[2]#{3}":[287,288],"#冯志强[2]#{4}":[289,290],"#冯志强[2]#求职意向":[291,298],"#冯志强[2]#求职意向#{1}":[293,293],"#冯志强[2]#求职意向#{2}":[294,294],"#冯志强[2]#求职意向#{3}":[295,296],"#冯志强[2]#求职意向#{4}":[297,298],"#冯志强[2]#个人优势":[299,308],"#冯志强[2]#个人优势#{1}":[301,301],"#冯志强[2]#个人优势#{2}":[302,302],"#冯志强[2]#个人优势#{3}":[303,303],"#冯志强[2]#个人优势#{4}":[304,304],"#冯志强[2]#个人优势#{5}":[305,306],"#冯志强[2]#个人优势#{6}":[307,308],"#冯志强[2]#工作经历":[309,383],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)":[311,331],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{1}":[313,316],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{2}":[317,317],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{3}":[318,318],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{4}":[319,319],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{5}":[320,320],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{6}":[321,322],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{7}":[323,324],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{8}":[325,325],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{9}":[326,326],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{10}":[327,327],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{11}":[328,329],"#冯志强[2]#工作经历#广州智能科技发展有限公司(民营)#{12}":[330,331],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)":[332,344],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{1}":[334,337],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{2}":[338,338],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{3}":[339,339],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{4}":[340,340],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{5}":[341,342],"#冯志强[2]#工作经历#广东泰信实业有限公司(国企)#{6}":[343,344],"#冯志强[2]#工作经历#点石资讯有限公司(合资)":[345,356],"#冯志强[2]#工作经历#点石资讯有限公司(合资)#{1}":[347,350],"#冯志强[2]#工作经历#点石资讯有限公司(合资)#{2}":[351,351],"#冯志强[2]#工作经历#点石资讯有限公司(合资)#{3}":[352,352],"#冯志强[2]#工作经历#点石资讯有限公司(合资)#{4}":[353,354],"#冯志强[2]#工作经历#点石资讯有限公司(合资)#{5}":[355,356],"#冯志强[2]#工作经历#昆明博通信息网络技术有限公司(民营)":[357,365],"#冯志强[2]#工作经历#昆明博通信息网络技术有限公司(民营)#{1}":[359,360],"#冯志强[2]#工作经历#昆明博通信息网络技术有限公司(民营)#{2}":[361,361],"#冯志强[2]#工作经历#昆明博通信息网络技术有限公司(民营)#{3}":[362,363],"#冯志强[2]#工作经历#昆明博通信息网络技术有限公司(民营)#{4}":[364,365],"#冯志强[2]#工作经历#云南百姓服务网有限公司(国企)":[366,374],"#冯志强[2]#工作经历#云南百姓服务网有限公司(国企)#{1}":[368,369],"#冯志强[2]#工作经历#云南百姓服务网有限公司(国企)#{2}":[370,370],"#冯志强[2]#工作经历#云南百姓服务网有限公司(国企)#{3}":[371,372],"#冯志强[2]#工作经历#云南百姓服务网有限公司(国企)#{4}":[373,374],"#冯志强[2]#工作经历#云南汇友系统集成有限公司(民营)":[375,383],"#冯志强[2]#工作经历#云南汇友系统集成有限公司(民营)#{1}":[377,378],"#冯志强[2]#工作经历#云南汇友系统集成有限公司(民营)#{2}":[379,379],"#冯志强[2]#工作经历#云南汇友系统集成有限公司(民营)#{3}":[380,381],"#冯志强[2]#工作经历#云南汇友系统集成有限公司(民营)#{4}":[382,383],"#冯志强[2]#项目经验(节选)":[384,544],"#冯志强[2]#项目经验(节选)#{1}":[386,387],"#冯志强[2]#项目经验(节选)#南京智慧城市项目":[388,404],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{1}":[390,393],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{2}":[394,394],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{3}":[395,396],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{4}":[397,398],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{5}":[399,399],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{6}":[400,400],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{7}":[401,402],"#冯志强[2]#项目经验(节选)#南京智慧城市项目#{8}":[403,404],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统":[405,420],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{1}":[407,410],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{2}":[411,412],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{3}":[413,414],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{4}":[415,415],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{5}":[416,416],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{6}":[417,418],"#冯志强[2]#项目经验(节选)#深圳大运会软件系统#{7}":[419,420],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件":[421,435],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{1}":[423,426],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{2}":[427,428],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{3}":[429,430],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{4}":[431,431],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{5}":[432,433],"#冯志强[2]#项目经验(节选)#广州亚运会 / 亚残运信息中心软件#{6}":[434,435],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造":[436,452],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{1}":[438,441],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{2}":[442,442],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{3}":[443,444],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{4}":[445,446],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{5}":[447,447],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{6}":[448,448],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{7}":[449,450],"#冯志强[2]#项目经验(节选)#沈阳机场二期改造#{8}":[451,452],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成":[453,469],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{1}":[455,458],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{2}":[459,459],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{3}":[460,461],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{4}":[462,463],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{5}":[464,464],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{6}":[465,465],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{7}":[466,467],"#冯志强[2]#项目经验(节选)#天津滨海国际机场系统集成#{8}":[468,469],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统":[470,489],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{1}":[472,475],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{2}":[476,479],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{3}":[480,483],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{4}":[484,487],"#冯志强[2]#项目经验(节选)#番禺政府公文归档 / 广州软件蓝领施训系统 / 广州市委秘书处公文分发系统#{5}":[488,489],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成":[490,511],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{1}":[492,495],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{2}":[496,496],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{3}":[497,498],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{4}":[499,500],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{5}":[501,501],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{6}":[502,502],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{7}":[503,504],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{8}":[505,506],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{9}":[507,507],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{10}":[508,509],"#冯志强[2]#项目经验(节选)#广州新白云机场系统集成#{11}":[510,511],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目":[512,527],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{1}":[514,517],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{2}":[518,518],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{3}":[519,520],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{4}":[521,522],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{5}":[523,523],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{6}":[524,525],"#冯志强[2]#项目经验(节选)#95148 体育彩票项目#{7}":[526,527],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)":[528,544],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{1}":[530,533],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{2}":[534,534],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{3}":[535,535],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{4}":[536,536],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{5}":[537,537],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{6}":[538,538],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{7}":[539,539],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{8}":[540,540],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{9}":[541,542],"#冯志强[2]#项目经验(节选)#其他互联网与增值业务项目(概括)#{10}":[543,544],"#冯志强[2]#教育经历":[545,553],"#冯志强[2]#教育经历#华南理工大学(985 高校)":[547,553],"#冯志强[2]#教育经历#华南理工大学(985 高校)#{1}":[549,549],"#冯志强[2]#教育经历#华南理工大学(985 高校)#{2}":[550,551],"#冯志强[2]#教育经历#华南理工大学(985 高校)#{3}":[552,553],"#冯志强[2]#技能特长":[554,569],"#冯志强[2]#技能特长#{1}":[556,557],"#冯志强[2]#技能特长#{2}":[558,558],"#冯志强[2]#技能特长#{3}":[559,559],"#冯志强[2]#技能特长#{4}":[560,561],"#冯志强[2]#技能特长#{5}":[562,563],"#冯志强[2]#技能特长#{6}":[564,564],"#冯志强[2]#技能特长#{7}":[565,565],"#冯志强[2]#技能特长#{8}":[566,567],"#冯志强[2]#技能特长#{9}":[568,569],"#冯志强[2]#证书":[570,575],"#冯志强[2]#证书#{1}":[572,573],"#冯志强[2]#证书#{2}":[574,575],"#冯志强[2]#兴趣爱好":[576,587],"#冯志强[2]#兴趣爱好#{1}":[578,578],"#冯志强[2]#兴趣爱好#{2}":[579,579],"#冯志强[2]#兴趣爱好#{3}":[580,580],"#冯志强[2]#兴趣爱好#{4}":[581,582],"#冯志强[2]#兴趣爱好#{5}":[583,587],"#冯志强[2]#✅ **优点**":[588,594],"#冯志强[2]#✅ **优点**#{1}":[590,590],"#冯志强[2]#✅ **优点**#{2}":[591,591],"#冯志强[2]#✅ **优点**#{3}":[592,592],"#冯志强[2]#✅ **优点**#{4}":[593,594],"#冯志强[2]#⚠️ **可优化之处**":[595,629],"#冯志强[2]#⚠️ **可优化之处**#1. **年龄表述建议调整**":[597,602],"#冯志强[2]#⚠️ **可优化之处**#1. **年龄表述建议调整**#{1}":[598,602],"#冯志强[2]#⚠️ **可优化之处**#2. **求职状态表述可更积极**":[603,608],"#冯志强[2]#⚠️ **可优化之处**#2. **求职状态表述可更积极**#{1}":[604,608],"#冯志强[2]#⚠️ **可优化之处**#3. **项目时间需精确**":[609,614],"#冯志强[2]#⚠️ **可优化之处**#3. **项目时间需精确**#{1}":[610,614],"#冯志强[2]#⚠️ **可优化之处**#4. **技能部分可更具体**":[615,624],"#冯志强[2]#⚠️ **可优化之处**#4. **技能部分可更具体**#{1}":[616,624],"#冯志强[2]#⚠️ **可优化之处**#5. **格式统一问题**":[625,629],"#冯志强[2]#⚠️ **可优化之处**#5. **格式统一问题**#{1}":[626,629],"#冯志强[2]#📌 **优化后的关键段落示例**":[630,667],"#冯志强[2]#📌 **优化后的关键段落示例**#{1}":[632,667]},"outlinks":[],"metadata":{"epoch":1763469094428,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"简历修正更新","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[599,601],[605,607],[611,613],[617,623],[632,664]]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_合并两个文件的内容_login_login-MacBook_Pro@20251117_150332_md.ajson b/.smart-env/multi/copilot_copilot-conversations_合并两个文件的内容_login_login-MacBook_Pro@20251117_150332_md.ajson deleted file mode 100644 index 3304a98..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_合并两个文件的内容_login_login-MacBook_Pro@20251117_150332_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/合并两个文件的内容_login_login-MacBook_Pro@20251117_150332.md": {"path":"copilot/copilot-conversations/合并两个文件的内容_login_login-MacBook_Pro@20251117_150332.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1j6zfia","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763363123410,"size":4209,"at":1766986878039,"hash":"1j6zfia"},"blocks":{"#---frontmatter---":[1,9],"#":[11,16],"##公司电脑":[17,33],"##公司电脑#RustDesk":[19,25],"##公司电脑#RustDesk#{1}":[20,25],"##公司电脑#openSUSE Desk":[26,33],"##公司电脑#openSUSE Desk#{1}":[27,33],"##VPN":[34,53],"##VPN#零信任账号":[36,41],"##VPN#零信任账号#{1}":[37,41],"##VPN#VPN服务器 112.94.64.30":[42,53],"##VPN#VPN服务器 112.94.64.30#{1}":[43,53],"##二期服务器":[54,94],"##二期服务器#二期堡垒机":[56,67],"##二期服务器#二期堡垒机#{1}":[57,67],"##二期服务器#二期服务器列表":[68,86],"##二期服务器#二期服务器列表#{1}":[69,86],"##二期服务器#二期数据库":[87,94],"##二期服务器#二期数据库#{1}":[88,94],"##三期测试服务器":[95,120],"##三期测试服务器#三期测试堡垒机":[97,106],"##三期测试服务器#三期测试堡垒机#{1}":[98,106],"##三期测试服务器#三期测试服务器":[107,120],"##三期测试服务器#三期测试服务器#{1}":[108,115],"##三期测试服务器#三期测试服务器#{2}":[116,116],"##三期测试服务器#三期测试服务器#{3}":[117,118],"##三期测试服务器#三期测试服务器#{4}":[119,120],"##三期正式服务器":[121,156],"##三期正式服务器#三期正式堡垒机":[123,136],"##三期正式服务器#三期正式堡垒机#{1}":[124,136],"##三期正式服务器#三期正式服务器":[137,156],"##三期正式服务器#三期正式服务器#{1}":[138,156],"##服务账号信息":[157,193],"##服务账号信息#Elasticsearch":[159,173],"##服务账号信息#Elasticsearch#{1}":[160,173],"##服务账号信息#Harbor":[174,180],"##服务账号信息#Harbor#{1}":[175,180],"##服务账号信息#Nacos":[181,186],"##服务账号信息#Nacos#{1}":[182,186],"##服务账号信息#达梦数据库":[187,193],"##服务账号信息#达梦数据库#{1}":[188,193],"##Rust Desktop":[194,199],"##Rust Desktop#{1}":[195,199]},"outlinks":[{"title":"login","target":"login","line":11},{"title":"login-MacBook Pro","target":"login-MacBook Pro","line":11}],"metadata":{"epoch":1763363012151,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"Merge Login Files","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[20,24],[27,30],[37,40],[43,50],[57,66],[69,85],[88,91],[98,105],[124,135],[160,172],[175,179],[182,185],[188,190],[195,198]]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_按照当前标准分析,并改进明显问题@20251119_075338_md.ajson b/.smart-env/multi/copilot_copilot-conversations_按照当前标准分析,并改进明显问题@20251119_075338_md.ajson deleted file mode 100644 index 778e661..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_按照当前标准分析,并改进明显问题@20251119_075338_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/按照当前标准分析,并改进明显问题@20251119_075338.md": {"path":"copilot/copilot-conversations/按照当前标准分析,并改进明显问题@20251119_075338.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"190x7sa","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763510219000,"size":7177,"at":1766986878039,"hash":"190x7sa"},"blocks":{"#---frontmatter---":[1,9],"#":[11,16],"###一、主要问题分析":[17,28],"###一、主要问题分析#{1}":[19,19],"###一、主要问题分析#{2}":[20,20],"###一、主要问题分析#{3}":[21,21],"###一、主要问题分析#{4}":[22,22],"###一、主要问题分析#{5}":[23,23],"###一、主要问题分析#{6}":[24,24],"###一、主要问题分析#{7}":[25,26],"###一、主要问题分析#{8}":[27,28],"###二、优化后的简历":[29,154],"###二、优化后的简历#{1}":[31,154],"###三、关键改进点":[155,167],"###三、关键改进点#{1}":[157,157],"###三、关键改进点#{2}":[158,158],"###三、关键改进点#{3}":[159,159],"###三、关键改进点#{4}":[160,160],"###三、关键改进点#{5}":[161,161],"###三、关键改进点#{6}":[162,162],"###三、关键改进点#{7}":[163,163],"###三、关键改进点#{8}":[164,165],"###三、关键改进点#{9}":[166,167]},"outlinks":[],"metadata":{"epoch":1763510018555,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"标准分析与改进","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[31,151]]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_按照当前的标准,帮我找出明显的问题@20251119_074424_md.ajson b/.smart-env/multi/copilot_copilot-conversations_按照当前的标准,帮我找出明显的问题@20251119_074424_md.ajson deleted file mode 100644 index 1d42135..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_按照当前的标准,帮我找出明显的问题@20251119_074424_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/按照当前的标准,帮我找出明显的问题@20251119_074424.md": {"path":"copilot/copilot-conversations/按照当前的标准,帮我找出明显的问题@20251119_074424.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"17sas08","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763509676000,"size":3349,"at":1766986878039,"hash":"17sas08"},"blocks":{"#---frontmatter---":[1,9],"#":[11,16],"##Major Problems":[17,33],"##Major Problems#{1}":[19,33],"##Moderate Problems":[34,46],"##Moderate Problems#{1}":[36,42],"##Moderate Problems#{2}":[43,43],"##Moderate Problems#{3}":[44,44],"##Moderate Problems#{4}":[45,46],"##Recommendations":[47,60],"##Recommendations#{1}":[48,48],"##Recommendations#{2}":[49,49],"##Recommendations#{3}":[50,50],"##Recommendations#{4}":[51,51],"##Recommendations#{5}":[52,52],"##Recommendations#{6}":[53,54],"##Recommendations##Sources":[55,60],"##Recommendations##Sources#{1}":[56,60]},"outlinks":[{"title":"2025","target":"2025","line":56},{"title":"2025","target":"2025","line":57},{"title":"2025","target":"2025","line":58},{"title":"2025","target":"2025","line":59}],"metadata":{"epoch":1763509464640,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"Identify Obvious Problems","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-conversations_检查一下这份简历,有没有明显的问题,列出来@20251118_164311_md.ajson b/.smart-env/multi/copilot_copilot-conversations_检查一下这份简历,有没有明显的问题,列出来@20251118_164311_md.ajson deleted file mode 100644 index ba8c59e..0000000 --- a/.smart-env/multi/copilot_copilot-conversations_检查一下这份简历,有没有明显的问题,列出来@20251118_164311_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-conversations/检查一下这份简历,有没有明显的问题,列出来@20251118_164311.md": {"path":"copilot/copilot-conversations/检查一下这份简历,有没有明显的问题,列出来@20251118_164311.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"11xl7zz","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763468982000,"size":10938,"at":1766986878039,"hash":"11xl7zz"},"blocks":{"#---frontmatter---":[1,9],"#":[11,16],"##严重问题":[17,31],"##严重问题#{1}":[19,21],"##严重问题#{2}":[22,24],"##严重问题#{3}":[25,28],"##严重问题#{4}":[29,31],"##中等问题":[32,49],"##中等问题#{1}":[34,37],"##中等问题#{2}":[38,40],"##中等问题#{3}":[41,43],"##中等问题#{4}":[44,46],"##中等问题#{5}":[47,49],"##细节问题":[50,71],"##细节问题#{1}":[52,54],"##细节问题#{2}":[55,57],"##细节问题#{3}":[58,60],"##细节问题#{4}":[61,71],"##修复后的简历":[72,293],"##修复后的简历#{1}":[74,293],"##主要修复内容":[294,319],"##主要修复内容#{1}":[296,296],"##主要修复内容#{2}":[297,297],"##主要修复内容#{3}":[298,298],"##主要修复内容#{4}":[299,299],"##主要修复内容#{5}":[300,300],"##主要修复内容#{6}":[301,301],"##主要修复内容#{7}":[302,303],"##主要修复内容#{8}":[304,319],"##教育背景":[320,338],"##教育背景#{1}":[322,322],"##教育背景#{2}":[323,323],"##教育背景#{3}":[324,325],"##教育背景#{4}":[326,330],"##教育背景#{5}":[331,331],"##教育背景#{6}":[332,332],"##教育背景#{7}":[333,333],"##教育背景#{8}":[334,338]},"outlinks":[],"metadata":{"epoch":1763455391820,"modelKey":"moonshotai/kimi-k2-thinking|3rd party (openai-format)","topic":"简历检查","tags":["#copilot-conversation"]},"task_lines":[],"tasks":{},"codeblock_ranges":[[74,290]]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Emojify_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Emojify_md.ajson deleted file mode 100644 index 8c6ff00..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Emojify_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Emojify.md": {"path":"copilot/copilot-custom-prompts/Emojify.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1o6fza6","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134028,"size":470,"at":1766986878039,"hash":"1o6fza6"},"blocks":{"#---frontmatter---":[1,7],"#":[8,13]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1050,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Explain_like_I_am_5_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Explain_like_I_am_5_md.ajson deleted file mode 100644 index 5d6147e..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Explain_like_I_am_5_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Explain like I am 5.md": {"path":"copilot/copilot-custom-prompts/Explain like I am 5.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"nkren2","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134027,"size":388,"at":1766986878039,"hash":"nkren2"},"blocks":{"#---frontmatter---":[1,7],"#":[8,12]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1040,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Fix_grammar_and_spelling_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Fix_grammar_and_spelling_md.ajson deleted file mode 100644 index 54978a5..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Fix_grammar_and_spelling_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Fix grammar and spelling.md": {"path":"copilot/copilot-custom-prompts/Fix grammar and spelling.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"16t0moh","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134023,"size":350,"at":1766986878039,"hash":"16t0moh"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1000,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Generate_glossary_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Generate_glossary_md.ajson deleted file mode 100644 index 6426956..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Generate_glossary_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Generate glossary.md": {"path":"copilot/copilot-custom-prompts/Generate glossary.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1fiuc3i","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134031,"size":353,"at":1766986878039,"hash":"1fiuc3i"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":false,"copilot-command-slash-enabled":false,"copilot-command-context-menu-order":1090,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Generate_table_of_contents_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Generate_table_of_contents_md.ajson deleted file mode 100644 index 662efd7..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Generate_table_of_contents_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Generate table of contents.md": {"path":"copilot/copilot-custom-prompts/Generate table of contents.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1a03e02","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134031,"size":357,"at":1766986878039,"hash":"1a03e02"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":false,"copilot-command-slash-enabled":false,"copilot-command-context-menu-order":1080,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Make_longer_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Make_longer_md.ajson deleted file mode 100644 index 893753e..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Make_longer_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Make longer.md": {"path":"copilot/copilot-custom-prompts/Make longer.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"x5oucz","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134030,"size":379,"at":1766986878039,"hash":"x5oucz"},"blocks":{"#---frontmatter---":[1,7],"#":[8,12]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1070,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Make_shorter_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Make_shorter_md.ajson deleted file mode 100644 index 5fb0718..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Make_shorter_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Make shorter.md": {"path":"copilot/copilot-custom-prompts/Make shorter.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"159pdcw","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134029,"size":373,"at":1766986878039,"hash":"159pdcw"},"blocks":{"#---frontmatter---":[1,7],"#":[8,12]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1060,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Remove_URLs_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Remove_URLs_md.ajson deleted file mode 100644 index e0a1820..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Remove_URLs_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Remove URLs.md": {"path":"copilot/copilot-custom-prompts/Remove URLs.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"7ofoul","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134032,"size":347,"at":1766986878039,"hash":"7ofoul"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":false,"copilot-command-slash-enabled":false,"copilot-command-context-menu-order":1100,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_md.ajson deleted file mode 100644 index c9f29e4..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Rewrite as tweet.md": {"path":"copilot/copilot-custom-prompts/Rewrite as tweet.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1k42s2p","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134033,"size":376,"at":1766986878039,"hash":"1k42s2p"},"blocks":{"#---frontmatter---":[1,7],"#":[8,12]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":false,"copilot-command-slash-enabled":false,"copilot-command-context-menu-order":1110,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_thread_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_thread_md.ajson deleted file mode 100644 index 41bf1d5..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Rewrite_as_tweet_thread_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Rewrite as tweet thread.md": {"path":"copilot/copilot-custom-prompts/Rewrite as tweet thread.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"mo1svj","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134035,"size":500,"at":1766986878039,"hash":"mo1svj"},"blocks":{"#---frontmatter---":[1,7],"#":[8,18]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":false,"copilot-command-slash-enabled":false,"copilot-command-context-menu-order":1120,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Simplify_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Simplify_md.ajson deleted file mode 100644 index 549ecd7..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Simplify_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Simplify.md": {"path":"copilot/copilot-custom-prompts/Simplify.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1rol1oj","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134026,"size":370,"at":1766986878039,"hash":"1rol1oj"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1030,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Summarize_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Summarize_md.ajson deleted file mode 100644 index 4f27ca5..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Summarize_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Summarize.md": {"path":"copilot/copilot-custom-prompts/Summarize.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"1wgon6m","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134025,"size":307,"at":1766986878039,"hash":"1wgon6m"},"blocks":{"#---frontmatter---":[1,7],"#":[8,8]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1020,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/multi/copilot_copilot-custom-prompts_Translate_to_Chinese_md.ajson b/.smart-env/multi/copilot_copilot-custom-prompts_Translate_to_Chinese_md.ajson deleted file mode 100644 index af2fe61..0000000 --- a/.smart-env/multi/copilot_copilot-custom-prompts_Translate_to_Chinese_md.ajson +++ /dev/null @@ -1,2 +0,0 @@ - -"smart_sources:copilot/copilot-custom-prompts/Translate to Chinese.md": {"path":"copilot/copilot-custom-prompts/Translate to Chinese.md","last_embed":{"hash":null},"embeddings":{},"last_read":{"hash":"s8o28c","at":1766986877916},"class_name":"SmartSource","last_import":{"mtime":1763360134024,"size":369,"at":1766986878039,"hash":"s8o28c"},"blocks":{"#---frontmatter---":[1,7],"#":[8,12]},"outlinks":[],"metadata":{"copilot-command-context-menu-enabled":true,"copilot-command-slash-enabled":true,"copilot-command-context-menu-order":1010,"copilot-command-model-key":"","copilot-command-last-used":0},"task_lines":[],"tasks":{},"codeblock_ranges":[]}, \ No newline at end of file diff --git a/.smart-env/smart_env.json b/.smart-env/smart_env.json deleted file mode 100644 index 74efdca..0000000 --- a/.smart-env/smart_env.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "is_obsidian_vault": true, - "smart_blocks": { - "embed_blocks": true, - "min_chars": 200 - }, - "smart_sources": { - "min_chars": 200, - "embed_model": { - "adapter": "transformers", - "transformers": { - "model_key": "TaylorAI/bge-micro-v2" - } - }, - "excluded_headings": "", - "file_exclusions": "Untitled", - "folder_exclusions": "" - }, - "language": "en", - "re_import_wait_time": 13, - "smart_chat_threads": { - "chat_model": { - "adapter": "ollama", - "ollama": {} - } - }, - "smart_notices": { - "muted": {} - }, - "smart_view_filter": { - "expanded_view": false, - "render_markdown": true, - "show_full_path": false - }, - "version": "", - "new_user": true, - "models": { - "embedding_platform": "transformers", - "chat_completion_platform": "open_router" - }, - "connections_lists": { - "results_collection_key": "smart_sources", - "score_algo_key": "similarity", - "connections_post_process": "none", - "results_limit": 20, - "exclude_frontmatter_blocks": true, - "connections_list_item_component_key": "connections_list_item_v3", - "components": { - "connections_list_item_v3": { - "render_markdown": true, - "show_full_path": false - } - } - }, - "context_items": { - "template_before": "", - "template_after": "" - }, - "smart_contexts": { - "template_before": "\n{{FILE_TREE}}", - "template_after": "" - }, - "lookup_lists": { - "results_collection_key": "smart_blocks", - "score_algo_key": "similarity", - "results_limit": 20 - }, - "embedding_models": { - "default_model_key": "transformers#1766986877791" - } -} \ No newline at end of file