====== Information ======
* FreeBSD ((https://www.freebsd.org/))
* 14.3-BETA3 ((TODO: Update both [[https://www.freebsd.org/releases/14.2R/relnotes/|relnotes]], [[https://www.freebsd.org/releases/14.2R/announce/|announce]]))
* Xfce ((https://www.xfce.org/))
FreeBSD 14.3-BETA3
* :!: 2025/05/21: WIP
====== TODOs ======
* [[bsd;notes;freebsd]]
* [[bsd:notes:ports_temp|Ports/Src]] (drm-61-kmod; newer note in above link)
* Joystick [[bsd;notes;joystick#devdconf|devd.conf]]
* PC speaker beep at log-in ([[https://forums.freebsd.org/threads/how-to-have-pc-speaker-beep-when-log-in-is-ready.94934/|thread]])
* Solo U2F key and Firefox ([[https://forums.freebsd.org/threads/solo-key-u2f-fido2-in-firefox.95203/|thread]])
* Wine ''wine.bin'' kill desktop launcher
* Android ''adb'' ([[https://forums.freebsd.org/threads/adb-android-tools.93731/#post-670844|post]])
* Android file transfers with MTP ([[bsd:notes:misc#mount_mtp]])
* Install note 32-bit libs https://docs.freebsd.org/en/books/handbook/bsdinstall/#bsdinstall-components
* [[bsd:notes:wifi]]
* Spinesnap = Dell Latitude 5591 laptop ((Intel UHD 630, no TB, no dGPU))
====== Download ======
* https://download.freebsd.org/releases/amd64/amd64/ISO-IMAGES/14.3/
FreeBSD-14.3-BETA3-amd64-memstick.img
====== Installation Notes ======
===== Partitioning =====
* https://docs.freebsd.org/en/books/handbook/bsdinstall/#bsdinstall-partitioning
* Auto (UFS)
* Partition Scheme: ''GPT''
DEVICE MAJ:MIN SIZE TYPE LABEL MOUNT
nda0 0:85 954G GPT - -
nda0p1 0:87 260M efi gpt/efi /boot/efi
nda0p2 0:89 950G freebsd-ufs gpt/freebsd-ufs /
nda0p3 0:91 3.9G freebsd-swap gpt/freebsd-swap SWAP
===== System Configuration =====
* https://docs.freebsd.org/en/books/handbook/bsdinstall/#bsdinstall-sysconf
* ''[ ]'' Everything (nothing checked)
===== System Hardening =====
* https://docs.freebsd.org/en/books/handbook/bsdinstall/#bsdinstall-hardening
* ''[x]'' Everything
===== User =====
* Invite to other groups: ''wheel''
* Shell: ''sh''
===== Network =====
* DHCP or Static on Ethernet (''em0'')
* DHCP on USB Tether (''ue0'')
====== Network ======
===== USB Tethering =====
* https://forums.freebsd.org/threads/usb-tethering-detected-and-up-but-no-internet.88441/
* :?: Might apply to any type of USB network device that shows up under ''ue#''
su -
sysrc ifconfig_ue0=SYNCDHCP
/etc/netstart
====== Time Sync ======
su -
ntpd -g -q
====== Update ======
===== FreeBSD =====
* https://docs.freebsd.org/en/books/handbook/cutting-edge/#freebsdupdate-security-patches
su -
freebsd-update fetch install
sync && reboot
===== pkg =====
su -
pkg update -f
pkg upgrade
====== Xorg ======
* https://docs.freebsd.org/en/books/handbook/x11/#x-install
* 2025/05/22: Need ''kmods-latest''
su -
pkg install xorg 'drm-61-kmod'
pw groupmod video -m espionage724
sysrc kld_list+=i915kms
====== Xfce ======
* https://docs.freebsd.org/en/books/handbook/desktop/#xfce-environment
su -
pkg install xfce
ee /etc/fstab
# Xfce
proc /proc procfs rw 0 0
sysrc dbus_enable="YES"
echo '. /usr/local/etc/xdg/xfce4/xinitrc' > /home/espionage724/.xinitrc
chown espionage724:espionage724 /home/espionage724/.xinitrc
sync && reboot
===== Login =====
* Username -> Password -> ''startx''
startx
====== Software ======
===== Repos =====
==== FreeBSD-latest ====
su -
mkdir -p '/usr/local/etc/pkg/repos' && ee '/usr/local/etc/pkg/repos/FreeBSD-latest.conf'
FreeBSD: { enabled: no }
FreeBSD-latest: {
url: "pkg+https://pkg.freebsd.org/${ABI}/latest",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkg",
enabled: yes,
priority: 1
}
# End
==== FreeBSD-kmods ====
* https://lists.freebsd.org/archives/freebsd-ports/2024-December/006997.html
su -
mkdir -p '/usr/local/etc/pkg/repos' && ee '/usr/local/etc/pkg/repos/FreeBSD-kmods-latest.conf'
FreeBSD-kmods-latest: {
url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_latest_${VERSION_MINOR}",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkg",
enabled: yes,
priority: 1
}
# End
===== Initial =====
su -
pkg install firefox xdg-user-dirs filezilla
==== XDG Dirs ====
* :!: Done from regular user and not ''su''
exit
xdg-user-dirs-update --force
===== General =====
su -
pkg install evince-lite thunderbird foliate gbrainy gimp keepassxc libreoffice mate-calc mpv ristretto thunar-archive-plugin transmission-gtk vlc xfce4-screensaver xfce4-screenshooter-plugin xfce4-whiskermenu-plugin android-tools aria2 cups en-freebsd-doc en-hunspell gnome-keyring gstreamer1-plugins-good gstreamer1-plugins-ugly gstreamer1-libav gtk-sharp30 htop icoutils libressl mesa-demos mesa-devel noto unar wget xarchiver xrandr yt-dlp
===== Chicago95 =====
* https://github.com/grassmunk/Chicago95
* https://www.freshports.org/x11-themes/chicago95
chicago95
===== Fastfetch =====
* https://www.freshports.org/sysutils/fastfetch
fastfetch
===== Wine =====
* https://docs.freebsd.org/en/books/handbook/wine/#installing-wine-on-freebsd
wine-devel wine-gecko-devel wine-mono-devel winetricks
===== Intel =====
****
libva-intel-media-driver
===== Games =====
****
neverball
==== DevilutionX ====
* [[games:bsd:devilutionx]]
devilutionX
==== Doomsday Engine ====
* [[games;bsd;doomsday_engine|Doomsday Engine]]
doomsday fluid-soundfont
==== FlightGear ====
* :!: [[games:bsd:flightgear|FlightGear]]
* [[games;controller_bindings;flightgear_sidewinder_joystick|Sidewinder Precision Pro Joystick Bindings]]
flightgear flightgear-data
===== Tor Browser =====
****
tor-browser
====== Firewall ======
===== ipfw =====
* https://docs.freebsd.org/en/books/handbook/firewalls/#firewalls-ipfw
su -
sysrc firewall_enable="YES"
sysrc firewall_type="workstation"
====== Settings ======
===== Groups =====
* ''operator'' to allow general reboot/power-off
su -
pw groupmod 'operator' -m 'espionage724'
===== 32-bit Wine =====
* :!: Done from regular user and not ''su''
exit
'/usr/local/share/wine/pkg32.sh' update -f && '/usr/local/share/wine/pkg32.sh' upgrade
'/usr/local/share/wine/pkg32.sh' install wine-devel mesa-dri gstreamer1-plugins-good gstreamer1-plugins-ugly gstreamer1-libav libressl
'/usr/local/share/wine/pkg32.sh' autoremove
===== MIME =====
gio mime 'text/plain' 'org.xfce.mousepad.desktop'
gio mime 'image/jpeg' 'org.xfce.ristretto.desktop'
gio mime 'image/png' 'org.xfce.ristretto.desktop'
gio mime 'image/bmp' 'org.xfce.ristretto.desktop'
gio mime 'application/pdf' 'org.gnome.Evince.desktop'
gio mime 'application/epub+zip' 'com.github.johnfactotum.Foliate.desktop'
===== Xfce =====
==== Appearance ====
* [[https://github.com/grassmunk/Chicago95/blob/master/INSTALL.md#enabling-chicago95|Chicago95]]
* Style -> Chicago95
* Icons -> Chicago95
* Fonts -> **Enable** anti-aliasing -> Uncheck and re-check for full check-mark
* Fonts -> Rendering -> Hinting: None
* Fonts -> Rendering -> Sub-pixel order: None
* Fonts -> DPI -> Custom DPI setting: ''96''
==== Desktop ====
* Menus -> Desktop Menu -> ''[ ]'' Include applications menu on desktop right click
* Menus -> Window List Menu -> ''[ ]'' Show window list menu on desktop middle click
* :?: Toggle between Background -> Color settings to get ''Solid color'' to stick
008080
==== Panel 1 ====
=== Display ===
* Measurements -> Row size (pixels): ''30''
=== Items ===
* Whisker Menu
* Separator (Handle)
* Window Buttons
* Separator (Transparent, **Expand**)
* Separator (Handle)
* Workspace Switcher
* Separator (Handle)
* Status Tray Plugin (Fixed icon size ''16'', ''[ ]'' Square items)
* Power Manager Plugin (Show label ''None'')
* Separator (Handle)
* Clock
=== Whisker Menu ===
* General -> Uncheck ''Show generic application names''
* General -> Uncheck ''Show application descriptions''
* General -> Menu width: ''425''
* General -> Menu height: ''525''
* General -> Background opacity: ''100''
* Appearance -> [x] Position search entry on bottom
* Appearance -> [x] Position commands next to search entry
* Appearance -> Profile: Hidden
* Appearance -> Display: Icon and title
* Appearance -> Display: ''Start''
* Commands -> ''[x]'' Lock Screen, Log Out (top/''--fast''), Restart, Shut Down (uncheck rest)
=== Window Buttons ===
* Appearance -> Uncheck ''Show flat buttons''
* Appearance -> Uncheck ''Show handle''
* Appearance -> Sort order: ''None, allow drag-and-drop''
* Behaviour -> Uncheck ''Group windows by application''
* Behaviour -> Uncheck ''Switch windows using the mouse wheel''
=== Clock ===
* Appearance -> Layout: Digital
* Clock Options -> Layout: Date, then time
* Clock Options -> Date/Time Format: Custom Format
* Date
%a, %b %d
* Time
%l:%M %P
==== Power Manager ====
* Display -> ''Blank after'' and ''Put to sleep after'': Never
* Display -> Switch off after: 5 minutes
==== Terminal ====
* General -> Scrollback: ''10000''
* Appearance -> [x] Use system font
* Appearance -> Background -> Transparent Background ''0.80''
==== Window Manager ====
* Style -> Theme -> Chicago95
==== Window Manager Tweaks ====
* Compositor -> ''Enable display compositing'' on for no tearing, or off for lowest latency
* Compositor -> Uncheck ''Show shadows under popup windows''
* Compositor -> Uncheck ''Show shadows under dock windows''
* Compositor -> Uncheck ''Zoom desktop with mouse wheel''
* Compositor -> Opacity of window during move: 10 notches from right/Opaque
==== XScreenSaver ====
* Display Modes -> Mode: ''Only One Screen Saver''
* Maze 3D
* Blank After ''1'' minutes
* Cycle After ''0'' minutes
* ''[x]'' Lock Screen After ''4'' minutes
* Maze 3D Settings -> ''[x]'' Show frame rate, adjust ''Speed'' and ''Frame rate'', then ''[ ]'' Show frame rate
xscreensaver-settings
xfconf-query --channel 'xfce4-session' --property '/general/LockCommand' --set 'xscreensaver-command -quiet -lock' --create
=== Autostart ===
* Application Autostart -> ''+ Add'' -> Trigger: ''on login''
xfce4-session-settings
xscreensaver --no-splash
==== Settings ====
****
xfconf-query --channel 'xfwm4' --property '/general/vblank_mode' --type 'string' --set 'off' --create
===== Keyboard =====
****
xfce4-keyboard-settings
==== Behavior ====
* Repeat delay: ''400''
* Repeat speed: ''30''
==== Shortcuts ====
* Ctrl + Alt + Z
* F6
* :!: TODO: Update script
bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"
xfce4-terminal --title='FreeBSD Updater' --command "su - 'root' -c 'freebsd-update fetch install && pkg update --force && pkg upgrade && sync && echo 'Done' && sleep '3''"
=== xfconf-query ===
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/Super_L' --type 'string' --set 'xfce4-popup-whiskermenu' --create
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/MonBrightnessUp' --type 'string' --set "backlight incr '10'" --create
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/MonBrightnessDown' --type 'string' --set "backlight decr '10'" --create
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/AudioRaiseVolume' --type 'string' --set "mixer 'vol'='+5%'" --create
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/AudioLowerVolume' --type 'string' --set "mixer 'vol'='-5%'" --create
xfconf-query --channel 'xfce4-keyboard-shortcuts' --property '/commands/custom/AudioMute' --type 'string' --set "mixer 'vol'='mute=toggle'" --create
===== loader.conf =====
==== Spinesnap ====
su -
ee '/boot/loader.conf'
security.bsd.allow_destructive_dtrace=0
# General
autoboot_delay=2
hw.usb.usbhid.enable=1
# Laptop
hw.acpi.video.lcd0.fullpower=100
# i915
hw.i915kms.nuclear_pageflip=1
hw.i915kms.fastboot=1
hw.i915kms.enable_psr=0
hw.i915kms.panel_use_ssc=0
hw.i915kms.enable_fbc=0
hw.i915kms.enable_dc=0
hw.i915kms.disable_power_well=0
hw.i915kms.enable_guc=3
# Ethernet
hw.em.enable_aim=0
hw.em.eee_setting=0
# End
==== Unused ====
hw.acpi.osname="Windows 2017"
exec="gop set 0"
==== Boot Commands ====
* TODO: Under misc
boot
gop list
===== rc.conf =====
==== Spinesnap ====
* TODO: Note ''tso'' somewhere else with ''ifconfig''
su -
ee '/etc/rc.conf'
clear_tmp_enable="YES"
syslogd_flags="-ss"
hostname="Spinesnap"
ifconfig_em0="inet 192.168.1.150 netmask 255.255.255.0 tso"
defaultrouter="192.168.1.1"
ifconfig_em0_ipv6="inet6 accept_rtadv"
moused_nondefault_enable="NO"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"
kld_list="acpi_video i915kms"
dbus_enable="YES"
webcamd_enable="YES"
firewall_enable="YES"
firewall_type="workstation"
===== sysctl.conf =====
==== Spinesnap ====
* https://docs.freebsd.org/en/books/handbook/config/#hwpstate_intel
su -
ee '/etc/sysctl.conf'
dev.hwpstate_intel.0.epp=0
security.bsd.see_other_uids=0
security.bsd.see_other_gids=0
security.bsd.see_jail_proc=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_proc_debug=0
kern.randompid=1
dev.hwpstate_intel.0.epp=0
===== device.hints =====
==== Spinesnap ====
* https://docs.freebsd.org/en/books/handbook/multimedia/#sound-mixer
* https://forums.freebsd.org/threads/thinkpad-x270-audio-device-hints-for-headphones.74193/
* For built-in speaker and 3.5mm headphone jack auto-switch
su -
ee '/boot/device.hints'
hint.hdac.0.cad0.nid20.config="as=1 seq=0"
hint.hdac.0.cad0.nid33.config="as=1 seq=15 device=Headphones"
===== Backlight =====
su -
sysrc kld_list+="acpi_video"
===== Printer =====
* https://docs.freebsd.org/en/books/handbook/printing/
==== CUPS ====
* https://docs.freebsd.org/en/articles/cups/
su - root -c 'service cupsd onestart'
su - root -c 'service cupsd onestop'
==== Printer ====
* http://localhost:631/admin
* Log-in as regular user (not ''root'')
* Internet Printing Protocol (ipp)
* HP
* IPP Everywhere ™
* Output Mode: DeviceGray
* Duplex: DuplexNoTumble ((presumably double-sided printing, flip-on-long-edge))
ipp://192.168.1.164/ipp/print
Kole
===== Game Controllers =====
* :!: See [[bsd;notes;joystick|Joystick]]
===== mpv =====
mkdir -p ~/'.config/mpv' && ee ~/'.config/mpv/mpv.conf'
save-position-on-quit
sub-auto=fuzzy
force-window=yes
profile=gpu-hq
scale=ewa_lanczossharp
cscale=ewa_lanczossharp
video-sync=display-resample
interpolation
tscale=oversample
hwdec=vaapi
hwdec-codecs=all
===== OpenJDK =====
su -
ee '/etc/fstab'
# OpenJDK
fdesc /dev/fd fdescfs rw 0 0
mount | grep 'fdescfs on /dev/fd'
mount | grep 'procfs on /proc'
===== KeePassXC =====
==== Settings ====
* General -> [ ] Load previous databases on startup
* Security -> [x] Use DuckDuckGo service to download website icons
==== Database Password on Keyring ====
* For [[#keyboard_shortcuts|Keyboard Shortcut]]
secret-tool store --label='KeePass' 'keepass' 'default'
===== Secure Shell =====
* TODO
===== Drive Maintenance =====
==== ZFS ====
* TODO [[bsd:notes:zfs_nas_format]]
===== Wine =====
* See [[bsd;notes;wine|Wine]]
===== Xorg =====
* [[bsd;notes;xorg.conf_snippets|xorg.conf Snippets]] (75Hz, ''evdev'')
==== Full RGB HDMI ====
ee ~/'.xinitrc'
xrandr --output 'HDMI-1' --set 'Broadcast RGB' 'Full'
xrandr --output 'HDMI-1' --set 'content type' 'Game'
xrandr --output 'HDMI-1' --set 'Colorspace' 'opRGB'
'.' '/usr/local/etc/xdg/xfce4/xinitrc'
====== Tweaks ======
su -
ee '/usr/local/etc/profile.d/general-tweaks.sh'
# GTK
export GSK_RENDERER='opengl'
# Mesa
export mesa_glthread='false'
export MESA_NO_ERROR='1'
# Intel
export ANV_NO_GPL='1'
# End
====== Firefox ======
* See [[programs;firefox|Firefox]]
===== sndio Audio Fix =====
* [[https://forums.freebsd.org/threads/stuttering-video-in-browsers-oss-related.97857/#post-701850|Post]]
* [[https://www.youtube.com/watch?v=Hg0Sjh9VMTk|Video]]
* 2025/05/22: Still required to fix above video
su -
pkg install 'sndio'
exit
==== Autostart ====
* Application Autostart -> ''+ Add'' -> Trigger: ''on login''
xfce4-session-settings
sndiod
====== Thunderbird ======
* Settings -> General -> (bottom) -> Config Editor = ''about:config''
===== Colors =====
A9D158
EA4335
0078D4
====== Notable Folders and Commands ======
* See [[bsd;notes;misc]]