博客 | Blog

Flexgate 苹果背光门事件

简介 #

Flexgate 背光门事件是指苹果公司 2016 或者 2017 款的 Macbook 在长期使用后出现的屏 幕质量问题,具体表现为屏幕背光完全消失(黑屏)或者出现严重的漏光现象,国内外很多 文章视频对此已经有详细的介绍1。美国也出现了针对 Flexgate 事件的集体诉讼。2019年5 月19日,苹果官方推出了 2016/2017 款 13 寸 Macbook Pro 的显示屏背光服务计划2,但是对于存在同 样问题的 2016 款 15 寸 Macbook Pro 却没有对应的服务计划。这也正是我购买的机型。

回顾 #

  • 2017-01-05 购买 2016 款 15寸 Macbook Pro 便携式笔记本电脑。
  • 2017-06-22 购买该设备的延长保修服务 Apple Care+。
  • 2020-12-14 因电池鼓包授权维修点送修,免费更换 C 面(尚在 Apple Care+ 保修期限内)。
  • 2020-03-24 晚间发现笔记本屏幕黑屏,不显示任何内容,显示器背光完全停止工作。上网搜索发现原因是苹果的产品设计缺陷 Flexgate 背光门确认。
  • 2020-03-25 电话苹果客服确认该问题,由于疫情期间行程受阻,未能送去线下维修。
  • 2020-06-28 前往长沙苹果官方授权维修点,确认该设备出现的问题,但是拒绝免费维修,付费维修费用高达 6100 元人民币。放弃维修
  • 2020-09-11 淘宝寄修
  • 2020-09-16 淘宝维修返回,测试机器,发现底部背光有问题,背光不均匀,在低亮度的时候尤其严重。和店家交涉,第二天重新寄回。
  • 2020-09-21 淘宝维修再次返回,测试完美。总计花费 800 CNY。淘宝商品地址3

总结 #

遇到同样问题的苹果用户,希望我们都能力所能及地投诉并关注这件事情。对于不想在官方换屏维修的用户,可以尝试在淘宝或者华强北维修,我个人的体验比较满意。

...

Clash 作为网关的透明代理

注意:作者目前使用的方案已经更新,请参考[最新文章]({% post_url 2023-07-14-clash-gateway %}),使用 TUN 方案,不需要自己维护 iptables 规则

一直以来的方式是在各个终端进行代理,因为没有一定网关/路由层面处理的理由。之前也在路由器上折腾过几次,成功大抵算是成功,但是偶尔的稳定性问题,以及不方便更改代理状态和调试,最终还是放弃。

前段时间折腾了 DIYNAS,安装了 PVE 系统,折腾了虚拟机好久。想着既然没什么后顾之忧,不如在虚拟机上试试软路由?使用 OpenWRT 原生系统 + openclash 使用了一周左右,稳定性尚可,就是更新频繁(强迫症无法不点更新啊),配置文件看得人眼花缭乱。

在翻 Clash 的 GitHub 仓库时,发现最近 TProxy 支持了转发 TCP1,遂想起来在 Ubuntu 上折腾一下透明代理作为网关,成功后发现这种方式相对于 OpenWRT + openclash 简单省心,维护一份配置文件,不用频繁更新。记录方案于此。

提前声明本人网络知识欠缺,配置大多参考他人,尽力给出原始链接供参考。

普通 linux 主机设置 #

首先,在网关机器上打开 ipv4 转发, echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf && sysctl -p Clash 配置文件添加如下

# Transparent proxy server port for Linux (TProxy TCP and TProxy UDP)
tproxy-port: 7893

设置路由和 iptables 的脚本

# ROUTE RULES
ip rule add fwmark 1 table 100
ip route add local 0.0.0.0/0 dev lo table 100

# CREATE TABLE
iptables -t mangle -N clash

# RETURN LOCAL AND LANS
iptables -t mangle -A clash -d 0.0.0.0/8 -j RETURN
iptables -t mangle -A clash -d 10.0.0.0/8 -j RETURN
iptables -t mangle -A clash -d 127.0.0.0/8 -j RETURN
iptables -t mangle -A clash -d 169.254.0.0/16 -j RETURN
iptables -t mangle -A clash -d 172.16.0.0/12 -j RETURN
iptables -t mangle -A clash -d 192.168.50.0/16 -j RETURN
iptables -t mangle -A clash -d 192.168.9.0/16 -j RETURN

