在 VirtualBox 上建置 Openwrt

現在工作會用到 Openwrt 當開發平台,但用起來一直卡卡的,想找時間從頭操作一次,看能不能深入理解系統的運作,說起來工作的重點就是不斷追求 balance,既能符合商業需求,又能持續成長。趁著年假有空,來玩玩看 Openwrt 有什麼特色。

首先是下載 Openwrt 並編譯,現在的 Openwrt 已經用 git 做版控,可以用 git clone 來放到自己的開發目錄

git clone https://git.openwrt.org/openwrt/openwrt.git
cd openwrt

剛下載下來的 Source code 沒有包含相關的 package,例如 python、driver 等等,因為後續開發會需要用到,先使用 feeds來更新並安裝 package

./scripts/feeds update
./scripts/feeds install -a

feeds是 Openwrt 內建的 script,如果想知道 command 的意思,可以用 help 。剛接觸 Linux 的人可能會不習慣看 help 來理解 command,可是用習慣之後,有問題能自己解,不用爬 Stack Overflow,對 Coding 幫助其實很大

./scripts/feeds -h
install [options] <package>: Install a package
...
update -a|<feedname(s)>: Update packages and lists of feeds in feeds.conf .

由 help 內容可以知道,update 是更新追蹤的 package list; install 則是安裝 package,如果沒有安裝, menuconfing 時就會看不到相關的 package ,因此這邊全部裝起來

接著進行環境準備,輸入 make defconfig 來檢查相關的 tool 有沒有 Ready,並產生設定文件 .config

再來使用 make menuconfig 來選擇要編譯的 package,找不到 package 的話可以用 / 加關鍵字搜尋,搜尋有支援 regular exp 喔!這邊先選擇 python3 、LuCI 、GDB , Target 用 x86 ,印象檔格式用 ext4

之後用 make -j8 全速編譯

編譯完得到映像壓縮檔,解壓縮

gunzip openwrt-x86-generic-combined-ext4.img.gz 

得到映像檔,為了讓 VirtualBox 可以掛載,要用 vboxmanage轉換為 vdi 格式

vboxmanage convertfromraw --format VDI openwrt-x86-generic-combined-ext4.img openwrt_x86.vdi
再來開啟 VirtualBox,建立 Virtual Machine

選擇 Type 為 Linux ,版本為 Linux 2.6 / 3.x / 4.x (32-bit) ,一路 Next 完成掛載

開啟 VirtualBox,可以看到

完成!已經在 VirtualBox 上掛載剛剛編譯好的 Openwrt 了!

Read more

Weekly Issue 第 7 期:從 GitHub Spark 看 Prompt 工程

近期開始有人建議用 Context Engineering 來取代 Prompt Engineering,的確相較於 Prompt,Context 是更精確的用詞。前一期也提到,當 Duolingo 的 CEO 被問到 AI 是否只是模型套皮時,他也說模型一定有影響,但更多是關乎你的 Context。 那麼,業界現在是如何看待 Prompt 的呢?Github Spark 跟 V0 的例子或許能提供一些參考。 🗞️ 熱門新聞 Using GitHub Spark to reverse engineer GitHub Spark GitHub Spark 最近推出公開預覽,讓你可以用 prompt 直接開發應用。 作者用逆向工程,找出 Spark 的 system

By Ken Chen

Weekly Issue 第 6 期:Duolingo CEO 看 AI 與遊戲化

現在是 AI 時代,大家都在想怎麼讓自己的產品跟 AI 掛勾,但具體要怎麼做呢?背後的思考有哪些?Duolingo 給出他們自己的觀點。 例如,現在的產品是否只是 AI 套皮,你接收使用者的問題,套上自己的提詞後,拿去給 OpenAI,要它回答你?在現在百家爭鳴的情況下,選擇哪個模型會有差嗎?AI 能帶來新用戶與新營收嗎?等等。 另外本週也選了一篇少數派的文章,談 AI 對 RSS 的影響,對 RSS 未來方向有興趣的人不妨看看。 🗞️ 熱門新聞 Duolingo CEO Luis von Ahn wants you addicted to learning Duolingo CEO 專訪,相當紮實,推薦閱讀。 「對我們來說,

By Ken Chen

Weekly Issue 第 5 期:OpenAI 的企業文化

我一直都喜歡看科技公司的願景與文化,原因是,我想知道別人是如何看待自己的使命,又是用什麼方式打造它。願景通常在官網都會有,但想要知道文化,只能聽內部人講講了。 Palantir 前陣子因為它不同於矽谷的文化,而引起很多討論。受此影響,前 OpenAI 的員工在離職創辦公司後,也發文談論他所見到的 OpenAI。最讓我震撼的是,他們幾乎沒有資金困擾,想的都是如何打造出色的 AI 模型。 🗞️ 熱門新聞 Reflections on OpenAI 前員工談 OpenAI 的內部文化。 讀起來最大的感觸是,有些價值觀、觀點、實踐,只有在世界級的公司跟資源下,才有可能建立起來。讓每個團隊各自為政,看誰能端出最好的成果,這對新創(特別是沒拿創投)實在太奢侈了。 我相信這種經歷會變成是「可以帶著走的饗宴」,那種衝擊也是最寶貴的。 AI Open Source Productivity METR 前陣子發了一篇研究,說使用 AI

By Ken Chen

Weekly Issue 第 4 期:Canonical 的面試經驗

這星期看了比較多職涯相關的內容,最讓我驚訝的是 Canonical 的面試流程,當我分享這則新聞後,有更多朋友紛紛補充他們的面試經驗:需要經歷三個 Tier,每個 Tier 都有三關,而內容甚至還包括問人選「高中成績」與「大學生活」。 我很難想像一家做 Linux 發行版的公司,會如此草率對待人選,這讓我對他們家的產品有了很大的問號。 🗞️ 熱門新聞 My experience with Canonical's interview process 這是一篇 Canonical 的面試經歷(如果你不知道什麼是 Canonical,就是開發 Ubuntu 的公司)。 整個過程讓人非常驚訝,甚至還需要人選回答「高中成績」,而在面試中做筆記居然是扣分項。我看完後有股移除 Ubuntu 的衝動。真的太扯啦。 What happens when engineers work

By Ken Chen