mirror of
https://github.com/Mabbs/mabbs.github.io
synced 2026-07-22 12:23:22 +08:00
Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 172882a99e | |||
| d69f175fee | |||
| 9760f9eb4d | |||
| 1553183d31 | |||
| 0ad9008f3e | |||
| 03a2f1fdf9 | |||
| da73615b73 | |||
| e9ac9bf1df | |||
| d13dd560c2 | |||
| 1198b6c191 | |||
| 1b5efb8edd | |||
| 971641b3dd | |||
| c71a48263e | |||
| 21eaed132b | |||
| 5098b24ce6 | |||
| ae6a6d3029 | |||
| 2803a0773a | |||
| da59fa1a9f | |||
| d7c957b68a | |||
| ebe45018f5 | |||
| b4af6686ce | |||
| 3d5d7eaa16 | |||
| f5e43a61f8 | |||
| 5c739ed695 |
@@ -0,0 +1,16 @@
|
||||
# Required
|
||||
version: 2
|
||||
|
||||
build:
|
||||
os: ubuntu-24.04
|
||||
tools:
|
||||
ruby: "3.3"
|
||||
|
||||
commands:
|
||||
- gem install bundler
|
||||
- bundle install
|
||||
- mkdir Mabbs
|
||||
- curl -L -o Mabbs/README.md https://github.com/Mabbs/Mabbs/raw/main/README.md
|
||||
- bundle exec jekyll build --destination $READTHEDOCS_OUTPUT/html
|
||||
- tar czvf MayxBlog.tgz -C $READTHEDOCS_OUTPUT html
|
||||
- mv MayxBlog.tgz $READTHEDOCS_OUTPUT/html
|
||||
@@ -14,4 +14,7 @@ group :jekyll_plugins do
|
||||
gem "jekyll-paginate", "~> 1.1.0"
|
||||
gem "kramdown-parser-gfm", "~> 1.1.0"
|
||||
gem "kramdown", "~> 2.3.2"
|
||||
gem "csv"
|
||||
gem "base64"
|
||||
gem "bigdecimal"
|
||||
end
|
||||
|
||||
@@ -201,9 +201,11 @@ if (!norunFlag) {
|
||||
eventFlag = true;
|
||||
}
|
||||
var data = JSON.parse(event.data);
|
||||
if (data.response) {
|
||||
outputContainer.textContent += data.response;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$('.message').html(text);
|
||||
}
|
||||
|
||||
+5
-1
@@ -169,5 +169,9 @@
|
||||
"/2025/07/24/screenshot.html": "这篇文章介绍了如何利用Cloudflare的“浏览器呈现”功能,创建一个自动更新的网站预览图服务。作者发现这个新功能可以用来展示网站在不同设备上的显示效果,通过在Cloudflare Workers中使用iframe和CSS缩放技术,以及调用Cloudflare的接口抓取浏览器渲染的截图。虽然免费用户每天只有10分钟的使用时间,限制了实时更新,但作者通过缓存实现了每天自动更新一次的预览图,并分享了具体的实现代码和使用方法。作者赞赏Cloudflare提供的这项强大且免费的服务。",
|
||||
"/2025/08/01/sw-proxy.html": "这篇文章介绍了作者如何利用Service Worker在现代浏览器中实现一个简单的反向代理功能,以提供博客的备份和离线访问。作者原本希望通过Service Worker在用户浏览器中运行一个Web服务器来存储博客副本,但发现 tar.gz 文件的处理需要第三方库且难以找到适用的解决方案,尤其是对于tar文件的处理。作者最终选择使用Service Worker作为反向代理,将请求转发到其他网站,如GeoCities风格的静态网站托管平台,实现了类似的效果。这个过程中,作者体验到了浏览器功能的强大,并认为Service Worker在离线场景中有更大的潜力,尽管在他的例子中并没有充分展示这种优势。",
|
||||
"/2025/08/10/tilde.html": "这篇文章介绍了作者在Tilde社区的体验,这是一类基于类Unix环境的公共服务器社区,类似于家目录,提供预装的软件、开发环境和公共服务,如聊天室、邮件、BBS论坛等,强调了社区的互动性和共享精神。作者通过申请、审核过程加入了几个社区,并详细描述了在这些社区中的个人主页、编程支持(如Gemini和Gopher协议)、博客发布、代码托管(Git支持)、CI/CD部署以及使用Git hooks自动化博客更新等功能。尽管作者受限于语言和工具使用体验,未能充分参与社区交流,但对社区学习新知识和丰富博客内容印象深刻。",
|
||||
"/2025/09/01/quine.html": "这篇文章主要介绍了作者在博客部署过程中,对ZIP Quine(自包含压缩包)和自产生程序的探索过程。作者起初想利用压缩包实现离线浏览,但遇到了压缩包不包含自身的问题。随后,作者回顾了ZIP Quine的原理,如droste.zip,以及如何通过DEFLATE压缩算法的LZ77编码实现自包含。作者尝试了Russ Cox的方案,但发现由于压缩格式限制,实际操作中存在数据容量的限制,无法存下整个博客。尽管如此,作者还是研究了嵌套循环的ZIP Quine,如Ruben Van Mello的论文中所描述的,尽管空间仍然有限。探索过程中,作者还学习了自产生程序(Quine)的概念,包括其实现原理和各种编程语言中的例子。作者最后感慨,探索过程中的收获比原本的目标更重要。"
|
||||
"/2025/09/01/quine.html": "这篇文章主要介绍了作者在博客部署过程中,对ZIP Quine(自包含压缩包)和自产生程序的探索过程。作者起初想利用压缩包实现离线浏览,但遇到了压缩包不包含自身的问题。随后,作者回顾了ZIP Quine的原理,如droste.zip,以及如何通过DEFLATE压缩算法的LZ77编码实现自包含。作者尝试了Russ Cox的方案,但发现由于压缩格式限制,实际操作中存在数据容量的限制,无法存下整个博客。尽管如此,作者还是研究了嵌套循环的ZIP Quine,如Ruben Van Mello的论文中所描述的,尽管空间仍然有限。探索过程中,作者还学习了自产生程序(Quine)的概念,包括其实现原理和各种编程语言中的例子。作者最后感慨,探索过程中的收获比原本的目标更重要。",
|
||||
"/2025/10/12/recover.html": "这篇文章讲述了作者通过GitHub的Fork特性找回一个被删除的Brainfuck可视化演示仓库的经历。由于原仓库和作者主页都已消失,作者推测GitHub在Fork时会共享对象库,只要有任意一个Fork仓库存在,GitHub就会保留所有对象,从而可以通过找到一个Fork仓库的最新提交Hash值来还原目标仓库。作者通过Linux内核仓库的Fork进行验证,随后在互联网档案馆上找到目标仓库的Fork以及其Hash值,最终通过Git命令将本地仓库的HEAD指针指向目标提交,成功恢复了该仓库的代码,并将其部署到自己的GitHub Pages上。最后,作者发现Software Heritage组织会保存所有代码,因此在遇到类似情况时可以直接通过该平台进行查找。",
|
||||
"/2025/11/01/mirrors.html": "这篇文章讲述了作者为了提高博客的可靠性,探索利用被滥用的Git平台进行博客镜像的想法和实践。作者发现一些Git实例存在大量空仓库和异常用户,怀疑是SEO公司滥用,因此决定利用这些平台进行博客镜像备份,以应对平台倒闭或数据丢失的风险。作者选择Gitea和Forgejo平台作为目标,编写脚本自动注册账号并导入博客仓库,实现了自动化镜像分发。作者也意识到此类平台的稳定性存在不确定性,并思考了“量”和“质”两种方式确保博客永恒性的优劣,最终认为建立一个活跃的、自动执行维护操作的网络可能更有效。文章最后展示了作者创建的Git镜像列表,并表达了对博客永恒性的思考。",
|
||||
"/2025/12/01/linux.html": "这篇文章介绍了在浏览器中运行Linux的各种方法,从最初的纯JS虚拟机JSLinux,到后来的WASM虚拟机如v86、WebVM、WebCM,再到容器化方案container2wasm,以及直接将Linux内核编译为WASM的方案。作者详细对比了这些方案的优缺点,包括性能、兼容性、功能和开发难度。文章还提到了模仿Linux环境的WebContainers和JupyterLite,并最终认为虚拟机方案更靠谱,但对WASM的未来充满期待。作者最后表示,博客上添加类似功能的计划还在考虑中,目前主要分享了各种方法的探索过程。",
|
||||
"/2026/01/01/summary.html": "这篇文章介绍了作者对2025年的年终总结,主要表达了对自身状态的担忧和对未来的不确定感。作者认为自己在记忆和思考能力方面有所下滑,稳定性较低,且未能抓住资产保值的机会。同时,文章也记录了AI技术的飞速发展,以及自己博客内容与时代脱节的现象。尽管对未来感到迷茫,作者仍然抱有一丝希望,期望在2026年做出正确的选择,避免陷入危险。"
|
||||
}
|
||||
+5
-3
@@ -12,10 +12,12 @@ Sinofine,https://sinofine.me/,https://sinofine.me/atom.xml,
|
||||
花生莲子粥,https://blog.hslzz.cn/,https://blog.hslzz.cn/atom.xml,与世无争,不染于泥
|
||||
Vullfin的博客,https://blog.vull.top/,https://blog.vull.top/atom.xml,Vullfin's Home Page
|
||||
阿涛の小破站,https://emohe.cn/,https://emohe.cn/rss.xml,Docker技术分享
|
||||
記緒漂流,https://ttio.cc/,https://ttio.cc/feed/,于记忆之川,泛思绪之舟。
|
||||
記緒漂流,https://ttio.cc/,https://ttio.cc/feed.xml,于记忆之川,泛思绪之舟。
|
||||
陈陈菌博客,https://blog.glumi.cn/,https://blog.glumi.cn/rss.xml,计算机业余爱好者。
|
||||
彬红茶日记,https://note.redcha.cn/,https://note.redcha.cn/rss.xml,我的个人日记!
|
||||
Lanke's blog,https://www.blueke.top/,https://www.blueke.top/rss.xml,请为一切不真实之物骄傲,因为我们高于这个世界!
|
||||
Lanke's blog,https://blog.blueke.top/,https://blog.blueke.top/rss.xml,请为一切不真实之物骄傲,因为我们高于这个世界!
|
||||
时光流·言,https://www.hansjack.com/,https://www.hansjack.com/feed/,个人博客,持续分享网站部署实战经验、精选书评解读和生活观察手记。 这里提供可复用的技术教程、深度阅读指南和真实生活洞察,与技术爱好者一起进步......
|
||||
Pinpe 的云端,https://pinpe.top/,https://pinpe.top/rss.xml,一个属于自己的云朵。
|
||||
Chise Hachiroku,https://chise.hachiroku.com/,https://chise.hachiroku.com/zh/feed/,向明日的辉迹,干杯!
|
||||
Chise Hachiroku,https://chise.hachiroku.com/zh/,https://chise.hachiroku.com/zh/feed/,向明日的辉迹,干杯!
|
||||
映屿,https://www.glowisle.me/,https://www.glowisle.me/atom.xml,关于互联网、书籍、生活琐事以及那些一闪而过的念头
|
||||
Restent's Notebook,https://blog.gxres.net/,https://blog.gxres.net/atom.xml,不前沿技术分享
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
+9
-16
@@ -7,7 +7,6 @@ mirrors:
|
||||
- https://mayx.gitlab.io/
|
||||
- https://mayx.pages.dev/
|
||||
- https://mayx.eu.org/
|
||||
- https://mayx.envs.sh/
|
||||
- https://mayx.envs.net/
|
||||
- https://mayx.frama.io/
|
||||
- https://mayx.surge.sh/
|
||||
@@ -18,44 +17,38 @@ mirrors:
|
||||
- https://mayx.pixie.homes/
|
||||
- https://mabbs.kinsta.page/
|
||||
- https://mayx.codeberg.page/
|
||||
- https://mayx.4everland.app/
|
||||
- https://mayx.pages.lain.la/
|
||||
- https://mayx.4everland.app/
|
||||
- https://mayx.readthedocs.io/
|
||||
- https://mayx.sourceforge.io/
|
||||
- https://unmayx.bitbucket.io/
|
||||
- https://mayx.pages.debian.net/
|
||||
- https://mayx.dappling.network/
|
||||
- https://mayx-blog.statichost.eu/
|
||||
- https://mabbs-blog.static.hf.space/
|
||||
gits:
|
||||
repos:
|
||||
- https://github.com/Mabbs/mabbs.github.io
|
||||
- https://gitlab.com/mayx/mayx.gitlab.io
|
||||
- https://framagit.org/mayx/mayx.frama.io
|
||||
- https://salsa.debian.org/mayx/mayx.pages.debian.net
|
||||
- https://gitlab.lain.la/mayx/mayx.pages.lain.la
|
||||
- https://codeberg.org/mayx/blog
|
||||
- https://pagure.io/mayx
|
||||
- https://git.gay/mayx/mayx
|
||||
- https://gitea.com/mayx/mayx
|
||||
- https://gitea.moe/Mayx/mayx
|
||||
- https://gitgud.io/mayx/mayx
|
||||
- https://git.sr.ht/~mayx/mayx
|
||||
- https://tvoygit.ru/Mayx/mayx
|
||||
- https://git.envs.net/Mayx/mayx
|
||||
- https://tildegit.org/Mayx/mayx
|
||||
- https://git.launchpad.net/mayx
|
||||
- https://git.pixie.town/mayx/mayx
|
||||
- https://cgit.tilde.town/~mayx/blog
|
||||
- https://gin.g-node.org/mayx/blog
|
||||
- https://git.disroot.org/mayx/mayx
|
||||
- https://bitbucket.org/unmayx/mayx
|
||||
- https://sourcecraft.dev/mayx/mayx
|
||||
- https://git.disroot.org/mayx/mayx
|
||||
- https://gitlab.haskell.org/mayx/mayx
|
||||
- https://git.gammaspectra.live/Mayx/blog
|
||||
- https://repo2.serv00.com/git/pub/Mayx/mayx/
|
||||
- https://gitflic.ru/project/mayx/blog
|
||||
- https://tangled.org/mayx.tngl.sh/blog/
|
||||
- https://gitee.com/mabbs/mabbs
|
||||
- https://cnb.cool/unmayx/mayx
|
||||
- https://atomgit.com/mayx/blog
|
||||
- https://sourceforge.net/projects/mayx/
|
||||
- http://gdatura24gtdy23lxd7ht3xzx6mi7mdlkabpvuefhrjn4t5jduviw5ad.onion/Mayx/mayx
|
||||
- http://giteabolfdejtdzblkooalqei6jr67imiugmhtsh6ocw4hlj5a4q.b32.i2p/mayx/blog
|
||||
- https://dev.azure.com/unmayx/_git/Mayx
|
||||
static:
|
||||
- https://mayx.nekoweb.org/
|
||||
- https://mayx.neocities.org/
|
||||
|
||||
@@ -59,9 +59,11 @@ layout: default
|
||||
return;
|
||||
} else {
|
||||
const data = JSON.parse(event.data);
|
||||
if (data.response) {
|
||||
outputContainer.textContent += data.response;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{% if page.layout == "xslt" %}<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml-stylesheet type="text/xml" href="/feed.xslt.xml"?>
|
||||
<?xml-stylesheet type="text/css" href="/assets/css/xslt.css"?>
|
||||
<xsl:stylesheet
|
||||
version="3.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
|
||||
@@ -115,7 +115,7 @@ ossyNMMMNyMMhsssssssssssssshmmmhssssssso Memory: 8773MiB / 11928MiB
|
||||
不过我按照官方文档上安装,对于CentOS Stream 8来说有好多包不知道为什么似乎都没有,比如libavformat-free-devel之类的,我只好从网上找其他RedHat系列类似的包,或者找替代品FFmpeg,另外Darling需要Linux 5.0或者更高的内核,CentOS的内核版本太低了,所以我升到了主线版本的Linux,也就是6.8的版本……最终花了一天的时间终于编译好了,然而悲剧的是运行的时候报了非法指令“Illegal instruction (core dumped)”的错误。一般来说这个错误是新机器上编译的程序在旧机器运行才会报的错,可我是在同一台机器上编译的为什么会报这种错误呢?可能是因为代码里包含汇编语言的代码吧。我发了个[Issue](https://github.com/darlinghq/darling/issues/1497)问了一下作者,不过看起来他也不知道是什么问题……
|
||||
对于这种问题我感觉也没什么好办法……可能这台机器真的就没办法了?在第二台速龙641的电脑上试了一下也不行……不过后来我在第三台装有奔腾G3240的电脑上试着编译安装了一下,结果可以运行。看来确实是奔腾E5300的问题。不过它俩到底差在哪里呢?看介绍会发现奔腾G3240里包含了Intel® SSE4.1和Intel® SSE4.2的指令集扩展。那么对于没有这个指令集扩展的CPU就没办法了吗?Intel官方给了一个解决方法是[Intel® SDE](https://www.intel.com/content/www/us/en/developer/articles/tool/software-development-emulator.html),可以在旧机器上模拟运行使用了最新指令集的程序,甚至包括AVX512都可以模拟的出来,但是我用这个东西运行Darling的时候还是报错了,可能Darling需要用到内核的一些特性,但是SDE不能模拟……这都没办法是不是就彻底没办法了呢?
|
||||
在偶然的一次浏览中,我发现了一个神奇的东西,内核扩展[OPEMU](https://github.com/mirh/opemu-linux),它可以让不支持一些指令集扩展的CPU通过模拟的方式支持,其实功能和SDE很像,只是它是在内核中运行的,我试着在第一台机器上编译安装了一下(顺便一说,如果是旧的5.x或者更早的Linux可以直接用这个仓库,而更新的Linux比如6.x的需要用[PR](https://github.com/Spacefish/opemu-linux)中的这个仓库),结果Darling真的可以运行了!真是令人难以置信。
|
||||
安装成功之后我在网上找了个C语言的程序:[endoh1](http://www.ioccc.org/2012/endoh1/hint.html),这个程序可以用文本模拟流体。我在我的MacBook上编译了试了一下,运行没有问题,当然直接编译的程序是ARM64的程序,肯定不能在Darling里面运行,于是我切换到x86_64模式下又编译了一次,并且用`lipo`命令把两个程序合并到了一起,然后把程序上传到第一台机器中使用Darling运行,竟然可以正常运行,看来那个内核扩展还不错啊,Darling居然没有出问题。
|
||||
安装成功之后我在网上找了个C语言的程序:[endoh1](https://github.com/ioccc-src/winner/tree/master/2012/endoh1),这个程序可以用文本模拟流体。我在我的MacBook上编译了试了一下,运行没有问题,当然直接编译的程序是ARM64的程序,肯定不能在Darling里面运行,于是我切换到x86_64模式下又编译了一次,并且用`lipo`命令把两个程序合并到了一起,然后把程序上传到第一台机器中使用Darling运行,竟然可以正常运行,看来那个内核扩展还不错啊,Darling居然没有出问题。
|
||||
不过测试了一下,可能还是有些地方有BUG,比如用Git的时候会报错,可能是和README中所说的CRC32表现有问题吧,不过Darling好像可以直接运行Linux中的命令,那我在用Git的时候调用Linux下的Git是不是也可以呢?试了一下不太行,因为执行Linux程序的时候不能用Darling中的目录结构,不过我想装omz只需要/Users目录就够了,我直接创建一个软链接把Darling的/Users目录映射到Linux的根目录就可以了吧,试了一下还行,可以正常运行,虽然Homebrew不能安装有点可惜……不过Neofetch可以安装😆,效果如下:
|
||||
```
|
||||
'c. root@localhost.localdomain
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user