iptables -t mangle -A clash -d 224.0.0.0/4 -j RETURN
iptables -t mangle -A clash -d 240.0.0.0/4 -j RETURN

# FORWARD ALL
iptables -t mangle -A clash -p udp -j TPROXY --on-port 7893 --tproxy-mark 1
iptables -t mangle -A clash -p tcp -j TPROXY --on-port 7893 --tproxy-mark 1

# REDIRECT
iptables -t mangle -A PREROUTING -j clash

最后在局域网的 DHCP 服务器设置网关为该机器 IP 即可,也可以手动在希望走代理机器的网关设置未该机器 IP。

...

self-hosting is good

最近折腾整理了一下服务器上自建的服务,顺便给添加上了 https,下面简单记录一下,推荐自建服务的同时,也大致给同样想要折腾的人提供一点记录。

密码管理服务 #

自从 2009 年 CSDN 爆出明文存储密码,密码泄漏事件之后,便开始使用密码管理软件。最初使用 LastPass,之后长期使用 Keepass,最近一年迁移到了 1Password,在论坛发现对 Bitwarden 的推荐后,顺手在服务器上部署了,目前使用几个月,体验良好。

推荐使用 docker 部署,官方仓库对性能要求比较高,推荐使用 Rust 重写的服务端 bitwarden_rs,采用 docker-compose 方式部署,注意为了使后面部署的其他服务也能使用 Caddy,我们不采用上面这个 repo 提供的 docker-compose.yaml,采用以下

$ cat docker-compose.yml 
# docker-compose.yml
version: '3'

services:
  bitwarden:
    image: bitwardenrs/server
    restart: always
    volumes:
      - ./bw-data:/data
    environment:
      WEBSOCKET_ENABLED: 'true' # Required to use websockets
      SIGNUPS_ALLOWED: 'false'   # set to false to disable signups
    ports:
      - "127.0.0.1:3012:3012"
      - "127.0.0.1:3011:80"

最后我们统一采用 Caddy 进行反向代理。

RSS 阅读器 #

2010 年前后开始使用 RSS 订阅,经历了 2012 年 Google Reader 关闭带来的晴天霹雳,后来在 Digg, feedly, inoreader 之间辗转,目前是 inoreader 的 Pro 付费用户,前几天在推上看到有人提到 miniflux,遂去瞄了一眼,看起来比较简洁,本着尝试的态度部署了一下,体验还可以,虽然暂时无法替代 inoreader,采用官方提供的 docker-compose.yaml 即可,如下:

...

关于笔记软件

