Created
December 17, 2024 11:49
-
-
Save kritoke/0630f448b4afd7e37a5344c541a45e83 to your computer and use it in GitHub Desktop.
FreeBSD Desktop Install and Tuning Notes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pkg update | |
freebsd-update fetch | |
freebsd-update install | |
pkg install drm-kmod | |
sysrc kld_list+=i915kms | |
pkg install libva-intel-driver mesa-libs mesa-dri | |
pkg install xorg-minimal budgie lightdm-gtk-greeter-settings | |
sysrc dbus_enable="YES" lightdm_enable="YES" | |
install microcode: | |
pkg install cpu-microcode | |
install fonts: | |
pkg install \ | |
cantarell-fonts \ | |
droid-fonts-ttf \ | |
inconsolata-ttf \ | |
noto-basic \ | |
noto-emoji \ | |
roboto-fonts-ttf \ | |
ubuntu-font \ | |
webfonts | |
pkg install terminus-font terminus-ttf | |
/boot/loader.conf: | |
# Shared memory, max process increases | |
kern.ipc.shmseg="1024" | |
kern.ipc.shmmni="1024" | |
kern.maxproc="100000" | |
## Graphics Card power saving (Intel GPUs) | |
# Skip unnecessary Mode Sets at boot time | |
compat.linuxkpi.i915_fastboot=1 | |
# Enable power saving Display C-STATES | |
compat.linuxkpi.i915_enable_dc=2 | |
# Enable Frame Buffer Compression | |
compat.linuxkpi.i915_enable_fbc=1 | |
# Intel Core thermal sensors | |
coretemp_load="YES" | |
# Asynchronous I/O | |
aio_load="YES" | |
cpu_microcode_load="YES" | |
cpu_microcode_name="/boot/firmware/intel-ucode.bin" | |
In /etc/sysctl.conf: | |
Code: | |
# Allow users to mount disks | |
vfs.usermount=1 | |
# Autodetect the most recent sound card. | |
hw.snd.default_auto=1 | |
# Enable shared memory for Chromium | |
kern.ipc.shm_allow_removed=1 | |
# Prevent shared memory from being swapped to disk. | |
kern.ipc.shm_use_phys=1 | |
# Enhance desktop responsiveness under high CPU usage | |
kern.sched.preempt_thresh=224 | |
# Bump up maximum number of open files | |
kern.maxfiles=200000 | |
# Increase VFS read-ahead (better disk performance - particularly for SSDs) | |
# FreeBSD Default: 64 | |
vfs.read_max=128 | |
# Enhance shared memory X11 interface | |
kern.ipc.shmmax=67108864 | |
kern.ipc.shmall=32768 | |
################################## | |
# Network performance tuning | |
# | |
# The default values for many of these sysctls are optimized for the latencies | |
# of a local network. The modifications below should result in better TCP | |
# performance over connections with a larger RTT (like the internet), but at | |
# the expense of higher memory utilization. | |
# | |
# source: trust me, bro | |
############################### | |
kern.ipc.maxsockbuf=2097152 | |
kern.ipc.soacceptqueue=1024 | |
kern.ipc.somaxconn=1024 | |
net.inet.tcp.abc_l_var=44 | |
net.inet.tcp.cc.abe=1 | |
net.inet.tcp.cc.algorithm=htcp | |
net.inet.tcp.cc.htcp.adaptive_backoff=1 | |
net.inet.tcp.cc.htcp.rtt_scaling=1 | |
net.inet.tcp.ecn.enable=1 | |
net.inet.tcp.fast_finwait2_recycle=1 | |
net.inet.tcp.fastopen.server_enable=1 | |
net.inet.tcp.finwait2_timeout=5000 | |
net.inet.tcp.initcwnd_segments=44 | |
net.inet.tcp.keepcnt=2 | |
net.inet.tcp.keepidle=62000 | |
net.inet.tcp.keepinit=5000 | |
net.inet.tcp.minmss=536 | |
net.inet.tcp.msl=2500 | |
net.inet.tcp.mssdflt=1448 | |
net.inet.tcp.nolocaltimewait=1 | |
net.inet.tcp.recvbuf_max=2097152 | |
net.inet.tcp.recvspace=65536 | |
net.inet.tcp.sendbuf_inc=65536 | |
net.inet.tcp.sendbuf_max=2097152 | |
net.inet.tcp.sendspace=65536 | |
net.local.stream.recvspace=65536 | |
net.local.stream.sendspace=65536 | |
Disable various scripts: | |
sysrc -v -f /etc/periodic.conf \ | |
daily_backup_aliases_enable=NO \ | |
daily_backup_gpart_enable=NO \ | |
daily_backup_passwd_enable=NO \ | |
daily_clean_disks_verbose=NO \ | |
daily_clean_hoststat_enable=NO \ | |
daily_clean_preserve_verbose=NO \ | |
daily_clean_rwho_verbose=NO \ | |
daily_clean_tmps_verbose=NO \ | |
daily_show_info=NO \ | |
daily_show_success=NO \ | |
daily_status_disks_enable=NO \ | |
daily_status_include_submit_mailq=NO \ | |
daily_status_mail_rejects_enable=NO \ | |
daily_status_mail_rejects_enable=NO \ | |
daily_status_mailq_enable=NO \ | |
daily_status_network_enable=NO \ | |
daily_status_security_enable=NO \ | |
daily_status_uptime_enable=NO \ | |
daily_status_world_kernel=NO \ | |
daily_status_zfs_zpool_list_enable=NO \ | |
daily_submit_queuerun=NO \ | |
monthly_accounting_enable=NO \ | |
monthly_show_info=NO \ | |
monthly_show_success=NO \ | |
monthly_status_security_enable=NO \ | |
security_show_info=NO \ | |
security_show_success=NO \ | |
security_status_chkmounts_enable=NO \ | |
security_status_chksetuid_enable=NO \ | |
security_status_chkuid0_enable=NO \ | |
security_status_ipf6denied_enable=NO \ | |
security_status_ipfdenied_enable=NO \ | |
security_status_ipfwdenied_enable=NO \ | |
security_status_ipfwlimit_enable=NO \ | |
security_status_kernelmsg_enable=NO \ | |
security_status_logincheck_enable=NO \ | |
security_status_loginfail_enable=NO \ | |
security_status_neggrpperm_enable=NO \ | |
security_status_passwdless_enable=NO \ | |
security_status_pfdenied_enable=NO \ | |
security_status_tcpwrap_enable=NO \ | |
weekly_locate_enable=NO \ | |
weekly_show_info=NO \ | |
weekly_show_success=NO \ | |
weekly_status_security_enable=NO \ | |
weekly_whatis_enable=NO |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment