FreeBSD 配置
基础配置
源
mkdir -p /usr/local/etc/pkg/repos
cat << EOF > /usr/local/etc/pkg/repos/FreeBSD.conf
FreeBSD: {
url: "pkg+http://mirrors.ustc.edu.cn/freebsd-pkg/\${ABI}/quarterly",
}
EOF
pkg update -y -f
假如要将源更换成 https 的,需要先安装 security/ca_root_nss 包。
字体
pkg ins -y dejavu symbola \
sourcecodepro-ttf sourcesanspro-ttf sourceserifpro-ttf \
noto noto-emoji \
nerd-fonts \
powerline-fonts
支持 EXT4 读写
FreeBSD 12+ 的内核模块 ext2fs 已经支持对 ext4 的读和写:
echo 'ext2fs_load="YES"' >> /boot/loader.conf
开机加速
cat << EOF >> etc/rc.conf
sendmail_enable="NONE"
sendmail_msp_queue_enable="NO"
sendmail_outbound_enable="NO"
sendmail_submit_enable="NO"
EOF
桌面
echo 'proc /proc procfs rw 0 0' >> /etc/fstab
echo 'dbus_enable="YES"' >> /etc/rc.conf
echo 'hald_enable="YES"' >> /etc/rc.conf
桌面的用户,需要将用户加到 video 和 audio 组,也可以直接加到 wheel 组,让自己可以 su
:
pw groupmod wheel -m chongwish
显卡驱动
Intel
自从 13 后,FreeBSD 提供由 Linux 移植过来的驱动,支持 KMS,所以不需要配置 xorg.conf 了。
pkg ins -y drm-kmod
echo 'kld_list="/boot/modules/i915kms.ko"' >> /etc/rc.conf
Xorg
pkg ins -y xorg-minimal
配置参考 Xorg 配置。
显示管理器
LightDM
pkg ins -y lightdm light-gtk-greeter
echo 'lightdm_enable="YES"' >> /etc/rc.conf
桌面环境
Xfce
pkg ins xfce
ACPI
监控
CPU 温度
echo 'coretemp_load="YES"' >> /boot/loader.conf
sysctl -a|grep temperature
功耗
需要安装 powermon 和 加载 cpuctl 模块,类似于 Linux 下的 powertop 工具。
pkg ins -y powermon
echo 'cpuctl_load="YES"' >> /boot/loader.conf
配置
动态调节 CPU 频率
cat << EOF >> /etc/rc.conf
powerd_enable="YES"
# c_state => c2
performance_cx_lowest="Cmax"
economy_cx_lowest="Cmax"
EOF
sysctl dev.cpu | grep freq
GPU 休眠
假定之前装的是 drm-kmod,那么我们可以为 GPU 开启 rc6:
echo 'drm.i915.enable_rc6=7' >> /boot/loader.conf
笔记本合盖睡眠
要先确保笔记本是否支持 S3 睡眠:
echo 'hw.acpi.lid_switch_state=S3' >> /etc/sysctl.conf
屏幕亮度调节
echo 'acpi_video_load="YES"' >> /boot/loader.conf
亮度的调节可以直接调用系统命令,需要 root 权限:
sysctl hw.acpi.video.lcd0.brightness=50
也可以安装 intel-backlight:
pkg ins -y intel-backlight
intel_backlight 50
intel_backlight decr
ThinkPad 的笔记本
echo 'acpi_ibm_load="YES"' >> /boot/loader.conf
外设
触摸板
触摸板依赖 moused:
echo 'moused_enable="YES"' >> /etc/rc.conf
然后才是才能开启触摸板的支持:
echo 'hw.psm.synaptics_support="1"'
触摸板默认是带双指滚动的,这里需要注意的是双指与边缘滚动是冲突的,而在 Linux 下是可以一起用的,如果开启的是边缘滚动,则边缘的界限要根据自己习惯来设置的:
cat << EOF >> /etc/sysctl.conf
hw.psm.synaptics.two_finger_scroll=0
hw.psm.synaptics.vscroll_ver_area=-1200
hw.psm.synaptics.taphold_timeout=100000
EOF
中文
pkg ins -y zh-sourcehansans-sc-otf zh-sourcehanserif-sc-otf noto-sc \
zh-fcitx zh-fcitx-configtool fcitx-qt5
cat << EOF > ~/.xprofile
export XMODIFIERS="@im=fcitx"
export XIM=fcitx
export XIM_PROGRAM=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export LC_CTYPE=zh_CN.UTF-8
EOF