作为一名资深的磨刀人,对于笔记软件自然使用过无数款。简单总结一下所有的产品和过往的一些记录。

  • Workflowy
    • 非常棒的大纲工具,我使用的时间并不长。界面流畅,交互体验顺滑。
  • 幕布
    • 国内的 Workflowy,添加了思维导图的功能,然而我几乎不用思维导图,长期付费会员,可惜还没到期就放弃不使用了,以后记得这类千万不要买超过一年的会员。
  • Bear
    • macOS 上的文本编辑,我怎么也不习惯用文件的方式记笔记。
  • Ulysess
    • 类似 Bear,本质上是个写作工具。
  • Vimwiki
    • 最早接触的,我最初公开分享的 wiki 页面就是 vimwiki 生成的。
  • Drafts
    • iOS 上的文本书写工具。
  • Simplenote
    • 简洁,共享功能很棒。
  • Google Keep
    • 日志记录,搜索功能强大, OCR 功能很棒。
  • Notes.APP
    • Apple 生态下的随手记录,可以尽量不使用。
  • Day One
    • 日记,界面优美,可惜不跨平台。
  • Evernote
    • 存放各种 Review 笔记,扫描的收据,剪藏的文章,目前个人用来做各种渠道的信息收集。还没放弃它的原因是可以检索图片中的文字。但是实在太重了。新人不建议使用了。
  • notion
    • 结构化信息,书评,主要笔记场所,但是中文搜索有问题
  • Jrnl
    • 作为日常随手笔记应用,记录工作日志,日常日志
    • 启发自 jrnl,一个 pyhton package 用于命令行记录的日志工具
    • integrated with Telegram, so I can journal by telegram messaging to the bot
    • developed a server API, so I can journal by command line using [[Alfred
  • Roam Research
    • 主力使用,存放任意类型笔记,读书观影万物皆可,目前的增量信息都使用 RR 来管理吧。关于是否可以替代 Day One 成为日常 log 工具还需要考虑。
    • 优点:
      • 省钱了,Day One 订阅费用一年 35 USD
      • 统一的集中数据库
    • 缺点
      • 移动端暂时没有好的方案
      • 私人信息会污染数据库
      • 没有华丽的 UI 和当年今日等回顾性质的内容
  • Joplin
    • an open source note taking and to-do application with synchronization capabilities for Windows, macOS, Linux, Android and iOS. Forum: https://discourse.joplinapp.org/
    • 没有使用过,可以将 Evernote 笔记导出为 markdown 文件,很棒。

附上8年前的一些想法:

...

红米 K30i 安装欧版 ROM

解锁 #

  • 手机登录小米账号。
  • 进入设置→我的设备→全部参数,反复点击MIUI版本开启开发者选项。
  • 进入设置→更多设置→开发者选项→设备解锁状态,按系统提示的步骤绑定账号和设备。
  • 下载官方解锁工具,按照工具自带的引导教程解锁即可,或参考图文教程。遇到问题可以参考小米手机解锁 Bootloader 教程和常见问题。一般新机会要求等待7天才能解锁。

安装ADB #

点击链接下载ADB:

刷入TWRP #

  • 下载地址 https://androidfilehost.com/?w=files&flid=50678 根据机型下载对应的 TWRP
  • 掏出手机,进入设置→更多设置→开发者选项开启USB调试后,用数据线连接电脑,手机会询问USB用途,选传输文件
  • 打开cmd,输入以下命令重启手机到Bootloader。 adb reboot bootloader
  • 重启至Bootloader后(屏幕内容为兔子修理安卓机器人),继续输入命令 fastboot devices -l, 若返回串号, 则说明手机连接成功。
  • 刷入 TERP
    fastboot flash recovery twrp_xxx.img
    fastboot boot twrp_xxx.img
    

刷入欧版MIUI #

MIUI v12 下载地址 https://sourceforge.net/projects/xiaomi-eu-multilang-miui-roms/files/xiaomi.eu/MIUI-STABLE-RELEASES/MIUIv12/ 根据机型下载对应 ROM

接着手机关机,长按“电源键”+“音量+”,重启手机到TWRP。

具体步骤

  • 进入TWRP首页,依次进入清除→格式化Data分区→输入yes格式化;
  • 返回上一级菜单,进入高级清除选项,勾选Dalvik/ART Cache,Data,内部储存,Cache,System并滑动滑块确认清除。
  • 返回TWRP首页,依次进入重启→Recovery。
  • 重启进入TWRP首页后,手机USB连接电脑,将下好的rom包放进手机内部储存根目录。
  • 从TWRP首页进入安装,选中你复制进去的ROM包,拖动底部滑块滑动确认刷入即完成了欧盟版MIUI的刷入。
  • 重启手机,等待首次启动读条,进去便是干净的欧盟版MIUI。

刷入Magisk取得Root权限 #

如果你需要Root(推荐root),则继续留在TWRP里操作:

  • 返回TWRP首页,依次进入高级→root系统,滑动滑块即可刷入Magisk。(由于K30 5G版的TWRP已内置root功能,所以能这样直接刷入。)
  • 如果你手机的TWRP没有内置root,则需要手动下载Magisk卡刷包,像刷入ROM一样刷入即可。

参考链接 #

KeePass 迁移到 1Password,再迁移到 Bitwarden

使用密码管理器有些年头了,2010 年前后最初选择的是 lastpass,后来短暂尝试过 1password,使用时间最为久远的是开源的 KeePass。 Keepass 的跨平台是基本满意的,Windows 下的客户端支持最全面,Linux 下使用 KeepassXC,macOS 下使用 macpass,iOS 下的客户端非常多, 免费付费的都有,我尝试过的有 MiniKeePass,Kypass,在这次迁移前一直使用的 Kypass。

迁移的原因无外乎 Kypass 的一些细节还是不如 1Password。简单记录一下迁移流程。

使用 Windows 上的 Keepass 客户端导出 csv 文件,使用 vim 对 csv 文件进行预处理,使得能够导入 1Password,涉及到的主要命令有

%s/\r/r/ 将 ^M 替换为换行

%s/\([^"]\)\n/\1 / 将注释中的换行符替换为空格

%g/^$/d 删除空行```

另外由于 1Password 支持两步验证,OTP 协议。所以将之前所有的两步验证从 Authy 迁移,参考 https://gist.github.com/gboudreau/94bb0c11a6209c82418d01a59d958c93#gistcomment-2224133

/Applications/Authy Desktop.app/Contents/MacOS/.Authy\ Desktop –remote-debugging-port=5858


不满意 1Password 的地方
- 没有文件夹管理
- 数据类型复杂(logins, Credit Cards, Secure Notes)导致的导出迁移困难

满意的地方
- OTP 集成
- 交互体验优于 KeePass (iOS macOS 上的自动填充等细节)


2020-11-20 Update:

最近又决定尝试一下 Bitwarden,很早之前就耳闻过,以为部署麻烦,没想到使用 docker 部署如此顺畅,
部署的细节参考另一篇[文章](https://www.wogong.net/blog/2020/11/self-host)。
跨平台的体验,产品细节各方面个人体验并不逊色于 1Password,还是开源自己部署服务器的方式,迁移过来不需要更多理由了吧?

后浪

5月4日前夕,BiliBili 在央视发布了一则 2 分钟的广告短片,网站同时放出了接近 3 分钟的完整版本。题为“后浪”,写给年轻一代,完整版链接

我最早是在朋友圈看到好几个人转发,遂点进去看了,稍受感动,也转发了,当时的配文大意是,尴尬的年龄,要保持心态的年轻。 后来看到了翻转电台痛骂这段视频的节目,听完觉得很有道理,虽然听的时候忍不住笑起来。由于当时已经很晚,凌晨三点,遂没有在朋友圈转发。白天起床后,转发了另一篇公众号的文章。《后浪》,更像是一出盛大的、虚伪的奶嘴派对,原始链接。 当然完全能理解,这样的文章在朋友圈会受到什么样的待遇,大部分的回复是否定这篇文章。言辞包括,“说的不是一件事情”“这也太能杠了”“槽点太多”,确实这种评论只需要结论,不需要任何论证过程。我也没有回复,有些回复发出了又删除了。这种现象不止我,好几个好友都有类似行为。 后来在群聊中看到了,基于该视频再创作的另一个视频。 同样的音频,但是混剪的视频更“接地气”,这种与官方叙事迥异的民间叙事手段,通过解构原视频,给人以非常大的冲击力。戏谑的手法,比翻转电台的播客或者批判的公众号文章效果更佳,严苛程度也更轻。

这一事件中,我要反思的是,为何第一次看到这个视频时,没有生出部分人提到的生理不适感。直到听到翻转电台的播客,才意识到整个视频的荒谬?更进一步,可以问这样一个问题,是我的观点不够坚定随波逐流么?作为对比可以问其他看到公众号文章反驳的人,他们反驳的点在哪里?是下意识的反驳还是深思熟虑后的结果? 另一个态度是从商业的角度出发,夸赞B站的营销手段之高明,毕竟这只是B站出圈的商业广告而已,能获得如此多的讨论已经非常成功了。这种散发着油腻气息的言论令人作呕,但却有相当大的市场。毕竟无论多愚蠢的言论都会有人喝彩的。

以上是关于后浪事件的一些私人记录。

《明亮的对话》短评

[阅读挑战2020]({% post_url 2020-05-01-read-challenge %})这个书单看完的第一本书,是徐贲老师的《明亮的对话》,阅读体验是欣喜甚至可用狂喜来形容,一方面是欣喜这本书解答了自己关于公共对话的一些困惑,另一方面是欣喜自己参与了这个阅读挑战,后面可能还会遇到很多类似书籍。

一气呵成读完之后,想着应该推荐给身边的朋友。可是如何推荐才能不辜负这样一本好书?对于大部分书籍,一般只是在豆瓣上写几句话的短评,偶尔有些篇幅较长的书评,也是随性所至,不求章法。依旧这样的态度,可能会适得其反。好在书单上的那本《如何阅读一本书》可以作为参考,尤其是关于如何成为一个自我要求的读者章节。接下来的文字,可以认为是我对这本书的阅读笔记,供自己以后翻阅,也是向各位推荐。

《明亮的对话》,副标题公共说理十八讲。作者是徐贲(音同奔),长期在美国教授论证说理和人文教育课程。这本书的内容副标题已经道明本书的主题是关于公共说理。说理就是讲道理,公共说理即如何在公共空间讲道理,公共说理的内涵很广泛,我们日常对于时事的谈论,也可以算作公共说理。这本书围绕公共说理总计十八讲,介绍了公共说理的概念、结构、技巧、必要性以及公共说理和伦理、公民教养、民主等相关主题的关系。

为什么选择读这本书?一个对当下社会有所关注的人,应该能感受到公共舆论环境的恶化。互联网上充斥着非理性的言论,反智、犬儒以及各种充满极端情绪的文字,我们还有可以好好说话的公共空间么?如何进行理性、以求知交流为目的的对话?因为对现实的失望,很多人选择不发声,压抑自己的表达,或者用冷嘲去隐晦地表达。个体如何面对这一切?大部分人或者说我自己是缺失公共说理的训练的。带着这些失望和疑问,翻开了这本书。

这本书由前言和后续十八讲组成,前言直说中国需要公共说理教育和公民理性(本书出版于2014年,在今天谈这个话题比当初更为重要),列举了一些让人失望的非理性言论,主角不只是个别网民,还包括一些严肃媒体。究其原因,是我国缺乏说理教育,对比了美国从小学、中学到大学的说理教育。强调了说理是需要刻意学习的。自说自话与高调宣传都不是公共说理,而我们的日常生活却充斥着这两者。

接下来八讲是关于说理的技术讨论,主要按照古希腊的修辞学框架(这里使用的是广义的修辞含义)。结合逻辑论证的三段论,讨论了说理中的各个部分,例如主张,理由,论证等。这一部分包括了一些说理的概念、定义和原则。

剩下的部分包括的内容比较广泛,介绍了美国教育体系中的“随笔”写作和说理的关系,说理与公民教育、政治民主、伦理道德层面的联系,以及非说理宣传对人的危害。这部分的逻辑结构不是非常清晰,毕竟是随笔的形式,每一讲中也有重复出现的内容。这一点也是被读者较多批评的点。 读毕这本书,让我了解到公共说理是有一整套技术细节的,不是辩论中的各种奇技淫巧,更不是不容质疑的断言。了解这些人类文明的积淀,可以让我们有更理性的思维,更能清晰明白地表达自己的观点。同时,也能帮助识别那些非理性的话语,例如商业广告和官方机构的话术。逻辑谬误并不都显而易见,刻意的训练才能让你获得识别这些谬误的技能。 说理教育不是为了使人论辩获胜,也不仅是单纯技能的传授,而是与人的文化教养和道德素质联系在一起,传承着人类共同文明和自由、平等、理性的说理价值。这才是公民社会要培养的“公共说理教育”和“公共理性”。

我们相信说理比不说理更能找到真实和公正的东西。我们希望,说理可以成为明亮的对话,一种自由、理性而持续的公共交谈。

阅读挑战计划

三月底的时候,看到方可成老师在 Youtube 发布的推荐书籍视频,是早先在公众号“新闻实验室”发起的阅读挑战活动。看完视频感到一丝惶恐,因为推荐的书籍几乎全部不在我的舒适圈内,自认为喜爱读书,回顾一下发现看的书籍品类非常单一,多是小说或科幻,以及网络推荐较多的“网红”类书籍,历史哲学社科类几乎没有。

一时心血来潮,决定参考方可成推荐的书单结合自己积累的看不到头的待阅读书籍清单,确定了自己的2020阅读挑战书单。

  1. 一本名字里带有2的书:第22条军规
  2. 一本关于沟通的书:明亮的对话
  3. 一本封面只有文字,没有图片的书:政治秩序与政治衰败 : 从工业革命到民主全球化
  4. 一本反思互联网科技的书:算法霸权
  5. 一本描写乡村小镇生活的书:乡土中国
  6. 一本关于人类社会进步历程的书:当下的启蒙
  7. 一本关于气候变化的书:天翻地覆
  8. 一本打破性别刻板印象的书:我知道笼中鸟为何歌唱
  9. 重读一本曾经读过的书:钢铁是怎样炼成的
  10. 一本出版于你出生那一年的书:1991 如何阅读一本书
  11. 一本出版于2020年的书:待定
  12. 一本一天内能读完的书:小王子的领悟
  13. 一本关于2020年你想去旅行的城市的书:江城
  14. 一本时代背景在1920年代的书:了不起的盖茨比
  15. 一本关于纳粹的书:噩梦年代
  16. 一本你在路上看到别人在读的书:我的孤单我的自我,单身女性的时代
  17. 一本书名中或封面上有鼠的书:鼠疫
  18. 一本你想读但是没有信心能都下来的书:哥德尔、艾舍尔、巴赫
  19. 一本主人公和你从事相同职业的小说:太阳照样升起
  20. 一本访谈录:八十年代访谈录
  21. 一本诗集:事物的味道 我尝的太早了
  22. 一本和最亲密的朋友约好一起读完的书:内向高敏者
  23. 一本和日本有关的书:拥抱战败
  24. 一本诺贝尔奖得主的书:贫穷的本质/非理性繁荣

关于 as with

2020年3月3日,桥水基金的老板 Ray Dalio 发布了一篇关于疫情的文章 My Thoughts About the Coronavirus,文章并不长,理解起来也没有太大难度。比较有争议的可能是最后一段。

The most important assets that you need to take good care of are you and your family. As with investing, I hope that you will imagine the worst-case scenario and protect yourself against it.

一部分人(包括本人)在理解最后一句话的时候,是这样的:“至于投资,我希望你考虑到最坏的情况……”,在受到质疑后,Google 查证后,发现 as with 的含义应当是 just like. 所以正确的理解应该是:“正如投资一样,我希望你考虑到最坏的情况……”。

故事到这里本应结束,直到我看到了微信公众号上这篇文章的中文翻译。当时在阅读原文时觉得有些地方理解不清楚,便收藏了这篇译文。点开文章发现译文的最后一段的理解正是我之前错误的版本。(我最初看到的中文版本链接已经无法找到,通过关键字搜索找到的文章同样是错误理解,估计用的同一个人的翻译)。两个毫无关系读者的理解错误,让我对这件事情有了兴趣。究竟有多少人会犯这样的错误,或者这句话正确的理解是否就应该是前者?我在微信的聊天群组和朋友圈以及私聊等渠道问了一些朋友,希望了解他们对这句话的理解。

扩大样本数量得到的结果也比较有趣,虽然“至于”理解人数并不少,但是大部分人(包括 native speaker)都认为正确的理解应当为“正如”。理解成“至于”确实更符合上下文,如果最后一句话说的是家庭方面需要,“考虑最坏的情况,保护自己免受伤害”,有耸人听闻制造惶恐之感,而且我们真的到了那一步么?然而从字面含义,as with 确实就是“正如”的含义,并无“至于”的含义(as for),作者告诫读者,做最坏的打算,也是强调对疫情的重视。

对这句话的理解偏差,到底还是归结于对短语意思理解的偏差,巧合的是这种偏差指向了一个逻辑上更“合理”的含义,大概这也是为什么这么多人理解错误。实际上,我在最初遭到质疑的时候,还是很坚定自己的理解是正确的,真是无知。想到自己在日常英文阅读中,不知道多少作者的含义被曲解,不禁后怕,以后还是应该多学习。

感谢在这一问题上指教的朋友们。疫情期间,各位保重。