解决安装 Xcode 后仍然需要依赖 CommandLineTools 的问题
Mar 26, 2024
在执行命令 sudo gem install cocoapods 安装 pod 的时候,出现了一个错误: clang: warning: no such sysroot directory: '/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk' [-Wmissing-sysroot] 可是我已经安装了 Xcode 15 ,难道还需要安装 CommandLineTools?这个安…
Swift 中使用字符串 length 时的注意事项
Mar 07, 2024
在 NSString 中,有一个length 属性,在 NSMutableAttributedString 设置属性的时候, range 指定的 length 需要和 NSString 的 length 一致,否则就会出现越界错误而导致崩溃。 在 Swift 中使用的是 String 而不是 NSString ,而…
解决 Xcode 智能提示失效的问题
Dec 13, 2023
清理 xcuserdata 和 DerivedData 可以有效解决 Xcode 打开项目慢和智能提示无效的问题: rm -rf your.xcworkspace/xcuserdata rm -rf your.xcodeproj/xcuserdata rm -rf ~/Library/Developer/Xcode/DerivedData Tips: 如果使用 git 作为项目管理的话,建议把 xcuserdata/ 加入到 .gitignore 文件中。
树莓派管理交换文件(Swap file)的正确方式
Nov 06, 2023
在树莓派的 /etc/fstab 文件末尾看到这样的注释: proc /proc proc defaults 0 0 PARTUUID=7c7f9727-01 /boot vfat defaults 0 2 PARTUUID=7c7f9727-02 / ext4 defaults,noatime 0 1 # a swapfile is not a swap partition, no line here # use dphys-swapfile swap[on|off] for that 在树莓派上应该使用 dphys-swapfile 来管理交换文件…
使用 pkgbuild 制作 RarLab RAR 安装文件
Oct 10, 2023
WinRar 的 macOS 版本只有命令行程序,而且把 x64 和 arm 版本分开提供,对于用户下载和安装都很不方便。 下载 arm64 下载 x64 然后把 rar 和 unrar 合并成 universal 的单文件: lipo -create rar-arm/rar rar-x64/rar -output rar lipo -create…
使用 CSS Flex 实现指定间距的九宫格
Jul 29, 2023
有这样的需求:在指定的宽度中,实现一个 9x9 的九宫格布局,item 之间的间距是固定的,比如 4px。item 的宽度等于容器宽度减去间距后平分,需要…
OpenWRT 22 配置 NAT66
Jul 22, 2023
以下操作仅适用于 OpenWRT 22 以及更高版本,低于 22 版本不支持。 nat66 是用于内网 IPv6 共享公网 IPv6 上网的方案。例如你的运营商只分配给你一个后缀是 126 的 IPv6 地址,或者公…
Swift 的元组(Tuple)
May 06, 2023
元组(tuple) 是 Swift 的一种数据结构,可以理解为匿名的 struct。 元组可以是参数,返回值,也可以是属性类型,合理使用元组可以使代码更简洁:…
修改 TTL 的值
May 05, 2023
TTL 是 64 或者 128 会被认为是 PC 设备或者是通过热点上网,修改路由设备的 TTL 值可以让运营商认为流量来自于移动设备。 Linux sudo sysctl -w net.ipv4.ip_default_ttl=65 sudo sysctl -w net.ipv6.conf.default.hop_limit=65 OpenWRT 修改所有 WAN 流量的 T…
轻量级的时间同步客户端 systemd-timesyncd
May 03, 2023
以前一直使用 ntp, ntpdate 和 ntpsec-ntpdate 来同步系统时间,虽然功能很强大但是我只想同步时间而已,并不需要其他的附加功能。 systemd-timesyncd 就是这样简单的时间同步服务。 安装:…