我做了一个网页版的Linux——说白了就是为了装X

(`・ω・´) Arch-web 勉强能用了
项目地址: https://cxl—package.top/
状态: 能跑,但别问怎么跑的
一、这是什么?

Arch-web 是一个运行在浏览器里的 Arch Linux 模拟器。
对,你没看错。不是远程桌面,不是 VNC,是纯前端——用 React + Vite 手搓出来的一个”看起来像 Arch”的网页。
它有一个桌面、一个终端、一些”软件”、还有一些动态壁纸。虽然里面的 neofetch 不会真的读取你的 CPU 信息,里面的 pacman -Syu 不会真的更新你的系统,但它看起来很像那么回事。
这就够了。
“在程序员的世界里,如果一个东西看起来像鸭子,叫起来像鸭子,那它就是鸭子——即使它其实是一只 React 组件。“
二、它有多慢?
首次打开:1-3 分钟。
不是加载慢,是你的浏览器在怀疑人生。它要消化 600+ 个 npm 依赖、解析一个 React 屎山、加载几张动态壁纸,然后还要问自己:
“我真的要在浏览器里运行一个 Linux 桌面吗?”
答案是:是的,浏览器,你跑也得跑,不跑也得跑。
动态壁纸加载: 可能更久。
因为壁纸是从外部来源加载的,如果你的网络正在和 Cloudflare 进行一场谁先放弃的博弈,那壁纸可能会迟到,但永远不会缺席——大概。
网站都免费了,还要啥自行车?慢慢加载得了,有电脑就自个儿装去。
三、哪些软件能用?
这是一个薛定谔的 Linux。有些软件能用,有些不能,取决于:
- 我当时有没有写那个功能
- 我当时有没有写崩那个功能
- 我当时有没有因为写崩而删了那个功能
(`・ω・´)b 能用的(大概)
| 软件 | 状态 | 说明 |
|---|---|---|
| 终端 | (`・ω・´)b 能用 | 能输入命令,能显示输出,但别真的以为它在执行 |
| neofetch | (`・ω・´)b 能装 | 显示的是预设信息,不是你的真实硬件 |
| 文件管理器 | (`・ω・´)b 能点 | 可以新建文件夹,但刷新就没了(因为没后端) |
| 动态壁纸 | (´・ω・`) 能加载 | 看网络心情,有时候是壁纸,有时候是空白 |
| 设置面板 | (`・ω・´)b 能打开 | 能切换主题,但切换完可能要等一会儿 |
(´;ω;`) 不能用的(别试)
| 软件 | 状态 | 说明 |
|---|---|---|
| sudo rm -rf / | (´;ω;`) 不能 | 浏览器不会让你删系统,但会卡死 |
| pacman -Syu | (´;ω;`) 不能 | 不会真的更新,只是打印一行字 |
| vim | (´;ω;`) 没有 | 我懒得实现,用 nano 吧(也没有) |
| Chrome | (´;ω;`) 不能 | 在浏览器里运行浏览器?你想让我死? |
| Steam | (´;ω;`) 不能 | 但你可以打开 Lutris 的图标假装自己在玩游戏 |
| Hyprland | (´;ω;`) 不能 | 这是网页,不是 Wayland 合成器,醒醒 |
四、技术栈( aka 屎山成分表)
React 18 —— 因为 Vue 我不会Vite —— 因为 Webpack 太慢了Electron —— 因为"也许有一天"我会打包桌面版Tailwind CSS —— 因为写 CSS 太烦了600+ npm 依赖 —— 因为"这个库看起来有用"动态壁纸 (swww) —— 因为桌面不能是黑的我的耐心 —— 已耗尽构建时间:取决于你的电脑和 Cloudflare 的心情。
在本地 npm run dev 的时候,Vite 热更新有时候比我的反射弧还慢。但 npm run build 的时候,Cloudflare 的构建缓存会救我一命——如果它没睡着的话。
五、使用指南
首次访问
- 打开 https://cxl—package.top/
- 等待 1-3 分钟(可以去泡杯茶)
- 如果看到桌面,恭喜你,成功了
- 如果看到白屏,请刷新,再等待 1-3 分钟
- 如果还是白屏,说明 Cloudflare 在睡觉,请明天再来
基本操作
- 点击图标:打开”软件”(有些是空的,别问)
- 右键桌面:可能有菜单,也可能没有
- 终端输入命令:会显示预设输出,不会真的执行
- 切换壁纸:如果加载出来了,可以换;没加载出来就盯着黑屏冥想
注意事项
- 不要尝试
sudo任何命令,浏览器没有 root 权限(大概) - 不要同时打开太多窗口,你的内存会哭
- 不要在手机上用,除非你想体验”拇指戳屏幕戳到抽筋”
- 不要期待它能代替真正的 Arch,它只是一个赛博手办
六、FAQ
Q: 这玩意儿能干嘛? A: 能发朋友圈装 X。“看,我在浏览器里跑 Arch。”
Q: 它安全吗? A: 安全。它不会真的访问你的文件系统,因为它连自己的文件系统都是假的。
Q: 为什么有些软件打不开? A: 因为我没写。或者写了但崩了。或者崩了然后删了。
Q: 为什么加载这么慢? A: 因为免费。免费的东西没有 SLA,只有 “Hope it works”。
Q: 会更新吗? A: 会,当我想起来的时候。或者当铁子(AI)想起来的时候。
Q: 能贡献代码吗? A: 能,但我不建议你打开源码。看过《克苏鲁神话》吗?有些代码看多了会掉 SAN 值。
七、致谢
- React:提供了组件化思路,让我能把一个屎山拆成很多个小屎山
- Vite:提供了快速的构建体验,虽然有时候也不快
- Cloudflare Pages:提供了免费的托管,虽然构建缓存有时候在睡觉
- 铁子(AI):提供了 17% 的代码,和 100% 的耐心
- 大喵:提供了每小时一次的备份,让我有胆量继续作死
- 我的 256G 硬盘:承载了这一切,虽然它更希望我在玩 galgame
八、结语
Arch-web 不是一个完美的项目。它很慢、很卡、有些功能是假的、有些图标是点不开的。
但它是一个真实存在的网页。它证明了:
一个商务英语专业的学生,在凌晨一点,用一部手机、一个 AI、和一颗不怕死的心,可以手搓出一个看起来像 Arch Linux 的东西。
这就够了。
毕竟,人生已经够难了,为什么不给自己做一个免费的赛博玩具呢?
如果你打开链接发现页面是白的,那不是 bug,是 feature。它在考验你的耐心。
毕竟,真正的 Arch 用户,连系统都敢滚,还会怕等三分钟加载吗?
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
welcome to CXL


















