barbruh.22.10.14

难以想象我又一次接近deadline impact了(恼🤔到今天三个小号的蒙德版本活动才打完一个🤔

但从乐观(迫真)的角度来看,打完一个号的版本活动总共需要花的时间居然比我预期的要少很多,那三个又臭又长的主线只需要完成第一个就可以了,这部分大概需要花两小时🤔之后就可以玩各种各样的挑战任务了,这部分全打完应该只需要最多四小时,运气好点只需要三小时半,反正我花了三个小时基本上打得只剩下连续打五处怪这种玩意,中间的路途会生成一大堆气流和推力环(忘了叫什么了),去年的雪山活动里也出现过,应该半小时就能搞定(确信🤔

这周貌似还剩三天时间,剩下两个号应该能一天搞完一个,至于最后一天,也许可以用来将剩下两个主线也撸完🤔但我记得这两个主线不玩它们也能撸满武器精炼材料,而且貌似也没有送任何绝版装饰或者诸如此类的东西🤔所以它们的优先级也许可以调低一点,实在是没时间完成了也没关系(确信🤔

thonk

今天那四个esp-01烧录器也到了,随便取出一个用,这次它能烧录esp-01s了(确信🤔那接下来就不用多说了,将前几天写好的程序灌进去,再插上温湿度传感器模组,接好供电,另外一个discord频道也出现了消息🤔

但貌似温湿度并没有显示出来🤔原来我搞错了io接口的编号,这部分改完后终于出现了温湿度数值,只不过它们和我之前那个discord温湿度计的值相差很大🤔我估计dht11作为传感器搞不好真的只能图一乐,真测温湿度还得看aht20(半恼🤔

接下来一件非常生草的事情发生了,我调试的时候将其再次插入了之前那个不能烧录的无按键烧录器上,它居然能接收到esp-01s串口发送的信息,这可能说明它不能用来烧录的原因是它从设计上就不能将esp-01s切换成烧录模式,或者它切换的功能出了故障🤔

这件事就算彻底搞完了,接下来我又买了两个esp8266玩具,反正这种东西一个才不到10块钱,就当玩具买了(迫真🤔一个什么机智云,貌似和esp-01s一样都是一家叫做安信可的厂子出的,主打低代码(大嘘)编程,不需要刷固件,原厂固件只需要写点逻辑代码就能在手机上遥控智能家居啥的,可以认为是个定制版米家(迫真🤔但从硬件来说,它最大的亮点是esp板和usb转ttl板分离,编程的时候把它们组合成一个板子,跑的时候只需要给esp板插上供电就vans了(确信🤔它还集成一个rgb led,和一个红外发射器,改造成远程空调遥控器的可能性微存?反正肯定比米家的那个蓝牙红外网关便宜得多就是了(确信🤔

我听说安信可原装的esp-01s貌似也能使用什么低代码固件,但我估计这些玩具拿到手不都得先刷个micropython,或者直接上arduino ide?🤔

除此之外我还买了个什么d1 uno r3,就是上次说的那个外观模仿arduino uno r3的玩意🤔不清楚买这个图啥,可能是图它有一个dc输入,这样也许我可以把之前写的discord温湿度计移植到上面,然后随便找个12V电源插上去,免得它占用usb口了🤔当然也有可能我有别的迫真智能家居项目,比如在阳台乃至室外也设置一个温湿度监测站🤔

话说真arduino现在还要三四十块钱,和我上大学的时候一样贵🤔当然说贵也不至于,那时更贵的有gpio功能的单片机是树莓派🤔不清楚那时有没有esp8266这种玩意,但当它出了的时候,不仅同样外观的开发板价格是arduino的三分之一,它还有远超atmega芯片的处理速度、ram和存储,甚至可以实现一部分树莓派的功能,比如几乎所有需要联网的任务🤔怎么说呢,国产芯片就是牛批(吴慈悲🤔

另外一方面,esp8266也是米家几乎所有迫真智能家居产品的核心,也是为什么那些能联网远程遥控的电饭锅啥的卖那么便宜,没有esp8266我估计就没有什么米家(确信🤔

当然,还是那句话,模拟usb hid的功能除外,但能模拟usb hid的arduino再怎么说也是装有atmega32u4的arduino leonardo,而非装有atmega328p的arduino uno,后者和esp8266一样仍然需要串口转ttl,所以说esp8266能完全替代arduino uno r3一点问题都没有(迫真🤔话说什么时候模拟usb hid的微控制器也来一个国产替代罢,我已经等不及了(大嘘🤔其实luat的air系列板子貌似就支持模拟usb hid,但目前支持的功能比较少,只支持模拟键盘输入可见字符,反正amber速射肯定是不行了(恼🤔

thonk2

刚又迫真研究了下,现在使用atmega32u4的开发板,最便宜的到了24.20,反正比我去年买的时候价格便宜了不少,那时至少得30🤔它还有一个更小的usb-a板子,可以不用数据线直接插进机子里的那种,牌子貌似叫cjmcu,不带tf卡槽的版本34,带tf卡槽的版本45🤔这些玩意我就不买了,它们还是比esp8266玩具贵多了(大嘘🤔

另外树莓派貌似出了一个叫做rp2040的mcu,定位貌似和atmega32u4差不多,也是usb直连芯片,所以也存在能用来模拟usb的可能性(确信🤔最主要的是它的价格比atmega32u4便宜多了,裸芯片只要5块钱,基本上和什么esp8266、luat air一个价,而做成的开发板好像也只要16还是17来着🤔但它的话问题是没法用arduino ide编程,这可能会成为一个问题(半恼🤔

bruhfei.22.10.12

现在我前几天买的另外一批单片机玩意也到了,这次到了一个s2 mini,也就是那个最便宜的esp32板子,一些配件,还有一个玩具一般的esp-01s和esp-01s烧录器还是啥玩意来着🤔

极其生草的是esp-01s居然连一个单独的静电袋子都没有,导致我还以为他们没有给我发,直到我开始收拾包装时才发现它夹在里面(恼🤔接下来离奇的事情发生了,我都写好了程序,然后照常插上去刷机了,结果那玩意死活连接超时,而且用了114514个烧录程序,都连接超时🤔

这就有意思了,是烧录器坏了,还是esp-01s坏了?在它里面没有写入什么正经程序的情况下我完全无法确定,所以最后只有一个结论:两个玩意我都得重新买一遍(全恼🤔

这次我应该不会买什么两块多钱的无按键ch340烧录器了,那么还有什么esp-01烧录器可选?我目前看到的有四种型号,电路板好像都一毛一样,带有一个8pin插槽,一个引出来的8pin用来插跳线,还有一个reset按键,根据其usb转串口芯片不同,分为cp2104、cp2102、ch9012以及ch340四种🤔其中cp2104被称为所谓的原版,别的是不是在它的基础上换掉了usb转串口芯片?🤔价格方面,cp2104版是14.5,cp2012版是8.5,ch9012版6.7,而ch340版最便宜,只要4.6🤔反正我在两家店把四个芯片版本的烧录器都买了一遍,顺便还买了两个新的esp-01s,我就不信这次它还不能跑起来(🤔

我估摸着这些带有reset按键的版本也许可以用来随便刷机,而我现在有的无按键版本可能需要短接几条跳线啥的🤔我懒得折腾了,等那些玩意都到了再说🤔

thonkeqing

在寻求最便宜(大嘘)的esp-01烧录器还有usb转ttl的过程中,我发现了一大堆东西免邮费的店铺🤔某宝的价格排序功能向来没什么卵用,但在我找些单片机玩意的时候由于某种申必原因居然又能照常排序了,而且免邮的被排在了前面🤔然后发现什么d1 mini什么s2 mini,甚至包括我以前用过的nodemcu,全都是一个叫做wemos的厂子做的🤔不太清楚wemos到底是个品牌,还是个开源硬件项目,反正搜wemos就能出来什么d1 mini还是d1来着🤔而且更有意思的是,有时候它也会用到一个叫做lolin的品牌名,但基本上wemos和lolin是一个意思,甚至在pcb板上也一会儿印着wemos一会儿印着lolin(迫真🤔

wemos现在有一个官网,但lolin没有,到现在我甚至查不到它背后的实体,到底是哪国公司,实在是太申必了🤔

无论如何,它目前在卖的产品倒是可以查到的,都有下面几个:

  • d1系列:
    • d1 uno r3,提供了一个dc输入,layout迫真模仿arduino uno,据说可以和arduino uno外设实现114514%兼容(当然模拟usb hid它是做不到的,因为esp系列的usb都是usb转串口,而非像arduino一样主控本身提供usb功能),本质上是esp-12外加pcb,价格大概在12左右
    • d1 uno r32,基本上相当于将上面那个的esp8266模块换成了esp32模块,18
    • d1还有一个18650电池款,顾名思义可以用18650供电(也许还能充电),21.6
    • 它也有esp32模块版,价格达到了离谱的34.7
    • d1 esp32,看上去和下面的d32使用了同款esp32模块,但layout完全不一样,而且官网没有这玩意,但它既然叫做d1-esp32了我就暂且先放这里,23.3
  • d1 mini系列:
    • d1 mini v1,本质上是esp-12外加pcb,8.75
    • d1 mini v3,esp8266ex芯片裸露放置,目前我的discord温湿度计就跑在它上面,9.3
    • 另外nodemcu系列的esp8266板子也和wemos有关,简直就像d1 mini v3换了一个layout,价格也是9.3,它还有一个esp32版,13.3
    • d1 mini v4,改成了typec,而且加上了一个i2c接口,也许可以将aht20直接用i2c线接上去,9.6
    • d1 mini pro,接口非常全,既有i2c也有电池接口,有16MB的rom可选,而且除了内置天线外还可以外接ipex天线,然后再去转sma,21
    • d1 mini lite,使用了esp8295(esp8266+板载1MB rom),基本上没什么人买,13(还要加运费
  • d32系列:使用了esp32模块的板子,甚至有16MB rom版本,国内无货(恼
  • s2系列:使用了ESP32-S2FN4R2,顺便一提这个版本的esp32是没有蓝牙的
    • s2 mini,基本上可以视为d1 mini v4的esp32版,引出的接口比d1 mini多出了一排,没有单独的i2c接口,但多出了一个io按键,什么价格都有,甚至都有一个11.45的,你是一个、一个一个一个一个esp32啊啊啊啊啊(错乱
    • s2 pico,带一个oled屏幕外加i2c,价格非常离谱,至少40(仍然比m5stick便宜
  • c3系列:使用了ESP32-C3FH4,板载一个rgb灯,国内基本上买不到,其实最便宜的esp32-c3可以去买luat的,但有人反映那玩意没法上arduino ide它只有所谓的简约版不能用arduino ide,因为它砍掉了usb转ttl,那么问题来了,在没有usb转ttl的情况下它是用什么申必方式往里面烧录程序的?esp32-c3支持模拟usb hid的可能性微存?(大嘘
  • s3系列:使用了ESP32-S3-WROOM-1,有两个typec接口,国内尽管买不到这个牌子的,但貌似可以买到和它layout一毛一样的玩意,价格在45到59之间

wiebitte

https://www.esp32.com/viewtopic.php?t=24092

什么?esp-s2和esp-s3可以模拟usb hid(如果它们的开发板没有用usb转ttl来实现usb的话,很不幸的是至少我有的esp32板子都不是这样),而esp-c3的usb功能只能用来烧录程序和调试?wiebitte?🤔

但至少esp32-c3同时支持用串口和usb烧录程序,所以这样也就解释了luat的esp32-c3板子为什么在没有usb转ttl的情况下仍然能烧录程序了(确信🤔生草的是它的usb相关功能用的是gpio18和gpio1⑨,所以我估计在那个板子上那两个gpio要么直接连着板载usb接口,要么在连接板载usb接口的时候也引出了,但至少在调试时是没法用来处理io的🤔

所以到目前用esp32板子(无论是哪种版本,c3、s2还是更贵的s3)来模拟usb hid或者任何hid是别想了(悲🤔除非掏出两个gpio口来模拟一整套usb协议(可能还要涉及一些焊接啊,电路啊等玩意),但这样的话其实esp8266就能搞定🤔当然还有一种方案是用esp32(s2之外型号)的蓝牙功能来模拟蓝牙键盘鼠标,我在m5stick上撸了一个模拟键盘的,但出于某种申必原因它不支持同时模拟鼠标和键盘,而且还存在不可忽略的丢键现象,很明显不是什么适合用来搞速射amber的选项(恼🤔再说了,arduino ide编译和烧录esp系列固件的速度实在是太寄吧慢,而编译和烧录atmega32u4固件的速度就快多了,所以最后我还是用atmega32u4搞了速射amber🤔

espAYAYA.22.10.10

今天两个版本的d1 mini,还有aht20温湿度传感器都到了🤔我可以先拿v3随便写点玩意,比如arduino ide里面自带一个http示例程序,我可以先往discord频道里发点消息🤔

由于显而易见的原因,在esp8266里使用https是非常困难的,要么得把目标网站的证书指纹提取出来硬编码进代码,要么得套用什么什么框架,要么直接使用setInsecure()不安全地连接🤔我肯定选用了最后一个,毕竟我只是要发送一些温湿度数据上去,甚至都不指望它回复什么东西🤔

好,那我就用之前在cloudflare workers上设置的discord反向代理,几秒钟后discord聊天室里出现了一条新消息,不错,这不是从我的某台电脑或者手机发出来的,而是从一块可能只有10块甚至⑨块钱的esp8266儿童玩具发出来的(确信🤔

接下来我需要将aht20和esp8266相连,并使用某种代码从里面读数据🤔它的示例代码并没有地方设置针脚,所以我估计只能按照它的默认针脚连了(悲🤔而且理论上来说我买的玩意可以同时测温湿度和气压,但我只找到读温湿度的代码,那就先跑它那个示例,不错,温湿度都从串口输出里读出了🤔

接下来我只需要将这两个代码缝合在一起了(确信🤔现在有一个问题,它那个代码里字符串和温湿度是陆续打印到串口输出里,但我要是想把它们post到discord webhook上的话,我得将其合并成一个字符串,此时它就开始报类型错误了,字符串和浮点数没法合并(恼🤔

这玩意貌似是c还是c++来着,c的话使用sprintf构造字符串,结果它的http.post()里面接受的是一个String对象,不是char*(全恼🤔更离谱的是它这里用的是一个叫做String的应该是自创的字符串对象,S是大写,不是std::string,要是自作主张地使用std字符串相关函数,肯定得吃一个类型转换不动的错误(恼🤔比如浮点数转字符串部分,std::tostring肯定是用不了的,极其生草的是它居然提供了一个叫做String(114.514, 3)的函数来将传感器读出来的浮点数转换成String对象,就にま离谱(半恼🤔

反正无论如何,现在discord聊天室里终于打出了当前的温湿度,至此discord温湿度计正式搞完了,拔下来随便找个充电器插上,我就可以将其放什么鬼地方24小时监测室温了(确信🤔discord聊天室刚好可以用来做数据记录,时间戳都能记录下来,哪天我要是想画曲线图啥的,直接将discord频道的内容拖下来做处理就vans了(确信🤔

bruh

但现在这玩意有一个非常严重的问题,每次http请求的时间实在是太たま长了(全恼🤔具体来说,我给那段程序加了一个新功能,它开始发送http请求之前开始亮灯,发送完http请求之后停止亮灯,这样理论上来说每次发送http请求时会闪烁一下(确信🤔但我观察到的是,每次亮灯居然长达七八秒,哪怕我设置的采样和发送请求间隔是两秒,discord那边也得十多秒才能收到一条消息(恼🤔

我无端猜测导致它发送http请求时间如此之长的因素,无非两点:

  • 本来往cloudflare的服务器发送请求,然后再由cloudflare workers处理下发往discord,再接收返回,就是个非常耗时的过程

  • https带来了额外开销

前者基本上被否定了,因为我本机不上梯子发送一个https post请求,也就用了平均1.3s,远远低于esp8266的表现🤔如果是http的话只有0.6s,这两个时间都不算很长(迫真🤔

所以我无端猜测绝对是https拖了后腿🤔具体来说,一次非保持连接的https请求对应的tcp请求貌似是http请求的三倍啊三倍左右,相比之下https带来的额外计算开销反而可以忽略不计(迫真🤔

既然如此,那么cloudflare可以改成支持http,换句话说把什么always https给关了,这样以http方式向cloudflare发送请求时不会302跳转https了(确信🤔

接下来esp8266上的程序也得改,除了网址去掉s外,创建http客户端对象啥的需要用另外一个类,不然的话http请求会发不出去(恼🤔我无端猜测,这两个类发出的http请求搞不好连端口号都不一样,所以不能混用🤔

改完后它每次亮灯基本上不超过一秒,尽管仍然比较长,但至少可以忍受了(迫真🤔现在,也许我设置的采样和发送间隔这个数字变得真正有意义起来,我可以设置一个比如五秒或者11.4514秒的时间,然后扔一边去了(确信🤔

espthonk.22.10.08

凌晨几点突然停电了,出门一看从楼道灯到电梯到电表,所有东西都没电(全恼🤔看来只能先去睡觉了🤔

一觉起来恢复了供电,客厅灯被开到了最大功率,大概是这个原因导致我醒来的(迫真🤔既然如此,那就重新开始压缩截图⑧🤔

神奇的是哪怕路由器啥的重启了一遍,我的破宽带仍然可以达到接近400Mbps的下载速度,它不是说只有⑨月份有提速,这个月就要恢复原来的速度吗,现在应该早就过10月账单日了🤔无论如何,我应该可以再爽几天(确信🤔

thonkeqing

接下来突然想给房间里装个智能(迫真)温湿度计啥的🤔而且作为迫真智能家居的一部分,它当然得实现记录温湿度的功能,所以恐怕我得自己写一个了(恼🤔

这玩意还是比较简单(迫真)的,买个什么dht11/dht22温湿度传感器,然后再买个esp8266,随便找个固件刷上去(比如micropython,并将其设置成局域网设备),设置好定时发送的api接口(比如discord webhook url),vans🤔而且能买到的dht11传感器还做成了适配esp-01的形状,esp-01用的串口座子都安上去了,直接插上esp-01即可(确信🤔它唯一的缺点是获取的温湿度数据有两秒的延迟,但这没什么大问题(迫真🤔

我听说还有一种更先进的温湿度传感器,叫做aht20,它能实时获取数据,而且用的是i2c接口,换句话说只占用一个io(确信🤔但我没找到适配esp-01的型号,意味着想驱动它就得整一个引出了所有io的esp8266或者esp32开发板🤔

现在这样的板子已经有114514种了,但我想找最便宜的版本🤔8266最便宜的版本仍然是nodemcu v3🤔稍微贵一点的是一个叫做d1 mini的板子,体积比nodemcu小一点,现在有三个版本,v1是焊接了esp8266模块的电路板,v3是将芯片直接放在主板上的版本,v4是v3的typec版(貌似还多了一个电池接口),但现在基本上找不到有货的(恼🤔由于某种申必原因,d1 mini有一大堆外形适配它的配件,从显示屏到tf扩展到锂电池,堪比廉价版m5stack(大嘘🤔

而esp32这边,最便宜的是d1 mini的esp32版本,叫做s2 mini🤔外观和d1 mini基本上完全一样,只不过由于esp32的io比esp8266多,外面引出的io直接便乘了两排,就非常牛批🤔

其实和两年前相比,这些小型玩具价格都没怎么变过,但由于某种申必原因,ttgo和m5stack都涨价了,ttgo带屏幕的esp32我买的时候只要38,现在涨到了70,有的店甚至涨到了100,而m5就更不用说了(恼🤔

barbruh

话说某个既卖d1 mini又卖s2 mini的卖家那里,d1 mini的两个版本都没货(恼🤔所以最后一顿迫真扯皮后,我在这里买了s2 mini和一大堆配件,在另外一个地方买了d1 mini v3🤔某宝买电子产品真寄吧费劲,当然我估计某fisch可能会更费劲🤔

bruhfei

拉寄吧倒⑧,我还是去之前看的那家买了个d1 mini v4,也许我的s2 mini也应该在那家买,这样说不定我就不用像之前那样扯皮了(恼🤔现在看来这就是个不到10块钱的玩具,我懒得关心它要多少邮费,也懒得关心我是不是一不小心把v3和v4都买了一遍🤔反正下次买这种东西之前我还是先问下有没有库存再说(🤔

barbruh.22.10.04

草神的完整技能视频终于放出来了,照例将其上传到discord上,然后发现它居然超过了50MB(悲🤔本能反应打开nacho impact(大嘘)开始上传,然后突然意识到guilded现在需要加上cookies才能正常上传,所以那个html得魔改一下🤔

但在使用xhr.setRequestHeader加cookies请求头后,它上传仍然报错未登录,而且观察请求时发现它也没有加上任何cookies头🤔查了一顿发现貌似setRequestHeader压根就不支持加cookies头,按照所谓的w3c规范,cookies这样的请求头只能由浏览器生成和控制,js脚本并没有权限(恼🤔而在给浏览器塞cookies方面,我尝试了写入document.cookie,但请求头里仍然没有出现cookies,不仅如此,浏览器的存储选项卡里也没找到写入后的cookies🤔再说了,guilded的cookies作用域还得设成什么guilded.gg,而且如果用我的存放在别的乱七八糟地方的html操纵这些cookies的话还得涉及什么跨站请求乱七八糟的,不折腾了(恼🤔

那么为了实现上传过程中带cookies,现在我恐怕只能尝试中转方案了🤔也许我可以使用cloudflare workers来搞这个,就像我搞什么nitro delegation一样,但既然我可以在pikapod的wp-content里面跑oneindex,那么我是不是可以拿php来写一个透传post请求,但只是给请求塞进去cookies请求头的玩意?🤔通过它我基本上可以实现html该怎样还是怎样,用户也能直接上传东西,而我也不用担心什么cookies泄露或者需要用户提供guilded cookies这种蛋疼的事情了🤔而且这样可能还有额外的好处,pikapod的wp容器可以将上传限制调到比如1GB,所以和借助cloudflare不同,它还能支持到上传500MB文件(确信🤔

问题是我上次写php玩意大概还是我上大学的时候,现在我早就忘了php怎么用了,更别说写一个php版curl玩意了(恼🤔

bruhfei

现在php里获取post请求原始数据的方式是file_get_contents(php://input)(又有一说是php://stdin或者常量STDIN,但我没尝试成功过)🤔接下来可能需要在php.ini里(当然对于pikapod的wp容器来说,upload.ini就是php.ini换了个叫法)加一行enable_post_data_reading = Off才能在content-type被设为multipart/form-data的时候用php://input读post请求原始数据🤔php当然也可以获取所有请求头,并在里面加入cookies项,但当我尝试将它们按照原样塞进php的curl函数里面并发送出去时,guilded返回了一个400错误,意思是我没有提供上传的文件,wiebitte?🤔

最后改了114514遍后,基本上确定问题出在哪儿了:全盘照搬发往php的请求头肯定不可取,但我懒得排查哪个请求头导致了问题,我现在基本上只知道它那么多请求头里只有一个content-type是绝对必要的,因为它里面包括了一个叫做boundary的参数,和请求体里分段的boundary得能对上🤔只需要在所有请求头里筛选出content-type,然后再加上cookies(如果愿意的话这里还可以再加一大堆请求头,什么user-agent之类的,但我不加它也能上传,那我就懒得加了,除非哪天它改版了需要这些玩意),再加上原封不动的请求体,此时再发出请求,它终于可以返回guilded链接了(悲🤔

最后还有一个巨坑,php的响应输出是响应头和响应体不分,和cgi-bin(或者说curl -i)一个德性,但和cgi-bin不一样的是它做不到直接将这坨玩意echo出去就能构成整个(返回给浏览器的)响应了,还得手动设置好响应头🤔而且更神奇的是我找了114514个办法都没法将响应头和响应体分开,所以最后我只能在这坨玩意里取最后一行作为响应体echo出来,并设置一个固定的响应头Content-type: application/json了(恼🤔

吴内鬼,来点k-kawaii nahida chan:

thonk

使用pikapod中转的好处当然是大小没有什么死🐴100MB限制,而且也用不着注册什么顶级域名🤔缺陷也是存在的,上传稍大的文件时可以看出中转脚本先自己用某个变量吃下了整个请求,再上传到guilded,这样的话在这个过程中不仅会有明显的延迟,还会明显地占用上传文件体积那么大的内存空间(悲🤔在最极端的情况下,有4人在同时用这玩意,每人都在上传500MB的大文件,直接2GB内存被占用完🤔

再说了,在php.ini里面开启enable_post_data_reading = Off之后,中转脚本是能用了,但别的php程序会出问题,它们可能依赖php自动处理multipart/form-data请求的功能,关掉这个功能后甚至连wp的发布/修改文章功能都能被橄榄(恼🤔

综上我只能再去创建一个pikapod小号,然后撸一个新的wp站了(恼🤔现在pikapod貌似没法随便用域名邮箱注册了,但至少gmail的加点大法还是可以用的,所以懂的都懂(大嘘🤔这次上了2GB内存,白嫖版本的内存容量上限,好,现在法克晴仍然可以照常更新文章了,而且guilded也能上传,乳刻,请(吴慈悲🤔

pikapod migration.22.10.02

今天尝试将跑在pikapod上的法克晴进行一番迫真迁移,将其从一个pikapod账号迁移到另外一个pikapod账号,还要保持域名不变🤔

这次主要是所谓的概念验证,先创建另外一个pikapod账号,创建一个新的wordpress容器,执行正常的安装过程,然后装上all in one wp migration插件🤔与此同时在原来的法克晴上用all in one wp migration导出备份档,下载后再上传到新的wp站🤔

自从pikapod砍掉港服之后,我发现它上传速度也变慢了,比如以前能够6MB/s上传的话现在只有4MB/s了(悲🤔接下来站点恢复完成,我所有的oneindex站都能用,甚至之前放在上面的guilded解压脚本都在,说明它应该是把整个wp-content目录都备份了(确信🤔

接下来是域名antics,先将原来的法克晴站域名改成fuckeqing2,然后再将我备份后的新wp站改成fuckeqing,这两步也能正常完成(确信🤔至此法克晴完成了账号间迫真迁移,原来那个容器可以删了,这不比续woiden舒服114514倍?🤔最后算下来只用了不到20分钟,爽的批爆🤔

thonk

但接下来我发现它的某些posts貌似有些问题,我在里面写了视频文件的绝对路径来调用播放框,但all in one wp migration貌似在恢复过程中将它们的域名全部便乘了它创建容器时随机生成的那个,而非法克晴(恼🤔看来下次迁移的时候,我应该先改域名,再尝试恢复🤔

bruhfei

话说回来上个月的windwalker作品感觉不太行啊,萌妹破处图居然只有三个(恼🤔反正总感觉没前几个月的好用(恼🤔

如果这个月也是这么拉的话,恐怕我下个月之前就得订阅降级了,比如降到7美元那一档,甚至停止订阅(吴慈悲🤔

讲真我还不如去买前几个月的作品,比如现在我集齐了56两个月的,下次再集齐7月的,基本上我应该不需要再买别的月份了,毕竟在往前作品里可能合我口味的一个月只有一张,那就没啥意思了(悲🤔

guildedthonk.22.09.30

某天我突然想给我的某个guilded提取数据脚本加上使用aria2c下载的功能,因为curl用来下载实在是太拉,哪怕给设置上32线程🤔具体来说有两种改造方法,一种是将原来那个aria2c下载所有分片的函数直接撸进subshell里面,用一个aria2c进程下载一个批次的所有分片文件,另外一种更简单,将原来subshell脚本里的curl无脑替换成aria2c就vans了,只不过此时一个批次有多少个文件就得有多少个aria2c进程(确信🤔

我最后选用了第二种方法,但测试时tar解压总是报错(恼🤔后来我发现,aria2c在屏幕上打印的那些信息全部打到了stdout里,不像curl那样打到stderr,难怪它们也没有输出到屏幕上🤔所以我还需要在aria2c语句后面加上1>&2,现在它能正常跑起来了,而且checksum功能也能正常运作(确信🤔

而且至少win版本的aria2c还有一个巨坑,给它输一个/tmp这样的绝对路径是没用的,因为它是交叉编译的不依赖任何linux库(包括cygwin相关库)的114.514%win程序,它只能识别win的绝对路径🤔我也许可以用什么cygpath转,但我懒得折腾了,直接将临时分片文件扔currentdir得了(恼🤔

thonk

既然aria2c多文件是这么搞的,那么其实只要用到了aria2c,单文件是不是也能加加速?考虑到guilded drive一个分片有高达200MB的体积,上16个线程应该是没啥问题的(确信🤔于是我就照着多文件脚本的样子改了下,把多文件脚本里的subshell部分放进按行读取guilded drive链接列表的for循环里,然后在里面用一个临时文件来实现(用curl或者aria2c或者任何下载软件)下载文件并检查checksum、检查完成再cat的功能🤔当然这些玩意一加,单文件或者说单线程脚本也没法实现一边下载一边解压了,它至少得等临时文件通过checksum检查才能扔进管道里进行解压,但考虑到绝大多数情况下本地解压的速度其实比下载速度快很多,这部分可以忽略不计(确信🤔

最后到了喜闻乐见的测试环节,多文件aria2c基本上能跑满带宽,比如我本地最大40MB/s的话它绝大多数时间也有个3⑨MB/s,而单文件脚本改成了aria2c后,下载速度也达到了15MB/s🤔不过另外一方面我一开始写的单文件脚本根本不是用来下载文件的,而是用来在系统恢复盘上dd恢复系统的,用来取代ssh xxxx 'cat' | dd of=/dev/vda114514,所以它当然没有什么临时空间用来加速下载或者检查checksum,而且最好能实现一边下载一边恢复(确信🤔

guildedbitte

脚本是魔改完了,但现在我却没写任何往guilded里上传单文件的脚本,而且我也没有在guilded需要cookies之后立即魔改上传html,结果导致我上传这个脚本还得登一遍网页版的guilded(恼🤔然后我发现guilded现在的文件限制从200MB便乘了500MB,和discord nitro一毛一样,而且仍然可以随便用(确信🤔很不幸的是它仍然不支持上传sh文件,所以我仍然得将其改成txt再上传(悲🤔

无论如何,这应该就是最终版本了罢,curl 'https://s3-us-west-2.amazonaws.com/www.guilded.gg/ContentMediaGenericFiles/d57d21cee5103abe5c7966559ad13fa3-Full.txt' | bash /dev/stdin -mt '[insert guilded drive url here]',请(吴慈悲

freetoys.22.09.27

这几天逛某白嫖群发现了除hax/woiden外的其他白嫖玩意,看起来像是什么白嫖容器🤔它们尽管不是什么像hax/woiden那样的完整(迫真)vps,但好在理论上来说不用每周续一次期,或者像pikapod那样每三个月续一次期,应该能一直用下去(确信🤔

我现在只发现了这几家:

如果是我的话顶多拿它们建个站,但群里那帮家伙更喜欢拿它们搭建机场,甚至搭建grasscutter🤔今天实在是太困了,改天再一个一个一个一个测试它们啊啊啊啊啊🤔

bruhfei.22.09.26

又是一个月一度的deadline impact时间,而且这次又没有完成(全恼🤔这几天貌似又有一大堆乱七八糟的玩意,导致我原计划最后一天撸完它剩下的两个活动,笑死,根本没有时间🤔到今天的凌晨4点,我只有大号和某早柚酱小号完成了两个活动,其他号只完成了其中一个,还有一个大号第一个压根就没完成(悲🤔

但至少第二个活动里领的道具我都领了一遍(只需要四个关卡打完第一个就可以了),外加和某短发萌妹合了一顿影,原石算什么,合影和限时道具不香吗(迫真🤔

thonkeqing

与此同时这两天defloration上传得太几把慢了,两天才上传了个不到300GB,很明显它不是在龟速上传图片就是被onedrive的司马限速卡住1145.14秒(恼🤔但再怎么说,defloration真正的精髓(也是我当年愿意花30美元还是欧元来着买的玩意)就是它的图片部分,我记得当年拖完图片的时候统计了下,总共有25万张,这些图片上传discord都上传了超过一天呢🤔

无论如何,我决定直接排除所有的jpg文件再上传一遍,至少我得先把它的所有视频上传上去再说,这部分几个小时就搞完了,之后我是将这些视频全删了还是不删随便,反正让它慢慢上传图片罢🤔

至此那个装有sexart最后七个视频和绝大多数defloration的site空间又一次被用完了,剩下的两年defloration又一次没法用之前用过的site装(极其生草的是,这次剩下来的玩意和上次sexart剩下来的玩意居然都是140GB左右,等等,145GB?那没事了,一个site装不下整个defloration全集),那么就意味着又有一个新的site会剩下大量空间,需要我再找个之前拖的站来塞进去(恼🤔这次上传哪个?xconfessions?还是brcc?🤔xconfessions貌似只有不到300GB,但brcc我记得有1.7TB,反正这两个都不怎么好处理(恼🤔

话说sexart的片子至少看上去绝大多数都是比较赏心悦目的,brcc至少一大半都是坦克(全恼🤔

luminethonk

这几天我还买了些乱七八糟的玩意,一个5块钱5m的led灯条,号称是交流电直驱,不需要接变压器🤔我打算用这玩意来取代头顶坏了的led大灯,接上电之后感觉也就比原来的稍微暗一点,但当我尝试用这个光源提供的光拍照时,我发现相机能够捕捉到肉眼可见的频闪(恼🤔我无端猜测原因是它要么将交流电直接接进了led灯,要么在电路里只接了一个二极管和一个电阻,导致led灯有一半时间根本就没有电输进去,这样它当然会频闪了,而且频率肯定是50hz(确信🤔这玩意再便宜也不能当作室内光源,我还是去买个正经的led灯⑧,带变压器的那种(恼🤔

我还买了三个所谓的22110转2280转接器,为什么是三个,那当然因为我有三个22110固态(确信🤔这玩意本质上来说是个装m2固态的玩意,提供了一个m2 mkey接口和22110固定位来将22110固态固定在上面🤔与此同时,它还提供了另外一个m2 mkey接头和2280固定位来插入并固定在主板的2280固态位上🤔以这种方式,22110固态就可以像2280固态那样固定在只提供2280固态位的主板上,或者我买的那个只有2280固定位的nvme转usb玩意上,而用不着用显卡来压或者用橡皮筋绑住了(确信🤔当然它有好几个口,所以22110固态固定在只有2242固定位的主板上也不是⑧行🤔可以说是21世纪最实用的发明了(迫真🤔

video card thonk.22.09.24

这几天一不小心(迫真)看到显卡价格都腰斩了,1080ti基本上只要1500左右(这可是7年前的显卡),6900xt只要三千多,连3090都只要五千,看来eth转pos之后的效果可以说是立竿见影啊(迫真🤔倒是新款3090ti现在还得八九千,那还真的不如买两块6900xt(🤔

当然我做梦都没想到eth真的能完成彻底的pow转pos🤔我尽管对区块链什么什么密码学什么什么都不太了解,不清楚pow转pos是个怎样的转法,但我还是只能说eth牛批🤔现在那些矿蛆只能去挖挖什么etc,也就是以太经典,还有别的垃圾币了🤔再怎么说2021的币juan牛市早就结束了,接下来将迎来漫长的熊市,以上次周期的经验(201⑨-2021),这个熊市至少得有三年啊三年🤔不清楚币juan下次牛市的时候,我还有没有机会上车(半恼🤔

thonkeqing

不过话说回来,我现在也不是那么想换显卡,毕竟很长一段时间里我只有cuties impact玩(悲🤔也许换个1080ti倒是可以有,然后把1070ti扔给备机用去🤔但那个备机,它可能更需要优先解决电源问题,买个新的或者送修旧的,不然它什么显卡都别想用(全恼🤔

defloration reupload

现在基本上开始从discord drive下载并重新上传defloration的片子了🤔我发现当时拖的时候貌似无论图片部分还是视频部分都形成了完整的目录结构,所以最后决定先将所有图片下载下来解压,作为整个defloration玩意的骨架,然后将视频部分合并到这个骨架里面🤔然而linux里没法像win里那样用mv来做文件夹合并,所以只能换个方式了,比如用cp -ral以创建硬链接的方式来复制(迫真)视频文件到对应年份图片文件夹里,此时图片文件夹里就有了怎么说呢,链接数为1的图片文件和链接数为2的视频文件(确信🤔接下来将装有临时视频和discord drive的8MB临时文件的downloaded文件夹一块扬了(这样那些视频文件的链接数减为了1),这一部分合并就搞定了(确信🤔

用这套玩意,我撸出来了将近250GB的2001到2010年的defloration视频与图片合集🤔但这部分上传onedrive的速度极慢,视频可能很快就上传完了,但图片的话,反正一天都过去了,它才上传了个不到三分之一,动不动还要被onedrive限速(恼🤔

我懒得关心了,其实defloration的量真的极少,别说3TB了,我估摸连1.5TB都不见得有,那个3TB垃圾盘其实除了defloration外还塞了另外一个站的片子(确信🤔所以理论上来说我可以一次性搞定所有年份的视频与图像合并,并光速完成guilded drive上传,至于onedrive上传部分,它爱什么时候完成就什么时候完成(吴慈悲🤔

nitrobitte

顺便紧急插播一条新闻,discord将nitro的文件上传限制扩充到了500MB,而我目前在用的nitro classic仍然只有50MB🤔我去,现在我可能真的有点动摇了(迫真🤔

webhook方面,lv3黑色高级guild仍然只有全局100MB上传,这就有意思了🤔但总体而言,上传限制提到500MB我就会去充大nitro了?开什么寄吧玩笑!我可是discord drive作者啊(全恼🤔通过bash antics,别说大文件了,就是大文件夹我都能用discord白嫖账号和guilded来传(吴慈悲🤔

退114514步讲,它就算能上传大文件了,下载这个大文件的速度肯定不会比我下载一堆8MB小文件的速度快🤔再退1919810步讲,discord的视频proxy对视频直链最多只能播放100MB,对opengraph antics最多只能播放200MB,上传一个500MB的视频没法在聊天窗口里播放,那和discord drive有什么区别(全恼🤔搞这些有的没的,还不如赶紧开放hls聊天窗口内播放(恼🤔

再说了,我充nitro classic其实主要还是为了全局表情,比如做一大堆什么什么thonk,什么什么bruh,还有什么什么CriUGUU表情到处用🤔